dsh-tui-skill-mcp-panel:在 dsh-TUI 里管理 Skill 与 MCP

前言

在 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,未发布前请按维护者文档在可信环境中自行拉取与构建。

典型用法

  1. 在 dsh-TUI 中输入 /skill-mcp 并回车,打开管理场景;Esc 或 q 关闭。
  2. 用方向键在「焦点」区域间移动(类似文件管理器);Tab 或数字 1–4 切换页签(技能、诊断、MCP、分组等,以界面为准)。
  3. 技能页:全局/工作区筛选、搜索;空格 启停,d 软删除,u 撤销,a 本地路径导入,v 多选批量,g 管理分组。
  4. MCP 页:a 新增;Enter 编辑、d 删除、u 撤销本面板受管行;空格 启停 profile 行;g 分组,f 状态与分组筛选,/ 搜索,x 清除过滤;i 查看已知配置字段的脱敏详情。
  5. 分组页:t 切换技能/MCP;可新建、重命名、删除分组;共享技能分组若遇外部修改拒写,按大写 R 刷新后重试。
  6. 通用:/ 搜索,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.json engines 为 ^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/ 为准。

羽毛球分组比赛记分
小程序二维码

欢迎使用《羽毛球分组比赛记分》微信小程序

Xiaoye