
别让 AI 写代码时放飞自我andrej-karpathy-skills 实战指南【免费下载链接】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 助手却还给你一个策略类、一套抽象接口加一个配置加载系统你说把那个崩溃修掉它顺手重构了半个文件。这种过度工程化——用二十行代码干两行的活——是代码助手们的老毛病。开源项目 andrej-karpathy-skills 就是冲着这个毛病来的它把四条行为规则写进一个叫 CLAUDE.md 的文件里让助手在动手前学会克制。刚上手 AI 编程的开发者和被 AI 的臃肿代码折腾过的老手都能直接拿来用。 这个项目是什么一句话把 Andrej Karpathy 对LLM 写代码容易栽跟头在哪的公开观察变成了一份可直接套用的规则文件。Karpathy 指出的典型翻车模式——擅自挑一种解释就闷头做、把代码堆肥、顺手改无关的行——被作者提炼成四条准则落进了 CLAUDE.md。为什么写成文件而不是指望模型自己改因为毛病太系统只能靠外部规则点名约束。Claude Code 会自动读取项目根目录的 CLAUDE.md文件一放规则即刻生效。 四条原则的两条主线想清楚再克制四大原则编码前思考、简单优先、精准修改、目标驱动执行不是四件互不相干的事可以归成两条主线动手前问清楚动手后少改多验。主线一别把困惑藏起来编码前思考要求助手在写第一行代码之前把假设摊开需求有两种解释就列出来让你挑拿不准就先问存在更省事的方案就直说。反例场景很常见你说让搜索快一点它不问清你要的是响应时间还是吞吐量直接加上缓存、数据库索引和异步处理。主线二做克制的事简单优先与过度工程化对着干只解决今天的问题。不写推测性功能没人要、只是以后可能用得上的功能也不为一次性功能搭抽象层就是那种为将来扩展预留的通用框架。CLAUDE.md 里给了条硬标准二百行能压成五十行就重写。比如算运费这个需求没有约束时助手经常造出运费策略基类、用工厂注册多种实现、再附一个配置文件四十行起步。有了约束def shipping_fee(order_amount: float, free_threshold: float 200) - float: 返回运费满 threshold 免邮不足收 8 元 return 0 if order_amount free_threshold else 8精准修改进一步管住手不许顺手优化相邻的注释和格式不许重构没坏的代码发现不相关的死代码提一句就行别删。检验口径只有一句每一处改动都得能指出它对应你需求里的哪一行。目标驱动执行则把模糊指令换成可验证的标准修 bug变成先写一个能复现 bug 的测试再让它通过。标准立得越硬助手越能自己跑验证循环让它能跑就行这种弱标准只能换来反复追问。上面两条主线合起来就是这样一个循环。常见误区速查常见误区落地做法需求默选一种解释就往下冲事后没法纠偏开工前把假设和候选解释列出来确认后动手给一次性功能搭抽象层和策略模式先写能解决今天问题的最短代码第二个场景出现再抽离改一行 bug 顺手优化附近格式和注释只动与需求直接相关的行其余问题在 PR 里提一嘴拿让它能跑当唯一验收标准把每一步翻译成可检查的判据验证通过再交付 上手指南三条路装进你的工作流方式一Claude Code 插件全局生效。在 Claude Code 里依次输入两行规则覆盖所有项目不用逐个维护文件/plugin marketplace add forrestchang/andrej-karpathy-skills /plugin install andrej-karpathy-skillskarpathy-skills方式二追加到现有项目。项目里已经有自己的 CLAUDE.md 时直接往后附官方规则和项目自有规则可以并存echo CLAUDE.md curl https://raw.githubusercontent.com/forrestchang/andrej-karpathy-skills/main/CLAUDE.md CLAUDE.md方式三新项目直接下载。空项目里把它当 CLAUDE.md 的初始内容curl -o CLAUDE.md https://raw.githubusercontent.com/forrestchang/andrej-karpathy-skills/main/CLAUDE.md想通读整个仓库里面有更完整的案例集 EXAMPLES.mdclone 下来看即可git clone https://gitcode.com/GitHub_Trending/an/andrej-karpathy-skills 修 bug 时怎么管住 AI 的手拿一个具体场景说。假设验证函数在邮箱字段为空时会崩溃。没有约束时助手常常整个重写验证逻辑、补一套正则白名单、把注释风格换了还顺手抽出错误信息常量——diff 越滚越大真正的修复反而不好找。有约束之后改动就是两行def validate_email(address: str) - bool: if not address: # 空输入按无效处理不崩溃 return False return in address函数其余部分原样保留顺带发现的不相关死代码只在描述里提一句不动手删。✅ 怎么判断指南生效了项目自带的检查清单翻译成四个可观察的信号diff 变小只出现你点名的改动看不到顺手的重构第一次就写对不再需要让 AI 把代码反复简化重写提问发生在动手前模糊点先被问出来而不是出错后再解释PR 干净评审时找不到一行无关的改进。一周内出现其中两三条说明这份文件正在干活。这四条准则最值钱的不是让代码写得更快而是让它少被重写。现在就去你常改的那个项目把 CLAUDE.md 追加进去看看下一次需求的 diff 变了多少。【免费下载链接】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),仅供参考