前言¶
在 DeepSeek Harness(DSH)里,agent 跑完构建、巡检、批处理等任务后,常需要把结果发到钉钉群。如果自己在业务代码里拼 Webhook 请求,要处理消息体、加签、超时和配置位置。dsh-dingtalk 把这些封装成两个 DSH 工具:dingtalk_notify 发 Markdown,dingtalk_text 发纯文本。
它只做单向通知:agent 推消息到钉钉群,不接收群消息,也不做双向机器人。
这是什么¶
dsh-dingtalk 是一个 DeepSeek Harness 插件,仓库 owner 为 STARDUSTLC666,许可证为 MIT。它把钉钉自定义机器人 Webhook 封装成两个工具,支持加签安全模式,配置项包括 webhook、secret、timeoutMs。
这个插件是纯 Node 实现,无运行时依赖,支持 Windows、macOS 和 Linux。README 中说明它在 @deepseek-ai/dsh@0.1.2-alpha.2 上验证过(2026-08-31),运行时不 import 任何 @deepseek-ai/* 内部模块。
核心能力¶
dingtalk_notify:向钉钉群推送一条 Markdown 消息,包含title和text。dingtalk_text:向钉钉群推送一条纯文本消息,使用content。- 使用钉钉自定义机器人 Webhook,并支持加签安全模式。
- 支持通过环境变量
DSH_DINGTALK_SECRET保存加签密钥。 - 支持配置项:
webhook、secret、timeoutMs。 - 纯 Node 实现,无运行时依赖,全平台通用。
安装与启用¶
先安装插件:
dsh plugin --profile web add dsh-dingtalk
安装后,在对应 profile 的 cordis.patch.yml 中覆盖 tool-dingtalk 行,配置 webhook 与 secret,然后重启。
示例配置如下:
- id: tool-dingtalk
config:
webhook: https://oapi.dingtalk.com/robot/send?access_token=你的token
secret: SEC你的加签密钥
如果不想把密钥写进 YAML,也可以只配置 webhook,并把加签密钥放到环境变量里。在 Windows PowerShell 中可这样设置:
$env:DSH_DINGTALK_SECRET = "SEC你的加签密钥"
注意:这个插件会以当前 dsh 进程的权限运行。安装前建议检查源码和 MIT 许可证,确认其能力边界符合你的使用场景。
典型用法¶
在钉钉群设置中添加自定义机器人,安全设置勾选「加签」,复制 Webhook 地址和 secret,然后写入 cordis.patch.yml。
配置完成后,可以直接让 agent 发消息。例如:
帮我给钉钉群发一条消息:标题「构建完成」,正文「流水线 #123 已通过」。
这类用法适合做任务结果通知、构建通知、巡检结果推送等单向出口。
限制与注意¶
- 仅单向通知:不支持接收群消息,也不支持双向机器人,例如 @机器人 后回复。
- 不支持企业自建应用。
- 目前只支持 Markdown 和纯文本,不支持图片、Link、FeedCard、ActionCard 等类型。
- 没有 Web 设置页,配置通过
cordis.patch.yml与环境变量完成。 webhook是群通知钥匙,知道它的人可以往群里发消息。不要把cordis.patch.yml提交到 Git 仓库。secret推荐通过环境变量DSH_DINGTALK_SECRET保存。- 插件不做联网上报;
secret只在内存中用于计算 HMAC 签名。 - 这是社区插件,与 DeepSeek 官方及钉钉官方无关;
@deepseek-ai/*为官方保留命名空间。
相关位置¶
目录页:
https://www.skillhub.cn/plugins/STARDUSTLC666/dsh-dingtalk
GitHub: