前言¶
在 DSH 里读模型回答时,遇到术语或公式片段,常见做法是再发一条「这个词什么意思」——追问会进入会话日志、占用主对话上下文,上下文一长还要往上翻。另一种做法是在外部查资料,但会打断阅读节奏。
下面介绍社区插件 dsh-explain-selection(维护者 KLAX54ix,分类:客户端):在回答正文里选中文字,右键「解释」,贴着选区弹出讲解卡片;卡片内可继续选中或点击术语追问,支持拖拽、指向线与多级嵌套。解释由宿主通过 ctx.llm 流式生成,不写进会话日志、不进入主对话上下文。
这是什么¶
dsh-explain-selection 是 DeepSeek Harness(DSH)的客户端插件,当前版本 0.1.1,MIT 许可证。源码仓库:https://github.com/KLAX54ix/dsh-explain-selection;社区目录页:https://www.skillhub.cn/plugins/KLAX54ix/dsh-explain-selection。
它解决的核心问题是:就地消歧术语,又不把解释问答当成对话消息。卡片浮在回答上方,切换会话或项目时卡片与进行中的请求一并销毁;答案缓存仅在内存中,刷新或重启即失效。
核心功能¶
选中解释与嵌套追问¶
- 在回答里选中文字 → 右键 → 解释,卡片贴着选区弹出。
- 解释里带虚线下划线的术语可点击,在旁边开新卡片;也可在卡片正文里任意选中再解释,层数不限。
- 每张卡片底部可有浅灰小字,例如
已带上下文(上下文 172 字)或已带上下文(父术语「磁化率」+ 上下文 68 字),表示本次解释实际带上的消歧信息。
顶层解释会带选区前后各 120 字;在卡片里追问时带父卡片那段解释 + 父术语。答案约束为两句话以内、最多 80 字;同一句话里同一词重复解释时使用内存缓存,不发请求。
卡片交互¶
| 动作 | 操作 |
|---|---|
| 复制 | 右键菜单中的 复制 |
| 移动 | 抓住头部左侧 ⣿ 手柄拖动;拖走后头部出现 ⤺ 可归位,或双击手柄 |
| 指向线 | 拖动过程中有淡虚线从卡片指回所解释的文字 |
| 滚动页面 | 按住卡片不放时滚轮仍可滚动对话 |
| 收起 / 展开 | 头部 – 收成贴着原文的小胶囊;点胶囊展开 |
| 关闭 | 头部 ×;关闭父卡片时子卡片一起关闭 |
| 关闭右键菜单 | Esc、点击别处、滚动、缩放窗口 |
页面滚动或缩放时,未拖走的卡片跟着原文走;被拖走(停靠)的卡片停在用户放置的位置。收起父卡片时子卡片一起隐藏;展开后回到原位。
与主对话的关系¶
- 解释不进会话日志:宿主半体在自有路由里直接调用模型,不经过 agent loop。
- 不使用默认会话的模型切换逻辑时,插件使用当前默认模型(README 已知限制)。
- 选区跨词边界时,插件会说明这不是一个词、原本属于哪个词,不会编造含义。
性能与实现要点¶
插件会查询模型支持的推理强度档位并取最便宜的一档(通常为 off),避免 DeepSeek 适配器默认 high 推理占满 max_tokens 导致卡片截断;选中文本上限 400 字,输出上限 256 token。客户端文案目前硬编码中文,未接 ctx.locale。
安装与启用¶
命令行安装(非 Desktop 独占 profile 时):
dsh plugin add github:KLAX54ix/dsh-explain-selection
DSH Desktop:desktop profile 由 Electron 应用管理,命令行添加会被拒绝。请在应用内 设置 → 插件 → 添加插件,填写:
github:KLAX54ix/dsh-explain-selection
安装后重启一次应用:index.js 为宿主半体,仅在启动时加载;client.js 会自动热加载。
插件以当前 DSH 进程权限运行,安装前建议阅读仓库源码与 MIT 许可证。本插件在 DSH developer preview(README 提及 0.2.0-rc.2)期间开发,官方可能有破坏性变更,升级后若失效可在 GitHub 提 issue。
典型用法¶
- 打开一条包含专业术语的回答。
- 选中不懂的词(例如「临界指数」)→ 右键 → 解释,等待流式完成(界面可能显示
正在解释…)。 - 在卡片内继续选「磁化率」「幂律」等,或点击带虚线下划线的术语,逐层追问;全程主对话列表不应新增解释类消息。
- 需要调整位置时拖动手柄;阅读长回答时可收起卡片为胶囊,或关闭
×结束本条解释链。
术语是否可点击,取决于模型是否按约定输出 [[术语]] 标记;无标记时仍可用「选中 + 右键」嵌套。插件未做整段批量解释;缓存不持久化。
适用场景与注意¶
适合:在 DSH 客户端/Web 端阅读长回答、需要快速消歧名词或公式片段,且希望主对话保持「只有原任务消息」的开发者或重度用户。
注意:
- 解释依赖当前默认模型与网络,线索不足时模型会承认不确定。
- 切换项目或会话后卡片不保留。
- 社区目录(SkillHub)与 DeepSeek / 幻方无官方从属关系;DSH 生态理念是「一切皆插件」,本插件为社区维护的客户端扩展。
结尾¶
dsh-explain-selection 把「选中 → 解释 → 卡片内追问」做成不写入主对话上下文的阅读辅助,适合在 DSH 里啃技术回答时使用。目录页:https://www.skillhub.cn/plugins/KLAX54ix/dsh-explain-selection;源码与完整说明:https://github.com/KLAX54ix/dsh-explain-selection。