Karpathy 的 CLAUDE.md:一个 65 行文件 134K Star
原文链接Karpathy 的 CLAUDE.md:一个 65 行文件 134K Star
原文链接:https://mp.weixin.qq.com/s/q7nuyMeB7AzECSQ11FfaTA 来源:ChallengeHub,2026-05-18
摘要
Andrej Karpathy 2026 年 1 月发推分享 Claude Code 使用心得(800 万浏览),总结了 AI 编程 Agent 四种结构性失败。开发者 Forrest Chang 把它整理成 65 行的 CLAUDE.md,一天 6000 Star,三个月后 134K Star,GitHub 历史 Star 数前 100。核心是四条规则:先想清楚再动手、能简单就别复杂、只动该动的地方、目标要可验证。Star 数不是在给文件投票,是在给所有开发者共同的挫败感投票。
Karpathy 的核心发现
编程工作流发生了他二十年编程生涯里最大一次变化:从 80% 手动写代码 20% AI 辅助,变成 80% Agent 生成 20% 手动修改润色。同时发现 AI 编程 Agent 反复出现四种结构性失败。
CLAUDE.md 是什么
Claude Code 的项目记忆文件,每次会话启动自动读取。通常放项目信息,Forrest Chang 这版不包含任何项目信息,只有四条通用行为准则,可直接复制进任何仓库。Cursor 也能用。
四条规则逐条拆解
1. Think Before Coding(先想清楚再动手)
针对:自信地猜测。 LLM 在海量人类写作语料上训练,"自信断言"是被奖励的行为 → 遇到模糊需求时用听起来合理的答案填坑往下冲,在对话里流畅,在代码里是灾难。
效果:用户给需求 → AI 提出歧义 → 澄清后再实现。前置一个问题,省掉后面五轮返工。
2. Simplicity First(能简单就别复杂)
针对:过度设计。 AI 偏向生成比必要更多的代码,因为复杂代码在训练数据里代表"更完整专业"。规则直接压制:
- 没人要求的 feature 不加
- 用一次的代码不抽象
- 不可能发生的异常不防御
- 没要求"灵活可配置"就不搞扩展性
- 200 行能缩成 50 行就重写
验收标准:一个老工程师看到这些代码会不会觉得过度设计?
3. Surgical Changes(只动该动的地方)
针对:顺便优化一下。 AI 改代码时的习惯性动作——"既然来了,顺便优化"——听起来好意,真实系统里很危险。
- 只改任务要求的部分
- 不重构没坏的东西,不改格式和注释风格
- 自己改动产生的孤儿代码清掉,但之前就存在的死代码别动
- 每一行改动都能追溯回用户的请求
这让 diff 更干净、code review 更容易、debug 更可预测。
4. Goal-Driven Execution(目标要可验证)
针对:感觉差不多就停了。 AI 没有明确完成标准就会在"感觉差不多了"时停下来,而不是"确实对了"时。
- "加校验" → "为无效输入写测试,然后让测试通过"
- "修 bug" → "写复现测试,然后让它通过"
- "重构 X" → "确保前后测试都通过"
有可验证成功标准 = AI 自主循环执行。没有 = 每一步都要人来确认,效率极低。
爆火说明了什么
Star 数不是在给文件投票,是在给这个问题投票。每个用 AI 编程的人都碰过同样的墙——让 AI 加三行缓存,它把函数签名重写、引入没要求的依赖注入、包在八个方法的类里。这不是极端案例,是默认行为。大家都经历过、默默收拾了、继续用。
Karpathy 做的事:用准确语言说出挫败感。Forrest Chang 做的事:变成可直接用的文件。采用成本极低——粘贴进根目录三十秒。
使用注意事项
- 不是铁律,是行为上下文。 改善行为分布,不保证每个行为一定发生。网上"准确率提升 20 多点"来自个别测试,别拿这个赌 deadline。
- 是菜单不是模板。 四条是好基线,但不能替代项目特有指令。正确用法是合并进已有 CLAUDE.md 的行为准则小节,不要整个替换。
- 不只限于 Claude Code。 同样原则换文件名在 Cursor 同样适用。
- Karpathy 本人没写这个文件。 他发观察,Forrest Chang 变仓库,Karpathy 转发没要求去掉名字。
怎么用
-
全新项目:直接复制进根目录,或
/init生成起始文件后合并 -
已有配置:在末尾加
## Behavioral Guidelines小节贴四条规则 -
全局生效:放 home 目录,所有项目生效
-
提交进版本控制,全团队共享
-
GitHub: forrestchang/andrej-karpathy-skills
-
协议: MIT
-
内容: 一个文件,65 行