@servasyy_ai: Andrej Karpathy:“Claude 的错误里,90% 来自上下文缺失,而不是模型能力弱。” 没有 `CLAUDE.md` 时,错误率是 41%。 有 4 条基础规则时,错误率降到 11%。 使用下面这套 12 条规则时,错误率…

X AI KOLs Timeline 工具

摘要

Andrej Karpathy 指出Claude的错误90%源于上下文缺失,并分享12条规则(如写代码前先思考、简单优先等)将错误率从41%降至3%,强调纪律与有效上下文管理比框架更重要。

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 的大众共识之前,提前领先几条规则。 研究它
查看原文
查看缓存全文

缓存时间: 2026/05/19 12:44

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 的大众共识之前,提前领先几条规则。

研究它

相似文章

@vincemask: 我靠,原来 CLAUDE.md 还有这么多门道,以前真是白写了。 以前我一直以为「信息越多越好」,于是把项目历史、技术决策、个人偏好,甚至「写干净代码」这种空泛要求,全塞进 CLAUDE.md。 结果就是:Claude 每次都像在几千行上…

X AI KOLs Timeline

作者反思了对CLAUDE.md的常见误解,指出不应堆砌信息,而应压缩判断标准、约束执行边界和沉淀高频规则,以提升Claude Code等代码代理的工作效率。

@xiaohu: Claude Code 之父自己的 CLAUDE.md 现在就两行... Claude Code 团队聊"少即是多"分享随着模型能力增加该如何和模型交流: “别跟模型较劲做加法,因为模型每代都在变强,你今天费劲搭的东西很快就白搭了。” 为…

X AI KOLs Timeline

Claude Code 团队分享了使用最佳实践:CLAUDE.md 应尽量简短并定期清空,坚持 CLI 而非 GUI 的原因是模型进步太快,用 AI 修 bug 已非常高效,核心策略是做减法、轻配置、信赖模型能力。