DSH HUB
HomePlugin StorePlugin PacksCommunityRankingsResourcesPublish Guide
Plugin source
Back to catalog

cryjkd /

cryjkd/dsh-clawbot

Verified

在 DeepSeek Harness(DSH)里接入微信官方 ilink 机器人网关:扫码绑定后,AI 能主动给自己发微信通知;每次回复后自动推送任务完成摘要;目标完成/阻断时自动通知;需要批准/选择时主动微信提醒。自带设置界面(设置 → ClawBot:扫码二维码、微信在线/断线状态、手动发送、三个自动通知开关、监听开关、解除绑定、自定义图标)。 底层走腾讯官方 ilink 网关(https://ilinkai.weixin.qq.com),无第三方破解、无自建中转,消息只发给绑定的账号自己。

★ 6 Stars0 Forks0 IssuesN/A Community rating0 Confirmed installs
View on GitHub
READMESource: main@f2efecee

dsh-clawbot

在 DeepSeek Harness(DSH)里接入微信官方 ilink 机器人网关:扫码绑定后,AI 能主动给自己发微信通知;每次回复后自动推送任务完成摘要;目标完成/阻断时自动通知;需要批准/选择时主动微信提醒。自带设置界面(设置 → ClawBot:扫码二维码、微信在线/断线状态、手动发送、三个自动通知开关、监听开关、解除绑定、自定义图标)。

底层走腾讯官方 ilink 网关(https://ilinkai.weixin.qq.com),无第三方破解、无自建中转,消息只发给绑定的账号自己。

安装(GitHub 一键)

把本目录推到 GitHub 仓库,然后:

dsh plugin --profile web add github:cryjkd/dsh-clawbot

安装后重启 dsh web,刷新页面,设置页会出现「ClawBot」分区。

说明:本插件是 DSH 插件包(dsh.bundle + dsh.client),不是 agent preset。它用 dsh plugin add 安装,所以能同时挂载 Host 半侧(工具/通知/监听)和浏览器半侧(设置界面)。

使用流程(约五分钟)

  1. 打开 设置 → ClawBot。
  2. 点「绑定微信 / 刷新二维码」,用手机微信扫面板上的二维码(或点开二维码对应的链接)并确认。
  3. 绑定成功后,状态卡显示「已绑定」,但发送凭证未就绪(「微信连接断线」)——这是正常的。
  4. 在微信里给新出现的 bot 联系人发任意一条消息(解锁发送凭证 context_token)。
  5. 面板状态变为「微信在线」,即可在面板「发送」(支持 markdown),或让 AI 调用 notify_wechat。

设置界面(设置 → ClawBot)

面板自上而下:

  • 状态卡:状态点(绿 = 微信在线并呼吸 / 红 = 断线 / 灰 = 未绑定)+ 状态文本(微信在线 / 微信连接断线 / 未绑定);已绑定时右侧显示 bot: <id>。
  • 未绑定:显示扫码二维码与「绑定微信 / 刷新二维码」按钮(二维码由浏览器端本地渲染)。
  • 已绑定:显示 user: <id> 与发送凭证状态——
    • 会话已过期 → 提示重新扫码绑定;
    • 凭证有效 → 「发送凭证已就绪」;
    • 凭证过期 → 「发送凭证已过期:请在微信里给机器人再发一条消息」;
    • 尚未获得 → 「尚未获得发送凭证:请先在微信里给机器人发一条消息」。 下方是发送框(默认「测试通知」,支持 markdown)与「发送」「解除绑定」按钮。
  • 自动通知(三个开关,默认均开启):
    • 任务完成后自动微信通知 —— 每次回复后推送任务完成摘要;
    • 任务被阻断时自动微信通知 —— goal 阻断时推送;
    • 等待批准/回答时微信提醒 —— 需要批准的操作 / 需要选择的问题。
  • 监听:监听微信消息并自动处理 开关(默认关闭),说明:开启后单独创建一个会话处理微信消息,不影响当前会话;处理完成后自动微信通知「完成」。
  • 底部:操作结果提示(✔/✗)与最近错误(lastError)。

面板顶部图标取插件自带的 icon.png;未读到图标文件时显示「爪」字占位。

能力

能力 说明
notify_wechat AI 主动给自己发微信通知(长任务完成、需要拍板等),支持 markdown
wechat_bind 绑定微信(返回二维码链接)
wechat_status 查询绑定与连接状态、三个自动通知开关与监听开关
(自动) 每次回复后自动推送 ✅ 任务完成 + 任务 / 结果 / 耗时
(自动) 目标(goal)完成 / 阻断时自动通知(✅ 任务完成 / ⚠️ 任务阻断)
(自动) 需要用户批准 / 选择时微信提醒(🔐 需要你批准 / ❓ 需要你选择)
(监听,默认关闭) 收到微信消息后自动交给单独的监听会话处理,处理完成后微信通知 ✅ 微信消息处理完成
设置界面 二维码、微信在线 / 微信连接断线 状态、手动发送、三个自动通知开关、监听开关、解除绑定、自定义图标

自动通知内容

每次回复完成后自动推送:

✅ 任务完成

任务: <你的消息摘要>

结果: <AI 回复摘要>

耗时: X秒 / X分Y秒

目标(goal)完成时推送 ✅ 任务完成(附目标摘要),goal 阻断时推送 ⚠️ 任务阻断(附目标摘要与阻断原因)。自动通知有约 3 秒节流,避免连续触发时刷屏;未绑定或缺少发送凭证时静默跳过。

监听(默认关闭)

在设置界面打开「监听微信消息并自动处理」后:

  1. 插件在后台持续轮询网关 getupdates(约 1.5 秒一次),只收集绑定账号本人发来的文本 / 语音转写消息,跳过 bot 自己发出的消息。
  2. 插件单独创建一个监听会话(会话 id 形如 clawbot-listen-*,复用当前默认模型 + 默认 agent preset),把每条新消息以「【微信】<内容>」的形式转发给它处理,不影响当前会话;关闭开关或插件卸载时销毁该会话。
  3. 若已开启但会话尚未建立,收到消息时会先自动创建会话;缺少 agents 服务或默认模型(agentDefaultModel)时开启失败并返回明确错误。
  4. 处理完成后,自动向微信推送:
✅ 微信消息处理完成

消息: <收到的消息摘要>

结果: <AI 回复摘要>

耗时: X秒 / X分Y秒

开关状态保存在 ~/.dsh/clawbot/state.json,跨重启保留;默认关闭,需手动在设置界面开启。

需要批准 / 选择时提醒(默认开启)

开启「等待批准/回答时微信提醒」后,当 AI 执行到需要你介入的阻断性操作时会主动微信提醒,让你及时回到 DSH 页面操作:

  • 需要你批准的操作(沙箱提权、越权写文件等)→
🔐 需要你批准

操作: <工具名>

原因: <原因摘要>

请在 DSH 页面确认或拒绝
  • 需要你选择的问题(ask_user_question)→
❓ 需要你选择

问题: <问题摘要>

请在 DSH 页面回答

这些提醒走 approval/request 与 tools/execute 事件(prepend 观察者,不改变审批/问答结果本身),未绑定或断线时静默跳过。

状态持久化

绑定与开关状态保存在 ~/.dsh/clawbot/state.json,跨会话、跨重启保留。发送凭证 context_token 有有效期:过期时状态会变成「微信连接断线」,只需在微信里给机器人再发一条消息即可自动恢复(后台轮询会自动用新凭证刷新状态)。

说明与限制

  • 网关对主动发送限流(每天没几条),这是通知/拍板渠道,不是聊天工具。
  • bot 收不到转发的文章和文件;请发原始链接或文件本身。
  • 网关只允许绑定者账号收到消息;context_token 只在绑定者先发过一条消息后下发。
  • 图标文件是插件目录里的 icon.png;想换图标直接替换该文件(保持 PNG 格式),替换后重启 dsh web 生效。

目录结构

dsh-clawbot/
├── index.js           # node 端 cordis 插件(agent 工具 + 自动通知/监听 + /clawbot/* 路由)
├── client.js          # 浏览器端(__ModuleLoader__ + settings.section 设置界面)
├── cordis.patch.yml   # 组合补丁:插入 host 插件行
├── package.json       # dsh.bundle + dsh.client 声明
├── icon.png           # 面板图标
└── README.md

License

MIT

—/ 5

No ratings yet

Verified DSH bundle

Commit f2efecee6354

Community comments

No comments yet. Be the first to write one.

DSH HUB

A community index for DSH plugins. Not an official GitHub or DeepSeek AI product.

CommunityResourcesAPIAbout