1个文件4条原则纠正AI编程3类通病
2026/8/29 11:46:25 网站建设 项目流程

1个文件4条原则纠正AI编程3类通病

【免费下载链接】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 助手"给接口加导出功能",它可能默默假设导出全量用户,顺手重构相邻代码,diff 里混入你没要过的抽象层。andrej-karpathy-skills 用单个 CLAUDE.md 文件给出四条行为准则,约束 Claude Code 等工具在写代码前先暴露假设,从源头压住这类失控改动。

项目定位

andrej-karpathy-skills 是一个给使用 AI 编程工具的开发者的行为指南项目,核心内容只有一个 CLAUDE.md 文件。它针对 LLM 写代码时的三类通病——静默假设、过度设计、无意识改动无关代码——给出四条可执行的约束规则,让 AI 的产出更可预期。

官方仓库地址:https://gitcode.com/GitHub_Trending/an/andrej-karpathy-skills

核心机制拆解

准则全文只有四条,每条对应一类已观察到的失效模式。

1. 编码前思考:实现之前先显式列出假设,遇到多种合理解释就并列呈现而不是静默选一个,有困惑就停下来点名哪里不清楚再提问。之所以把这条放在第一位,是因为错误假设是连锁反应的起点——模型一旦沿错误假设一路跑下去,后续所有改动都建立在错误地基上。实际效果是问题在写第一行代码之前就被摆到台面上,而不是在返工阶段才暴露。

2. 简单优先:只写解决当前问题的最简代码,不添加未请求的"灵活性"和配置项,不对单次使用的逻辑做抽象,不针对不可能发生的场景写错误处理,200 行能压到 50 行就重写。它压制的是 LLM 的过度工程化倾向,README 里引用的原话是"100 行能搞定的事写出 1000 行"。判断标准被固定成一句自检话:高级工程师会说这过度复杂吗,会就简化。

3. 精准修改:编辑现有代码时不"顺手改进"相邻代码、注释和格式,不重构没坏的东西,匹配现有风格;发现自己改动产生的孤儿导入和变量要清理,遇到无关的死代码只报告不删除。检验标准是 diff 里每一行改动都能直接追溯到原始请求。

4. 目标驱动执行:把指令式任务改写成可验证目标,"修复 bug"变成"先写一个能复现它的失败测试,再让它变绿"。依据是 Karpathy 的观察:模型很擅长朝着明确目标循环,给它成功标准比给它步骤说明更有效。多步任务还要求附一份"步骤 → 验证点"的简短计划,模型就能自己闭环推进。

快速上手

方式一,在 Claude Code 内安装插件,准则对全部项目生效:

git clone https://gitcode.com/GitHub_Trending/an/andrej-karpathy-skills /plugin marketplace add forrestchang/andrej-karpathy-skills /plugin install andrej-karpathy-skills@karpathy-skills

方式二,只给单个项目加准则,把 CLAUDE.md 拷到项目根目录即可:

cp andrej-karpathy-skills/CLAUDE.md /path/to/your-project/

跑通任意一种,准则就在下一次对话中生效,模型开始写代码前会先引用它。

项目文件导览

仓库结构非常小,六个文件全部与规则本身有关:

andrej-karpathy-skills/ ├── CLAUDE.md # 核心行为准则,四条原则全文 ├── README.md # 项目说明、四条原则解读与安装方式 ├── README.zh.md # 中文说明文档 ├── CURSOR.md # 在 Cursor 中使用同一套准则的方法 ├── EXAMPLES.md # 隐藏假设、多步验证等实践案例 └── skills/ └── karpathy-guidelines/ └── SKILL.md # 同一内容的技能定义版本,可复用

典型场景对比

两个高频场景,看准则开与关的差别:

场景不做会怎样做了之后怎样
"给接口加导出用户数据"静默假设导出全量用户、选 JSON 格式,顺带新增工具函数与缓存,diff 混入未请求的功能先反问导出范围、字段和格式,diff 里只有被请求的改动
"实现一个折扣计算"策略模式、抽象类、配置开关,三行逻辑被撑成上百行一个几行的函数直接解决问题,后续有真实需求再重构

上手自查清单

  • ✅ 提需求后,首轮回复先列出假设或反问,而不是直接开写
  • ✅ 复查 diff,每一行改动都能追溯到原始请求
  • ✅ PR 里找不到顺手重构、格式重排、未请求的类型标注
  • ✅ 多步任务附有"步骤 → 验证点"计划,且验证确实执行了
  • ✅ 修 bug 遵循测试先红后绿的顺序
  • ✅ 对简单改动没有走全套流程——准则偏向稳妥而非速度,琐碎任务允许从简

这个项目的价值就是用一个文件、四条规则,把 LLM 的隐性习惯变成显式约束。下一步可以直接把 CLAUDE.md 拷进当前项目,交给它一个非平凡任务,然后用 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),仅供参考

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

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

立即咨询