前言¶
在 DeepSeek Harness(DSH)生态里,Skill 与 MCP 服务器往往散落在 profile 配置、工作区目录和 ~/.dsh 下的文件中。浏览器端的 dsh-skill-mcp-panel 可以可视化管理,但若你长期在终端里用 dsh-TUI,切到 Web 再改配置会打断工作流。下面介绍面向 dsh-TUI 的客户端插件 dsh-tui-skill-mcp-panel:在 TUI 内输入 /skill-mcp 打开全屏管理场景,查看、启停、添加、分组 Skill 与 MCP,改动尽量热加载,不必重启 TUI。
这是什么¶
dsh-tui-skill-mcp-panel 由社区维护者 wuqiuwangtian 发布,归类为 DSH 生态的客户端插件(SkillHub 目录:wuqiuwangtian/dsh-tui-skill-mcp-panel)。仓库:github.com/wuqiuwangtian/dsh-tui-skill-mcp-panel。
一句话定位:给 dsh-TUI 用的 Skill 与 MCP 可视化管理面板,入口是 slash 命令 /skill-mcp 背后的全屏场景(README 中标注开发阶段含 M0 探测 / M1 骨架,当前以 README「功能与进度」表为准)。
核心功能¶
以下能力均来自仓库 README(截至文档中的开发状态说明 2026-11-09)。
技能(Skill)¶
| 能力 | 状态 |
|---|---|
| 只读:全局/工作区列表、详情、作用域筛选、搜索 | 已实现 |
写入(M2 P0):启用/停用(*.disabled)、软删除 + 回收站撤销、本地路径添加/导入、分组、批量 |
已实现 |
| 迁移/复制、zip 导入 | P1,未实现 |
MCP¶
| 能力 | 状态 |
|---|---|
| 列表/启停;stdio/HTTP 新增表单 | 已实现 |
本面板受管行编辑、删除、撤销;!!js 保留与脱敏 |
已实现(README 称 M4) |
| 已有 profile 行仍仅支持启停,home 层只读 | 已实现 |
| 按 profile 隔离的 MCP 分组、搜索与状态筛选 | 已实现 |
| 连接测试 | P1 可选 |
分组、诊断与入口¶
- 分组:显示层分组、加入/移出、按组过滤;技能分组与 web 版共享
groups.json(v1);MCP 分组存私有配置并按 profile 隔离;组内批量动作为 P1。 - 诊断:发现根与路径、frontmatter 合法性、遮蔽/停用状态、宿主能力探测;锁 / 备份 / 回收站(M2+)等基础能力。
- 入口:
/skill-mcp打开全屏场景。
热加载¶
- 技能:磁盘 watcher。
- MCP:HMR 重组合;保存后面板显示「已保存,热加载中…」,生效后改为「已生效」。README 注明 MCP 配置写入后 HMR 约 2–2.5 秒,不承诺瞬时生效。
安装与启用¶
npm 尚未发布。 插件以 trusted-in-process 方式运行:与宿主同进程、无沙箱,能读写 README 披露的配置与技能路径;permissions: [] 不构成文件系统隔离。安装前请自行核对源码与 MIT 许可证。
README 给出的发布后安装命令为:
dsh plugin --profile dsh-tui add dsh-tui-skill-mcp-panel
当前版本号在 package.json 中为 0.1.0-dev.0。从源码安装、构建与真机验证见仓库 AGENT.md §7。本任务禁止 git clone,未发布前请按维护者文档在可信环境中自行拉取与构建。
典型用法¶
- 在 dsh-TUI 中输入
/skill-mcp并回车,打开管理场景;Esc或q关闭。 - 用方向键在「焦点」区域间移动(类似文件管理器);
Tab或数字1–4切换页签(技能、诊断、MCP、分组等,以界面为准)。 - 技能页:全局/工作区筛选、搜索;
空格启停,d软删除,u撤销,a本地路径导入,v多选批量,g管理分组。 - MCP 页:
a新增;Enter编辑、d删除、u撤销本面板受管行;空格启停 profile 行;g分组,f状态与分组筛选,/搜索,x清除过滤;i查看已知配置字段的脱敏详情。 - 分组页:
t切换技能/MCP;可新建、重命名、删除分组;共享技能分组若遇外部修改拒写,按大写R刷新后重试。 - 通用:
/搜索,r重新扫描,?帮助。场景可用区域至少 40×16(宿主提供给场景的区域;终端窗口通常还需留出宿主边距)。
MCP 表单中 args 使用 JSON 字符串数组,例如:
["--port", "3000"]
env / headers 每行 KEY=VALUE,支持 ${ENV} 表达式;敏感值输入隐藏,保存前只显示变更字段。
适用场景与注意¶
适合谁:主要在 dsh-TUI 里作业、需要与 Web 面板相近的 Skill/MCP 管理能力、又希望留在终端内的用户。与 Web 版共享部分磁盘约定(*.disabled、groups.json、补丁锁等),但受管块标记名不同;同时编辑同一分组文件时需注意 README 所述锁与冲突行为。
兼容性(README):
- 目标宿主:
@deepseek-harness-tui/dsh-tui>=0.19.0 <0.20.0 - DSH 内核:
0.2.2-rc.1线;Node>=24.9(package.jsonengines 为^22.19 || >=24)
信任与权限:插件不申请额外权限声明、不安装插件、不执行用户命令、不 eval 用户表达式;但仍直接读写 ~/.dsh 下技能文件与当前 profile 的 cordis.patch.yml,写前备份、原子写。卸载面板会保留已保存的 MCP、分组、备份和回收站;MCP 与技能启停状态不会随管理器卸载而自动恢复。
已知限制(节选):
- MCP 无「工作区级」,仅有 profile 可写层与 home 全局只读层。
- 只支持本面板新增的 MCP 受管行做完整编辑/删除;未知 YAML 结构可能拒写。
- 技能发现不递归嵌套目录,与 DSH 内核一致。
- 首版不做技能正文编辑、插件安装/更新、MCP OAuth、单工具禁用、伴随 CLI 等。
DSH 社区插件目录(如 SkillHub)由社区维护,与 DeepSeek / 幻方无官方从属关系;选用插件前请阅读仓库 docs/需求文档.md 与 docs/release-readiness.md 了解发布前验收状态。
结尾¶
dsh-tui-skill-mcp-panel 把 Skill 与 MCP 的日常运维收进 dsh-TUI 的全屏场景,并与 Web 版在分组和部分文件约定上对齐,适合不愿在 TUI 与浏览器之间来回切换的开发者。当前 npm 未发布,安装命令以上述 README「发布后」一行为准;细节与进度以 GitHub README 与 docs/ 为准。