🧠 AI 編碼標準與代理技能
學習工程原則。在實際情境中應用。驗證結果。
一套公開、可重複使用且具專案感知能力的技能集合,專為 AI 編碼代理與開發者設計。
這些技能有助於 AI 理解現有專案慣例、做出更佳的工程決策、應用適當的編碼實踐,並在不引入不必要的複雜性的情況下驗證變更。
📑 技能目錄
🛡️ 治理與紀律
| 技能 | 說明 | 最佳適用情境 |
|---|---|---|
cite-or-stop | 強制要求基於證據的主張,防止重複失敗的嘗試,並在受阻時提供結構化的交接。 | 避免幻覺、未經支持的假設以及重試迴圈。 |
🔄 後設學習與自我修復
| 技能 | 說明 | 最佳適用情境 |
|---|---|---|
lesson-to-skill | 將已確認的錯誤、使用者的修正及反覆出現的問題轉化為可重複使用的指令,幫助在未來任務中避免同樣的錯誤。 | 持續學習、錯誤預防及改善 AI 代理行為。 |
🏗️ 編碼標準與最佳實踐
| 技能 | 說明 | 最佳適用情境 |
|---|---|---|
solid-principles | 幫助開發者學習與應用 SOLID 原則。分析現有程式碼並建議設計改進,同時避免引入不必要的抽象。 | 乾淨、可維護且可擴展的程式碼。 |
precision-and-rounding | 在建議變更前分析現有的數值型別、捨入規則、計算方式與設定。除非明確指示,否則保留既有的專案行為。 | 防止精度遺失、不正確的捨入及計算不一致。 |
database-query-patterns | 在建議改進前分析資料庫查詢、ORM 模式、綱要與索引。協助找出效率低下的查詢,同時保留現有的資料行為。 | 查詢優化、資料庫效能及資料正確性。 |
學習 → 應用 → 驗證: 理解原則,根據現有專案慣例應用,並驗證結果。
🚀 快速設定與使用
⚡ 快速安裝(推薦)
直接從 GitHub 安裝 AI 編碼技能:
npx skills add geek-prateek/ai-coding-standards
安裝特定技能:
npx skills add geek-prateek/ai-coding-standards --skill precision-and-rounding
全域安裝(跨專案):
npx skills add geek-prateek/ai-coding-standards -g
瀏覽可用技能:
npx skills add geek-prateek/ai-coding-standards --list
在 skills.sh 探索更多技能。
選項 1:全域設定(適用於所有專案)
一次性安裝即可讓這些技能在跨專案中可用。
Google Antigravity
# Windows (PowerShell)
cd $HOME\.gemini\config\skills
git clone https://github.com/geek-prateek/ai-coding-standards.git .
# macOS / Linux
cd ~/.gemini/config/skills
git clone https://github.com/geek-prateek/ai-coding-standards.git .
Claude Code
cd ~/.claude/skills
git clone https://github.com/geek-prateek/ai-coding-standards.git .
注意: 技能發現路徑可能因代理程式與版本而異。對於支援的代理程式,建議使用 Skills CLI 安裝方式。
選項 2:個別專案設定
若要在特定專案中使用技能,請將所需的技能資料夾複製到代理程式支援的技能目錄中。
範例:
my-project/
├── .agents/
│ └── skills/
│ ├── cite-or-stop/
│ │ └── SKILL.md
│ ├── lesson-to-skill/
│ │ └── SKILL.md
│ ├── solid-principles/
│ │ └── SKILL.md
│ ├── precision-and-rounding/
│ │ └── SKILL.md
│ └── database-query-patterns/
│ └── SKILL.md
└── src/
或使用 Git 子模組
git submodule add https://github.com/geek-prateek/ai-coding-standards.git .agents/skills/shared
確保你的編碼代理程式能夠發現巢狀的技能資料夾。
📂 儲存庫結構
ai-coding-standards/
├── README.md
├── cite-or-stop/
│ └── SKILL.md
├── lesson-to-skill/
│ └── SKILL.md
├── solid-principles/
│ └── SKILL.md
├── precision-and-rounding/
│ └── SKILL.md
└── database-query-patterns/
└── SKILL.md
每個技能可能還包含輔助參考資料、範例與評估案例。
➕ 如何新增技能
為了保持儲存庫的整潔與可擴展性:
- 建立目錄:
<skill-name>/ - 新增
SKILL.md: 包含有效的 YAML 前置資料。 - 定義使用時機: 描述特定的問題與觸發條件。
- 遵循現有專案慣例: 避免在沒有正當理由的情況下強制使用特定模式或改變既有行為。
- 保持通用性: 不要包含專有程式碼、憑證、內部 URL 或特定公司的資訊。
- 在適用的情況下加入評估: 包含實際情境以驗證技能的有效性。
- 更新目錄: 將新技能新增至技能目錄。
SKILL.md 範例:
---
name: skill-name
description: >-
描述該技能的作用及使用時機。
---
# 技能標題
## 學習
透過實際範例解釋概念。
## 應用
在建議變更前分析現有專案慣例。
## 驗證
驗證正確性、相容性及邊界情況。
重要: 不要僅僅因為某個編程概念存在就建立技能。只有在某個反覆出現的問題可以從一個特定、可重複使用的工作流程中獲益時,才建立技能。
🤝 貢獻方式
歡迎提出貢獻、建議與改進!
請隨時開啟 issue 或提交 pull request 來改善現有技能或提議新增技能。
📄 授權條款
授權資訊請參閱儲存庫的 LICENSE 檔案。