🧠 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
确保您的编码代理能够发现嵌套的技能文件夹。
📂 仓库布局
aio-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 文件。