dsh-qq-bot:在 QQ 群聊与私聊里接入 DeepSeek Harness

前言

DeepSeek Harness(DSH)把模型、会话和工具收进一个可扩展的宿主里;若要把 QQ 当成日常聊天入口,常见做法是自建 OneBot 桥接、再单独写一层调用逻辑,运维和权限边界都要自己扛。下面介绍社区插件 dsh-qq-bot(维护者 wufa-cat):通过 OneBot v11(NapCat)收消息,由 Harness 的 agent 回消息,并在 macOS / Windows 上尽量做到界面化配置,减少命令行与手动 clone 仓库。

本项目是 ezoiLZH/QQ-bot 的 DSH 插件移植,经原作者许可发布;人设协议、表情包机制、消息聚合、SKIP/LEAVE 冷却、群内指令等设计来自原项目。插件代码采用 MIT 许可证(见仓库 NOTICE)。目录页:skillhub.cn/plugins/wufa-cat/dsh-qq-bot;源码:github.com/wufa-cat/dsh-qq-bot。

这是什么

dsh-qq-bot 是 DSH 的「客户端 / 集成」向插件:每个(机器人, 群或私聊)维护持久 agent 会话,人设走系统提示词;NapCat 跑在 Docker 里,插件界面负责 compose 启停、扫码登录与环境自检。分类上在 DSH Hub 归为客户端能力,同时提供 host 与 web 界面(package.json 中 surfaces: host, web)。

核心功能

以下能力均来自项目 README 与 package.json 描述,可按需在界面或配置里启用。

会话与人设

  • 每个 (机器人, 群/私聊) 一个持久 agent 会话。
  • 人格文件位于工作目录 persona/*.md,可在插件界面编辑;管理员在群里发 /reload 换用新人设。
  • 消息聚合、冷却限频,以及 [SKIP] / [LEAVE] 行为(沿用原 QQ-bot 设计)。

表情包

  • 目录形如 stickers/<机器人名字>/<分类>/图片,模型回复里写 [动画表情:分类名] 后随机发送一张。
  • 界面支持上传、分类管理、测试;发送走 base64://,避免 NapCat 容器读不到宿主机路径。

工具白名单与联网(P0)

  • 聊天档默认不给任何工具,避免群友间接触发命令、写文件等能力。
  • 按需开启 webSearch(web_search)、webFetch(web_fetch);1.4.0 起插件在宿主全局层注册 web_search,并用 tools.guard() 拒绝 bash / write / edit / subagent 等危险工具。
  • 搜索后端为 Harness 内置 DeepSeek 官方搜索,凭据由 Harness 账号、DEEPSEEK_API_KEY 或设置里的网页搜索 Key 提供;聊天模型若走其他 provider,搜索仍可能需要单独的 DeepSeek 凭据。

运维与规则

  • 对话巡检:状态灯、最近事件、跳过原因、聊天记录尾部,便于排障。
  • 关键词规则:命中后直接回复,不进模型;指令优先于规则。
  • 定时消息:按 cron 式配置往指定群/私聊发送固定内容。
  • 长期记忆:编辑 data/memory-<chat>.json,新会话种子时注入摘要。

其他

  • 图片多模态、B 站/分享链接解析、群内指令(如 /ping、/表情、/reload 等,完整列表见 README)。
  • NapCat 服务的启动/停止/重启、扫码登录、环境自检、打开工作目录均在插件界面完成。

安装与启用

环境要求

  • 已安装 DeepSeek Harness(桌面版或 Web 版);插件要求 Node >=20、DSH >=0.1.5-alpha.1(见 package.json)。
  • QQ 侧需 Docker:NapCat 以 Docker Compose 运行。Windows 安装 Docker Desktop;macOS 可用 Docker Desktop 或 colima(README 给出 colima 示例命令)。Linux 可用系统 Docker,文档说明未做专门 UI 适配。

安装插件

安装命令以 README 为准,勿凭仓库名自行拼接 github:owner/repo 形式。

# 从 GitHub Release 安装(README 示例为 v1.3.2 包)
dsh plugin --profile desktop add https://github.com/wufa-cat/dsh-qq-bot/releases/download/v1.3.2/dsh-qq-bot-1.3.2.tgz

# 本地 tarball 或目录
dsh plugin --profile desktop add ./dsh-qq-bot-1.3.2.tgz
dsh plugin --profile desktop add /path/to/dsh-plugin

# Web 版将 --profile desktop 改为 --profile web

安装后完全退出并重启 Harness(桌面版 Cmd+Q 或托盘退出),让 Host 侧补丁生效。Release 页可查看更新版本:github.com/wufa-cat/dsh-qq-bot/releases。

界面配置三步

打开 设置 → QQ 机器人(或插件页对应入口)。

  1. 初始化目录:在工作目录(默认 ~/dsh-qq-bot,Windows 为 %USERPROFILE%\dsh-qq-bot)创建 persona/、stickers/、data/ 与 onebot/napcat-docker/ 等,已存在文件不覆盖。
  2. 启动服务并登录:先「环境自检」,再「启动服务」执行 docker compose up -d,在 NapCat WebUI 用机器人 QQ 扫码登录。
  3. 添加机器人:填写 QQ 号、名字、人设文件名、管理员 QQ、WS 地址(默认 ws://127.0.0.1:3001)与 Token;日志出现 qq-bot: 🤖 [名字] ... 表示连接成功。

典型用法

关键词自动回复

在插件配置中增加规则(YAML 结构见 README):

rules:
  - enabled: true
    pattern: 在吗
    mode: contains
    reply: 在的 {user}
    bots: [千早爱音]

定时群发

schedules:
  - enabled: true
    label: 早安
    at: "08:00"
    days: [1, 2, 3, 4, 5]
    bot: 千早爱音
    chat: group:123456789
    text: 早上好呀~ {weekday}

权限与联网开关

access 块可为 sticker、search、manage 分别设置范围(全员 / 仅管理员 / 白名单);管理员可用 /搜索 on|off 切换联网,用 /qqbot-status 查看工具是否真正可用(toolsAvailable.webSearch)。

适用场景与注意

适合谁:已在用 DSH、希望把 QQ 群或私聊当作 Harness 聊天入口、并需要人设、表情、规则回复与可控工具权限的团队或个人。

务必注意:

  • 插件在当前 DSH 进程权限下运行;安装前请阅读源码与 MIT/NOTICE,确认 NapCat、QQ 使用方式符合平台规则。
  • 群聊默认零工具是刻意设计;开联网搜索前评估 Messages 模式成本(README 说明单次搜索相当于完整模型调用,60s 超时、最多 5 次)。
  • DSH 社区目录(如 skillhub.cn)是独立生态站点,与 DeepSeek / 幻方无官方从属关系;本插件为非官方移植,二次分发请保留 README 中对 ezoiLZH 原项目的署名与链接。

结尾

dsh-qq-bot 把 NapCat、OneBot v11 与 DSH agent 会话收进一套界面化流程:从 Docker 启停、扫码登录,到人设、表情包、白名单工具、巡检与规则,都可以在 Harness 插件页完成大部分日常运维。进一步了解可访问 目录页 与 GitHub 仓库。

羽毛球分组比赛记分
小程序二维码

欢迎使用《羽毛球分组比赛记分》微信小程序

Xiaoye