@soimy

Openclaw Channel Dingtalk

DingTalk (钉钉) channel plugin for OpenClaw

当前版本
v3.6.5
code-plugin社区source-linked
<p align="center"> <img src="docs/assets/dingclaw-banner.svg" alt="DingClaw Banner" width="1040"> </p>

DingTalk Channel for OpenClaw

<p class="repo-badges"> <a href="https://github.com/openclaw/openclaw"><img alt="OpenClaw" src="https://img.shields.io/badge/OpenClaw-%3E%3D2026.3.24-0A7CFF"></a> <a href="https://www.npmjs.com/package/@soimy/dingtalk"><img alt="npm version" src="https://img.shields.io/npm/v/%40soimy%2Fdingtalk"></a> <a href="https://www.npmjs.com/package/@soimy/dingtalk"><img alt="npm downloads" src="https://img.shields.io/npm/dm/%40soimy%2Fdingtalk"></a> <a href="https://github.com/soimy/openclaw-channel-dingtalk/blob/main/LICENSE"><img alt="License" src="https://img.shields.io/github/license/soimy/openclaw-channel-dingtalk"></a> <a href="https://github.com/soimy/openclaw-channel-dingtalk/blob/main/CITATION.cff"><img alt="Citation" src="https://img.shields.io/badge/Citation-CITATION.cff-1277B5"></a> </p>

针对 OpenClaw 的钉钉企业内部机器人 Channel 渠道插件,使用 Stream 模式,无需公网 IP。

功能特性

  • Stream 模式,无需 Webhook 和公网入口
  • 支持私聊、群聊和 @机器人
  • 支持文本、图片、语音、视频、文件和钉钉文档/文件卡片
  • 支持引用消息恢复和常见文本附件正文抽取
  • 支持 Markdown 回复与 AI 卡片流式回复(v2 结构化 block 渲染、taskInfo 元数据、图片内联)
  • 支持通过 dingtalk_ask_user_question 发送钉钉原生交互表单卡片,向用户确认、单选、多选或收集表单字段后再继续会话
  • 支持多 Agent、多机器人绑定和实验性的 @多助手路由
  • 支持 /btw 旁路问答,绕过主会话锁立即获得独立快答
  • 支持 DingTalk Device Flow 自动注册,扫码授权后自动获取凭证,无需手动复制
  • 支持实时中止当前 AI generation。常用停止指令包括 停止stop/stopesc
  • 接入 OpenClaw 消息处理与 outbound 能力

[!IMPORTANT] 根据钉钉开放平台公告《关于限时开放钉钉PaaS资源不限量额度以助力企业AI智能体集成的公告》(更新于 2026-03-11),OpenClaw 调用钉钉 API/Webhook/Stream 的免费“不限量”额度默认有效至 2026-03-31;如已通过官方申请通道获批,豁免权益最晚有效至 2026-04-30。部署前请前往“钉钉开发者后台 -> 资源管理”核对当前额度状态。

文档入口

引用与署名

安装

[!IMPORTANT] 最小兼容版本为 OpenClaw 2026.3.24。安装前请先升级到最新版 OpenClaw。

openclaw plugins install @soimy/dingtalk

本地开发或联调可使用源码链接安装

如需本地开发、调试或联调,可使用源码链接安装:

git clone https://github.com/soimy/openclaw-channel-dingtalk.git
cd openclaw-channel-dingtalk
npm install # 或 pnpm install
openclaw plugins install -l .

安装后建议显式配置 plugins.allow

{
  "plugins": {
    "enabled": true,
    "allow": ["dingtalk"]
  }
}

详细说明:

更新

ClawHub 安装来源:

openclaw plugins update dingtalk

本地源码 / 链接安装来源:

git pull
openclaw gateway restart

详细说明:

配置

推荐优先使用交互式配置:

openclaw onboard

或:

openclaw configure --section channels

最小手动配置示例:

{
  "plugins": {
    "enabled": true,
    "allow": ["dingtalk"]
  },
  "channels": {
    "dingtalk": {
      "enabled": true,
      "clientId": "dingxxxxxx",
      "clientSecret": "your-app-secret",
      "dmPolicy": "open",
      "groupPolicy": "open",
      "messageType": "markdown"
    }
  }
}

详细说明:

交互式提问卡片

安装并允许 dingtalk 插件后,OpenClaw 可向模型暴露 dingtalk_ask_user_question 工具。模型在钉钉会话中遇到必须由用户确认或补充信息后才能继续的场景时,可以发送一张钉钉原生互动卡片;用户提交或取消后,插件会把结果作为新的会话消息注入,驱动原任务继续执行。

该能力支持两种入参:

  • questions:轻量问题 DSL,仅适合简单确认、单选、多选和简单文本输入。
  • fields:钉钉表单变量协议,适合多字段收集、复杂表单、日期时间、数字、布尔开关,以及 TEXT_AREANUMBERSELECTMULTI_SELECTDATETIMEDATETIMECHECKBOXSWITCHCHECKBOX_GROUPMULTI_CHECKBOX_GROUP 等高级表单字段。

使用该能力无需额外配置模板 ID;插件内置钉钉互动卡片模板。若当前 OpenClaw 运行时不支持工具注册,插件会跳过该工具注册,不影响既有钉钉消息收发、AI 卡片和反馈学习能力。

重要功能文档

开发简述

git clone https://github.com/soimy/openclaw-channel-dingtalk.git
cd openclaw-channel-dingtalk
npm install
npm run type-check
npm run lint
pnpm test

更多开发与维护说明:

许可

MIT

源码与版本

源码仓库

soimy/openclaw-channel-dingtalk

打开仓库

源码提交

5f34aa87eb4d0a06f2a532fbd0a8e560d2910e84

查看提交

安装命令

openclaw plugins install clawhub:@soimy/dingtalk

元数据

  • 包名: @soimy/dingtalk
  • 创建时间: 2026/03/24
  • 更新时间: 2026/07/08
  • 执行代码:
  • 源码标签: v3.6.5

兼容性

  • 构建于 OpenClaw: 2026.3.28
  • 插件 API 范围: >=2026.3.28
  • 标签: latest
  • 文件数: 243