JSPM

  • Created
  • Published
  • Downloads 150
  • Score
    100M100P100Q118165F
  • License MIT

OpenClaw channel plugin for Ozaiya Chat

Package Exports

  • @ozaiya/openclaw-channel

Readme

@ozaiya/openclaw-channel

OpenClaw channel plugin for Ozaiya E2E encrypted group chat.

Overview

Enables OpenClaw AI agents to participate in Ozaiya chat groups — receiving messages, processing them through the agent pipeline, and sending encrypted responses back.

All messages are end-to-end encrypted using libsodium.

Installation

# Install via OpenClaw plugin manager
openclaw plugins install @ozaiya/openclaw-channel

Configuration

Add the Ozaiya channel in your OpenClaw config. No additional configuration is required — the channel authenticates using your Ozaiya account credentials managed by OpenClaw.

Optional STT

Inbound voice messages can be auto-transcribed on the OpenClaw host before they are dispatched to the agent. This does not use ozaiya-server, and transcripts are not cached by the plugin.

Available modes:

  • disabled: default
  • openai: uploads the staged audio file directly from the OpenClaw host to OpenAI STT
  • local-command: runs a local command and expects the transcript on stdout

Example:

{
  "channels": {
    "ozaiya": {
      "stt": {
        "mode": "local-command",
        "timeoutMs": 20000,
        "maxDurationSeconds": 180,
        "localCommand": {
          "command": "/usr/local/bin/whisper-cli",
          "args": ["--output-txt", "--stdout", "{input}"]
        }
      }
    }
  }
}

OpenAI mode example:

{
  "channels": {
    "ozaiya": {
      "stt": {
        "mode": "openai",
        "openai": {
          "model": "gpt-4o-mini-transcribe"
        }
      }
    }
  }
}

Notes:

  • Auto-transcription only runs for inbound audio messages that do not already contain text.
  • The first staged audio attachment is used.
  • Messages longer than maxDurationSeconds are skipped.
  • openai.apiKey can be set directly or inherited from OPENAI_API_KEY.
  • local-command.args supports {input}, {filename}, {mime}, and {url} placeholders. If {input} is omitted, the staged file path is appended automatically.

Bot Output Guide

  • Use plain text for normal prose, code blocks, markdown tables, and Mermaid. chat-v2 already renders those directly.
  • Use options for simple one-choice-per-row questions such as approvals, next-step prompts, and short menus.
  • Use buttons only when you need custom callbackData values or multiple buttons in the same row.
  • Use attachments in send_rich_message when the bot is intentionally sending generated files, images, video, audio, or PDFs.
  • Plain text replies also auto-upgrade some media cases: standalone file/media URLs, markdown images, and markdown attachment links are uploaded as chat attachments automatically.

Requirements

License

MIT