游乐游手机版
首页/AI教程/文章详情

Karpathy四项规则根治AI写代码坏毛病,9万星项目

时间:2026-06-04 17:40
先说一个常见场景: 你让 AI 帮你修复一个 Bug,它却顺手把你的整个项目“重构”了一遍;让它添加一段验证逻辑,它给你造了一套完整的配置系统;你明明没提任何抽象层需求,它已经帮你写好了工厂模式。 更让人头疼的是,修改之后的 diff 三屏都看不完,你根本不清楚它到底动了哪些地方。 一位 Andr

先说一个常见场景:

你让 AI 帮你修复一个 Bug,它却顺手把你的整个项目“重构”了一遍;让它添加一段验证逻辑,它给你造了一套完整的配置系统;你明明没提任何抽象层需求,它已经帮你写好了工厂模式。

更让人头疼的是,修改之后的 diff 三屏都看不完,你根本不清楚它到底动了哪些地方。

一位 /Andrej Karpathy/ 用四条规则,把这个问题彻底讲明白了。如果你正在使用 AI 辅助写代码,这篇文章能帮你节省大量 review(审查)时间。从背景、原理、实操到效果,一次性全面梳理。

一个文件,9万星:Karpathy 用 4 条规则治好了 AI 写代码的“坏毛病“

一、背景:AI 写代码最大的问题,不是“不会写”

2025 年以来,AI 编程工具全面爆发。Claude Code、Cursor、Copilot、Windsurf……几乎每一位开发者都在借助 AI 辅助编码。

但用得久了,你会发现一个矛盾的现象:

AI 本身并不会犯低级错误,语法层面几乎零失误。但它会犯一种更隐蔽的错误——过度自信地执行你并不期望的操作。

Andrej Karpathy,前特斯拉 AI 总监、OpenAI 创始成员,在 X 平台上发了一段话,把这个核心问题说得很透彻:

“AI 最大的毛病不是能力不足,而是过于主动。它会在你没有要求的时候,自作主张地进行优化、重构、添加不必要的抽象层。你明明只让它改一个变量名,它顺手把整个模块重写了。”

市场上不乏类似的案例:让 Claude 帮忙重构某个模块,结果它不仅改了目标文件,还“优化”了三个相邻文件的命名风格,删掉了两个它认为“多余”的函数。最后花了半小时才把所有测试修好。

Karpathy 的这条动态引发了大量共鸣。有人把他的观察提炼成四条原则,写成了一个 CLAUDE.md 文件,放入项目根目录后,Claude Code 的行为便得到了肉眼可见的改善。

这个仓库名为 andrej-karpathy-skills,创建 3 个月就收获了 91,000+ Star,登顶 Star History 周榜第一。

目前市面上关于“AI 编程最佳实践”的内容,要么太理论化(例如关于 prompt engineering 的学术论文),要么太碎片化(某条推文中的经验分享)。真正能落地、能直接上手、效果可验证的方案几乎没有。

这个项目恰好填补了这块空白——一个文件,零成本,即装即用。

二、说明:四条规则,到底写了什么

2.1 核心定义

这不是一个代码库、不是框架、不是插件。它就是一个纯文本的 CLAUDE.md 文件,里面写了四条行为准则。Claude Code 在执行任务前会自动读取这个文件,并按照其中的规则约束自身行为。

2.2 实操说明

安装只需一行命令

curl -o CLAUDE.md https://raw.githubusercontent.com/forrestchang/andrej-karpathy-skills/main/CLAUDE.md

将文件放到你的项目根目录,Claude Code 启动时会自动读取。如果你已经在用 Cursor,项目里也自带了 .cursor/rules/karpathy-guidelines.mdc,同样有效。

四条原则详解

原则一:先想后写(Think Before Coding)

LLM 最常见的毛病是“默默选定一种理解,然后一路狂奔”。这条原则要求它:

  • 不确定就问,不要猜
  • 有歧义就列出多种解读,不要悄悄选一种
  • 有更简单的方案就说出来,不要藏着
  • 遇到不懂的地方,停下来说明哪里不清楚

原则二:极简优先(Simplicity First)

这条专门针对 AI 的“过度工程癖”:

  • 没人要求的特性不要加
  • 单次使用的代码不要抽象
  • 没人要的“灵活性”和“可配置性”不要造
  • 不可能出现的错误场景不要处理
  • 200 行能搞定的,别写 1000 行

原则三:外科手术式修改(Surgical Changes)

这条解决的是“顺手改了不该改的”问题:

  • 不要“改进”相邻的代码、注释或格式
  • 不要重构没坏的东西
  • 与现有代码风格保持一致,即使你觉得自己可以做得更好
  • 你改出来的新孤儿(无用的 import / 变量 / 函数)你清掉,别人留下的死代码不要碰

原则四:目标驱动执行(Goal-Driven Execution)

Karpathy 说:“让任务保持声明式的目标。告诉 AI 你想要什么结果,而不是教它怎么写代码。”

❌ 不要说✅ 而是说
“加个验证”“写测试覆盖无效输入,然后让测试通过”
“修这个 bug”“写一个能复现 bug 的测试,然后让它通过”
“重构 X”“确保重构前后测试都能通过”

多步骤任务,先列计划:

  1. [步骤] → 验证:[检查点]
  2. [步骤] → 验证:[检查点]
  3. [步骤] → 验证:[检查点]

2.3 核心亮点

这个文件的真正价值不在于“写了什么”,而在于它把 AI 的行为边界勾勒得清清楚楚。四条规则的本质是:在不确定的时候发问、在没要求的时候停手、在改代码的时候收敛、在执行任务的时候聚焦。

2.4 适用范围

维度说明
适用人群所有使用 Claude Code 或 Cursor 的开发者
适用语言任何编程语言和项目规模
风格偏向谨慎而非速度,简单任务不必走完整流程
设计目标减少非平凡任务中代价高昂的错误,而不是拖慢简单任务

三、对比:加了 vs 没加,差距有多大

3.1 横向对比:四条规则 vs 原始行为

场景❌ 没有规则时✅ 有规则后
需求有歧义默默猜一个,写完才发现猜错了先列出 2-3 种解读,问你选择哪个
改一个文件顺手“优化”了 3 个相邻文件只动该动的,其余一概不碰
加一个功能写了 500 行,包含一堆你没要的抽象100 行搞定,没有多余代码
修一个 bug直接改代码,改完才发现引入新问题先写复现测试,再改代码,测试通过才算完
遇到不确定的地方假设自己是对的,继续往下写停下来,说明哪里不确定,等你确认

3.2 纵向对比:实际使用前后的 diff 变化

使用前                                 使用后
━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
来源:https://blog.csdn.net/weixin_44347185/article/details/160561592
上一篇2026年5月11日至18日人工智能领域简报 下一篇DeepSeek-V4-Flash免费使用,很多人还不知道
本站内容用于信息整理与展示,如有侵权或内容问题请及时联系处理。

相关推荐

补充同频道和同主题内容,方便继续浏览更多相关内容。

同类最新

继续查看同栏目最近更新的文章。

更多
手把手教你免费获取小米MiMo百万亿Token及Claude Code配置全流程
AI教程 · 2026-06-04

手把手教你免费获取小米MiMo百万亿Token及Claude Code配置全流程

前言:百万亿Token免费额度领取指南 近期,小米MiMo大模型推出了重磅福利——百万亿Token的免费额度,申请流程极为简便,额度也十分充足,并且支持直接接入Claude Code等主流工具。本文将完整演示从注册申请、获取API密钥,到最终在Claude Code中完成配置的全流程,跟着操作即可轻

Sentinel-3B OLCI L3全球降分辨率叶绿素数据2022.0版
AI教程 · 2026-06-04

Sentinel-3B OLCI L3全球降分辨率叶绿素数据2022.0版

Sentinel-3B OLCI Level-3 Global Mapped Earth-observation Reduced Resolution (ERR) Chlorophyll (CHL) Data, version 2022 0 叶绿素a浓度全球网格化数据集简介 叶绿素a浓度是衡量海洋浮

我每月省千元组建一支全天候云端AI团队
AI教程 · 2026-06-04

我每月省千元组建一支全天候云端AI团队

先说个有意思的现象。 前两天,我的视频生成团队“入职腾讯”了。在WorkBuddy专家团里,不少伙伴已经开始用这个工具做短视频。本来以为这事儿就这么定了,结果这两天,反而开始疯狂返工——我发现它只能生成文字驱动的视频,还不能像真正的视频团队那样,把配图的活儿也给干了。 于是,继续优化。 先给你看个好

如何编写合格的AI工作流指令:提升编辑技能
AI教程 · 2026-06-04

如何编写合格的AI工作流指令:提升编辑技能

如何编写一个合格的 Skill:AI 工作流核心指令集指南 在 AI 工作流的实际应用中,Skill(技能指令)常常被误解。许多人将其与普通提示词(Prompt)混淆,导致写出的指令过于宽泛或模糊,AI 难以精准执行。实际上,Skill 的本质是一套结构化的行为指令集,它引导 AI 助手在特定场景下

TRAE AI编程入门第三讲:Rules、Memory、MCP与Skills突破边界
AI教程 · 2026-06-04

TRAE AI编程入门第三讲:Rules、Memory、MCP与Skills突破边界

最近几天我会逐步公开自己策划的系统化 AI 编程入门课程大纲,欢迎各位提出宝贵建议。 这套课程暂定 4+1 节:4 节主课以 TRAE 为载体,带领大家零基础入门 AI 编程;外加 1 节扩展课,专门为非技术背景的学员补充软件工程基础知识。具体安排如下: 第一节:TRAE AI 编程入门——Vibe