一个CLAUDE.md文件,让你的Claude Code告别“废话”

2026-04-19 18:58:42 0点赞 5收藏 0评论

👤Andrej Karpathy 是谁?

如果你关注 AI 领域,这个名字一定不陌生。Andrej KarpathyOpenAI 的创始成员之一,也曾担任特斯拉 AI 高级总监,主导了 Autopilot 的视觉神经网络。他不仅是大神级工程师,更是AI领域极具影响力的研究者和教育家。他极其擅长观察并指出当前大语言模型(LLM)在实际编码中的典型缺陷——也就是我们常说的“AI 编程代码幻觉”。

一个CLAUDE.md文件,让你的Claude Code告别“废话”

📌 这个项目是什么?

andrej-karpathy-skills 是一个开源项目,其核心仅为一个独立的 CLAUDE.md 文件。它的目标非常明确:通过给AI“立规矩”,大幅减少代码生成中的“幻觉”、过度设计和偏离需求等问题。

CLAUDE.md 是 Claude Code 的配置文件,AI助手在每次对话开始时都会自动读取它,并将其内容注入系统提示词,从而在编码过程中持续遵循你的规则。

截至本文发布,该项目在GitHub上已获得 5.9k+ Star截至本文发布,该项目在GitHub上已获得 5.9k+ Star

🤔它解决了什么?

来自 Andrej Karpathy 的推文:

"模型会代你做错误假设,然后不假思索地执行。它们不管理自身的困惑,不寻求澄清,不呈现矛盾,不展示权衡,在应该提出异议时也不反驳。"

"它们真的很喜欢把代码和 API 搞复杂,堆砌抽象概念,不清理死代码……明明 100 行能搞定的事情,非要实现成 1000 行的臃肿架构。"

"它们有时仍会改动或删除自己理解不足的代码和注释,即使这些内容与任务本身无关。"

🔥核心解决方案:四大铁律

项目将Karpathy的洞见凝练为四条原则,构成了一个清晰的行为框架:

  1. 编码前先思考 (Think Before Coding)

    • 核心:不要假设,不要隐藏困惑。

    • 做法:AI必须先明确陈述假设。如果不确定,要主动提问。遇到歧义,要列出多种可能供用户选择,而不是自己默默挑一个。

  2. 简洁优先 (Simplicity First)

    • 核心:用最少的代码解决被问到的问题。

    • 做法:禁止添加任何未被要求的“未来可能用上”的功能,拒绝不必要的抽象和配置。写完代码后,AI需要自问:“一位资深工程师会觉得这段代码过于复杂吗?”

  3. 精准修改 (Surgical Changes)

    • 核心:只触及必须修改的部分。

    • 做法:AI应像外科医生一样精准,不随意修改或删除不相关的代码和注释。修改的每一行代码,都必须能直接追溯到用户的需求。

  4. 目标驱动 (Goal-Driven Execution)

    • 核心:用明确的成功标准来验证结果。

    • 做法:将任务转化为可验证的目标。例如,将“添加用户验证”变为“为无效输入编写测试,然后修改代码让测试通过”。

🚀 安装与使用

在 Claude Code 中使用,所有项目中可用。

在 Claude Code 终端中执行:

# 添加市场 /plugin marketplace add forrestchang/andrej-karpathy-skills # 安装插件 /plugin install andrej-karpathy-skills@karpathy-skills

不能使用插件的项目,直接下载 CLAUDE.md 放到项目根目录即可:

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

👥 适合谁用?

  • Claude Code的重度用户:想让AI编程更“听话”的开发者。

  • 受困于AI“过度工程”的开发者:希望AI代码保持简洁、务实的工程师。

  • 维护复杂项目的核心成员:需要严格控制AI修改范围,避免产生“蝴蝶效应”。

📖 实战案例

场景:你想让AI为你的Python函数添加一个日志功能,记录函数的调用时间。

无规则约束(AI的典型做法)

AI:好的,我为你创建了一个Logger类,它支持多文件输出、日志轮转、不同级别的日志(INFO, DEBUG, WARNING),并可以通过配置文件自定义格式。

然后AI生成了80+行代码,包含LoggerConfig、FileHandler等多个类,远超出了你的需求。

有规则约束(遵循Karpathy原则)

效果:AI首先澄清了需求,没有做过度假设,生成的代码简洁、直接,完全符合你的要求,没有产生任何额外的维护负担

AI:我将为你的函数添加日志功能。假设你只需要将日志打印到控制台。如果还需要写入文件或其他高级功能,请告诉我。

生成的python代码(仅6行):

import time

def log_calls(func):

def wrapper(*args, **kwargs):

print(f"Calling {func.__name__} at {time.time()}")

return func(*args, **kwargs)

return wrapper

💎 总结

andrej-karpathy-skills 项目证明了 好的规则比复杂的工具更重要。它通过一个极简的配置文件,将AI领域顶尖专家的经验注入到你的开发流程中,让AI从“炫技的初级程序员”变成“务实的高级工程师”。如果你想让AI编码更高效、更可靠,不妨试试这个“立规矩”的简单方法。

展开 收起
0评论

当前文章无评论,是时候发表评论了
提示信息

取消
确认
评论举报

相关文章推荐

更多精彩文章
更多精彩文章
最新文章 热门文章
5
扫一下,分享更方便,购买更轻松