kuyueliuhun-ctrl/dsh-qq-notify ↗★ 0
dsh-qq-notify
DeepSeek Harness QQ 通知插件:回合完成/出错/待审批时,用官方 QQ 机器人(AppID+AppSecret,沙箱/正式)主动推一条 C2C 私聊消息;可自动连接网关捕获接收者的 user_openid。
安装
npx -p @deepseek-ai/dsh dsh plugin --profile web add github:kuyueliuhun-ctrl/dsh-qq-notify说明文档
阅读完整 README ↗dsh-qq-notify
DeepSeek Harness 的 QQ 双向桥插件:通过 QQ 官方机器人,把 QQ 私聊接入 DeepSeek Harness。
- QQ → Harness:QQ 私聊可直接驱动 harness 会话,QQ 收到模型的回复。
- 接入已有工作区/会话:按工作区列出所有既有会话,选中后直接驱动它(继承历史、上下文、工作目录),通过 dsh 的消息队列(inbox)投递,不打断 web 端正在进行的会话。
- Harness → QQ:会话回复、回合完成通知、权限申请等推送到 QQ。
- 多会话:可新建、选择、退出会话。
- 上下线通知:由独立守护进程监控 DSH 进程,下线/恢复时发 QQ 通知(见
watchdog一节)。
安装
把本目录作为 bundle 装进 DSH 的 web profile:
# 在 DSH 源码根目录
pnpm dsh plugin --profile web add file:C:/Users//
插件的 package.json 声明了 dsh.bundle.patch,安装后会自动挂载 cordis.patch.yml 层的 qq-notify 插件行。
依赖
@deepseek-ai/schemasteryws(QQ 网关 WebSocket)
均随 profile 的 pnpm install 自动安装。
配置
在 web profile 的 cordis.patch.yml 里为 qq-notify 填配置:
- id: qq-notify
name: 'dsh-qq-notify'
config:
appId: '你的 QQ 机器人 AppID'
appSecret: '你的 QQ 机器人 AppSecret'
sandbox: true
autoCapture: true
openid: '你的 C2C user_openid' # 私聊机器人一次后可自动捕获填回
ownerOpenid: '' # 留空=任意私聊都可驱动;填 openid=仅自己
bridge: true
provider: 'deepseek-official'
model: 'deepseek-v4-flash'
cwd: 'C:/Users/你的用户名/deepseek-harness'
outbox: true
outboxIntervalMs: 2000
notifyEvents:
- completed
- error
- approval_requested
- 沙箱模式(
sandbox: true)时用沙箱网关;机器人上架后可改false。 openid官方 API 需要平台的 user_openid(不是 QQ 号);开启autoCapture后,你私聊机器人一次,插件会自动捕获并写入$DSH_HOME/qq-notify.openid.json。
备注:本环境的
agent-default-model用的是deepseek-official/deepseek-v4-flash。provider/model必须显式填写(留空会让deployment:persona的{{model}}无值而报错)。
用法(QQ 私聊)
会话管理(只保留三个核心操作)
| 操作 | 命令 |
|---|---|
| 选择会话 | 菜单里回复数字;或 /use 会话名 |
| 退出会话 |