dsh-think-command:在聊天里用 /think 切换思考等级

前言

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。

  1. 在 DSH 设置 → 插件 → 自定义安装中填写:
github:rootAyaka/dsh-think-command
  1. 或命令行(资料原文):
dsh plugin --profile web add github:rootAyaka/dsh-think-command
  1. 安装后重启 dsh web,或在插件管理器中启用插件。

实现入口为 lib/boot.v2.js:每次激活会用带唯一 query 的 URL 重新导入 lib/impl.js,因此在插件管理里关闭再启用 dsh-think-command-v3 即可热更新实现,不必重启整个 Harness。

典型用法

Web 聊天框

  1. 在输入框发送 /think,查看当前模型与可切换等级列表。
  2. 发送 /think high 或 /think 高,下一轮模型回复起使用对应思考等级。

QQ

  1. 私聊或群聊 @ 机器人后发送 /think。
  2. 在返回的 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
羽毛球分组比赛记分
小程序二维码

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

小夜