前言¶
DeepSeek Harness(DSH)支持为不同请求配置模型的思考(reasoning / thinking)等级,但常见入口在 Web 端的模型选择器里。你在对话中途想临时「少想一点」或「多想一点」时,往往要离开输入框去点选,切完再回来继续聊。
dsh-think-command 把「查看当前等级、切换到指定等级」做成聊天里的斜杠指令 /think,不占用模型轮次、也不写入模型历史;切换从下一轮回复开始生效,并写入会话的 model/selection,与会话一起持久化。下面介绍插件定位、安装方式与各通道上的用法。
这是什么¶
dsh-think-command 是社区维护的 DSH 客户端类插件,仓库 rootAyaka/dsh-think-command,维护者为 rootAyaka。它在 Harness 的 ctx.commands 指令适配器上注册 /think,并在安装了 @tencent-connect/dsh-qqbot 时,为 QQ 机器人通道做薄桥接,使 QQ 里也能执行与 Web 相同的指令逻辑。
npm 包名为 dsh-think-command-v3(历史命名),安装目标以 GitHub 仓库 github:rootAyaka/dsh-think-command 为准。当前资料中的版本为 1.4.0,许可证 MIT。
核心功能¶
指令一览¶
| 指令 | 作用 |
|---|---|
/think |
显示当前思考等级、当前模型,并列出该模型全部可切换等级 |
/think low |
切换到 low(等级不区分大小写,也接受显示名) |
/think <等级> |
切换到该模型支持的任意等级(如 off / low / high / max,以模型实际开放的等级为准) |
/think 高 |
中文别名:关闭 / 低 / 中 / 高 / 最高(映射到模型实际存在的等级) |
切换从下一轮回复开始生效;选择通过 Harness 会话级 model-selection(selectForNextRequest / model/selection 事件)落地,不会顺带改掉 profile 里 agent-default-model 的全局默认模型。
Web / CLI¶
凡提供 ctx.commands 指令适配器的通道,在输入框里可直接输入 /think。指令本身不消耗模型轮次、不进入模型历史。
QQ 机器人¶
在 @tencent-connect/dsh-qqbot 场景下,插件包装 QQBot.prototype.emit('message', …):消息交给模型前若为 /think,则按 QQ 插件的 sessionKey 规则找到对应 Agent,经 ctx.commands.execute 执行与 Web 相同的处理函数,再用 bot.sendMarkdown 回复;该条回复不会进入模型上下文。
QQ 回复里每个可切换等级会渲染为 <qqbot-cmd-input> 指令输入条,点一下即可把 /think <等级> 填入输入框。群聊仍需 @ 机器人(沿用 QQ 插件门禁)。没有活跃会话时,第一条 /think 会提示先发一条普通消息。
其他通道¶
有 ctx.commands 的通道自动获得 /think;没有指令适配器、也未做专门桥接的通道会把 /think 当普通文本。
等级元数据缺失时¶
若模型未声明 reasoningEfforts(例如手写 profile 未配置 pi-ai 等级),/think 会提示「没有开放思考等级」,不会猜测默认值。
安装与启用¶
本插件为 bundle 型:package.json 通过 dsh.bundle.patch 指向 cordis.patch.yml,向 profile 插入 command-think 行;宿主按 profile 依赖自动挂载,无需手工改 cordis.yml。
- 在 DSH 设置 → 插件 → 自定义安装中填写:
github:rootAyaka/dsh-think-command
- 或命令行(资料原文):
dsh plugin --profile web add github:rootAyaka/dsh-think-command
- 安装后重启
dsh web,或在插件管理器中启用插件。
实现入口为 lib/boot.v2.js:每次激活会用带唯一 query 的 URL 重新导入 lib/impl.js,因此在插件管理里关闭再启用 dsh-think-command-v3 即可热更新实现,不必重启整个 Harness。
典型用法¶
Web 聊天框
- 在输入框发送
/think,查看当前模型与可切换等级列表。 - 发送
/think high或/think 高,下一轮模型回复起使用对应思考等级。
- 私聊或群聊 @ 机器人后发送
/think。 - 在返回的 Markdown 里点击某个等级的指令条,确认发送
/think <等级>。
桥接诊断(QQ)
插件激活时会在 ~/.dsh/cache/dsh-think-command/bridge-status.json 写入状态;patched: true 表示 QQ 拦截钩子已挂到运行中的 QQBot/SessionManager。pid 为实际 Host 进程号。
仓库提供离线测试(需本机已装 dsh,且默认 profile web 中装有 @tencent-connect/dsh-qqbot):
node --import ./test/register-resolve-hook.mjs test/qq-bridge.test.mjs
适用场景与注意¶
适合谁
- 经常在 Web 或 QQ 里对话、需要按轮次调整思考深度、又不想改 profile 全局默认模型的 DSH 用户。
- 已使用
@tencent-connect/dsh-qqbot,希望在 QQ 里与 Web 一样用/think的用户。
使用前请知悉
- 插件以当前 dsh 进程权限运行;安装前建议阅读 仓库源码 与 MIT 许可证。
- QQ 桥接依赖 QQ 插件
SessionManager的内部模块路径(README 记载在 0.5.2 验证);QQ 插件大版本升级若改动路径,桥接会记 warning 并跳过,Web 端/think不受影响。 - 社区目录 SkillHub 插件页 与 GitHub 仓库由社区维护,与 DeepSeek / 幻方无官方从属关系。
结尾¶
dsh-think-command 把 Harness 会话级的思考等级从模型选择器搬到一句话指令:查看、切换、下一轮生效,且不污染模型历史。Web 走 ctx.commands,QQ 走同一套处理函数加 Markdown 回复。
- 目录页:https://www.skillhub.cn/plugins/rootAyaka/dsh-think-command
- GitHub:https://github.com/rootAyaka/dsh-think-command