DeepSeek Harness (DSH) 的理念是「一切皆插件」。对于使用多个 AI 编码工具的开发者来说,维护技能库(Skills)往往意味着重复劳动:一份技能代码可能需要分别复制到 Claude Code、Cursor、Codex 等不同目录,更新时需要逐个同步。dsh-skills-hub 插件通过系统符号链接,将一个中心化的技能库挂载到多个 Agent 工具中,实现一套数据源驱动多个工具。
下面介绍 dsh-skills-hub。这是一个跨平台 AI 技能管理器,由用户 jasonguide 维护,开源协议为 MIT。它解决的核心问题是:如何在一个中心化的技能库(~/.agents/skills)基础上,为本地已安装的 AI 编码工具(如 Cursor、Windsurf 等)提供统一的技能安装与卸载入口。
核心功能¶
该插件主要提供以下能力:
- 中心库管理:覆盖
~/.agents/skills目录,作为所有技能的单一数据源。 - 智能平台映射:内置 26 个常见 Agent 工具目录映射(如 Cursor、Codex、Trae 等),界面仅显示本机已实际安装的平台。
- 符号链接安装:通过系统符号链接(Windows 为 Junction,macOS/Linux 为 Symlink)将中心技能安装到目标平台,无需管理员权限。
- 卸载语义区分:
- 链接条目:点击「卸载」仅删除链接,保留中心库数据源。
- 本地条目:点击「删除」会删除该平台自己的数据源。
- 只读平台支持:对于只读平台(例如 Claude Code),界面仅展示,不提供写入操作。
- 自定义平台:支持在设置中添加任意本地技能目录,配置持久化至
~/.skillsmanage/config.json。
安装与启用¶
使用前请确保环境满足以下要求:
* OS:Windows / macOS / Linux
* Node.js:>= 20
* DSH:已安装,dsh 命令在 PATH 中
* pnpm:已安装(DSH 内部调用)
方式一:一键安装脚本(推荐)¶
在插件仓库根目录下执行:
macOS / Linux
bash scripts/install.sh
Windows (PowerShell)
powershell -ExecutionPolicy Bypass -File scripts/install.ps1
脚本会自动运行 dsh plugin --profile web add <this directory>,完成依赖安装和插件挂载。
方式二:使用 DSH 插件命令¶
从本地源安装
dsh plugin --profile web add .
从 npm 安装
dsh plugin --profile web add dsh-skills-hub
安装完成后,需要重启 DSH 才能生效。
典型用法¶
- 打开管理入口:打开 DSH 设置,进入「技能中心」。
- 查看可用平台:界面会按类别分组展示平台卡片,仅显示本机已安装的平台。中心库卡片列出了所有可用技能。
- 安装技能:在任意 Agent 平台卡片上,通过下拉菜单选择技能进行安装。系统会创建一个指向
~/.agents/skills的符号链接。 - 卸载技能:
- 对于「链接」状态的技能,点击「卸载」仅移除链接,中心库数据保留。
- 对于「本地」状态的技能(即该平台原本就有的目录),点击「删除」会直接删除该平台的数据源。
- 添加自定义平台:在设置底部,可以添加本地技能目录路径(可选显示名称),用于管理非标准路径的技能库。
适用场景与注意¶
- 适用场景:同时使用 Claude Code、Cursor、Windsurf、Gemini CLI 等多个 AI 编码工具,希望统一维护技能库的开发者。
- 权限注意:插件以当前 DSH 进程的权限运行,涉及创建系统符号链接,请确保对目标目录有写入权限。
- 安全性:写入接口仅接受 Loopback Host (
localhost/127.0.0.1) 访问,且技能名称仅允许[a-zA-Z0-9._-],防止路径遍历攻击。中心库本身永远不会被删除。
总结¶
dsh-skills-hub 为 DSH 用户提供了一个中心化的技能管理解决方案。通过符号链接机制,它消除了在不同 Agent 工具间同步技能的繁琐步骤,让技能维护回归到单一数据源。更多细节与源码,可参考项目仓库或 DSH 生态目录。