docs(guidelines): 定義 jsc requires 相依宣告規則

This commit is contained in:
2026-08-28 11:59:16 +08:00
parent 32c619bfb3
commit 771d71c28e
+8
View File
@@ -36,6 +36,14 @@ PR 開立、更新、留言修正的收尾回報格式只看 [`references/pr-rep
3. 必須寫清楚觸發時機(何時用、何時不用),這是各 CLI 自動載入的唯一依據。
4. 複雜流程透過**組合其他技能**實現,不在單一 description 裡塞流程。
## Manifest 相依版本
1. Plugin 需要另一個 jsc plugin 的技能、工具、hooks、references 或 templates 才能完成自己的流程時,必須在三份 manifest 寫入 `jsc.requires`。
2. `jsc.requires` 是物件。鍵是完整 plugin 名稱,格式為 `jsc-{domain}`。值是最低版本,格式為 `>=x.y.z`。
3. 沒有跨 plugin 相依時不寫 `jsc.requires`。不要留下空物件。
4. 只宣告 jsc plugin 對 jsc plugin 的相依。系統指令、語言執行環境與第三方套件寫在 README 或工具說明,不寫進這個欄位。
5. `jsc-cli/tools/check-requires.sh` 是部署前版本檢查的唯一程式來源。`jsc-cli/tools/deploy.sh update` 必須在更新每個 domain 前呼叫它;版本不符就跳過該 domain 並回報缺哪一版,不得更新到一半才失敗,也不得靜默跳過。
## 強制力層級
1. 規則的實現優先順序:**hook > prompt**。凡是可以由 hook 強制的規則(語言、計時、統計),一律下放 hook,SKILL.md 只保留 hook 無法涵蓋的指引。