Keyboard shortcuts

Press or to navigate between chapters

Press ? to show this help

Press Esc to hide this help

通道:概述

通道是 agent 进行通信的消息载体。一个 ZeroClaw 实例可以同时绑定多个通道:同一个 agent 无需运行独立的进程,即可在 Discord、Telegram、email 以及通过 REST 网关进行响应。

代理会列出它所响应的通道;有关通道如何附加到代理(以及对等组如何让共享通道上的代理相互寻址),请参阅代理

通道是 zeroclaw-apiChannel trait 的实现。每个通道都在编译时通过特性进行门控,因此最小化构建仅包含你所需的通道。

ZeroClaw 的默认构建包含一个精简的频道包:ACP、webhook、电子邮件、Telegram、Discord 和文件系统。这些涵盖了本地/编辑器会话、网关入口,以及首次运行时常用的外部消息传递,同时无需编译所有捆绑的平台集成。标准分发产物会额外包含 Git、Matrix、Lark 和 WhatsApp Web;Android 产物因目标兼容性要求不包含 WhatsApp Web。对于需要历史上完整频道集合的源码安装,请运行 install.sh --source --preset full,使用 --features channels-full 进行构建,或使用单独的 channel-* 功能进行选择性构建:

sh

./install.sh --source --preset full
cargo build --features channels-full
cargo build --no-default-features --features agent-runtime,gateway,channel-slack

分类

聊天平台

实时消息传递,代理可以保持对话,通过推送或长轮询接收新消息的通知,并以机器人用户的身份进行回复。

通道功能标志专用指南
Matrixchannel-matrixMatrix
Telegramchannel-telegramTelegram
Discordchannel-discordDiscord
Slackchannel-slackSlack
Mattermostchannel-mattermostMattermost
LINEchannel-lineLINE
Nextcloud Talkchannel-nextcloudNextcloud Talk
Signalchannel-signalSignal
Twitchchannel-twitchTwitch
WhatsApp 云 APIchannel-whatsapp-cloudWhatsApp
WhatsApp Webwhatsapp-webWhatsApp
iMessage、WeChat 个人 iLink 机器人、DingTalk、Lark、QQ、IRC、Mochat、Notion按通道其他聊天平台

社交与广播

一对多或公共提要集成。

通道功能标志协议 / 服务
Blueskychannel-blueskyAT 协议
Nostrchannel-nostrNIP-01 中继
Twitter / Xchannel-twitterAPI v2
Redditchannel-redditJSON API

请参阅 社交渠道

开发者平台

通道功能标志协议 / 服务
Gitchannel-git位于提供商抽象层后的 Git forge(GitHub、Gitea、Forgejo);对 issues、PR、CI 运行和 releases 的 REST 轮询,并按事件路由

请参阅 Git

电子邮件

通道功能标志备注
IMAP / SMTPchannel-email经典的基于轮询的收件箱
Gmail Pushchannel-emailGoogle Pub/Sub 推送通知:实时,无需轮询

请参阅 电子邮件

语音与电话

通道功能标志服务
ClawdTalkchannel-clawdtalkTelnyx SIP 实时语音
语音通话channel-voice-callTwilio / Telnyx / Plivo
语音唤醒voice-wake本地唤醒词检测
TTS始终编译时启用通道支持出站语音合成(OpenAI、ElevenLabs、Google Cloud、Edge、Piper)

请参阅 语音与电话

Webhooks 与编程

通道功能标志形状
Webhookchannel-webhook入站 HTTP → 代理
命令行界面始终开启本地标准输入/标准输出
网关 REST/WSgateway(默认启用)HTTP + WebSocket
ACP(代理客户端协议)channel-acp-server基于 stdio 的 JSON-RPC 2.0:编辑器/IDE 会话

请参阅 WebhooksACP

事件源

将事件输入代理循环或 SOP 引擎的仅输入传输。它们没有外向回复;每一个也是一个 SOP fan-in

通道功能标志形状
MQTTchannel-mqttBroker 消息 → agent 或 SOP
AMQPchannel-amqp经纪人交付 → 代理或 SOP
Filesystemchannel-filesystem路径变更 → agent 或 SOP

参见 MQTTAMQPFilesystem

配置

现代通道实例在 [channels.<type>.<alias>] 下配置,default 是常用的首个别名。可通过任意配置方式进行设置:

网关仪表板

在 Web 仪表板中打开 /config/channels

zerocode

Config 窗格中,Channels 下。

密钥(bot 令牌、API 密钥、密码)以加密形式存储;请通过网关、zerocode 或 zeroclaw config set(已掩码)进行设置,切勿使用明文。agent 上的 channels 条目将某个频道别名绑定到该 agent。各频道的字段名称各不相同;zeroclaw config schema 是权威的字段列表。在多个频道中反复出现的字段:

它的作用
enabled在不删除部分的情况下切换开/关
mention_only忽略未通过 @ 提及该机器人的消息(聊天平台)
proxy_url单通道代理(http/https/socks5/socks5h);覆盖全局 [proxy]
excluded_tools在此频道回答时对模型隐藏的工具
draft_update_interval_ms流式编辑频率(默认 500 毫秒)
approval_timeout_secsalways_ask 工具等待操作员批准的秒数,超时后自动拒绝

入站发送方通过对等组进行管控,而非通过每个通道的字段。

流媒体功能

通道声明它们支持的流式传输类型:有关能力矩阵以及 supports_draft_updates / supports_multi_message_streaming 的含义,请参阅 Providers → Streaming

添加频道

实现新通道意味着在 crates/zeroclaw-channels/src/ 中添加一个实现 Channel trait 的文件。规范的参考是任何形态相似的现有通道:基于推送的 discord.rs、基于轮询的 email_channel.rs、基于 HTTP 驱动的 webhook.rs