前言¶
DeepSeek Harness(DSH)通过 @deepseek-ai/dsh-skill-filesystem 发现以 SKILL.md 为载体的 skill 包,但默认没有专门的管理界面。装多了 skill 之后,要查名称、调用方式、来源仓库和磁盘路径,往往只能自己翻 ~/.dsh/skills 里的符号链接布局。安装、卸载、从镜像仓库拉更新、检查死链和 frontmatter,也缺少一套统一入口。
社区插件 dsh-skill-console(GitHub:mi-lu-uncle/dsh-skill-console,维护者 mi-lu-uncle,分类:客户端)在客户端侧提供只读的 Settings → Skills 面板,在宿主侧提供 /skills 等四条斜杠命令,读写都围绕 ~/.dsh/skills 的 symlink 布局(git pull 再 reconcile),变更后由 DSH 的 watcher 热加载。
这是什么¶
dsh-skill-console 是 DSH 社区插件:一个 Skills 设置面板 加上 命令行 skill 管理器。当前 npm 包版本为 1.0.1(MIT 许可证),与 DSH 0.2.0-rc.2、0.2.1-rc.2 在插件元数据中标记为 compatible。
核心功能¶
客户端:Skills 面板¶
- 入口:主侧边栏 Skills 图标(与 Plugins 相邻),以及 Settings → Skills。
- 以搜索为中心:居中搜索栏 + 全宽卡片列表;筛选 按钮打开侧栏,可按来源、调用方式、排序过滤。
- 点击卡片打开详情抽屉:描述、invocation、来源、路径;可复制
/name命令;可 uninstall。 - 顶栏支持:从 git URL 或本地路径 安装 skill(预览 → 选择 → link)、更新 默认镜像
mattpocock-skills、运行 健康检查。
宿主:四条斜杠命令¶
| 命令 | 作用 |
|---|---|
/skills |
列出当前会话中的 skill(名称 · invocation · 来源 repo),可按关键词过滤 |
/skills-uninstall <名字> |
卸载已安装的 skill |
/skills-update [仓库名] |
拉取 repo mirror 并重新同步链接;省略时默认 mattpocock-skills |
/skills-doctor |
健康检查:死链、无效 frontmatter、孤立 mirror 等 |
/skills 每行格式为 - /name [invocation · 来源:repo] — description。其中 invocation 可能为 模型+用户、仅模型、仅用户、未开放;来源 为 symlink 指向的 repo mirror 名,或非仓库 skill 的发现根标签(如 内置、DSH用户、项目 等)。
实现分工(便于对照源码)¶
| 文件 | 职责 |
|---|---|
lib/index.js |
宿主:四条命令 + 面板用的 /api/skill-console/list |
lib/client.js |
客户端:Settings「Skills」面板(React) |
cordis.patch.yml |
将包挂载为一条 host row 的 bundle patch |
安装与启用¶
推荐从 GitHub 仓库安装(desktop profile):
dsh plugin --profile desktop add https://github.com/mi-lu-uncle/dsh-skill-console.git
也可从本地路径或 tarball 安装:
dsh plugin --profile desktop add /absolute/path/to/dsh-skill-console
dsh plugin --profile desktop add ./dsh-skill-console-1.0.0.tgz
说明:以 link: 方式安装的插件不会被 HMR 监视;若修改 lib/index.js 或 lib/client.js,需重启应用后生效。
典型用法¶
先在会话里列出或筛选 skill:
/skills # 列出本会话全部 skill
/skills docx # 按名称、描述、whenToUse 等关键词过滤
维护安装与镜像:
/skills-uninstall pr # 卸载名为 pr 的 skill
/skills-update # 更新默认 mirror mattpocock-skills
/skills-update my-repo # 更新指定 repo mirror
/skills-doctor # 结构与健康检查
面板上的安装、更新、卸载、健康检查与上述命令等价,可按习惯二选一或混用。
配置¶
默认管理目录为 ~/.dsh/skills(skill)与 ~/.dsh/repos(repo mirror)。若路径不同,可在 profile patch(cordis.patch.yml)里覆盖 skill-console 行:
- id: skill-console
config:
skillsDir: /Users/you/.dsh/skills # default
reposDir: /Users/you/.dsh/repos # default
适用场景与注意¶
适合谁: 经常在 DSH desktop 里增删、更新 community skill,或需要一眼看清「叫什么、怎么调、从哪来、落在哪」的开发者。
权限与安全: 插件以当前 DSH 进程权限运行;/skills-uninstall、/skills-update 等会读写本地 skill 目录并对 mirror 执行 git pull。安装前应阅读仓库源码与 MIT 许可证,确认来源可信。
生态说明: DSH 采用「一切皆插件」思路;SkillHub 等社区目录为独立站点,与 DeepSeek / 幻方无官方从属关系。本插件主分发渠道为该 GitHub 仓库;npm 发布为可选,scoped 包名发布时需 npm publish --access public。
本地验证(维护者提供的离线测试):
node test/smoke.mjs
node test/manager.test.mjs
小结¶
dsh-skill-console 把 DSH 原本「无 UI 的 skill 发现机制」补成可浏览、可搜索的面板,并把列表、卸载、镜像更新和 doctor 收到四条命令里,与 ~/.dsh/skills 的 symlink 模型一致。目录页:https://www.skillhub.cn/plugins/mi-lu-uncle/dsh-skill-console;源码与 README:https://github.com/mi-lu-uncle/dsh-skill-console。