dsh-quick-explain
Verifieddsh-quick-explain · v1.0.9 · MIT · Web UI
Select a fragment of a chat and open a temporary side conversation that explains it — without touching the main session. A DeepSeek Harness (dsh) plugin.
Install
dsh plugin add dsh-quick-explain Confirm the layer applied with dsh --profile default --dump-config — see the install guide.
Source
Tags
Creators
Readme
dsh-quick-explain
在对话里选中一个词或一句话,问它是什么意思——答案留在一边,不进入你的主对话。
dsh-quick-explain 是一个 DeepSeek Harness(dsh)插件:在任意消息里选中文字,点 💡 解释,右侧会打开一个临时解释对话。它解释这段内容、支持继续追问,关闭即消失;主对话的历史和上下文一个字都不会变。
为什么需要它
长任务进行到一半,突然有一个词、一个缩写或一句话没看懂。直接问主助手,代价是这一问会进入会话日志、进入模型上下文,并影响之后的每一次请求。这个插件给你一个独立、用完即弃的解释器。
功能
- 选中即解释:在对话中选中 1–1200 字,选区旁浮出「💡 解释」按钮。
- 就地解释:右侧面板流式输出解释,并自动把选区所在段落作为上下文。
- 可以追问:在面板里继续问,问题只留在临时对话里。
- 对主会话零影响:不追加任何会话事件、不新增消息、不改变主对话的模型请求。
- 用你自己的模型:通过 DSH 的
ctx.llm.stream和你配置的默认模型调用。 - 原生外观:面板是贴在右侧的整高面板,颜色、0.5px 细线、圆角、字号和动效全部取自 DSH 自己的主题 token,看起来是应用的一部分,而不是一张第三方卡片。
- 设计上可丢弃:关闭面板或闲置 30 分钟后,临时对话从 Host 内存中删除。
- 纯本地:面板只访问你正在运行的 DSH 进程内的路由,没有额外服务、没有遥测。
安装
DSH Desktop:打开 Plugins 页面(侧边栏,或 设置 → 插件)→ Add plugin:
- 在 Package name or address 填
dsh-quick-explain。 - 点 Install,然后 Enable now。如果 DSH 提示重启生效,请完全退出应用再打开。
如果 npm 访问不了,也可以改填 .tgz 的完整路径(npm pack dsh-quick-explain 打包下载),或 github:JujiuYey/dsh-quick-explain。
使用
- 在消息里选中一段文字。
- 点选区旁的 💡 解释。
- 阅读解释;在底部输入框继续追问,
⌘/Ctrl + Enter发送。 - 点
×或按Esc关闭,临时对话即被丢弃。
工作原理
选区
│ client.js: start(quote, context)
▼
POST /api/quick-explain (插件自己的同源路由)
│
▼
index.js: 内存中新建 thread → ctx.llm.stream(...)
│
│ client.js 每 350ms 轮询:{endpoint:'poll', threadId}
▼
{state, text, error} → 面板渲染增量文本
主对话的 Session 不在这条链路上。临时对话不产生任何会话事件,因此不会影响回放、压缩或下一次模型请求。
文件
| 文件 | 作用 |
|---|---|
index.js |
Host 半边:/api/quick-explain 路由、内存对话、模型调用、空闲回收 |
client.js |
Client 半边:选区监听、浮动按钮、右侧面板、轮询 |
cordis.patch.yml |
把插件行插入 profile |
locale/*.json |
插件列表里的标题与描述(中/英) |
icon.svg |
插件图标 |
开发
把本目录作为 Local directory bundle 安装,修改后重启 DSH 以加载新的客户端代码:
npm pack # 生成 dsh-quick-explain-<version>.tgz
Host 半边(index.js)是无构建步骤的 ESM;Client 半边(client.js)是向 window.__ModuleLoader__ 注册懒加载工厂的普通脚本。
要求:DSH 0.2.1-rc.2 或提供 ctx.connection.fetch、ctx.llm、ctx.agentDefaultModel 以及 shell.overlay 客户端槽位的兼容版本。
隐私
选中的文字、它所在的段落以及你的追问会发送给 DSH 中配置的模型提供方——也就是你主对话已经在用的同一个提供方。临时对话本身只存在于 Host 进程内存:不写入会话日志、不落盘,重启即清空。
已知限制
- 解释器只能看到选区和它所在的段落,看不到完整会话历史——这是"不触碰主会话"的代价。
- 回答支持轻量行内 Markdown(
**粗体**与`代码`),不解析标题和列表。 - 临时对话是进程内状态,重启 DSH 后清空。
- 界面文案目前只有中英文。
开发
客户端由 src/ 打包成单个注入脚本:
npm install # prepare 钩子会自动构建
npm run build # 重新生成 client.js
许可证
MIT © 2026 JujiuYey