核心定位
Karpathy Guidelines 是一套面向非琐碎软件工程任务的执行纪律,由前特斯拉AI总监、OpenAI创始成员Andrej Karpathy的工程方法论提炼而成。它并非具体的技术实现,而是一组元层面的操作框架,用于指导AI Agent在编码、调试、重构、代码审查等场景中的决策行为。
核心用法
该skill通过七步默认循环规范工程执行:1)用具体工程术语重述任务;2)阅读相关调用方、工具函数和测试;3)显式命名可能改变实现的假设;4)选择最小可行方案;5)仅做必要修改;6)用具体检查验证结果;7)报告变更内容、验证方式及剩余不确定性。配套紧凑思考框架(assumptions/read/plan/verify)用于快速决策。
五大核心规则
1. Think before coding:面对歧义需求时显式陈述假设,暴露冲突,拒绝为复杂化而复杂化
2. Simplicity first:最小变更原则,禁止为单一用例添加抽象,禁止无需求的功能扩展
3. Surgical changes:仅触碰请求要求的代码,禁止借机重构相邻代码,禁止无关的重格式化
4. Goal-driven execution:将模糊请求转化为可验证结果,Bug修复需先复现,新功能需定义验收标准
5. Agent-era discipline:将确定性逻辑(解析、验证、重试策略等)放入代码而非依赖模型判断,优先读取本地代码而非依赖通用计划
场景化指引
- 实现代码:最小diff,复用现有工具,不扩大API表面
- 调试:先缩小失败模式,用证据而非猜测,修复后验证回归边界
- 代码审查:聚焦正确性、简洁性、范围控制,标记隐藏假设和静默回退
- 规划工作:先给最小可行计划,包含明确验证点,避免推测性未来防护
显著优点
- 权威性高:源自Karpathy在特斯拉自动驾驶和OpenAI大模型训练中的实战经验
- 抗膨胀设计:明确的"过度构建测试"(强高级工程师会否称之为过度设计)
- 可验证性导向:每个任务必须锚定到可检查结果,杜绝"让它能跑就行"
- Agent时代适配:专门针对AI编码Agent的特有陷阱(如将确定性逻辑隐藏在提示词中)
潜在局限
- 认知开销:对真正琐碎的编辑(typo、单行重命名)仍要求"判断",可能产生规则适用范围的心理负担
- 上下文依赖:高度依赖"阅读本地代码"的能力,若代码库质量差或文档缺失,准则执行效果下降
- 冲突解决模糊:当"本地先例"本身矛盾时,准则仅要求"暴露冲突并选择具体先例",未给出选择依据
- 验证瓶颈:要求"具体检查"但部分场景(如分布式系统、复杂UI)难以快速构造确定性验证
适合人群
- 使用AI Agent进行中等复杂度以上编码任务的开发者
- 需要代码审查checklist或团队工程规范的技术负责人
- 希望抑制"Agent幻觉式重构"和"过度设计"的个人开发者
- 追求可维护性、可回滚性的生产环境工程团队
常规风险
- 形式主义风险:团队可能机械执行七步循环而忽视其背后的"小步验证"精神
- 与快速原型冲突:探索性编程场景下,严格的最小变更原则可能抑制必要的激进实验
- Agent能力边界:准则假设Agent具备"阅读并理解本地代码模式"的能力,当前模型在长代码库上下文中可能失败
- 安全等级:内容本身无恶意,但若Agent错误应用(如将"最小变更"误解为"绕过安全验证的最短路径"),可能引入漏洞。需结合安全敏感场景的额外审查。