dsh-qq-zone
IdentifiedPublishes and reads QQ Zone posts through SnowLuma's OneBot qzone_* actions (SnowLuma 2.2+ signed in to QQ), and lets the agent understand images with a local vision model (OpenAI-compatible gateway)
dsh-qq-zone
给 DSH 里的 QQ 机器人补两条能力:发 QQ 空间(说说 / 看图 / 点赞 / 评论 / 删)和识图(把图片交给视觉模型,或退回系统 OCR 读字)。
两条链路都复用你机器上已经有的东西,不需要再申请任何 key:
| 能力 | 后端 | 说明 |
|---|---|---|
| QQ 空间 | SnowLuma 的 OneBot qzone_* 接口(默认 127.0.0.1:3000) | 用的是机器人自己登录的那个 QQ |
| 识图 | DSH 本地 OpenAI 兼容网关(默认 127.0.0.1:8326)里的多模态模型 | 网关会把 DSH 里所有可用 provider 聚成一个出口 |
| 兜底 OCR | Windows 自带 WinRT OCR(Windows.Media.Ocr) | 视觉模型不可用时至少把图里的字读出来 |
安装
dsh plugin --profile desktop install github:LFELKEEA/dsh-qq-zone
或者本地开发时,把仓库链接进 profile(跟 dsh-peak-valley 一样的做法):
mklink /J "$env:USERPROFILE\.dsh\plugins\dsh-qq-zone" "D:\path\to\dsh-qq-zone"
然后在 ~/.dsh/profiles/<profile>/package.json 里加依赖与 bundle,重启 DSH。
工具
| 工具 | 用途 |
|---|---|
qzone_publish | 发说说。content 必填;images 可传本地路径 / http(s) / base64:// / data:;permission 默认 public,可选 friends / private(仅自己)/ some(配 targetUins)/ hide |
qzone_timeline | 看空间:source=mine(默认,我发的)或 source=feeds(好友动态),带 tid 方便后续操作 |
qzone_delete | 删一条自己的说说(要 tid) |
qzone_like | 点赞 / 取消赞;好友的说说建议同时给 targetUin 与 abstime |
qzone_comment | 评论说说(纯文字) |
qzone_profile | 读 / 改空间昵称与签名(`mode=get |
see_image | 看图:给本地路径 / http(s) / data: / base64:// / sha256: 附件 id,或直接给 QQ 消息 messageId;mode=describe(默认,理解画面+读字)或 mode=ocr(只认字) |
vision_status | 诊断:本地网关通不通、有多少个能看图的模型、OCR 兜底可不可用 |
通常不用配置
顺序是「环境变量 → SurfCore 配置 → 已知位置 → 默认值」:
- OneBot 端点:
QZONE_ONEBOT_HTTP/QZONE_ONEBOT_TOKEN→ SurfCoreconfig.json的snowluma.httpUrl与accessToken(也会读~/.dsh/surfcore/config.json)→http://127.0.0.1:3000 - 视觉网关:
DSH_OPENAI_GATEWAY_BASE/DSH_OPENAI_GATEWAY_PORT/DSH_OPENAI_GATEWAY_API_KEY→OPENAI_BASE_URL/OPENAI_API_BASE/OPENAI_API_KEY→~/.dsh/openai-gateway/api-key→http://127.0.0.1:8326(地址带/v1也行,会自动抹掉) - SurfCore 配置不在默认位置时:
SURFCORE_CONFIG=<路径>
环境要求
- Windows(只有 OCR 兜底依赖系统;其余平台也能跑,只是没有 OCR)
- DSH
>=0.2.0-rc.1 <0.3.0 || >=0.2.1-rc.1 <0.3.0 - SnowLuma 2.2+ 且已登录 QQ(
qzone_*是它提供的动作) - 想用识图:机器上要有一个 OpenAI 兼容网关。最常见的是第三方插件
dsh-our-free-model——它在127.0.0.1:8326把 DSH 里所有 provider 聚成一个出口,并把 key 写到~/.dsh/openai-gateway/api-key;也可以用OPENAI_BASE_URL+OPENAI_API_KEY直接指向 DeepSeek/任何兼容服务。不需要装或配置dsh-vision-router——see_image不经过它。- 一个网关都没有时,
see_image会自动退回 Windows OCR(只读文字、看不懂画面),vision_status会说清缺什么。
- 一个网关都没有时,
在 QQ 会话里用它
DSH 的 QQ 对话 preset 带了一个工具白名单守卫(surfcore/qq-tool-restrict.mjs),
不在名单里的工具注册得进来、执行会被拒。要用本插件的工具,需要把名字加进那份
SAFE_EXACT(显式名字,不要用前缀通配):
qzone_publish qzone_timeline qzone_delete qzone_like qzone_comment qzone_profile see_image vision_status
排错
| 现象 | 原因与处理 |
|---|---|
onebot-unreachable | SnowLuma 没跑 / QQ 掉线 / 端口不是 3000。vision_status 与 GET http://127.0.0.1:3000/get_login_info 都能验证 |
onebot-unauthorized | 令牌不对,或连到了别的账号(机器人号 / 个人号端口不同) |
onebot-action-missing | SnowLuma 太老,没有 qzone_* 动作 |
onebot-rejected + retcode | QQ 侧拒绝:空间没开通、没有权限、内容被风控 |
no-vision-model | 本地网关里没有能看图的模型:装一个视觉 provider,或只用 mode=ocr |
vision-backend-unavailable | 网关没起来(DSH 关掉它就没了),或模型上游报错 |
| OCR 读不出字 | 图里确实没字,或系统缺中文 OCR 语言包 |
测试
npm test
零运行时依赖;测试覆盖发现逻辑、OneBot 错误映射、图片输入(路径 / data URL / base64 / file:/// / sha256 附件)、视觉模型挑选与降级、工具注册与参数校验。
许可
MIT
相关
- dsh-peak-valley —— 峰谷时段自动启停 QQ 机器人
- dsh-default-model —— 固定 DSH 默认模型
Versions
| Latest version | Published | Size |
|---|---|---|
| 0.1.1 | — | — |
Comments
Loading…
Similar plugins
by cyhddyx
DSH QQ group/private chat tools: groups, history, send, faces, favorites, private chat, pokes (OneBot 11 / SnowLuma)
★ 0
MIT
JavaScript
Oct 31, 2026
dsh plugin --profile web add dsh-qq-toolsby Yuuyuko-uu
通到 QQ:DSH 里的 AI 伙伴和 QQ 双向互通 —— 它说完话自动发到 QQ,你在 QQ 说的话自动转进 DSH(走 OneBot 11 HTTP,NapCat / SnowLuma 都行)
★ 149
↓ 1.6k/wk
MIT
JavaScript
Oct 31, 2026
dsh plugin --profile web add dsh-qq-bridgeby Yuuyuko-uu
通到 QQ:DSH 里的 AI 伙伴和 QQ 双向互通 —— 它说完话自动发到 QQ,你在 QQ 说的话自动转进 DSH(走 OneBot 11 HTTP,NapCat / SnowLuma 都行)
★ 164
↓ 2.1k/wk
NOASSERTION
JavaScript
Nov 2, 2026
dsh plugin --profile web add dsh-qq-linkby moyu474
把 QQ 接入 DSH 的部署插件。带 lite 模式(¥0.001/次)。
★ 4
NOASSERTION
JavaScript
Nov 2, 2026
dsh plugin --profile web add dsh-qqbridgeby Chr1sut1na
QQ 机器人边界守卫:工具防火墙 + 角色内回避约束(dsh 插件)
★ 3
MIT
JavaScript
Oct 20, 2026
dsh plugin --profile web add dsh-qqbot-guardConnects QQ private chats and groups to DSH over OneBot 11, adding qq_send and other tools so the agent can reply, send stickers and wait for follow-ups.
★ 0
dsh plugin --profile web add dsh-onebot-channel