用途
openclaw-dingtalk-channel 是 OpenClaw 的钉钉渠道插件,包名为 @soimy/dingtalk,由 ara.so 归入 Hermes Skills 合集。它用于把 OpenClaw 与钉钉企业机器人对接,使企业机器人能够接入 OpenClaw 的智能体能力。
该插件采用 Stream 模式工作,因此无需公网 IP,也无需配置 Webhook,适合在无法暴露公网入口的环境中实现钉钉企业机器人集成。
主要能力
- Stream 模式:无需 Webhook 或公网 IP。
- 消息类型:支持文本、图片、语音、视频、文件、钉钉文档/卡片。
- 回复模式:支持 Markdown 和 AI Card(v2 结构化块并支持流式输出)。
- 多智能体路由:可绑定多个智能体/机器人,并通过 @agent-name 路由到指定智能体。
- 旁路模式:使用 /btw 在主会话锁定之外获取快速回答。
- 实时中止:可在流式生成过程中停止 AI 生成。
- Device Flow 认证:通过扫描二维码自动注册凭据。
安装
前置要求:OpenClaw >= 2026.3.24。
从 ClawHub 安装:
openclaw plugins install @soimy/dingtalk
从本地源码安装:
git clone https://github.com/soimy/openclaw-channel-dingtalk.git
cd openclaw-channel-dingtalk
npm install
openclaw plugins install -l .
启用插件,需在 OpenClaw 配置中加入:
{
"plugins": {
"enabled": true,
"allow": ["dingtalk"]
}
}
配置方式
推荐使用交互式设置:
openclaw onboard
或配置 channels 部分:
openclaw configure --section channels
最小手动配置示例:
{
"channels": {
"dingtalk": {
"enabled": true,
"clientId": "dingxxxxxx",
"clientSecret": "your-app-secret",
"dmPolicy": "open",
"groupPolicy": "open",
"messageType": "markdown"
}
}
}
完整配置示例中包含访问策略、消息类型、AI Card 流式选项、多智能体绑定、路由、功能开关、安全与限流等参数,例如 dmPolicy 可选 open/whitelist/blacklist/closed,messageType 可选 markdown 或 aiCard,agentBindings 用于绑定 agentName 与 robotCode,enableAtAgentRouting 开启 @ 路由,enableBtwBypass 开启旁路模式,enableRealTimeAbort 开启实时中止并可配置 abortKeywords,另有 maxMessageLength、rateLimitPerUser、rateLimitWindow 等。
环境变量方式:
export DINGTALK_CLIENT_ID="dingxxxxxx"
export DINGTALK_CLIENT_SECRET="your-app-secret"
钉钉应用设置
在钉钉开发者控制台需要配置:应用凭据(Client ID 与 Client Secret)、启用并配置 Stream 模式。
API 权限包括:
- qyapi_robot_sendmsg - 发送消息
- qyapi_chat_manage - 群聊管理
- contact.User.Read - 读取用户信息
- im.Chat.Read - 读取会话信息
事件订阅包括:chat_update_title(群名变更)、chat_update_owner(群主变更)、im_robot_at_message(@ 提及)、im_robot_message(私信)。
使用方式
回复模式:Markdown 模式返回带 Markdown 格式的纯文本;AI Card 模式使用富交互卡片并支持流式,可结构化块渲染、内联图片、显示任务元数据与实时流式更新。
/btw 旁路模式:用户发送 /btw 加问题,消息绕过会话锁定并在独立会话中立即响应,前缀可配置。
多智能体与机器人绑定:通过 agentBindings 将多个 OpenClaw 智能体绑定到不同钉钉机器人,并可用 @agent-name 将消息路由到指定智能体。
实时中止:配置 enableRealTimeAbort 与 abortKeywords(如“停止”“stop”“/stop”“esc”),可在流式生成中停止。
消息类型处理:插件自动处理文本、图片(传给具备视觉能力的模型)、语音(如支持则转写)、文件(尽可能提取内容)、钉钉文档(通过 API 获取内容)、回复/引用(包含原始消息上下文)。
适用场景与限制
该插件适用于需要将钉钉企业机器人与 OpenClaw 智能体连接、且不便开放公网入口的企业或团队环境,也适合需要多智能体分流、流式卡片回复与快速旁路问答的场景。
限制方面:需要 OpenClaw >= 2026.3.24;需在钉钉开发者控制台完成权限与事件订阅配置;AI Card 流式推荐最小间隔 500ms(示例为 800ms);限流与钉钉 API 配额相关,文中提到钉钉 API 配额在 2026-03-31 前免费不限量(若获批可至 2026-04-30)。其他未在资料中说明的收费、价格或平台细节暂未提供。