前言¶
DeepSeek Harness(DSH)桌面版默认是按会话工作的,每次新开一个会话就要消耗 token,长会话会把顶部操作区挤走。想随手查个东西、问个小事,还得另开浏览器或新会话。DSH 插件生态的思路是「一切皆插件」,在官方插槽上叠加功能,而不是修改应用本身。
下面介绍的 dsh-ask-assistant 就是这么一个插件:它在 DSH 侧边栏底部动作区加一个「问助理」按钮,点击后用右侧栏的内置浏览器打开 DeepSeek 网页版对话。随手问小问题不消耗会话 token,也不污染工作区上下文。
是什么¶
dsh-ask-assistant 是一个为 DeepSeek Harness 桌面版提供的插件,由 ytftu 维护。它的核心是把「问助理」的能力从会话对话区移到侧边栏底部动作区,通过官方插槽挂载,不修改应用本体。
插件挂在 DSH 官方的侧边栏底部动作插槽(sidebar.footer.action)里,和「设置」齿轮同一行。侧边栏展开、收起两种状态都由 DSH 自己排版,不依赖 CSS Modules 哈希选择器,也不使用 MutationObserver 硬插节点。
核心功能¶
挂载方式¶
插件提供两种挂载通道,二选一:
- bundle 通道(推荐):把包名加进
dsh.profile.bundles,DSH 会读package.json的dsh.bundle.patch,自动加载包内补丁层里的insert条目。 - patch 通道:在 profile 的
cordis.patch.yml末尾自己写:
- insert:
- id: ask-assistant
name: 'dsh-ask-assistant'
这里必须写包名,不要写成 ./cordis.patch.yml 之类的相对路径。
点击行为¶
点击按钮走官方 sidebarRight.openTab('browser', …),在右侧栏开一个内置浏览器标签页加载 https://chat.deepseek.com。登录态与浏览器分区由 DSH 自己管理。
配置¶
想换成别的问答站点,改 lib/client.js 顶部的 ASSISTANT_URL 即可。
安装与启用¶
方式一:本地链接安装(推荐,改代码即时生效)¶
# 1. 把插件目录放到任意位置,例如 C:\Users\<你>\.dsh\plugins\dsh-ask-assistant
# 2. 在 DSH profile 的 package.json 里登记依赖(link: 指向插件目录,路径用正斜杠)
# "dsh-ask-assistant": "link:C:/Users/<你>/.dsh/plugins/dsh-ask-assistant"
# 3. 在同一个 package.json 的 dsh.profile.bundles 数组末尾加一项
# "dsh-ask-assistant"
# 4. 建好 node_modules 里的链接(任选其一)
# a) pnpm install —— 干净环境最省事
# b) 手动建 junction —— pnpm 供应链策略拦住时的替代做法
New-Item -ItemType Junction `
-Path "C:\Users\<你>\.dsh\profiles\desktop\node_modules\dsh-ask-assistant" `
-Target "C:\Users\<你>\.dsh\plugins\dsh-ask-assistant"
# 5. 完全退出 DSH 再启动
方式二:npm 安装(发布之后)¶
cd C:\Users\<你>\.dsh\profiles\desktop
pnpm add dsh-ask-assistant
然后把 dsh-ask-assistant 加进 package.json 的 dsh.profile.bundles,重启 DSH。
典型用法¶
安装后,在 DSH 侧边栏底部动作区会多出一个「问助理」按钮。侧边栏收起时图标是 14px,展开时是 16px。点击按钮,右侧栏会打开一个内置浏览器标签页,加载 https://chat.deepseek.com,可以直接对话。
如果需要更换目标地址,编辑 lib/client.js 顶部的 ASSISTANT_URL,然后重启 DSH。
适用场景与注意¶
适合在 DSH 中频繁需要「随手问个小问题」的场景,比如查个定义、翻译一句话、验证一个代码片段。不需要消耗会话 token,也不影响现有会话上下文。
插件以当前 DSH 进程权限运行,安装前应检查源码与许可证。若宿主缺少 sidebarRight(比如版本改名),按钮仍在但点击无反应,不会报错,不影响其它功能。
短结尾¶
dsh-ask-assistant 通过官方插槽挂载,不修改 DSH 本体,零依赖,改完 lib/client.js 需要重启 DSH 桌面端。适合不想消耗会话 token 的随手问事场景。