チャンネル: 概要
チャネルとは、エージェントが対話を行うメッセージング基盤です。1つの ZeroClaw インスタンスは複数のチャネルを同時にバインドできます。同じエージェントが、別々のプロセスを実行することなく、Discord、Telegram、メール、そして REST ゲートウェイ経由で応答できます。
エージェントは応答するチャネルを一覧表示します。チャネルがエージェントにアタッチされる方法(およびピアグループによって共有チャネル上のエージェント同士がアドレス指定できる方法)については、エージェントを参照してください。
zeroclaw-api の Channel トレイトの実装としてチャネルがあります。各チャネルはコンパイル時に機能で制限されるため、最小限のビルドでは必要なチャネルのみが含まれます。
デフォルトの ZeroClaw ビルドには、軽量なチャネルバンドルとして ACP、webhook、メール、Telegram、Discord、ファイルシステムが含まれます。これらにより、バンドルされているすべてのプラットフォーム統合をコンパイルしなくても、ローカル/エディターセッション、ゲートウェイからの受信、初回利用時によく使われる外部メッセージングに対応できます。標準の配布アーティファクトには Git、Matrix、Lark、WhatsApp Web が追加されます。Android アーティファクトでは、対象プラットフォームとの互換性のため WhatsApp Web が省かれています。過去の幅広いチャネルセットを必要とするソースインストールでは、install.sh --source --preset full を実行するか、--features channels-full を指定してビルドするか、個別の channel-* feature を使用して選択的にビルドします。
sh
./install.sh --source --preset full
cargo build --features channels-full
cargo build --no-default-features --features agent-runtime,gateway,channel-slack
カテゴリ
チャットプラットフォーム
エージェントが会話を行い、プッシュやロングポーリングによって新しいメッセージの通知を受け取り、ボットユーザーとして返信できるリアルタイムメッセージング。
| チャンネル | 機能フラグ | 専用ガイド |
|---|---|---|
| Matrix | channel-matrix | Matrix |
| Telegram | channel-telegram | Telegram |
| Discord | channel-discord | Discord |
| Slack | channel-slack | Slack |
| Mattermost | channel-mattermost | Mattermost |
| LINE | channel-line | LINE |
| Nextcloud Talk | channel-nextcloud | Nextcloud Talk |
| Signal | channel-signal | Signal |
| Twitch | channel-twitch | Twitch |
| WhatsApp Cloud API | channel-whatsapp-cloud | |
| WhatsApp Web | whatsapp-web | |
| iMessage、WeChat personal iLink Bot、DingTalk、Lark、QQ、IRC、Mochat、Notion | チャンネルごと | 他のチャットプラットフォーム |
ソーシャル&ブロードキャスト
1対多またはパブリックフィードの統合。
| チャンネル | 機能フラグ | プロトコル / サービス |
|---|---|---|
| Bluesky | channel-bluesky | ATプロトコル |
| Nostr | channel-nostr | NIP-01 リレー |
| Twitter / X | channel-twitter | API v2 |
channel-reddit | JSON API |
ソーシャルチャンネル を参照してください。
開発者プラットフォーム
| チャンネル | 機能フラグ | プロトコル / サービス |
|---|---|---|
| Git | channel-git | プロバイダーシームの背後にある Git フォージ(GitHub、Gitea、Forgejo)。イシュー、PR、CI ラン、リリースの REST ポーリングとイベントごとのルーティング |
Git を参照してください。
メール
| チャンネル | 機能フラグ | 注釈 |
|---|---|---|
| IMAP / SMTP | channel-email | 従来のポーリング方式のインボックス |
| Gmail Push | channel-email | Google Pub/Sub プッシュ通知: リアルタイム、ポーリング不要 |
Email を参照してください。
音声とテレフォニー
| チャンネル | 機能フラグ | サービス |
|---|---|---|
| ClawdTalk | channel-clawdtalk | Telnyx SIP リアルタイム音声 |
| 音声通話 | channel-voice-call | Twilio / Telnyx / Plivo |
| 音声ウェイク | voice-wake | ローカルなウェイクワード検出 |
| TTS | チャネルサポート付きで常にコンパイルされます | 外部音声合成(OpenAI、ElevenLabs、Google Cloud、Edge、Piper) |
音声とテレフォニー を参照してください。
Webhook とプログラムmatic
| チャンネル | 機能フラグ | 形状 |
|---|---|---|
| Webhook | channel-webhook | Inbound HTTP → エージェント |
| CLI | 常時オン | ローカルの標準入力/標準出力 |
| ゲートウェイ REST/WS | gateway(デフォルトで有効) | HTTP + WebSocket |
| ACP(エージェントクライアントプロトコル) | channel-acp-server | JSON-RPC 2.0 over stdio: エディター/IDE セッション |
イベントソース
エージェントループまたは SOP エンジンにイベントを供給する入力専用トランスポート。アウトバウンドの返信はなく、それぞれが SOP ファンイン でもあります。
| チャンネル | 機能フラグ | 形状 |
|---|---|---|
| MQTT | channel-mqtt | ブローカーメッセージ → エージェントまたはSOP |
| AMQP | channel-amqp | ブローカーの配信 → エージェントまたはSOP |
| Filesystem | channel-filesystem | パスの変更 → エージェントまたはSOP |
MQTT、AMQP、Filesystemを参照してください。
設定
最新のチャネルインスタンスは [channels.<type>.<alias>] の下に設定され、一般的な最初のエイリアスとして default が使用されます。いずれの設定方法でも設定できます。
シークレット(ボットトークン、APIキー、パスワード)は暗号化されて保存されます。ゲートウェイ、zerocode、または zeroclaw config set(マスク表示)を通じて設定し、決して平文で設定しないでください。エージェント上の channels エントリは、チャンネルエイリアスをそのエージェントにバインドします。フィールド名はチャンネルごとに異なります。zeroclaw config schema が正式なリストです。多くのチャンネルで共通して使用されるフィールド:
| キー | 何をするものか |
|---|---|
enabled | セクションを削除せずにオン/オフ |
mention_only | ボットに@メンションしていないメッセージを無視する |
proxy_url | チャンネルごとのプロキシ (http/https/socks5/socks5h)。グローバルの [proxy] を上書きします |
excluded_tools | このチャンネルで回答する際にモデルから差し控えられるツール |
draft_update_interval_ms | ストリーミング編集間隔(デフォルト 500 ms) |
approval_timeout_secs | always_ask ツールでオペレーターの承認を待つ秒数(この時間を超えると自動的に拒否されます) |
受信側の送信者は、チャンネルごとのフィールドではなく、ピアグループを介して制御されます。
ストリーミング機能
チャネルは、サポートするストリーミングの種類を宣言します。機能マトリックスや supports_draft_updates / supports_multi_message_streaming の意味については、プロバイダー → ストリーミング を参照してください。
チャンネルの追加
新しいチャネルを実装するには、Channel トレイトを実装するファイルを crates/zeroclaw-channels/src/ に追加します。標準的なリファレンスとして、類似した形状の既存チャネルを参照してください。プッシュ型なら discord.rs、ポーリング型なら email_channel.rs、HTTP駆動型なら webhook.rs です。