DeepSeek Harness 的插件化架构允许开发者扩展功能。当需要在移动端或即时通讯场景中控制工作区和会话时,需要额外的操作入口。zhuosir/dsh-chatops 插件解决了这个问题,它将 DSH 桥接到微信、飞书、钉钉和企业微信,实现通过 IM 进行远程操控。
定位与核心能力¶
这是一个由 ZhuoSir 维护的客户端插件,旨在通过即时通讯工具操作 DeepSeek Harness 的所有工作区与会话。它解决了“在 IM 中直接发送 prompt”以及“远程审批和文件接收”的需求。
插件的核心能力包括:
- 四通道并行:支持微信(ilink)、飞书、钉钉、企业微信四通道同时在线,指令集一致。
- 交互与指令:在 IM 中发送文字直接作为 prompt;内置指令集(
/sessions,/use,/status,/log,/send,/approve/reject)管理会话与文件。 - 反馈机制:任务完成自动推送;支持远程审批(飞书支持卡片按钮一键批准);生成的报告/图片/文件可直接回传到 IM(图片内联显示,其他为文件卡片)。
- 安全模型:基于 owner/白名单机制;陌生人消息默认静默并记录审计日志;文件回传仅限当前工作区。
安装与启用¶
安装前请确保环境满足要求:Node.js ≥ 22,DSH 版本为 0.1.0-rc.x。
安装插件:
dsh plugin --profile web add github:ZhuoSir/dsh-chatops
重启 DSH 以加载插件:
dsh web
安装后,在 设置 → IM 通道 面板中启用对应通道并填写凭据。微信通道(默认)可直接在面板内扫码绑定。
典型用法¶
- 发送 Prompt:在绑定的会话(如微信私聊或群聊)中直接发送文字,作为 Prompt 投递给当前绑定的会话。
- 会话管理:
- 使用
/sessions列出所有会话。 - 使用
/use 1绑定指定的会话。
- 使用
- 远程审批:遇到需要确认的操作,使用
/approve或/reject进行远程处理。 - 文件发送:使用
/send reports/a.md将文件发送到 IM;模型也可调用im_send_file工具主动发送文件。
架构与依赖¶
- 网络与部署:插件仅需主动出站 HTTPS/WebSocket 连接,无需公网回调或端口转发,零公网部署。
- SDK 依赖:各 IM 平台的 SDK(飞书、钉钉、企微)为可选依赖。未安装时对应通道会空转并在日志中提示。微信的 ilink 通道为内置依赖。
- 微信协议:插件默认使用微信官方机器人平台(ilink)。备选的 Wechaty 个人号协议(
wechaty)存在封号风险,默认关闭,仅限自用小号。
权限与安全¶
插件运行在 DSH 进程上下文中,安全边界如下:
- 网络访问:仅出站连接各 IM 平台官方域名。
- 凭据存储:微信
bot_token写入 DSH 凭据存储;其他平台凭据存储在本地配置中。 - 文件限制:文件回传仅允许发送当前会话工作区内的文件,拒绝路径逃逸。
- 访问控制:微信扫码绑定者或首个私聊用户自动成为 owner;其余用户消息静默并记录审计日志。
适用场景¶
适合需要在 IM 中进行日常操作、远程审批、以及通过移动设备快速发送任务指令的开发者。