jiantw83andClaude Fable 5 2705771c20 feat(gate): 四階段模型閘門改為指定模型優先、能力標籤備援,並以 sdlc-gate 上鎖
What:plan、analyze、implement、maintain 四個 SKILL.md 的第一步從單純的能力標籤檢查,改為「模型閘門與階段上鎖」三段流程:先以 jsc-cli/tools/model-config.sh get {stage} 解析該階段的指定模型鏈,鏈上第一個當前 CLI 可用的模型即為必用模型;沒有設定指定模型時才退回 jsc-cli:models 的能力標籤檢查。閘門通過後執行 jsc-hooks/hooks/sdlc-gate.sh lock {stage} {current-model} 寫入鎖檔,並以 sdlc-gate.sh report 驗證。

Why:原本只驗能力標籤,同一標籤下模型可任意替換,階段中途換模型也無人攔阻,導致產出品質與可重現性不穩定。改為指定模型鏈優先可讓團隊明確指派每階段用哪個模型,標籤備援則保留未設定時的彈性;上鎖後由 hook 在每次 prompt 強制檢查,階段內換模型會被擋下。

How:每個技能的步驟一拆成三小步(解析模型鏈、驗證當前模型、上鎖並驗證鎖檔),各小步附完成條件;maintain 另加第四小步,明確規定只在換階段時重跑閘門,維護階段內跨專案不重複驗證。frontmatter description 同步更新。鎖定自 plan 起手生效,直到下一階段(如 analyze)的閘門重新上鎖前,強制沿用同一模型。

Who:jsc-sdlc 的 plan/analyze/implement/maintain 四個技能,及依賴其閘門行為的 jsc-hooks sdlc-gate hook。

Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
2026-08-24 11:36:33 +08:00
2026-08-21 04:43:16 +00:00
2026-08-21 14:29:47 +08:00

jsc-sdlc — 開發生命週期

jsc 技能組的 sdlc domain:規劃 → 分析 → 實作 → 維護四個階段,全程以 wiki 頁追蹤(PLAN_CONTENTS、PLAN_{HASH}、ANALYZE_CONTENTS、ANALYZE_{HASH}、REPO_CONTENTS、REPO_{HASH}、MAINTAIN_CONTENTS)。另有異常頁(ERROR_CONTENTS、ERROR_{HASH})記錄 hook 或流程失敗。每次切換階段才重新檢查該階段需要的模型能力標籤;同一階段內不重複變更。

安裝、更新、移除

Marketplace 統一為 jsc(https://gitea.jsc.idv.tw/plugins/jsc.git),安裝 token 為 jsc-sdlc@jsc。每個指令一行:

CLI 安裝 更新 移除
claude claude plugin marketplace add https://gitea.jsc.idv.tw/plugins/jsc.git && claude plugin install jsc-sdlc@jsc claude plugin marketplace update jsc && claude plugin update jsc-sdlc@jsc claude plugin uninstall jsc-sdlc@jsc
codex codex plugin marketplace add https://gitea.jsc.idv.tw/plugins/jsc.git && codex plugin add jsc-sdlc@jsc codex plugin marketplace upgrade jsc codex plugin remove jsc-sdlc@jsc
copilot copilot plugin marketplace add https://gitea.jsc.idv.tw/plugins/jsc.git && copilot plugin install jsc-sdlc@jsc copilot plugin marketplace update jsc && copilot plugin update jsc-sdlc@jsc copilot plugin uninstall jsc-sdlc@jsc
antigravity git clone https://gitea.jsc.idv.tw/plugins/sdlc.git ~/plugins/sdlc && agy plugin install ~/plugins/sdlc git -C ~/plugins/sdlc pull && agy plugin uninstall jsc-sdlc && agy plugin install ~/plugins/sdlc agy plugin uninstall jsc-sdlc
kiro kiro-cli plugin marketplace add https://gitea.jsc.idv.tw/plugins/jsc.git && kiro-cli plugin install jsc-sdlc@jsc kiro-cli plugin marketplace update jsc && kiro-cli plugin update jsc-sdlc@jsc kiro-cli plugin uninstall jsc-sdlc@jsc

antigravity 不支援 gitea URL 安裝,改用本地 clone 路徑。批次操作五個 CLI:使用 /jsc-cli:deploy。

Skills 目錄

呼叫方式:Claude / Antigravity /jsc-sdlc:{name};Codex ${name};Copilot / Kiro 描述需求自動觸發。

plan

規劃:讀計畫目錄 → 補充或新建計畫 → 決策樹補全目標、範圍、可行性至共識 → 產生使用者故事 → 寫回 PLAN_{HASH}。純邏輯,禁止程式碼與修改檔案。

analyze

分析:搭配現況(工作目錄與 REPO_{HASH} 盤點複用)分析使用者故事 → WBS 產生編號工作包 → CPM 估工時與天數 → TDD 拆待辦 → 寫回 ANALYZE_{HASH}。純邏輯,禁止程式碼與修改檔案。

implement

實作:產生工作證鎖定「未完成、無相依、無工作證」的工作包 → 逐項 TDD 實作、每完成一項立即更新 wiki → 程式碼審查 → 詢問是否加入維護目錄。

maintain

維護:讀取維護期內的專案,每個專案一個 sub agent:切 develop/master → 至少五種建議維護方法 → commit / push / PR → 更新前次維護時間。

範本與參考

檔案 用途
templates/plan-page.md、templates/plan-contents.md 計畫頁與計畫目錄
templates/analyze-page.md、templates/analyze-contents.md 分析頁(WBS、CPM、TDD 待辦)與分析目錄
templates/repo-page.md、templates/repo-contents.md 存取庫盤點頁(功能與端點,附 commit sha)與盤點目錄
templates/error-page.md、templates/error-contents.md 異常頁與異常目錄
templates/maintain-contents.md 維護目錄(截止日 NULL = 永久維護)
references/tdd.md 接縫、紅綠循環規則、反模式

環境變數

Wiki 位置:PLAN_{HASH} / PLAN_CONTENTS 只讀 JSC_WIKI_REPO_PLAN,再退回 JSC_WIKI_REPO;ANALYZE_{HASH} / ANALYZE_CONTENTS 只讀 JSC_WIKI_REPO_ANALYZE,再退回 JSC_WIKI_REPO;REPO_{HASH} / REPO_CONTENTS 只讀 JSC_WIKI_REPO_REPO,再退回 JSC_WIKI_REPO;MAINTAIN_CONTENTS 只讀 JSC_WIKI_REPO_MAINTAIN,再退回 JSC_WIKI_REPO。不同類型不可互相代用;兩者都未設定才詢問(見 jsc-gitea)。

HASH 規則:一律先算 {owner}/{repo} 的 SHA-1 前 8 碼並轉大寫;若第一碼是數字,或 A、B、C,就改成 H 加上原 SHA-1 前 7 碼,總長維持 8 碼。

相關 domain

S
Description
No description provided
Readme
1.3 MiB
Languages
Shell 100%