DSH Plugins Marketplace

DSH Plugins

Plugins

/

Development & Infrastructure

/

dsh-remote-qqbot

c

dsh-remote-qqbot

Manifest valid★ 1

No project description is available for this repository yet.

UI (client)hasBundlePatch

dsh-remote-qqbot

CI node license QQ

DSH 的 QQ 远程机器人插件。DSH 在电脑上干活,你在外面:跑完了、需要你拍板、出错了,它主动发到你 QQ; 你在 QQ 里引用那条消息回一句,这句话就回到它所属的会话里,跟你坐在电脑前打字一样。

网站:完整回答在这里看

QQ 消息里放不下长回答。这个站点是完整回答的落脚点:插件把正文存上去,QQ 里只留一条短链接, 点开就是排版好的全文,手机上打开的也是这个页面。

网站入口:https://cyanovo.top

站点上有什么说明
完整回答登录后打开记录,读排版好的原文,不受聊天窗口长度限制
账号与额度免费版每天可看 100 次、记录保留 5 小时;付费版 ¥2.99 / 30 天,每天 1000 次、保留 48 小时
设备码绑定插件里不用填账号密码:设置里点绑定,网站给一组设备码,确认一次就把插件挂到你账号下
记录列表每条记录带来源会话、时间与过期时间

网站是可选的。默认配置下插件一个字节都不上传,正文只存在于你自己的机器和 QQ 聊天记录里。 要用短链接,先在设置里打开 cloudEnabled 总闸。

想自己部署也可以,代码就在本仓库 server/ 下,见 server/README.md。

仓库结构

路径内容
根目录插件本体 —— 仓库根目录就是 npm 包,dsh.bundle 指向 cordis.patch.yml
server/dsh-web网站:账号、额度、记录、完整回答页面
server/dsh-notes-render把 markdown 渲染成网页,并生成 QQ 能展开的预览卡
docs/配置、接入 QQ、完整回答、开发等专题文档

上手:两步

  1. 装插件 —— 一条命令,见「安装」。
  2. 填一对 QQ 机器人凭证 —— DSH 里「设置 → QQ 远程提醒与跨会话记忆 → QQ 远程提醒」, 打开「QQ 机器人通道」,填 AppID 与 ClientSecret,然后重启 DSH。

不需要注册账号、不需要登录、不需要服务器、不需要公网 IP、不需要 frp。 插件直接连腾讯官方机器人接口:收事件走 WebSocket 纯出站长连接, 往会话里投递走本机 127.0.0.1 的 DSH 接口 —— 两头都不需要被外网访问。

要不要登录?只有一件事需要

你想要的功能要准备什么
跑完 / 提问 / 出错推送到 QQ;QQ 里引用回复;/status /sessions /screen /help只要一对 QQ 凭证
agentmd 自动操作日志、会话上下文注入只要填一个本机目录 agentmdDir
同一工作区多会话自动协作、QQ 闲聊零配置(默认就开着)
跨会话记忆(memory_read / memory_write)一个中枢地址(可自建)—— 可选
在 QQ 里点开「完整回答」的短链接一个云端账号 —— 唯一需要登录的功能,可选

把最后一行说白:只有「把完整回答存到服务器、换一条能点开的短链接」这一档需要登录。 它的默认档不需要任何账号 —— 正文切成几条直接发进 QQ,一个字节都不离开你的机器。 而且「允许上传正文」这个总闸 cloudEnabled 默认是关的:就算你把模式改成「存服务器」, 也传不出去(日志会写明是哪一道闸挡住的)。 真想要短链接,再看后面「完整回答去哪」那一节。

能做什么

#能力触发点
1任务完成推送到手机agent/status running → idle
2需要你回答问题时推送拦截 tools/pre-execute 的 ask_user_question
3执行出错时推送agent/error
4跨会话持久化记忆memory_write / memory_read / memory_forget
5agentmd 操作日志自动追加会话转 idle 时写入 main.md 第四节表格
6会话上下文注入agent/created 时把 main.md 全文注入 system prompt
7QQ 主动私聊通知任务完成 / 提问 / 出错时经官方机器人主动发给你
8QQ 引用回复 → 回到对应会话引用机器人发的某条消息再回复,就回到那条消息所属的会话
9DSH 设置里的独立一项「设置 → QQ 远程提醒与跨会话记忆」:图形界面改全部配置(含 QQ 凭证)
10输入框下方的两个低调小开关QQ 提醒 与 协作模式 各自一键开关,不影响连接、不用重启
11协作模式:同工作区多会话自动协作自动登记「谁在写哪个文件」,撞车当场提醒,会话之间可留言(可在输入框下方或设置里关掉)
12完整回答三档可选(默认不落服务器)chat=正文切成几条直接发到 QQ(默认)/ note=存服务器但不给链接 / note-link=存服务器并给短链接。见「完整回答去哪」
13闲聊:只看不动 + 回答直接回聊天框不引用直接发消息时,会话被切成只读(能查不能改),回答正文直接发回 QQ、不占服务器
14QQ 菜单里的「屏幕」→ 手机收到电脑截图点菜单「屏幕」(把 /screen 填进输入框)或直接发 /screen:抓所有显示器合成的整块桌面,压缩成 JPEG 发给你
15QQ 菜单里的「会话」→ 挑一个最近的会话说话点菜单「会话」(/sessions)→ 列出最近在聊的 6 个会话 → 回个数字就切过去;之后不引用消息直接说的话都进它,直到你再切

一句话记住入站规则:引用机器人的消息 = 对那条消息所属的会话说话; 不引用直接发 = 用 /sessions 指定过就进那个会话(有提问在等时优先当作答), 什么都没指定时才是闲聊(进独立的「闲聊会话」,不进任何工作会话)。

不打扰你的两类"完成":子智能体(subagent)跑完不推送 —— 它是你派出去的内部活儿; 闲聊会话跑完也不推送 —— 你人就在 QQ 里等着回复。两者都可用配置打开。

闲聊会话是"只读"的(默认开):机器人可以查状态、读文件、跑查看类命令, 但任何写入 / 修改 / 删除都会被拒绝,回答只做分析和建议。 ⚠️ 只读保护的是本机文件系统;它拦不住 shell 里去改远程主机(例如 ssh 到服务器上删文件)—— 那属于远程侧权限,需要服务端自己收紧。

闲聊的回答直接发在 QQ 聊天框里(默认开):不发推送卡片、也不上传「完整回答」笔记, 所以不会在服务器上留下任何文件;代价是超长回答会被截断(默认 1500 字)。

隐私默认值:云上传总闸 cloudEnabled 默认关闭。 关着的时候,即使模式选了「存服务器」,插件也一个字节都不会往服务器传, 而是退回「把正文直接切条发到 QQ」(日志会明说这件事)。 也就是说:默认配置下,你的回答正文只存在于你自己的机器和你的 QQ 聊天记录里。 想用短链接就得自己去设置里把这个总闸打开 —— 这是刻意的: 「把你的正文上传到别处的服务器」这件事必须由你明确同意。

安装

方式一:从 npm 装(推荐) —— 一条命令:

dsh plugin --profile desktop add dsh-remote-qqbot

方式二:从 GitHub 装 —— 仓库里带了构建好的 lib/,装完即可用,不需要本地构建:

dsh plugin --profile desktop add github:cyanovo/dsh-remote-qqbot

方式三:本机构建 tgz(改过源码,或想离线装):

cd dsh-remote-qqbot
npm run pack                                          # 产出 dsh-remote-qqbot-<版本>.tgz
dsh plugin --profile desktop add ./dsh-remote-qqbot-<版本>.tgz

用 dsh web 起的把命令里的 --profile desktop 换成 --profile web,其余不变。

三个容易踩的地方(都踩过):

坑说明
--profile 装错DSH 桌面版用 desktop;dsh web 起的用 web。装错 profile = 装了个看不见的
tgz 路径必须带 ./写 dsh-remote-qqbot-<版本>.tgz 会被 pnpm 当成 npm 上的包名 ⇒ ERR_PNPM_FETCH_404
升级要先 remove 再 addprofile 里残留指向已删除 tgz 的依赖时,add 在解析阶段就会 ENOENT

装完必须重启 DSH 进程才会加载 —— 桌面版是长驻进程,插件没有热加载。

装完第一件事:确认它活着

在 QQ 里给机器人发一句 /status,应该回:

📊 现在的状态
QQ 连着,有事我立刻能收到
引用回复能送进会话
没有在等你回答的问题
▶ 现在没有会话在跑,都闲着

回了就说明整条链路通了。没反应的话按这个顺序查(九成是前两条):

现象原因怎么办
发什么都没回还没重启 DSH,或凭证填错重启桌面版;检查 AppID / ClientSecret 有没有多余空格
通知收得到,但你引用它回复 → 回一句 ❌ 这句没送进 …:DSH 会话密钥不可用,无法注入桌面版把「会话签名记录」(~/.dsh/.credentials.yaml 里的 client-connection/browser-session,/api 的 cookie 用它签名)弄丢了。推送不需要它,所以通知照发 —— 故障只在入站,最难查插件 1.0.1 起会自己把这条记录补回来(原文件先备份到 ~/.dsh/.credentials.yaml.bak-remote-qqbot-*)。补完重启一次 DSH 桌面版即可恢复;/status 里会明确写着「引用回复送不进会话:…」以及已做过什么补救
日志说还不知道你的 open_id你还从没给机器人发过消息用你的 QQ 给机器人发任意一句话 —— open_id 只能从你发来的消息里被动学到,官方不提供「按 QQ 号查 openid」的接口
推送收不到,报 40054004 无好友关系没加好友用你的 QQ 把机器人加为好友
推送收不到,报 40054013 用户拒收消息QQ 客户端里关掉了主动消息在 QQ 的机器人会话设置里打开「允许主动发送」
推送收不到,报 40034105 主动消息无权限平台权限没开到 q.qq.com 的机器人权限里打开单聊主动消息

收得到 ≠ 回得进去。 这个插件有两条互相独立的腿:出站推送只走 QQ 长连接, 入站注入(引用通知接着聊、/task 派活、/sessions 挑会话)要走本机 127.0.0.1:19387/api,而那个接口的 cookie 由桌面版 ~/.dsh/.credentials.yaml 里的会话签名记录签名。所以「QQ 连着、通知正常」并不代表引用回复能用 —— 2026-10-04 的事故就是这条记录消失导致引用回复全线失效,而通知一切正常。 想一眼确认两条腿都在:QQ 里发 /status。

想知道「中枢 / 云端 / agentmd / 界面里改过的配置」各自落在哪、值是什么, 看 设置 → QQ 远程提醒与跨会话记忆 → 顶部「运行状态」(只读)。

工具

工具作用
agentmd_read读取 agentmd 主文档(或指定文件),支持 maxChars 截断
memory_write记住一条持久化信息
memory_read读取已记住的信息
memory_forget删除一条记忆
collab_status协作模式:看同工作区其他会话 + 文件占用 + 留言
collab_post协作模式:给其他会话留言
collab_claim协作模式:手动认领文件占用(写文件时插件已自动认领)
collab_release协作模式:释放文件占用(会话转空闲时也会自动释放)

完整回答去哪(三档)

档正文去哪要账号吗
chat(默认)切成几条直接发进 QQ不要
note存到网站,但 QQ 里不给链接要
note-link存到网站,并在 QQ 里给一条短链接要

三档的取舍、设备码绑定、短链接的实现细节,见 docs/FULLTEXT.md。

配置

在 DSH 里打开「设置 → QQ 远程提醒与跨会话记忆」,全部配置项都能在图形界面里改,不用手写 YAML。 配置文件是 ~/.dsh/settings.yaml,界面里改过的值会覆盖文件里的值。 全部字段、默认值、以及谁盖谁,见 docs/CONFIG.md。

文档

文档内容
docs/CONFIG.md配置写在哪个文件、谁盖谁、全部字段与默认值
docs/QQ.md接入 QQ 官方机器人:能力边界、配置步骤、指令、屏幕与会话
docs/FULLTEXT.md完整回答三档、设备码绑定、短链接
docs/COLLAB.md协作模式:同一工作区多会话自动避让
docs/AGENTMD.mdagentmd 自动操作日志与会话上下文注入
docs/DEVELOPMENT.md开发:测试、构建、代码结构、硬约束、自检
docs/ARCHITECTURE.md架构与内部实现:模块职责、数据流、状态文件、踩坑清单
CHANGELOG.md版本变更
LICENSEMIT

开发

npm install          # 装 DSH 自己的包,仅用于本地测试;跑起来时由 DSH 宿主提供
npm test             # 16 组测试
npm run pack         # 构建 + 打出 tgz

本机开发也可以不装依赖,用 node scripts/link-dev.mjs 建一个指向 DSH profile 的 node_modules 联接。 测试链、构建流程、代码结构与必须遵守的加载期约束,见 docs/DEVELOPMENT.md。

联系方式

装不上、报错看不懂、想要新功能,直接找我。

QQ 1103416608 | GitHub @cyanovo

License

MIT,见 LICENSE。

Comments

Loading…

From the same category

awesome-dsh-plugin

by awesome-dsh-plugin

A curated list of plugins for DeepSeek Harness (dsh) · DeepSeek Harness 插件精选列表

Development & Infrastructure

★ 18.3k

CC0-1.0

Python

Oct 10, 2026

Index only — not installable

by 0xsline

DeepSeek Harness (DSH) ecosystem: curated plugins, tools, and infrastructure from dsh-external/hub and the public dsh-plugin topic.

Development & Infrastructure

★ 1.2k

CC0-1.0

Python

Oct 10, 2026

Index only — not installable

by pax-beehive

Open-source CLI, schemas, resolver, and DSH agent tools for DSH Plugin Hub

Development & Infrastructure

★ 450

MIT

TypeScript

Oct 6, 2026

Index only — not installable

by xiajiajun516

DeepSeek Harness (DSH) backup & restore plugin — export, import, migrate and sync your complete DSH configuration, plugins, MCP servers, skills and workspace. One-click migration to another machine.

Development & InfrastructureManifest valid

★ 176

MIT

TypeScript

Oct 8, 2026

dsh plugin --profile web add dsh-config-manager

by yjh051108

推荐组件(非必须):DeepSeek Harness 运行时注入器;已随 dsh-routing-suite 单仓库化保留,本仓库继续维护/发布。

Development & InfrastructureManifest valid

★ 164

TypeScript

Sep 18, 2026

dsh plugin --profile web add @dsh-external/dsh-super-injector

by jigjoy-ai

A CLI that turns a goal into a pull request - and a sandbox for testing concurrent AI coding agents on the Mozaik runtime.

Development & Infrastructure

★ 124

MIT

TypeScript

Oct 2, 2026

Index only — not installable