Skill Forge
目標:建立或更新符合使用者期待的 skill,保有功能性,並降低 token 使用量。
Command Routing
兩個 command:create、update。使用者未指明時依此推斷:
- 目標 skill 不存在 →
create - 目標 skill 已存在 →
update - 無法判斷目標 → 詢問使用者
Create Workflow
依序執行,每一步使用對應的 bundled skill(以 Skill tool 載入):
- 分析意圖 — 讀取使用者輸入的提示詞,分析其目的與用意。
- 1a. 若有模糊或歧義,必須使用
grill-me逐一詢問釐清,直到消除歧義。 - 1b. 意圖清楚後進入下一步。
- 1a. 若有模糊或歧義,必須使用
- 建立 skill — 使用
write-a-skill撰寫 skill。 - 驗證 — 使用
skill-creator為 skill 建立 eval 驗證項目並執行驗證。 - 優化 — 使用
skill-cleaner分析 token 使用量與上下文冗餘並優化。優化後必須重新執行步驟 3 的驗證,確保功能性與優化前相符。 - 交付判斷 — 依 Completion Criteria 檢核;未全數成立則返回對應步驟。
Update Workflow
- 載入現況 — 讀取目標 skill 的 SKILL.md、evals/、references/、templates/。
- 釐清變更範圍 — 區分「要新增或修改的行為」與「必須保留的行為」;模糊時使用
grill-me。 - 基準驗證 — 修改前執行既有 eval 建立 baseline;若無 eval,先用
skill-creator為現有行為補建。 - 修改 — 編輯 SKILL.md 與相關檔案。若觸發情境改變,必須同步更新 description。
- 回歸驗證 — 重跑既有 eval(不得低於 baseline),並用
skill-creator為新行為補 eval。 - 優化與交付 — 同 Create Workflow 步驟 4–5。
輸出邊界(update)
- 只修改變更範圍內的檔案,不得重寫整個 skill。
- 既有 eval 案例只能新增,不得刪除或改寫——除非該行為正是這次變更要移除的。
- 使用者順帶提出的範圍外修改(如「順便重寫舊 eval」),不納入本次變更;說明原因並建議另開一次 update 處理。
Artifact Layout
每個鍛造出的 skill 採用此結構:
<skill-name>/
├── SKILL.md # skill 本體
├── evals/ # 驗證用的 json
├── references/ # 需要時才載入的資料(漸進式揭露)
└── templates/ # 模板
Completion Criteria
交付前必須全部成立:
- 驗證通過且功能性完整;update 時回歸 eval 結果不低於 baseline。
- 優化後已重新驗證,功能性與優化前相符。
- 驗證時產生的 worktree 驗證資料夾已寫入
.gitignore。