14万Star!Andrej Karpathy 教你一个文件驯服 AI 编程助手
给 Claude Code 加一份 CLAUDE.md,让它从”自作主张的学徒”变成”靠谱的搭档”。
这个项目为什么火
5月 GitHub 上最疯狂的增长发生在一个叫 andrej-karpathy-skills 的项目上——一个月涨了 8 万 Star,总 Star 数突破 14 万。
但打开项目你会发现:整个仓库的核心文件,其实就只有一个 CLAUDE.md。
不是工具链,不是 VSCode 插件,不是一堆规则——就是一个文本文件。
这个文件的作者 Andrej Karpathy(前特斯拉 AI 总监、前 OpenAI 研究员)把他对 LLM 编程助手”常见病”的观察整理成了四条行为准则。说白了就是:教会 AI 怎么写好代码。
AI 编程助手的三个老毛病
Karpathy 在 Twitter 上吐槽过 AI 编程的三大痛点:
1. 自作主张,不懂装懂
“模型会替你做出错误的假设,然后直接往下执行,根本不检查。它们不会管理自己的困惑,不会寻求澄清,不会暴露不一致,不会呈现权衡,也不会在应该的时候提出异议。”
翻译一下:你说”加个登录功能”,AI 就开始写了——用什么认证方式?JWT 还是 Session?密码加密用 bcrypt 还是 argon2?登录失败几次锁定?它不问,直接按自己的理解干。
2. 过度设计,代码臃肿
“它们真的很喜欢过度复杂化代码和 API,搞出一堆臃肿的抽象层,不清理死代码……本应 100 行搞定的事,给你实现个 1000 行的庞然大物。”
你说”写个表单验证”,它给你整出 ValidatorFactory → AbstractValidator → ConcreteValidator → ValidationPipeline,还有一个”未来可能会用到”的 ValidationStrategy 枚举。
3. 乱动代码,顺手破坏
“它们有时还是会修改/删除它们不够理解的代码和注释,即使这跟任务半毛钱关系都没有。”
你让改 A 函数的返回值,它顺手把旁边的注释删了、把 B 函数的引入”优化”了、把不相关的测试用例”清理”了。
四条核心原则
这个 CLAUDE.md 文件就是四条规则,每条都直击一个软肋:
原则一:先思考,再写代码
- 明确说出假设:不确定的地方,先问,别瞎猜
- 给出多种解读:模棱两可的时候,列出选项让你选
- 该顶嘴就顶嘴:如果有更简单的方法,直接说”你其实不需要做这个”
- 卡住就停下来:说不清哪里不懂,就老实说”我不太确定这部分”
核心就一句话:别装懂,不懂就问。
原则二:简单优先
- 只做被要求的功能,不多加
- 只用一次的代码不要搞抽象层
- 不要搞”以后可能会用到”的灵活性
- 别为不可能发生的场景写错误处理
- 能 200 行缩成 50 行,就改
自检标准:一位资深工程师看了你的代码会不会说”这太复杂了”?会?那就简化。
原则三:精准改动
- 只改你该改的:别”顺手”优化旁边的代码
- 没坏就别动:别重构没坏的东西
- 匹配现有风格,哪怕你觉得自己那一套更好
- 看到无关的死代码?提一下就好,别删
- 你自己改出来的垃圾(空导入、死变量、废弃函数)——自己收拾干净
原则四:目标驱动执行
这是最颠覆的一条:不要告诉 AI 该做什么,给它成功标准。
Karpathy 发现 LLM 在明确目标下反复迭代的能力很强:
“LLM 非常擅长在明确的目标下反复迭代直到达标……不要告诉它该做什么,给它成功标准,然后看它自己跑起来。”
实操方法:把命令式指令转变成可验证的目标。
| 原来的说法 | 改进后 |
|---|---|
| “加个验证” | “先写无效输入的测试,再让它们通过” |
| “修这个 bug” | “写一个能复现 bug 的测试,再让它通过” |
| “重构 X” | “确保重构前后的测试都能通过” |
对于多步骤任务,要求 AI 列出带验证点的计划:
1. [步骤] → 验证:[检查点]
2. [步骤] → 验证:[检查点]
3. [步骤] → 验证:[检查点]
怎么用?一条命令搞定
Claude Code 用户(推荐)
在 Claude Code 终端中:
# 添加插件市场
/plugin marketplace add forrestchang/andrej-karpathy-skills
# 安装
/plugin install andrej-karpathy-skills@karpathy-skills
装完就生效,所有项目自动启用。
传统 CLAUDE.md 方式
# 新项目
curl -o CLAUDE.md https://raw.githubusercontent.com/forrestchang/andrej-karpathy-skills/main/CLAUDE.md
# 已有项目(追加到现有 CLAUDE.md)
curl https://raw.githubusercontent.com/forrestchang/andrej-karpathy-skills/main/CLAUDE.md >> CLAUDE.md
Cursor 用户
项目还附带了 .cursor/rules/karpathy-guidelines.mdc,直接复制到项目的 .cursor/rules/ 目录即可。
实际效果
用了这个配置之后,最明显的变化:
- Diff 干净了:只有你要求改的代码出现在 diff 中,没有”顺手优化”的噪音
- 第一遍就对了:很少因过度设计需要重写
- AI 先问再写:不再先犯错再补救
- PR 清爽了:每行改动都能追溯到你的要求
说白了:从”AI 写代码你要盯着改”变成”AI 写代码你基本满意”。
为什么值得关注
这个项目之所以火,不只是因为 Karpathy 的名人效应。它戳中了一个真实痛点:
我们已经被 GPT-4、Claude 的”惊艳感”喂饱了。现在进入第二个阶段:不是”AI 能不能写”,而是”AI 写得靠不靠谱”。
AKS 给出了一个轻量级的答案:不需要换模型、不需要复杂配置,一个文本文件,四条规则,就能显著提升 AI 编程的质量。
另外,这背后是一个更大的趋势——Claude Skills 生态正在爆发。5 月 GitHub 新增 Star Top 5 中,有 3 个是 Skills 项目(AKS、mattpocock/skills、addyosmani/agent-skills)。头部开发者正在集体把自己的工程经验”喂”给 AI,让 AI 从”通用助手”变成”有工程品味的搭档”。
GitHub: https://github.com/forrestchang/andrej-karpathy-skills
Star: 140K+ | 许可证: MIT | 中文版: https://github.com/tev6/andrej-karpathy-skills-zhCN
潮州做AI找百智云联