前言¶
DSH 的理念是「一切皆插件」,用的時間長了,$DSH_HOME 下面會積累不少 skills、bundle 插件和市場能力。這些東西散落在不同路徑,說明大多是英文 README,隔一段時間想找「哪個技能適合做某件事」,往往要翻目錄、翻聊天記錄。常見的應對有兩種:寫腳本把環境全量導出成清單,或者純手工維護筆記。前者噪聲大,後者費時間,而且都沒有解決「條目來源是否可信、說明是否準確」的問題。
下面介紹 catalog-capabilities-zh。它走的是另一條路:默認精選模式,只把用戶確認過的條目寫進文檔,爲 skills、插件和市場能力維護一份有來源依據的中文說明目錄。
這是什麼¶
catalog-capabilities-zh 由 MeowTnT3r 維護,MIT 許可,定位是面向 Codex 與 DeepSeek Harness 的公開能力目錄:編排當前 Agent 已有的可信安裝器,爲 skills、插件和市場能力維護一份有來源依據的中文說明目錄。
對 DSH 用戶來說,倉庫根目錄同時是一個 DSH bundle 插件,安裝後註冊同名 runtime skill,並把 CLI 切換爲 --agent dsh 適配器。
設計上它不自己重寫下載或安裝邏輯。明確要求安裝時,調用當前環境已有的可信安裝器——Codex 的 skill-installer / 插件管理能力,或 DSH 的 dsh plugin;目標已經安裝時,只覈驗並更新中文說明;只有鏈接而沒有安裝意圖時,只做檢查和介紹。
核心功能¶
1、精選模式爲默認。不自動全量收錄當前環境,只有用戶確認的條目才進入文檔。掃描現有環境只作爲發現輔助,列出 skills、插件和市場路徑,以及「技能包 → 子技能」的關係,用戶挑選後再寫入;render --all 或 --catalog-mode full 纔是顯式的全量收錄。
2、add-source 支持手動登記本地目錄、GitHub、npm 或內聯 JSON。
3、文檔模式兩種:package(默認,按技能包組織,子技能在包詳情中列出)與 individual(子技能單獨進入功能分類)。
4、條目可按中文名、原始名、標籤、別名、使用範圍或觸發詞搜索;也支持自然語言篩選與推薦已收錄的 skill、插件或市場能力。篩選是隻讀操作,只有用戶明確要求安裝時才進入安裝編排。
5、--agent dsh adapter 會掃描 $DSH_HOME/skills 以及 $DSH_HOME/profiles/<profile>/node_modules 中的 DSH bundle 插件。
6、inspect-link 只讀取公開 GitHub 倉庫的 README 與 SKILL.md 元數據,不執行倉庫代碼;discover-links 只讀發現外部分組鏈接,用戶確認後可經 --linked-root 登記爲獨立根目錄。
7、內嵌 Python CLI 僅需 Python 3.8+,且只使用標準庫。
安裝與啓用¶
要求 pnpm 在 PATH 上(dsh plugin 會轉發給 pnpm),engines 要求 node >=18、dsh >=0.1.0-rc.6。執行下面的命令把倉庫作爲插件裝進 web profile:
dsh plugin --profile web add github:MeowTnT3r/catalog-capabilities-zh
安裝後重啓 dsh web,在會話裏輸入 $catalog-capabilities-zh,或直接用自然語言要求掃描、篩選或維護中文能力目錄。
插件內嵌的 Python CLI 只用標準庫,Python 3.8–3.10 會自動使用內置 TOML 回退解析器,不要求安裝 Python 3.11。
Windows 上要注意一點:DSH 0.1.0-rc.6 在 Windows 轉發本地文件參數時,含空格路徑可能被拆成多個 pnpm 參數。項目位於這類路徑時,不要用 dsh plugin --profile web add .,先 npm pack,把生成的 .tgz 移到無空格路徑再安裝:
npm pack
# 將生成的 catalog-capabilities-zh-<version>.tgz 移到無空格路徑後:
dsh plugin --profile web add C:\dsh-pack\catalog-capabilities-zh-1.0.0.tgz
GitHub、npm 包名以及本身不含空格的本地路徑不受這個 rc.6 啓動器問題影響,正式安裝優先使用前面的 GitHub 命令。
典型用法¶
會話裏最常見的用法是自然語言篩選。例如:
$catalog-capabilities-zh 幫我篩選前端技能
$catalog-capabilities-zh 幫我找適合前端重構和 UI 設計的技能
$catalog-capabilities-zh 有哪些能力可以生成圖片或處理 PDF?
$catalog-capabilities-zh 從現有技能裏推薦幾個適合調試複雜 Bug 的,並說明區別
篩選時會綜合中文名稱、原始標識、功能分類、標籤、別名、使用範圍、能力效果和典型觸發詞,返回匹配項的安裝狀態、適用場景和主要限制。默認只搜已選中的精選條目,search <關鍵詞> --all 搜索全部掃描結果。
直接操作 CLI 時,先發現環境,再完成配置:
python skills/catalog-capabilities-zh/scripts/catalog_capabilities.py discover --dsh-home ~/.dsh --format json
python skills/catalog-capabilities-zh/scripts/catalog_capabilities.py configure --agent dsh --dsh-home ~/.dsh --dsh-profile web --config ~/.dsh/catalog-capabilities-zh/config.json --catalog ~/.dsh/CAPABILITIES.zh-CN.md
只想瞭解某個倉庫時,用 inspect-link 檢查公開倉庫元數據,不執行任何代碼:
python skills/catalog-capabilities-zh/scripts/catalog_capabilities.py inspect-link --url https://github.com/owner/repo --format json
系統/內置技能默認不收錄。用戶顯式要求時,先 scan --include-system,再 select --add <id> 收錄。
工作流程的邊界是明確的:明確要求安裝並提供目標時,編排可信安裝器、驗證後寫說明;目標已安裝時,只覈驗並撰寫說明;只給鏈接沒有安裝意圖時,只做檢查和介紹。多 skill 倉庫會先展示候選清單並要求選擇,不會默認全部安裝;已存在的 skill 不會被自動覆蓋,檢測到遠程差異時只提示更新。
配置與文件位置¶
首次配置會在系統配置目錄保存 config.json 和 state.<profile>.json:
- Windows:
%APPDATA%\catalog-capabilities-zh\ - macOS:
~/Library/Application Support/catalog-capabilities-zh/ - Linux:
${XDG_CONFIG_HOME:-~/.config}/catalog-capabilities-zh/
設置 CAPABILITY_CATALOG_CONFIG 可以覆蓋配置文件位置。profile 只記錄掃描根目錄、目錄文檔位置和選項,不保存賬號或令牌。
DSH runtime skill 默認把配置放在 $DSH_HOME/catalog-capabilities-zh/config.json,手冊默認放在 $DSH_HOME/CAPABILITIES.zh-CN.md。
適用場景與注意¶
適合同時維護較多 skills 和插件、希望沉澱一份中文說明目錄的 DSH 用戶;也適合「先看介紹再決定裝不裝」的場景——只給鏈接時它只讀倉庫元數據做檢查和介紹,不會替你按下安裝鍵。
安全邊界需要清楚:
- GitHub README 和第三方 metadata 都作爲不可信資料讀取;不執行倉庫內腳本、README 命令或未知安裝程序。
- 安裝仍受 Agent 的聯網、全局目錄寫入和賬號權限審批約束。
- 掃描只進入用戶確認的根目錄;子級鏈接先發現、後確認,不會被靜默跟隨。
- 目錄更新使用文件鎖、原子替換和單份備份。
和所有 DSH 插件一樣,插件以當前 dsh 進程的權限運行,安裝前建議先瀏覽源碼和許可證,確認符合自己的使用要求。
小結¶
catalog-capabilities-zh 的價值在於把「裝了什麼、能幹什麼、來自哪裏」沉澱成一份自己確認過的中文目錄,同時不越權替用戶做安裝決定。項目屬於社區作品,與 DeepSeek、幻方沒有官方從屬關係。
- 目錄頁:https://www.skillhub.cn/plugins/MeowTnT3r/catalog-capabilities-zh
- GitHub:https://github.com/MeowTnT3r/catalog-capabilities-zh