前言¶
DSH 的理念是「一切皆插件」,技能(Skill)也因此散落在本機多個目錄裏:跨 harness 的共享池、DSH 自己的 skills 目錄、甚至 trae-cn 的目錄。等技能數量上來,靠 ls 和記憶去找某個技能就變得不可靠——你得知道它叫什麼、落在哪個路徑、屬於哪個分類、怎麼觸發。muerdon 維護的 dsh-skills-workbench(技能工作臺)解決的就是這件事:把這些散落的技能收集成一頁面板,讓你看到、篩選、喚起、卸載和恢復,並在目錄發生變化時主動同步。
它不是另一個技能市場,也不是要替代 DSH 的插件管理,而是給已有的技能清單加一層可視化操作界面。
這是什麼¶
dsh-skills-workbench 是一個 DSH 客戶端插件,作者爲穆咚(muerdon),採用 MIT 許可。一句話定位:把技能清單做成一頁可控面板,支持一鍵喚起、卸載到回收站並恢復、按分類瀏覽,以及對多個技能落地目錄做主動同步。
它面向的是這樣一類場景:技能多了以後,逐條翻目錄、手動拼 /技能名、卸載時不小心刪掉文件——這些操作成本和誤操作風險,面板都替你接管。插件的安裝與使用見下文。
核心功能¶
下面介紹的功能均來自 README 原文,可對照覈實。
1、技能喚起:每行右側的「喚起」會把 /技能名 寫進當前會話輸入框並切回會話。若無法確定目標會話,會彈出選擇器,點選一次後同一會話下次直接命中。
2、卸載與恢復:點「卸載」後按鈕先變「確認卸載」,4 秒內再點才執行。技能不會立即刪文件,而是移入回收站,可在面板底部點「↩ 恢復」原位還原。唯一例外是技能目錄與回收站不在同一磁盤分區時無法 rename,會先複製到回收站再刪除原目錄,文件內容仍完整保存在回收站。
3、分類瀏覽與篩選:頂部搜索框、領域與分類膠囊用於篩選;技能詳情卡展示完整描述、觸發詞、領域/分類、大小、修改時間、落地路徑、副本、分類來源與理由,以及效率/風評與七維評分,並支持行內改分類,選擇會持久保存。
4、目錄主動同步:平時插件自動感知技能目錄變化,頂部「⟳ 一鍵掃描」是手動兜底。
5、隱私邊界:本包不含任何個人數據,不記錄本機安裝清單的位置/日期/大小、本機目錄名或會話 id。運行時的分類覆蓋、回收站、日誌全部寫在 <DSH_HOME 或 ~/.dsh>/skills-workbench/,不改動 DSH 配置。
安裝與啓用¶
安裝不涉及 dsh plugin add,README 給出的是 bundle 安裝方式。先保持插件目錄完整(不要只拷單個文件,放到任意位置),再執行:
plugin_manager install_bundle target=<本目錄絕對路徑>
然後重啓桌面端——插件的主機半邊需要在啓動時加載。重啓後側邊欄出現「技能工作臺」圖標,點開即可使用。
README 也提到另一種做法:按 DSH 的常規方式,在 profile 的 cordis.patch.yml 中插入本包並加入依賴。但官方推薦 install_bundle,它會自動處理清單與依賴。兩種方式都可以,選其一即可。
代碼前後要注意的是:不要憑插件名去拼一條 dsh plugin add github:owner/repo 命令,資料裏沒有這條命令。
典型用法¶
裝好並重啓後,常用的幾件事是:
1、查看某個技能:點任意技能行展開詳情,落地路徑可點擊複製。
2、喚起技能:點該行右側「喚起」,把 /技能名 放進當前會話輸入框。
3、卸載技能:點行右側「卸載」,4 秒內再點一次確認,技能進入回收站。
4、恢復技能:面板底部「🗑 回收站」列出已卸載技能,點「↩ 恢復」原位還原。
5、同步目錄變化:頂部「⟳ 一鍵掃描」做一次手動掃描。
技能目錄與掃描規則¶
插件自動掃描以下目錄,目錄存在才掃,全部缺失也不報錯:
~/.agents/skills(跨 harness 共享池,主要位置)$DSH_HOME/skills或~/.dsh/skills~/.trae-cn/skills
每個技能爲 <目錄名>/SKILL.md,其 frontmatter 的 name / description 會用於展示與分類。
兼容性與排查¶
兼容性要求:DSH 內核 >= 0.2.0-rc.2;運行時只用 Node 內置模塊(fs / path / os),無第三方依賴。所需內核服務缺失時插件不會崩潰,對應功能降級並在日誌中說明。
排查客戶端問題時,1.1.0 起客戶端會把初始化各階段的失敗上報到宿主日誌(形如 client-diag [styles] …)。日誌位置爲 <DSH_HOME 或 ~/.dsh>/skills-workbench/debug.log,WebView 內部錯誤可直接看到,無需打開開發者工具。面板顯示「Host 數據通道未就緒」時,可在日誌裏確認有沒有 applying: prefix route /skills-workbench/v1。面板顯示 0 個技能時,先確認技能目錄存在且含 SKILL.md,再點「⟳ 一鍵掃描」;正常日誌應有 applying: prefix route … 與 scan(startup) -> N skills。
文件完整性可用同目錄的 SHA256SUMS.txt 校驗:
sha256sum -c SHA256SUMS.txt
適用場景與注意事項¶
適合已經在本機維護多個技能、需要頻繁喚起和整理的用戶;也適合想把技能分類、落地路徑、評分口徑統一管理起來、又不想手動維護清單的開發者。
需要注意幾點:
1、插件以當前 DSH 進程的權限運行,讀取的是本機技能目錄。安裝前應檢查源碼與許可證(MIT,作者穆咚),確認目錄路徑符合預期再啓用。
2、README 記錄了兩個安裝期問題,遇到時不要誤判爲本插件缺陷。其一是 ERR_PNPM_UNEXPECTED_STORE:這是宿主 profile 的 pnpm 環境問題——pnpm 要求 store 與項目同盤才能硬鏈接,可用 pnpm config get store-dir --global 檢查、必要時 pnpm config delete store-dir --global 清除;修復方式是備份 profile 的 package.json / pnpm-lock.yaml / cordis.patch.yml 後在 profile 目錄執行 pnpm install 重建鏈接,再重新 install_bundle。其二是較早版本(1.1.1 已修復)側欄無圖標、界面 20 秒超時的問題,根因是 client.js 內模塊 id 與發佈包名不一致,升級到 1.1.1 即可。
3、卸載技能走面板的回收站;卸載插件本身用 DSH 的插件管理;本地狀態目錄 <DSH_HOME 或 ~/.dsh>/skills-workbench/ 可直接刪除。
小結¶
技能工作臺的價值不在於新增技能,而在於把本機已有的技能清單收斂成一頁可操作的面板:看到、篩選、喚起、卸載、恢復、同步,都在同一個界面裏完成,且不觸碰 DSH 配置。它由 muerdon 用 MIT 許可開源,當前版本 1.1.1。
目錄頁:https://www.skillhub.cn/plugins/muerdon/dsh-skills-workbench
GitHub :https://github.com/muerdon/dsh-skills-workbench