前言¶
DeepSeek Harness(DSH)侧边栏顶部有一组与插件相关的入口:插件市场、自动化任务、上下文洞察、更多。日常用 Harness 时,会话列表往往更需要纵向空间,但这些入口默认始终占着侧栏上半截。官方侧栏行组件目前没有「行尾操作」插槽,单靠设置很难把整块区域折起来又不丢返回路径。下面介绍的 dsh-sidebar-plugins-toggle(列表显示名:收起侧边栏,英文 Collapse Sidebar)在「插件」那一行最右侧加一个小箭头:点一下收起上述插件区,再点一下展开,并把折叠状态记在浏览器本地。
这是什么¶
- 仓库:Hanice404/dsh-sidebar-plugins-toggle
- 维护者:小黑(Hanice404)
- 分类:客户端插件(浏览器 / Electron 渲染层逻辑,
index.js为空实现,实际工作在client.js) - 许可:MIT(© 2026)
- 当前包版本(
package.json):0.1.1
插件在侧边栏「插件」行右侧绘制箭头控件;「插件」这一行始终保留,否则控件会随 DOM 消失而无法展开。所谓「插件区」指「插件」行以下的面板入口(插件市场、自动化任务、上下文洞察、更多)。收起后只留「插件」一行,其下空间归会话列表使用。
核心功能¶
资料中写明的能力如下,安装前可按需对照源码核对。
- 折叠 / 展开:点击行尾箭头;默认展开,箭头朝下(▾),收起后箭头朝右(▸)。
- 状态持久化:折叠状态写入
localStorage,键名为dsh-sidebar-plugins-toggle:collapsed,刷新页面后保持。 - 轨道模式:侧栏折成约 56px 图标轨道时,箭头自动隐藏,且不收起任何入口(避免无箭头时无法恢复)。
- 不误触面板:点击箭头在捕获阶段拦截事件,不会顺带打开「插件」面板。
- 多语言:提示文案覆盖 DSH 支持的 8 种语言;支持 Tab 聚焦与 Enter / 空格操作。
- 自维护对齐:通过
MutationObserver等在 React 重渲染、整行替换、切换语言、面板重新注册后重新对齐;找不到侧边栏时不抛错。 - 兼容性声明:针对 DSH
0.2.2-rc.1(@deepseek-ai/dsh-client-ui-sidebar@0.2.2-rc.1)验证;平台为 Web / Electron 渲染层。
安装与启用¶
README 要求先确认 DSH 版本为 0.2.2-rc.1(按该版本侧边栏结构验证过)。安装命令须使用资料原文,不要自行拼接其他 CLI 形式。
1、进入你实际使用的 profile 目录(示例为桌面 profile):
cd ~/.dsh/profiles/desktop # 换成你实际使用的 profile 目录
2、用 pnpm 从 GitHub 安装:
pnpm add github:Hanice404/dsh-sidebar-plugins-toggle
3、在同一目录下的 package.json 中,把包名加入 dsh.profile.bundles:
{
"dsh": {
"profile": {
"bundles": [
"…",
"dsh-sidebar-plugins-toggle"
]
}
}
}
4、刷新一次页面(DSH 右上角刷新,或重新打开应用),箭头应出现在「插件」行右侧。
本地改插件源码时,可用 link 免重装(路径改为本机绝对路径):
cd ~/.dsh/profiles/desktop
pnpm add "link:/absolute/path/to/dsh-sidebar-plugins-toggle"
改代码后刷新页面即生效。
典型用法¶
界面示意(来自 README,字符仅用于说明布局):
展开(默认)
▣ 插件 ▾ ← 点这里
▣ 插件市场
⏱ 自动化任务
▤ 上下文洞察
⊞ 更多
收起
▣ 插件 ▸ ← 再点一下展开
── 工作区 ──
操作只有两步:点箭头收起插件区;再点同一箭头展开。需要长期保持收起时,依赖 localStorage 即可,无需额外配置项(资料未列出其他配置字段)。
卸载¶
1、从 dsh.profile.bundles 中删除 dsh-sidebar-plugins-toggle。
2、在同一 profile 目录执行:
cd ~/.dsh/profiles/desktop && pnpm remove dsh-sidebar-plugins-toggle
实现要点(便于审计)¶
插件未修改官方 @deepseek-ai/dsh-client-ui-sidebar 包,而是在面板行按钮尾部追加原生 DOM 宿主节点 data-dsh-pst-host,用 CSS 隐藏除「插件」行以外的 nav 直接子节点。Host 端保持空实现,是为避免桌面端将启动失败的插件条目视为致命错误。若日后官方提供行尾操作插槽,README 称可能改为插槽实现并同步文档。
客户端插件在当前 DSH 进程对应的渲染环境中运行;安装前建议阅读 仓库源码 与 MIT 许可证,确认行为符合你的环境策略。
适用场景与注意¶
- 适合:经常在 Harness 里长会话列表、希望临时收起插件相关入口、又不想改官方 UI 包的用户。
- 不适合或需留意:侧栏结构若与
0.2.2-rc.1差异较大,折叠定位可能失效;轨道模式下本就不提供折叠。 - 生态说明:DSH 主张「一切皆插件」;社区目录 SkillHub 插件页 与 GitHub 为独立分发渠道,与 DeepSeek / 幻方无官方从属关系。
仓库另提供 npm test(Chrome/Chromium 端到端,25 项检查),面向开发者自测,一般使用者按上文安装即可。
结尾¶
dsh-sidebar-plugins-toggle 用一行箭头收放侧边栏插件区,并把状态留在本机浏览器,改动面限于客户端 DOM 装饰。需要安装步骤与示意图时,可查 SkillHub 目录 与 GitHub README。