andrej-karpathy-skills:一份文件降低 AI 编码翻车率的 LLM 编码规范
【免费下载链接】andrej-karpathy-skillsA single CLAUDE.md file to improve Claude Code behavior, derived from Andrej Karpathy's observations on LLM coding pitfalls.项目地址: https://gitcode.com/GitHub_Trending/an/andrej-karpathy-skills
andrej-karpathy-skills 是以单个 CLAUDE.md 文件承载的 LLM 编码规范,面向 AI 辅助编程场景。它要求模型先思考再编码、用最少代码完成任务、控制修改范围、先定义验收标准。适合新手开发者、学生、教师以及所有用 AI 写代码的人。
一、先用这个项目解决什么
AI 写代码常见的失控点
让 AI 帮你改一个 bug,这些场景你可能遇到过:
- 接到需求直接开写,多种理解里默默选了一种,从不反问;
- 一个简单的参数校验,写出一百多行、层层抽象,还附带一堆你没要的配置项;
- 顺手"改进"了相邻代码的格式,diff 里全是无关改动;
- 完成后说"应该可以了",你却不知道该怎么验证。
这些是 LLM 的常见倾向:不管理自己的困惑,不展示取舍,还爱把代码做复杂。
它适合谁用
- 你日常用 AI 写代码,担心改动失控;
- 你在学编程,想养成好习惯,不想照抄 AI 的坏习惯;
- 你是教师,想给学生示范如何给 AI 派任务;
- 你维护既有代码库,怕 AI 到处动刀。
二、andrej-karpathy-skills 的核心做法
如何让 LLM 少写错误代码?这个项目给出的答案很直接:给模型定四个习惯,相当于一套开箱即用的 AI 编程技能配置,全部装在一个文件里。
把假设、困惑和取舍写出来
动手前,先让模型写出自己的理解:它假设了什么、选了哪种解读、有没有更简单的做法。有困惑就明确说出困惑点并提问,而不是默默猜。很多错误实现源于第一步的假设错了,早问比返工便宜。
用最少代码完成当前任务
不添加没被要求的功能,不为只用一次的代码做抽象,不为不可能出现的场景写错误处理。自检标准很直白:资深工程师会不会说这写复杂了?会,就重写。"读取配置文件并校验参数"这类任务,20 行往往就够,别写到 100 行。
控制修改范围
改现有代码时,只动与任务直接相关的行。不碰相邻代码的格式和注释,不重构没坏的东西,跟随现有风格。发现无关的死代码可以提一句,但不要删;只清理自己改动造成的孤儿。代码修改范围控制的核心是:每一行改动都能说清理由。
先定义验收标准
把"做一下"改成"可验证":"加校验"先写覆盖无效输入的测试,再让测试通过;"修 bug"先写一个能复现它的测试,再修到通过。多步任务则逐条列出"步骤 + 验证方式"。标准明确,模型才能自己循环推进;目标模糊,就得一步步找你确认。这是可验证开发流程的核心。
三、在课堂、团队或个人项目中落地
个人开发者的日常用法
- 派任务前,先把背景和验收标准写进提示词,再让 AI 自己干活。
- 每轮输出后检查 diff,出现无关改动就让模型回退。
- 改旧项目时明确一句:"只动本次任务必需的文件。"
教师或学习者的练习方式
- 出一个故意模糊的需求,让学习者先列出假设和困惑点,再交给 AI 回答。
- 对比"让它能跑就行"与"先让测试通过"两种指令,看哪次结果更可靠。
- 让学生找出 AI 输出里的三处无关改动,并说明为什么不该出现。
团队维护规则
- 把 CLAUDE.md 放进仓库对全员生效,再补上团队自己的约定。
- 代码评审多问一句:这行改动能对应到哪个任务需求?
- AI 的产出不是交付物,人工审查和合入仍然必须。
四、快速上手
安装方式
方式一:作为 Claude Code 插件安装(推荐):
/plugin marketplace add forrestchang/andrej-karpathy-skills /plugin install andrej-karpathy-skills@karpathy-skills方式二:克隆开源 skills 仓库,把根目录的CLAUDE.md复制到自己项目根目录:
git clone https://gitcode.com/GitHub_Trending/an/andrej-karpathy-skills项目已有 CLAUDE.md 时,用追加而不是覆盖。
关键文件与路径
CLAUDE.md:规范全文,真正生效的文件。skills/karpathy-guidelines/SKILL.md:同内容的技能定义,插件安装时使用。CURSOR.md:说明如何把同一套规则用到 Cursor 环境。
最小可用配置
新项目把 CLAUDE.md 放在项目根目录,再加一节"项目特定规则",写两三行即可,例如"使用 TypeScript 严格模式、所有接口必须有测试"。可以直接开工。
五、边界与常见误区
- 它是行为约束,不是审查者,不替代人工审查,最终判断仍在你手里。
- 它救不了完全模糊的需求;你定不出验收标准,模型也只能反问。
- 它偏向谨慎,改错别字这类小事可以跳过完整流程。
- 它不保证代码正确,减少的是特定类型的失控,不是所有 bug。
六、下一步清单
- 克隆仓库,把 CLAUDE.md 放进你正在做的项目。
- 写下下一个任务:假设、验收标准、验证方式。
- 试跑一轮:让 AI 按"步骤 + 验证"列计划,逐步核对。
- 完成后回看 diff,数一数无关改动有几行。
【免费下载链接】andrej-karpathy-skillsA single CLAUDE.md file to improve Claude Code behavior, derived from Andrej Karpathy's observations on LLM coding pitfalls.项目地址: https://gitcode.com/GitHub_Trending/an/andrej-karpathy-skills
创作声明:本文部分内容由AI辅助生成(AIGC),仅供参考