sulfide2085/dsh-skill-manager ↗★ 0
dsh-skill-manager
DSH 设置页技能管理器:展示全部已加载 skill(含调用策略/来源/状态),支持启用/停用热开关
安装
$
npx -p @deepseek-ai/dsh dsh plugin --profile web add github:sulfide2085/dsh-skill-manager说明文档
阅读完整 README ↗dsh-skill-manager
DSH(DeepSeek Harness)技能管理插件:在 Web 设置的侧边栏新增「技能管理」分区, 展示全部已加载 skill(启用 + 热停用、来源、模型/用户调用策略),支持热开关启停。
功能
- 全部技能列表:合并注册表(启用)与磁盘(停用)条目,展示名称、描述、来源、 调用策略徽章(模型+用户 / 仅模型 / 仅用户 / 已禁用调用);
- 第三方技能目录:自动识别常见 CLI 的技能目录并纳入管理——
Codex(
~/.codex/skills与项目.codex/skills,CODEX_HOME可覆盖)与 Claude(~/.claude/skills与项目.claude/skills,CLAUDE_CONFIG_DIR可覆盖), 同名技能按目录各自展示、互不遮蔽; - 第三方技能默认停用,可接入官方 /技能:codex/claude 目录的技能默认全部停用
(只改插件状态、不动文件,Codex/Claude 自身照常使用);在技能管理页显式启用后,
插件向全局技能注册表注册的 provider 会将其纳入,官方 /技能 命令与模型侧
skill工具即可看到并调用。状态存于~/.dsh/dsh-skill-manager.json; - 热开关(单个):切换即重命名
SKILL.md↔SKILL.md.disabled,filesystem provider 的 watcher 在 ~200ms 内感知,模型技能目录立即更新,无需重启;停用后的技能对 Codex / Claude 同样生效(它们只认SKILL.md); - 目录级一键启停:按来源分组(本地 / 项目 / Codex / Claude …),组头开关一次 启停该目录下的全部技能;
- 正文预览:点击卡片展开查看技能完整内容;
- 搜索:按名称/描述过滤。
架构
双面 Cordis 插件:
| 文件 | 角色 |
|---|---|
lib/index.js | host 半:skillManager Typert Remote 服务(list / content / setEnabled),注入 typert、skills、sessions、agents |
lib/skill-files.js | 磁盘约定层(零依赖):扫描根、frontmatter 解析、.disabled 启停 |
lib/client.js | 浏览器半:手写 bundle(window.__ModuleLoader__.load),注册 settings.section 分区(id: skill-manager,order: 17),经 ctx.remote 调 host |
依赖解析说明(Windows)
插件 import zod 与 @deepseek-ai/dsh-typert-protocol,它们不在 profile 的
node_modules 里,而是随 DSH 安装树分发。插件目录下的 node_modules 是一个
junction,指向 /node_modules,使 Node 模块解析能够找到这些包。
删除/重建 junction 的命令:
# 目标:dsh 安装树的 node_modules(npm 全局安装时)
New-Item -ItemType Junction -Path "node_modules" -Target "C:\Users\\AppData\Roaming\npm\node_modules\@deepseek-ai\dsh\node_modules"