3步让AI写出靠谱代码:andrej-karpathy-skills实战指南
2026/9/18 19:56:08 网站建设 项目流程

3步让AI写出靠谱代码:andrej-karpathy-skills实战指南

【免费下载链接】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 是一套源于 Andrej Karpathy 对 LLM 编码缺陷观察的行为指南,核心就是一个CLAUDE.md文件,专门解决 AI 编程助手写代码时的老毛病:擅自做错误假设、过度设计、顺手乱改无关代码。装好之后,你会发现 Claude Code 的产出更接近一位谨慎的资深工程师,而不是一个盲目自信的实习生。

先看一个真实场景

你让 AI "给登录接口加参数校验",结果它交回来 1000 多行代码:除了校验逻辑,还"顺手"重构了相邻模块、改了一堆注释格式、加了一整套没人要求的配置项。diff 打开一片红,你还得逐行排查它到底动了什么。

这类问题不是模型能力不够,而是它默认的行为模式就有缺陷——Andrej 的原话是:模型会替你做错误假设、不澄清、不权衡、不push back。andrej-karpathy-skills 就是针对这些缺陷写的一组约束规则。

机制速览:一条文件,四个原则

整个方案的核心机制就一张表:

原则针对的坏习惯
编码前思考隐藏假设、闷头猜、不暴露歧义
简单优先过度设计、抽象膨胀、写200行能50行解决
外科手术式修改顺手改无关代码、乱删别人写的死代码
目标驱动执行拿到模糊指令就硬做,无法自验证

四段规则加起来不到 60 行,轻到可以直接塞进任何项目的指令文件里,不会挤占模型的有效上下文。

分步操作:从零到生效

第1步:获取规则文件

你可以把仓库克隆到本地,或者直接在 Claude Code 里通过插件安装。建议先克隆一份,方便对照阅读:

git clone https://gitcode.com/GitHub_Trending/an/andrej-karpathy-skills

仓库里的CLAUDE.md就是完整规则,skills/karpathy-guidelines/SKILL.md是同内容的技能版,CURSOR.md则说明了 Cursor 用户的用法。

第2步:放进你的项目

  • 新项目:直接把CLAUDE.md复制到项目根目录即可,Claude Code 会自动加载。
  • 老项目:把内容追加到你现有的CLAUDE.md末尾,不要覆盖原有项目说明。
  • Cursor 用户:Cursor 默认不读CLAUDE.md,需要把.cursor/rules/karpathy-guidelines.mdc复制到目标项目的.cursor/rules/目录下。

第3步:学会用"目标驱动"的方式下任务

这是四条原则里收益最大的一条。把祈使句任务改写成可验证的目标,AI 才能自己循环到验证通过为止:

"加校验" → "为非法输入写测试,然后让它们通过" "修这个bug" → "写一个能复现它的测试,然后让它通过" "重构X模块" → "确保重构前后测试都通过"

多步任务再附一个简表:每一步后面跟一个 verify 检查点。标准越具体,AI 越不需要中途反复问你。

第4步:叠加你的项目专属规则

这套指南被设计成可合并的底座。你可以在文件末尾追加项目段,让通用原则落地到你的技术栈:

## Project-Specific Guidelines - 使用 TypeScript strict 模式 - 所有 API 端点必须有测试 - 错误处理遵循 src/utils/errors.ts 的既有模式

注意只加你自己能执行、能检查的规则,"代码要优雅"这种无法验证的条款没有约束力。

使用前后对比

装上规则前后,同一个任务"给订单模块加金额上限校验"的产出差异很明显:

  • 之前:800 行 diff,包含重命名、格式化、"顺手优化"的相邻函数
  • 之后:40 行 diff,只有校验逻辑 + 对应测试,且改动前会先说出它的假设

更直观的行为变化:

  • 歧义需求下,它会先列出两种解释让你选,而不是默默挑一个
  • 它发现更简单的实现路径时,会主动提出而不是照做
  • 发现无关死代码时,只"报告"不"删除"

判断它是否生效的官方标准就三条:diff 里无关变更变少、因过度复杂导致的返工变少、澄清问题发生在动手之前而不是翻车之后。

踩坑提醒

  • 别对小事上全套流程。这套指南偏向"谨慎优先于速度",改个错别字、加一行明显代码时,按直觉来即可,没必要逐条走。
  • 覆盖而非合并,是最高频的失误。老项目已有CLAUDE.md时直接覆盖,会丢掉项目说明,AI 反而更不懂你的代码库。
  • Cursor 用户别只放CLAUDE.md。Cursor 不读这个文件,只放它等于没装。
  • 只复制不阅读。建议至少通读一遍四条原则,这样 AI 提问时你能快速判断它问得对不对。

收尾检查清单

  • 规则文件已就位(Claude Code 根目录CLAUDE.md或 Cursor 的.cursor/rules/
  • 老项目是追加合并,不是覆盖
  • 已按"目标 + 验证"的方式改写过至少一次任务描述
  • 追加了 2~3 条你自己能执行的项目专属规则
  • 观察了 2~3 个任务的 diff,确认无关变更在减少

现在就打开你正在用的 Claude Code 项目,把规则文件放进去,再丢给它一个真实任务——第一个干净的 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),仅供参考

需要专业的网站建设服务?

联系我们获取免费的网站建设咨询和方案报价,让我们帮助您实现业务目标

立即咨询