dsh-skills:在 DSH 側欄管理 Agent Skills

前言

DeepSeek Harness(DSH)會從用戶主目錄與項目下的 .dsh/skills、.agents/skills 等路徑發現 Agent Skill,但默認界面沒有集中查看、預覽或關閉某條 Skill 的入口,往往只能改磁盤上的文件。社區插件 dsh-skills(維護者 yixin2021,GitHub 倉庫 yixin2021/dsh-skills)在左側導航增加「技能 / Skills」入口,用面板完成列表、預覽、啓用/禁用、安裝與安全卸載。DSH 生態裏能力多以插件形式擴展;插件目錄站點 SkillHub 與 DeepSeek / 幻方無官方從屬關係,安裝前請自行覈對源碼與許可證(本插件爲 MIT,當前 package 版本 0.1.0)。

這是什麼

dsh-skills 是面向 DSH Web 客戶端的插件:Host 側註冊 authenticated JSON 路由,Client 側在 sidebar.panellist 掛載面板。瀏覽器不直接讀文件系統,Skill 相關操作經 POST /api/dsh-skills 與 Host 交互。它解決的是「Skill 已在磁盤上被 DSH 掃描,卻缺少可視化管理面」這一缺口。

面板能做什麼

下面能力均來自倉庫 README 與 package.json 描述,可按需使用。

查看與預覽

  • 列出 DSH 掃描到的各 Skill 根目錄,以及每條 Skill 的名稱、描述、指令路徑與 invocation policy。
  • 在應用內預覽完整 SKILL.md(含 frontmatter 與正文),無需離開 DSH。

啓用與禁用

  • 每條 Skill 有開關。禁用時不刪文件:目錄被移到 <root>/.disabled/<name>,對掃描器不可見;重新啓用時原樣移回,SKILL.md 不會被改寫。

安裝與導入

  • 從本地文件夾安裝:選擇目標根目錄,將頂層含 SKILL.md 的文件夾複製進去,原文件夾不會被移動。
  • 從 GitHub 等遠程導入:粘貼倉庫、tree 或 skill 鏈接;一個倉庫可一次導入多條 Skill。Host 在寫入前校驗整批:名稱衝突、非法路徑或體積/文件數超限會拒絕整批,避免部分覆蓋。
  • 新建 Skill:通過表單編寫帶合法 frontmatter 的 bundle。
  • 添加目錄:把面板指向其他 Agent 的 Skill 庫(例如 ~/.claude/skills 或同事 checkout);列表會展示,DSH 也會加載,目錄本身保持只讀。

卸載與恢復

  • 卸載將條目移到根目錄下的 .trash,可恢復或永久清除;另有清空回收站等操作。

其它

  • 定位:在 Finder / Explorer 或桌面文件管理器中打開 Skill 或根目錄。
  • 已知庫:Codex、Claude Code、WorkBuddy、CodeBuddy 等若在常見路徑存在 Skill,會自動列出並帶對應標記;DeepSeek Harness 側常見爲 $DSH_HOME/skills(通常 ~/.dsh/skills)與 $DSH_AGENTS_HOME/skills(通常 ~/.agents/skills)。

Host 還通過 ctx.skills.registerProvider 把發現的庫與額外目錄註冊給模型;Skill 語法解析與根目錄發現集中在 lib/skills-core.js,與路由和測試保持一致。

安裝與啓用

倉庫根目錄有 package.json,無構建步驟,可用 npm 兼容的 git spec 安裝。

在插件管理界面:Settings → Plugins,安裝:

github:yixin2021/dsh-skills

CLI(dsh plugin 在 profile 內轉發給 pnpm):

dsh plugin --profile desktop add github:yixin2021/dsh-skills
dsh plugin --profile desktop remove dsh-skills

https://github.com/yixin2021/dsh-skills 與 git+ssh://git@github.com/yixin2021/dsh-skills.git 等價。本地 checkout 時:

dsh plugin --profile desktop add /absolute/path/to/dsh-skills

bundle patch 會插入名爲 skills 的 Loader 行,客戶端掛載導航與面板。安裝後需重新加載窗口。

也可從 Releases v0.1.0 下載;落地頁爲 yixin2021.github.io/dsh-skills(部分網絡可能無法訪問 GitHub Pages,以 README 說明爲準)。

典型用法

日常:列表、預覽、開關

  1. 安裝插件並重載 DSH 窗口。
  2. 打開左側「技能 / Skills」面板,查看各根目錄下的 Skill。
  3. 點選一條 Skill 預覽 SKILL.md;用開關禁用暫時不需要的 Skill,無需手改目錄結構。

從 GitHub 批量導入

  1. 在面板中使用「從 GitHub 導入」,粘貼鏈接,例如倉庫根 https://github.com/owner/repo,或子目錄 https://github.com/owner/repo/tree/main/skills/foo。
  2. GitHub 倉庫優先走 archive 接口(單次請求、無 rate limit);GitLab、Gitee、SSH 等會淺克隆到臨時目錄,讀完即刪。
  3. 對話框展示候選 Skill(默認可全選);若候選超過 40 個,會提示總數並建議把鏈接收窄到子目錄。
  4. 私有倉庫可在對話框填寫 access token(僅用於當次下載,不落盤;clone 時通過子進程環境傳遞,不寫在命令行)。

粘貼的 URL 會經 allowlist(https、http、ssh、git)校驗,拒絕本地路徑與危險 git 協議;倉庫內容不會被當作腳本執行,符號鏈接會被跳過。

卸載與恢復

在面板中對 Skill 執行卸載,文件進入該根下的 .trash;需要時從回收站恢復,或永久刪除。

適用場景與注意

適合誰

  • 已在 DSH 或同機其它 Agent 路徑下積累多條 Skill,希望在一個界面裏看清、試讀、臨時關閉,而不是反覆編輯隱藏目錄。
  • 需要從 GitHub(或其它 git 託管)按目錄批量安裝 Skill,並希望在寫入前整批校驗。

務必瞭解

  • 插件以當前 DSH 進程權限運行:安裝、導入、克隆遠程倉庫、讀寫 Skill 根目錄均在此權限下完成。安裝前請閱讀 倉庫源碼 與 MIT 許可證,確認符合你的安全策略。
  • 禁用與卸載依賴 .disabled、.trash 子目錄約定,與 DSH「只發現 Skill 根的直接子項」的掃描規則一致;手寫的 Skill 在禁用/啓用往返後應保持字節一致(README 對此有說明)。
  • 社區目錄頁:https://www.skillhub.cn/plugins/yixin2021/dsh-skills(分類:客戶端;截至資料抓取時 GitHub 星標爲 2)。

結尾

dsh-skills 把 DSH 已在磁盤上發現的 Agent Skill 補成可操作的側欄面板:看得見、讀得全、關得掉、裝得上、卸得可恢復。若你正在用 Harness 編排 Skill,可先按上文命令安裝,重載窗口後在左欄打開 Skills 面板試用。

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

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

小夜