92K+ Star!这个 GitHub 仓库揭示了让 AI 编码助手「靠谱」的秘密

2 阅读6分钟

92K+ Star!这个 GitHub 仓库揭示了让 AI 编码助手「靠谱」的秘密

一份仅 4 条原则的 CLAUDE.md 文件,为何能在短短 3 个月获得 92,466 个 Star?它捕捉了 Andrej Karpathy 对 LLM 编码的核心观察,直击痛点。


🔥 仓库背景

仓库地址: github.com/forrestchan…

数据
Stars92,466
Forks🍴 8,882
创建时间2026-01-27
文件数量仅 1 个(CLAUDE.md)

一句话描述:

A single CLAUDE.md file to improve Claude Code behavior, derived from Andrej Karpathy's observations on LLM coding pitfalls.

翻译过来就是:一个单独的 CLAUDE.md 文件,基于 Andrej Karpathy 对 LLM 编码陷阱的观察,用来改进 Claude Code 的行为。


🎯 Andrej Karpathy 是谁?

如果你不认识他,简单介绍一下:

  • 前 Tesla AI 总监 — 负责 Autopilot 的深度学习系统
  • OpenAI 创始成员 — 参与 GPT 系列模型的开发
  • 教育家 — 制作了一系列深度学习教程(从零实现神经网络)

他有个特点:喜欢从零开始理解事物,追求简单、本质、可解释。

他的代表作:

  • micrograd — 用 100 行 Python 实现自动求导
  • makemore — 字符级语言模型教程
  • llm.c — 用纯 C 训练 LLM(不用 Python)
  • nanoGPT — 最简化的 GPT 实现

📝 核心 4 原则详解

这份 CLAUDE.md 只有 4 条原则,但每一条都精准击中 LLM 编码的痛点:

原则 1:Think Before Coding(先思考再编码)

核心思想:不要假设。不要隐藏困惑。呈现权衡。

实现之前:
- 明确陈述你的假设。如果不确定,就问。
- 如果有多种理解,把它们都呈现出来——不要悄悄选择一个。
- 如果有更简单的方法,说出来。必要时反驳。
- 如果不清楚,停下。说出困惑点。提问。

痛点: LLM 经常「假设」需求,然后悄悄执行一个可能错误的理解。

举例:

  • 用户说「添加验证」
  • LLM 直接加了一堆复杂的验证逻辑
  • 但用户可能只需要一个简单的非空检查

原则 2:Simplicity First(简单优先)

核心思想:最小代码解决问题。不要投机。

- 不要添加超出要求的特性。
- 不要为单次使用的代码做抽象。
- 不要添加未被请求的「灵活性」或「可配置性」。
- 不要处理不可能发生的错误场景。
- 如果你写了 200 行但可以只写 50 行,重写它。

自检问题:

「资深工程师会说这太复杂了吗?」如果是,简化。

痛点: LLM 经常「过度设计」,加入一堆不必要的抽象、配置、错误处理。


原则 3:Surgical Changes(精准修改)

核心思想:只改必须改的。只清理自己留下的混乱。

编辑现有代码时:
- 不要「改进」相邻代码、注释或格式。
- 不要重构没坏的东西。
- 匹配现有风格,即使你会用不同方式。
- 如果你发现无关的死代码,提一下——不要删除它。

测试标准:

每行修改都能直接追溯到用户的请求。

痛点: LLM 经常「顺手」重构周围的代码,导致 diff 里全是无关改动,review 困难。


原则 4:Goal-Driven Execution(目标驱动)

核心思想:定义成功标准。循环直到验证。

把任务转化为可验证的目标:
- 「添加验证」 → 「为无效输入写测试,然后让它们通过」
- 「修复 bug」 → 「写一个能重现的测试,然后让它通过」
- 「重构 X」 → 「确保测试前后都通过」

多步骤任务,简述计划:
1. [步骤] → 验证: [检查]
2. [步骤] → 验证: [检查]
3. [步骤] → 验证: [检查]

痛点: LLM 经常只有一个模糊的目标「让它工作」,缺少验证标准,导致反复试错。


🌟 为什么这么受欢迎?

这份 skill 之所以能获得 92K+ Star,我认为有这几个原因:

1. 直击痛点

每个用过 AI 编码助手的人都遇到过这些问题:

  • LLM 写的代码太复杂
  • LLM 「顺便」改了一堆不该改的地方
  • LLM 假设需求然后执行错误的理解
  • LLM 缺少明确的验证标准

这份 skill 精准描述了这些痛点,并提出解决方案。

2. 极简主义

  • 只有 4 条原则
  • 每条原则都有具体的行动指南
  • 没有废话,没有空洞的口号

这符合 Andrej Karpathy 的风格:简单、本质、可执行

3. 可立即应用

你可以把这份 CLAUDE.md 直接放到项目根目录,Claude Code 就会自动遵循这些原则。

不需要配置,不需要学习,拿来即用


🔧 社区正在如何扩展?

从 GitHub 的 PR 讨论中,我看到社区正在朝这些方向扩展:

1. 扩展为 10 原则

PR #112 提出了一个 10 原则的 fork:

  • 添加了架构层面的规则(Test Semantics、API Contracts、Boundaries 等)
  • 引入「Project Lessons」概念,创建持续学习循环
  • 创建了 GEMINI.md 和 AGENTS.md 支持更多 AI 平台

2. 添加架构和代码纪律

PR #110 添加了两个新章节:

  • Architecture & Boundaries:层规则、大小预算、类型作为契约、所有权等
  • Code-Level Discipline:命名规范、注释策略、错误处理、日志、类型卫生等

3. 多语言支持

PR #105 添加了中文镜像文档:

  • CLAUDE.zh-CN.md
  • CURSOR.zh-CN.md
  • 还添加了「Programming Principles and Workflow」章节

4. 多平台支持

PR #104 添加了 Codex skill metadata:

  • 支持 OpenAI Codex
  • 支持 Cursor
  • 保持各平台行为一致

💡 如何应用到实际工作?

方法 1:直接放到项目根目录

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

# 或者手动创建

然后把 CLAUDE.md 放到你的项目根目录。

方法 2:合并到现有 CLAUDE.md

如果你已经有项目的 CLAUDE.md,可以把这 4 条原则追加进去:

# 项目特定指令...

---

## 编码原则(源自 Andrej Karpathy 观察)

### 1. 先思考再编码
...

### 2. 简单优先
...

### 3. 精准修改
...

### 4. 目标驱动
...

方法 3:创建自己的 fork

根据你的团队习惯,扩展或修改这些原则。


🎯 效果自检

这份 skill 生效的表现:

指标效果
diff 质量减少不必要的修改
重写次数因过度复杂导致的重写减少
沟通效率澄清问题在实现之前,而非错误之后

📌 总结

这份 92K+ Star 的 skill,本质上是一份 「如何让 LLM 编码助手靠谱」的指南

它捕捉了 Andrej Karpathy 对 LLM 编码的核心观察:

  • LLM 经常过度复杂化代码 → 用「简单优先」对抗
  • LLM 经常假设需求 → 用「先思考再编码」对抗
  • LLM 经常「顺便改进」不该改的东西 → 用「精准修改」对抗
  • LLM 经常缺少验证标准 → 用「目标驱动」对抗

简单、精准、可执行 —— 这就是它受欢迎的秘密。


🔗 相关链接


💡 如果你也在使用 AI 编码助手,不妨试试这份 skill。只需要一个文件,就能让你的 AI 助手更靠谱。