dsh-skill-manager:DSH Web 本地技能管理插件

前言

DeepSeek Harness (DSH) 生态主张「一切皆插件」,技能作为客户端能力的重要组成部分,通常以本地文件形式存在。开发者在使用过程中,往往需要频繁地启用或禁用特定技能以测试不同配置,而直接修改配置文件通常需要重启 DSH Web 进程。

dsh-skill-manager 插件解决了这一痛点,它将本地技能管理集成到 DSH Web 的设置页中,允许在不重启的情况下动态控制技能状态。

这是什么

dsh-skill-manager 是一个 DSH Web 本地技能管理插件。它由 SiriusWJ 维护,采用 MIT 许可证。

核心功能

该插件提供以下能力:

  1. 技能发现
    扫描以下目录:

    • 用户目录:~/.dsh/skills、~/.agents/skills
    • 当前活动工作区:.dsh/skills、.agents/skills
  2. 界面交互

    • 在「设置 → 插件 → 插件配置」页显示「技能管理」卡片。
    • 卡片样式与官方插件保持一致,支持展开与收起。
    • 支持按名称、描述或路径搜索技能。
  3. 控制与刷新

    • 支持切换每项技能的「模型自动调用」开关。
    • 禁用技能会将技能根目录下的 SKILL.md 中的 disable-model-invocation 字段设为 true。
    • 修改操作通过 DSH 技能目录热刷新机制生效,无需重启。
  4. 冲突处理

    • 当存在同名技能时,插件仅显示当前有效项,遵循 DSH 官方优先级(项目 .dsh → 项目 .agents → 用户 .dsh → 用户 .agents)。

安装与启用

安装该插件需要安装 DSH 版本 >= 0.1.5-rc.1。

使用以下命令从 GitHub 安装:

dsh plugin --profile web add github:SiriusWJ/dsh-skill-manager

安装完成后,重启 dsh web 即可在插件配置页看到该卡片。

典型用法

  1. 重启 dsh web。
  2. 进入「设置 → 插件 → 插件配置」。
  3. 点击「技能管理」卡片的标题栏展开视图。
  4. 使用搜索框定位技能。
  5. 点击技能列表项右侧的开关,启用或禁用「模型自动调用」。

适用场景与注意

  • 兼容性:需要 DSH 版本 >= 0.1.5-rc.1。插件依赖 @deepseek-ai/schemastery。
  • 安全边界:API 仅接受 loopback 请求,写操作要求浏览器同源。客户端提交的路径仅作为身份声明,写入前会重新扫描并核对技能名与完整路径。
  • 文件更新机制:更新 SKILL.md 时使用临时文件加原子改名操作,避免文件监听器读取到半写状态。
  • 符号链接:技能根目录中的符号链接被视为用户主动挂载,技能的启用/禁用操作会跟随链接并原子改写真实目标。

结语

dsh-skill-manager 实现了本地技能的即时管理与配置热更新,降低了开发测试的维护成本。完整代码与目录可在此查看:GitHub | 社区目录

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

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

小夜