啟用合約
在安裝、移除、建立、移動或重新命名技能後,或當委派者需要全新的技能索引時,使用此技能。
硬性規則
- 註冊表是一個索引,而非編譯器或摘要。
SKILL.md保留為唯一事實來源。 - 預設情況下,不要生成或注入精簡規則;透過將確切的技能路徑傳遞給子代理來保留作者意圖。
- 無論 SDD 持久化模式為何,一律寫入
.atl/skill-registry.md。 - 當可用時,將註冊表儲存至 Engram,使用
topic_key: skill-registry,並設定capture_prompt: false。 - 跳過
sdd-*、_shared和skill-registry;依據技能名稱去重,優先選擇專案層級技能而非使用者層級技能。 - 如果可能,將
.atl/加入.gitignore,除非明確停用。
決策閘道
| 情境 | 動作 |
|---|---|
| 全域與專案中存在相同技能 | 保留專案層級技能 |
| 多個全域位置中存在相同技能 | 保留掃描順序中的第一個來源 |
| 找不到任何技能 | 寫入空的註冊表,讓代理停止盲目搜尋 |
| 代理將委派工作 | 選取相符的註冊表行,並傳遞其 SKILL.md 路徑 |
執行步驟
- 掃描所有已知的使用者與專案技能目錄,尋找
*/SKILL.md。 - 僅在需要時讀取 frontmatter,以提取
name和description觸發文字。 - 使用掃描到的來源、註冊表合約、技能名稱、觸發詞/描述、範圍與確切路徑,渲染
.atl/skill-registry.md。 - 當可用時,使用
title: skill-registry、topic_key: skill-registry、type: config與capture_prompt: false持久化至 Engram。 - 回傳註冊表路徑、技能數量、快取狀態,以及 Engram 是否已更新。
輸出合約
回傳:
- 專案名稱與
.atl/skill-registry.md路徑。 - 已索引的技能數量。
- 是否命中快取或重新生成。
- 任何跳過或重複的技能(當相關時)。
參考資料
docs/skill-style-guide.md— 技能在索引前應如何撰寫。skills/_shared/skill-resolver.md— 委派者如何使用索引。