AI 为什么总加你没要的代码用 1 个 CLAUDE.md 快速设置 Claude Code 的 4 条行为准则【免费下载链接】andrej-karpathy-skillsA single CLAUDE.md file to improve Claude Code behavior, derived from Andrej Karpathys observations on LLM coding pitfalls.项目地址: https://gitcode.com/GitHub_Trending/an/andrej-karpathy-skills「修一下空邮箱崩溃的问题就行了。」你把需求丢给 AI 编码助手结果打开 diff 一看引号风格全被换了顺手加了类型标注重写了注释还把旁边无关的用户名校验顺手改进了——真正修复 bug 的代码只有两行。爱默默替你做假设、把 100 行的事写成 1000 行的抽象、改动根本没让它碰的代码——这是 AI 编码最常见的三个坑。andrej-karpathy-skills 就是冲着这些问题来的它把 Andrej Karpathy 对 LLM 编码陷阱的观察浓缩成一份CLAUDE.md行为准则文件两分钟即可配置好让 Claude Code 做到先问后写、简单写码、精准修改、验证通过才算完。不引入任何依赖不改动你的代码就是一份 Markdown 文件。按真实使用顺序看懂这 4 条规则到底在管什么整份准则就四节恰好对应一次编码任务的完整流程写码前 → 写码时 → 改码时 → 收尾时。下面按这个顺序讲每一条都说清楚它要求什么、为什么有效、生效后你能看到什么。写码前让 AI 停下来先问要求实现前把假设明说不确定就问存在多种理解时全部摆出来让你选不许默默挑一个有更简单的做法就主动提出来听不懂就停说清哪里不清楚。为什么有效模型出错大多不是能力问题而是沉默——它悄悄选了某种解释就一路狂奔错误假设被放大到整个实现里。你会看到的变化你说加个导出功能AI 不再直接生成一个默认导出全部用户到某文件的实现而是先问导出范围、文件格式、哪些字段、数据量多大再给出它认为的最简方案。写码时只写解决今天问题的代码要求不加没被要求的功能不为只用一次的代码建抽象不加没被要求的灵活性/可配置性不为不可能的场景写错误处理200 行能压到 50 行就重写。为什么有效过度工程化本身不是错误错在时机——过早的复杂度让代码更难读、更难测、更容易藏 bug。检验标准很简单资深工程师会说这写复杂了吗会就简化。你会看到的变化算个折扣拿到的是一个三行的普通函数而不是一套默认的策略模式类家族。等哪天真的需要多种折扣类型再重构也不迟。改码时只动必须动的行要求不顺手改进相邻代码、注释或格式不重构没坏的东西匹配现有代码风格哪怕它不是你的口味只清理自己这次改动产生的废弃代码预先存在的死代码只提及、不删除。为什么有效每一行多余的改动都是额外的评审负担和新的 bug 来源也会让 diff 失去这行改动对应哪条需求的可追溯性。你会看到的变化官方给的检验标准是——每一行被改的代码都应能直接追溯到你的请求。修空邮箱崩溃的 diff 就真的只有那两行其他一行不碰。收尾时把让它能跑变成可验证的验收标准这是整份准则里最核心的一条。它要求把指令式需求翻译成可验证的目标你原本会说的翻译成加个验证为非法输入写测试然后让测试通过修这个 bug先写一个能复现 bug 的测试然后让它通过重构 X确认重构前后测试都通过多步骤任务则先给出「步骤 → 验证方式」的简短计划再逐步推进。为什么有效Karpathy 的观察是LLM 极其擅长循环直到达成某个具体目标。成功标准清晰它能自己迭代标准模糊比如make it work你就得反复澄清、反复返工。你会看到的变化AI 不再给你我会先审查代码然后逐步改进这种无法验收的承诺而是一份每一步都带验证方法的编号清单做完一步证明一步。2 分钟上手把准则放进项目的 3 种方式方式一装成 Claude Code 插件推荐所有项目通用在 Claude Code 里依次执行两条命令先加市场、再装插件/plugin marketplace add forrestchang/andrej-karpathy-skills /plugin install andrej-karpathy-skillskarpathy-skills装完后准则作为插件在所有项目中生效不用逐个项目配置。方式二给单个项目追加 CLAUDE.md3 条命令完成先 clone 仓库git clone https://link.gitcode.com/i/6e04d8976b8c6dde656501e1cc2aecca然后把仓库根目录的CLAUDE.md复制到你的项目根目录即可如果项目已有CLAUDE.md把内容追加到末尾就行——准则本身设计成可与其他项目说明合并使用。方式三在 Cursor 里生效把.cursor/rules/karpathy-guidelines.mdc复制进目标项目的.cursor/rules/目录没有就新建文件夹打开项目即自动应用。想把同一套内容存为个人可复用技能可以用仓库里的skills/karpathy-guidelines/SKILL.md具体说明见CURSOR.md。用一段时间后怎么判断它起效了看 4 个信号信号说明diff 里顺带改动变少只剩你请求的改动出现因过度复杂被要求重写的次数减少代码第一次提交就是简单的澄清问题出现在实现之前而不是在改错之后才问PR 干净、最小化没有夹带的重构和改进一个容易忽略的细节小任务请保留判断力这份准则的取向是谨慎优先于速度多问一句、多写一行验证换来的是一次性做对。副作用是改个拼写错误也走完整流程会显得啰嗦——文件开头就注明了对琐碎任务应自行裁量不必事事上强度。目标不是拖慢简单任务而是降低非平凡任务上出错的代价。另外你可以直接在CLAUDE.md里追加项目专属规则例如所有 API 端点必须有测试与四节准则合并使用。写在最后给它成功标准而不是步骤这个项目最值钱的洞察只有一句不要告诉模型该做什么给它什么算做成然后看着它自己循环到终点。四节准则——先问、简单写、精准改、验证收尾——本质都是这一句的具体化。想对照更多真实案例可以翻仓库里的EXAMPLES.md每条原则都配了AI 常犯的错误写法 vs 正确做法的成对示例准则全文就在根目录的CLAUDE.md不到一个百行值得逐字读一遍。【免费下载链接】andrej-karpathy-skillsA single CLAUDE.md file to improve Claude Code behavior, derived from Andrej Karpathys observations on LLM coding pitfalls.项目地址: https://gitcode.com/GitHub_Trending/an/andrej-karpathy-skills创作声明:本文部分内容由AI辅助生成(AIGC),仅供参考