概述
Impeccable 是一个专门为 AI 编码工具(如 GitHub Copilot、Cursor、Codeium 等)提供设计技能的命令库。它包含 23 个命令 和 反模式,帮助开发者在使用 AI 生成代码时,直接注入设计原则、架构模式与代码规范,从而提升生成代码的可维护性、可读性和结构质量。
学完能做什么:
- 让 AI 生成的代码遵循 SOLID、DRY、KISS 等设计原则
- 自动避免常见反模式(如上帝对象、长方法、硬编码)
- 无需手动编写冗长的提示词,直接调用预设命令即可控制输出风格
- 兼容主流 AI 编码工具,无需额外插件或配置
前置条件
- 已安装并使用以下任一 AI 编码工具:GitHub Copilot、Cursor、Codeium、Amazon CodeWhisperer、Tabnine
- 已获取 Impeccable 命令库(可通过
https://impeccable.cn/ 查看或下载) - 了解基本的 Markdown 或文本粘贴操作(用于将命令输入到 AI 对话窗口)
分步操作
1. 获取命令库
- 打开
https://impeccable.cn/ - 找到 23 个命令 列表,每个命令通常包含:
- 命令名称(如
#clean-code、#solid) - 命令描述(说明该命令控制的设计维度)
- 反模式提示(说明该命令会避免什么)
- 复制你需要的命令文本(例如
#clean-code 对应的完整提示)
2. 将命令注入 AI 编码工具
方式 A:在对话中直接粘贴
- 打开 AI 编码工具的聊天窗口
- 粘贴命令文本(如
#clean-code 的完整提示) - 随后输入你的编码需求,例如:“请用 Python 实现一个用户注册函数”
方式 B:在代码注释中嵌入
// #clean-code
// #solid
- 然后让 AI 补全或生成代码,它会自动遵循这些命令
注意: 部分工具(如 Cursor)支持在 .cursorrules 文件中持久化命令,可将命令内容写入该文件,实现全局生效。
3. 验证输出是否符合预期
- 检查生成的代码是否:
- 避免长方法(每个函数不超过 20 行)
- 避免重复代码(DRY 原则)
- 使用有意义的命名
- 遵循单一职责(每个类/函数只做一件事)
- 如果输出不符合,可补充反模式提示,例如:“请避免使用上帝对象模式”
4. 组合多个命令
- 支持同时使用多个命令,例如:
#clean-code + #solid + #testable - 顺序:先粘贴设计原则类命令,再粘贴具体任务
- 预期效果:AI 会同时考虑代码清晰度、架构原则和可测试性
预期结果
- 生成的代码结构更清晰,可直接用于生产环境(或接近生产标准)
- 减少手动重构时间,因为设计决策已提前注入
- 反模式出现频率显著降低(如长函数、全局状态、硬编码数字)
- 命令可重复使用,无需每次重新编写提示词
常见问题与排查
| 问题 | 原因 | 解决方法 |
|---|
| AI 忽略命令 | 命令未放在对话开头,或工具不支持长上下文 | 将命令放在用户消息的第一行,并用分隔符(如 ---)隔开 |
| 命令冲突 | 同时使用了多个对立命令(如 #verbose 和 #concise) | 只保留一个方向,或明确优先级 |
| 输出仍然混乱 | 命令未覆盖该语言/框架的特殊约定 | 补充语言特定命令(如 #pythonic 或 #typescript-strict) |
| 命令不生效 | 工具版本较旧,或未正确粘贴 | 检查命令是否包含 Markdown 代码块,确保完整复制;更新工具到最新版 |
| 需要更多控制 | 23 个命令不够用 | 在命令后追加自定义约束,例如:“但请保留所有异常处理逻辑” |
适用边界
- 适用工具: 所有支持自然语言对话的 AI 编码工具(包括但不限于 Copilot Chat、Cursor、Codeium、Amazon Q Developer)
- 不适用场景: 纯代码补全模式(如 GitHub Copilot 行内补全)可能无法读取完整命令,建议使用聊天模式
- 语言支持: 命令本身为英文,但生成的代码语言由你指定(如 Python、JavaScript、Go 等)
- 复杂度: 适合中小型模块(单个文件/函数),不适用于大型架构设计(如微服务拆分)