dsh-plugins

August 15, 2026 · View on GitHub

English | 中文

npm npm npm npm npm npm npm License

个人整理开发的一系列轻量级 DeepSeek Harness(dsh)Web 插件集合——每个插件都是 plugins/ 下独立的小包,为 DSH 工作台增加一项聚焦的能力(Cmd+/ 快捷键面板、斜杠命令工具、会话状态提醒等)。设计上强调低侵入:不改 harness 本体、不打补丁。所有插件均已发布到 npm,一条 dsh plugin add 命令即可安装,无需 clone 本仓库(见快速安装)。可单独使用、也可组合复用。

仓库同时整理了 DSH 开发参考资料(UI/UX 规范、主题 Token、插件编写规范等),辅助标准化开发,保持全局视觉与功能的统一性。

插件一览

dsh-keys-palette — 给 dsh 提供一个统一的快捷键管理面板(Cmd+/),并支持标准化扩展(keys.actions 注册表)。

dsh-tab-complete — 用 Tab 补全斜杠菜单里高亮的候选命令(命令 / 技能 / 子代理 / @ 文件),只补全、不执行。

dsh-session-browser — 让模型只读浏览同工作区里的其他会话:列出、读取、全文搜索。

dsh-tui-command-ext — 实现一套 CLI 常用斜杠命令(/clear/rewind/fork/resume 等),并借鉴 Qwen Code 做了不依赖 LLM 的上下文压缩命令 /compact-fast

dsh-session-status-alert — 提供全局的跨 session 状态提醒与审批(完成、挂起、问答、计划审核),类似 Vibe Island。

dsh-insights — 复刻 Claude Code 的 /insights:分析跨工作区会话用量,并生成本地交互式 HTML 报告。

dsh-plan-keeper — 把计划和记忆落盘,注入后续回合,并在产物(Deliverables)视图里查看。

插件状态

共 7 个插件 —— 7 个已就绪(已发布到 npm)。

状态插件npm 版本说明
已就绪dsh-keys-palette0.2.0npm / bundle 通道
已就绪dsh-tab-complete0.1.1npm / bundle 通道
已就绪dsh-session-browser0.2.0npm / bundle 通道;list_sessions / read_session / search_sessions;FTS 默认开启
已就绪dsh-tui-command-ext0.1.0npm / bundle 通道;由 dsh-clear-command + dsh-command-kit 合并而来
已就绪dsh-session-status-alert0.2.0npm / bundle 通道;client 半部带 timer inject
已就绪dsh-insights0.2.0npm / bundle 通道;reportPath / facetDir 可选(默认在 $DSH_HOME 下)
已就绪dsh-plan-keeper0.1.0npm / bundle 通道;memory_write + 产物视图

插件列表

插件要点安装方式
dsh-keys-paletteCmd+/ 非模态快捷键面板
• 内置快捷键目录
• 自定义绑定 + 冲突检测
• 绑定持久化到 localStorage
• 设置 → 快捷键
• 公共 keys.actions 注册表
• zh/en 界面
npm(bundle)— dsh plugin --profile web add dsh-keys-palette
dsh-tab-complete• Tab 补全高亮候选,不执行
• 按来源:命令 / 技能 / 子代理 / @ 文件
• popupSelect 保持裸 token
• IME 与带修饰键的 Tab 不补全
npm(bundle)— dsh plugin --profile web add dsh-tab-complete
dsh-session-browserlist_sessions / read_session / search_sessions
• 同工作区 cwd 限定
• UNTRUSTED 快照
• 有界的读/列表/搜索预算
• SQLite FTS 默认开启(有已知限制)
npm(bundle)— dsh plugin --profile web add dsh-session-browser
dsh-tui-command-ext• 合并后的 TUI 斜杠指令集
• 仅视觉交互(不回写对话)
/clear /rewind /fork /resume /archive /status /rename /unarchive /compact-fast /theme /lang
npm(bundle)— dsh plugin --profile web add dsh-tui-command-ext
dsh-session-status-alert• 跨工作区提醒:完成 + 挂起
• 弹窗内审批 / 问答 / 计划审核
• 堆叠 / 并排 / 分组布局
• 子代理完成过滤
• 设置页
• 偏好仅内存(刷新后恢复默认)
npm(bundle)— dsh plugin --profile web add dsh-session-status-alert
dsh-insights• 当前会话前台 /insightsagent.steer,可中断)
insights_collect / insights_facet / insights_aggregate / insights_render / insights_run 工具(facet 可 subagent 并行)
• 自包含交互式 HTML 报告,写到本地
--refresh--window N--max N 参数
npm(bundle)— dsh plugin --profile web add dsh-insights
dsh-plan-keeper• 计划落盘到 .dsh-outputs/plans/
• 分类型工作区记忆(user / feedback / project / reference
• 每轮注入 6KB 记忆
memory_write 模型工具
• 产物(Deliverables)会话视图
• 未鉴权的本机 RPC
npm(bundle)— dsh plugin --profile web add dsh-plan-keeper

快速安装

安装到运行中的 dsh 的 web profile(按需替换 profile 名)。全部 7 个插件统一走 npm / bundle 通道——dsh plugin add 安装包并自动挂载(下次启动 dsh 时生效):

dsh plugin --profile web add dsh-keys-palette
dsh plugin --profile web add dsh-tab-complete
dsh plugin --profile web add dsh-tui-command-ext
dsh plugin --profile web add dsh-plan-keeper
dsh plugin --profile web add dsh-session-browser
dsh plugin --profile web add dsh-insights
dsh plugin --profile web add dsh-session-status-alert
  • dsh plugin --profile <name> add <pkg> — npm / bundle 通道。声明了 dsh.bundle.patch 的包会自动加入 profile 的 bundle 栈;本集合全部插件均已声明。在下次启动 dsh 时生效。本地 checkout 用相对路径即可:dsh plugin --profile web add ./plugins/dsh-keys-palette
  • 开箱即用dsh-session-browser 默认开启 SQLite FTS 索引,dsh-insights 默认写到 $DSH_HOME/storages/insights/;两者都可在 profile 里覆盖(见各插件 README)。
  • ./scripts/install.sh <profile> plugins/<name> — 本仓库 checkout 的本地开发辅助脚本(安装包并往 cordis.patch.yml 追加 loader insert)。终端用户不需要;如果你之前用这种方式装过某个插件,切到 bundle 通道前请先删掉对应的 insert 行(混用会挂载两次)。

卸载(bundle 通道):dsh plugin --profile web remove <pkg>

开发规范

docs/ 目录整理了 DSH 插件开发的参考资料,辅助进行 dsh 的标准化开发,保持全局视觉与功能的统一性(内容均基于实际安装产物逐项核查,无编造数值):

文档内容
plugin-development.md插件编写规范:包结构、两种安装通道、npm 发布清单。
dsh-web-ui-design-spec.mdDSH Web 界面 UI/UX 设计规范(light/dark):主题 Token 系统、核心组件视觉、图标清单。
ask-user-question-mechanism.mdask_user_question 能力完整触发链路(模型 → 宿主桥接 → Web UI → 答案回传)。
parts/主题 Token / 图标 / 组件的明细清单。

开发计划(TODO)

  • 发布插件到 npm —— dsh-keys-palette @0.2.0、dsh-tab-complete @0.1.1、dsh-session-browser @0.2.0、dsh-tui-command-ext @0.1.0、dsh-session-status-alert @0.2.0、dsh-plan-keeper @0.1.0、dsh-insights @0.2.0
  • dsh-plan-keeper:已发布 @0.1.0
  • dsh-insights:前台 /insights 已发布 @0.2.0
  • 全部插件统一到 npm / bundle 安装通道(只需 dsh plugin add——dsh-session-browser / dsh-insights / dsh-session-status-alert @0.2.0)
  • dsh-keys-palette:改用 Host settings 持久化、跨标签页绑定同步、扩充内置动作
  • CI:变更时自动跑各插件语法 + npm pack 校验
  • 更多插件——欢迎提 issue / PR 建议

License

MIT —— 见 LICENSE(每个插件包内自带一份)。