Andrej Karpathy:“Claude 的错误里,90% 来自上下文缺失,而不是模型能力弱。”
没有 `CLAUDE.md` 时,错误率是 41%。
有 4 条基础规则时,错误率降到 11%。
使用下面这套 12 条规则时,错误率降到 3%。
这是资深工程师最终沉淀出的 12 条规则:
1. 写代码前先思考
先说明假设,不要猜。模型不会读心,别指望它能自动知道你的意思。
2. 简单优先
最少代码,不做投机式抽象。一旦你让 Claude 为“未来灵活性”加东西,可能就多出 200 行下季度要删的代码。
3. 外科手术式修改
只改必须改的地方。别让它顺手优化旁边的代码,PR 就是这么膨胀的。
4. 目标驱动执行
先定义成功标准,然后循环直到验证通过。没有成功标准,Claude 要么无限循环,要么过早停止。
5. 只把模型用于判断型任务
比如分类、草稿、总结、抽取。不要让模型处理路由、重试、状态码处理、确定性转换。代码能回答的,就让代码回答。
6. Token 预算不是建议
单任务 4000,单会话 30000。长时间调试到第 40 条消息时,Claude 会重新建议你第 5 条消息已经否掉的修复方案。
7. 暴露冲突,不要折中平均
代码库里有两种模式?选一种。Claude 把两种混在一起,错误就会被吞两次。
8. 先读再写
先读 exports、调用方、共享工具。Claude 很可能在一个已有相同函数旁边,再加一个重复函数,只因为它没读到。
9. 测试要验证意图,而不只是行为
如果业务逻辑变了测试却不会失败,这个测试就是错的。Claude 写的 12 个测试都可能通过,即使函数实际只返回一个常量。
10. 每个重要步骤都要 checkpoint
Claude 可能在第 4 步已经坏掉的状态上继续完成第 5、6 步,而没人发现,浪费一小时。
11. 匹配代码库约定
项目用 class components,就不要默默改成 hooks。测试模式可能依赖 `componentDidMount`,hooks 会破坏它,却不一定暴露问题。
12. 失败要大声暴露
“成功完成”,但 14% 的记录被静默跳过,这是最糟糕的一类 bug。要暴露不确定性,不要藏起来。
真正会复利增长的,不是下一个框架,而是:
- 把 `CLAUDE.md` 当作跨会话的组织记忆
- 基于 eval 改进,而不是凭感觉改
- 重视 checkpoint,而不是一味追求速度
- 明确暴露冲突,而不是静默混合
- 纪律永远比框架重要
- 一个仓库,一个规则文件,没有例外
在这件事变成 AI Twitter 的大众共识之前,提前领先几条规则。
研究它👇
顯示更多