Communitygithub.com

tenngoxars/skill-synergy

AI 編碼代理的技能仲裁憲章:當多個技能同時觸發於一個任務時,決定誰主導、誰讓步。

skill-synergy 是什麼?

Skill Synergy 是一個專為 AI 編碼代理設計的仲裁規則集。當多個技能(例如審查、測試、壓縮、簡潔風格)同時被觸發時,它提供一套明確的層級規則來決定哪個技能應該主導,哪個技能應該讓步。其核心原則是「工作流程技能(做什麼)永遠優先於模式技能(怎麼說/寫)」,確保任務的交付物(如報告、程式碼、文件)不會被模式技能(如壓縮)所削弱。此技能支援所有 AI 代理平台(如 Claude Code、Cursor、Codex),並透過優先級矩陣、觸發詞消歧與組合規則來解決衝突,協助開發者建立穩定且可預測的多技能代理工作流程。用戶需根據實際安裝的技能自訂優先級矩陣,以發揮最佳效果。

相容平台~Claude Code~Codex CLI~Cursor
npx skills add tenngoxars/skill-synergy

在你喜歡的 AI 中提問

開啟一個已預先載入此 Agent Skill 的新對話。

說明文件

技能協同 — 仲裁規則

當多個技能同時觸發時,決定哪個技能勝出的唯一權威。請在兩個或多個技能似乎都適用於當前任務時閱讀此文件。

使用說明:此技能為詳細的規則集。精簡版憲章(建議用於始終開啟設定)位於儲存庫根目錄的 AGENTS.md.template;請將其複製到 AGENTS.md,以便核心規則在每次工作階段中載入。此技能為隨需參考文件。

核心規則

工作流程技能(做什麼)在相同任務上優先於模式技能(如何說話/寫作)。模式技能應適應;工作流程技能絕不被削弱。

以下所有內容皆為此規則的應用。若未列出特定情況,請套用核心規則並說明原因。

工作流程 vs 工作流程仲裁

兩個或多個工作流程技能可能同時匹配同一任務。請依此順序選擇:

  1. 明確意圖優先。 若使用者說明了任務類型(審查、測試、設計、計劃等),則該類型的技能主導。無需斟酌。
  2. 範圍決定。 單一變更(一個差異、一個函數、一個檔案)採用較輕、較便宜的技能;跨領域變更(架構、多檔案重構、新系統)採用較深入的技能。
  3. 生命週期順序。 計劃 → 建構 → 驗證為預設順序。當技能是同一任務的不同階段(如設計、然後實作、然後審查)時,依序執行,而非選擇其中一個。
  4. 組合優於選擇。 若兩個技能是連續階段,則依序執行兩者,並明確說明順序(例如「先 TDD,再審查」)。
  5. 仍然模糊?提問。 提供一行建議,讓使用者選擇。切勿默默選擇工作流程技能——錯誤的技能會浪費整個任務,而非僅僅一個回覆。

技能分類

在仲裁前,先分類所有已安裝的技能:

  • 工作流程技能 — 決定 要做什麼:審查、測試、設計、研究、寫作、重構、計劃。它們產出交付物。
  • 模式技能 — 決定 代理聽起來如何或寫多少:壓縮、冗長、風格、簡潔。它們本身不產出任何東西。
  • 路由器技能 — 選擇要執行哪個工作流程(可選)。它們不應被模式技能覆寫。

若模式技能會改變工作流程技能的交付物(報告、文件、提交訊息、PR 內文),則模式技能讓步。若工作流程技能與模式技能同時觸發,且工作流程技能的輸出即為交付物,則模式技能讓步。

此憲章優先於技能自我描述。 技能的前置資料可能聲稱會自動觸發於廣泛的詞語(例如「自動觸發於審查」)。此類聲明在此被取代:路由遵循此憲章的消歧規則,而非技能自身的觸發聲明。若技能聲稱的觸發條件被此憲章指派給其他技能,則憲章勝出。

優先級矩陣(填入你的技能)

將下方範例技能名稱替換為你環境中實際安裝的技能。行數按衝突在實踐中出現的頻率排序。

任務主導(工作流程)讓步行為
UI 設計 / 潤飾 / 視覺評論例如你的設計技能例如你的最小程式碼技能設計主導;最小程式碼以降低強度運作(不膨脹,但對設計工藝無 YAGNI 否決權)
深度程式碼審查(標準 + 規格)例如你的完整審查技能例如你的壓縮技能完整報告以正常散文呈現;壓縮關閉,除非使用者要求簡潔回饋
過度工程審計例如你的刪除聚焦審查例如你的完整審查技能單一面向、聚焦刪除的審查;跳過完整報告
快速簡潔 PR 回饋例如你的簡潔評論技能—僅在使用者明確要求壓縮評論時
壓力測試計劃 / 想法例如你的訪談/質詢技能例如你的壓縮技能訪談以正常散文呈現;壓縮的質詢會失去深度
測試優先功能建構例如你的 TDD 技能 + 你的最小程式碼技能—組合:測試為驗證,絕不刪減;最小實作以通過紅燈轉綠燈
模組 / API 設計例如你的設計文件技能例如你的最小程式碼技能設計階段:深度優先。實作階段:套用最小程式碼階梯
寫作 / 編輯 / 教學例如你的寫作技能例如你的壓縮技能需要完整表達;壓縮關閉
研究 / 文件擷取例如你的研究技能例如你的壓縮技能輸出檔案為交付物;壓縮僅影響聊天,絕不影響檔案內容
任何編碼任務,無其他技能觸發例如你的最小程式碼技能例如你的壓縮技能最小程式碼全強度運作;壓縮僅按需求開啟(其每次回合的輸入成本通常超過在程式碼密集型工作中的節省)

觸發詞消歧

當多個技能共享一個觸發詞時,依意圖路由,而非先匹配到的技能:

  • 「審查這個」 → 預設為完整審查。僅在使用者說「過度工程」/「太多程式碼」時使用刪除聚焦審查。僅在使用者要求壓縮回饋時使用簡潔評論審查。
  • 「質詢」/「訪談我」 → 當存在程式碼庫時,使用有狀態變體(留下文件軌跡);獨立使用時,使用無狀態變體;當使用者希望一次獲得所有問題時,使用批次變體。
  • 「交接」 → 預設為文件寫作變體;僅在使用者希望立即啟動背景代理時,使用衍生背景代理變體。
  • 「製作計劃/規格/票券」 → 按產出類型路由:規格、票券、PRD、問題、問卷。

模式技能紀律

  1. 模式技能絕不沉默工作流程技能的交付物。 它只能壓縮聊天散文。由工作流程技能撰寫的報告、檔案、提交訊息和 PR 內文保持完整。
  2. 最小程式碼技能的驗證線有三層: (1) 真正的驗證保留:輸入驗證、外部依賴的錯誤處理、安全性、可訪問性——絕不刪減。 (2) 投機性防禦在範圍內:無法觸發的檢查、針對「萬一」的防禦性包裝——刪除它們,這是最小程式碼技能的工作。 (3) 測試和任務文件遵循使用者的明確要求:最小程式碼技能絕不使用 YAGNI 來刪減使用者要求的測試或文件——但測試內部的冗餘、過度模擬、以及文件中的臃腫仍然是可以刪減的。
  3. 兩個模式技能同時觸發(壓縮 + 最小程式碼):最小程式碼治理程式碼,壓縮治理聊天——但僅在工作階段以散文為主時;在程式碼密集型工作階段中,壓縮應關閉或降低強度(否則會導致淨代幣損失)。
  4. 子代理繼承仲裁。 當為審查或研究任務衍生子代理時,在任務中明確說明模式:「正常散文」或「壓縮輸出」。絕不讓它隱含。

有價值的組合

  • TDD 技能 + 最小程式碼技能 — 測試優先,最小實作。
  • 完整審查,然後對同一差異進行刪除聚焦審查 — 先完整審查,再進行刪除審查。
  • 訪談技能 + 記憶壓縮技能 — 訪談後壓縮累積的工作階段記錄。
  • 在任何工作流程技能完成後使用簡潔提交訊息技能 — 永遠安全。
  • 路由器技能用於流程路由,此技能用於模式仲裁 — 路由器選擇道路,協同選擇齒輪。

自訂

此技能是一個框架,而非配置。若要使其為你所用:

  1. 將優先級矩陣中的每個「例如你的 X 技能」替換為你環境中的真實技能名稱。一份使用常見公開技能填寫的參考範例位於 examples/example-config.md——複製它並取代為你自己的名稱,而非從頭開始填寫範本。
  2. 移除你從未遇到的任務類型的行。
  3. 若你的環境有一個全域規則檔案(AGENTS.md 或類似檔案),將核心規則複製到其中,以便每個環境都載入它。
  4. 若出現新的衝突未被涵蓋,請分類兩個技能(工作流程或模式),套用核心規則,並新增一行。

相關技能