@XAMTO_AI: OpenAI 创始成员将一份 CLAUDE.md 丢上 GitHub,一周内揽下 44k 星,总星数冲到 100k——连 Stack Overflow 都没这待遇。 他观察到 AI 编程最大的问题不是不会干活,而是“太爱发挥”:让它修个 …
摘要
OpenAI 创始成员发布 CLAUDE.md 文件,通过四条原则约束 AI 编程助手避免过度发挥和复杂化,一周内获得 44k GitHub stars。
查看缓存全文
缓存时间: 2026/05/25 00:38
OpenAI 创始成员将一份 CLAUDE.md 丢上 GitHub,一周内揽下 44k 星,总星数冲到 100k——连 Stack Overflow 都没这待遇。
他观察到 AI 编程最大的问题不是不会干活,而是“太爱发挥”:让它修个 bug,它顺手重构三个文件;让它加个校验,它直接搭起一套框架。
于是,他给 AI 立了四条规矩:① 不确定就先问,别瞎猜;② 能用 50 行解决的,绝不允许写 200 行;③ 只改该改的代码;④ 目标是让测试通过,不是炫技。
一份文档,把 AI 助手从灾难变成了神器。
https://github.com/forrestchang/andrej-karpathy-skills/tree/main…
multica-ai/andrej-karpathy-skills
Source: https://github.com/multica-ai/andrej-karpathy-skills
Karpathy-Inspired Claude Code Guidelines
Check out my new project Multica — an open-source platform for running and managing coding agents with reusable skills.
Follow me on X: https://x.com/jiayuan_jy
A single CLAUDE.md file to improve Claude Code behavior, derived from Andrej Karpathy’s observations on LLM coding pitfalls.
English | 简体中文
The Problems
From Andrej’s post:
“The models make wrong assumptions on your behalf and just run along with them without checking. They don’t manage their confusion, don’t seek clarifications, don’t surface inconsistencies, don’t present tradeoffs, don’t push back when they should.”
“They really like to overcomplicate code and APIs, bloat abstractions, don’t clean up dead code… implement a bloated construction over 1000 lines when 100 would do.”
“They still sometimes change/remove comments and code they don’t sufficiently understand as side effects, even if orthogonal to the task.”
The Solution
Four principles in one file that directly address these issues:
| Principle | Addresses |
|---|---|
| Think Before Coding | Wrong assumptions, hidden confusion, missing tradeoffs |
| Simplicity First | Overcomplication, bloated abstractions |
| Surgical Changes | Orthogonal edits, touching code you shouldn’t |
| Goal-Driven Execution | Leverage through tests-first, verifiable success criteria |
The Four Principles in Detail
1. Think Before Coding
Don’t assume. Don’t hide confusion. Surface tradeoffs.
LLMs often pick an interpretation silently and run with it. This principle forces explicit reasoning:
- State assumptions explicitly — If uncertain, ask rather than guess
- Present multiple interpretations — Don’t pick silently when ambiguity exists
- Push back when warranted — If a simpler approach exists, say so
- Stop when confused — Name what’s unclear and ask for clarification
2. Simplicity First
Minimum code that solves the problem. Nothing speculative.
Combat the tendency toward overengineering:
- No features beyond what was asked
- No abstractions for single-use code
- No “flexibility” or “configurability” that wasn’t requested
- No error handling for impossible scenarios
- If 200 lines could be 50, rewrite it
The test: Would a senior engineer say this is overcomplicated? If yes, simplify.
3. Surgical Changes
Touch only what you must. Clean up only your own mess.
When editing existing code:
- Don’t “improve” adjacent code, comments, or formatting
- Don’t refactor things that aren’t broken
- Match existing style, even if you’d do it differently
- If you notice unrelated dead code, mention it — don’t delete it
When your changes create orphans:
- Remove imports/variables/functions that YOUR changes made unused
- Don’t remove pre-existing dead code unless asked
The test: Every changed line should trace directly to the user’s request.
4. Goal-Driven Execution
Define success criteria. Loop until verified.
Transform imperative tasks into verifiable goals:
| Instead of… | Transform to… |
|---|---|
| “Add validation” | “Write tests for invalid inputs, then make them pass” |
| “Fix the bug” | “Write a test that reproduces it, then make it pass” |
| “Refactor X” | “Ensure tests pass before and after” |
For multi-step tasks, state a brief plan:
1. [Step] → verify: [check]
2. [Step] → verify: [check]
3. [Step] → verify: [check]
Strong success criteria let the LLM loop independently. Weak criteria (“make it work”) require constant clarification.
Install
Option A: Claude Code Plugin (recommended)
From within Claude Code, first add the marketplace:
/plugin marketplace add forrestchang/andrej-karpathy-skills
Then install the plugin:
/plugin install andrej-karpathy-skills@karpathy-skills
This installs the guidelines as a Claude Code plugin, making the skill available across all your projects.
Option B: CLAUDE.md (per-project)
New project:
curl -o CLAUDE.md https://raw.githubusercontent.com/forrestchang/andrej-karpathy-skills/main/CLAUDE.md
Existing project (append):
echo "" >> CLAUDE.md
curl https://raw.githubusercontent.com/forrestchang/andrej-karpathy-skills/main/CLAUDE.md >> CLAUDE.md
Using with Cursor
This repository includes a committed Cursor project rule (.cursor/rules/karpathy-guidelines.mdc) so the same guidelines apply when you open the project in Cursor. See CURSOR.md for setup, using the rule in other projects, and how this relates to Claude Code.
Key Insight
From Andrej:
“LLMs are exceptionally good at looping until they meet specific goals… Don’t tell it what to do, give it success criteria and watch it go.”
The “Goal-Driven Execution” principle captures this: transform imperative instructions into declarative goals with verification loops.
How to Know It’s Working
These guidelines are working if you see:
- Fewer unnecessary changes in diffs — Only requested changes appear
- Fewer rewrites due to overcomplication — Code is simple the first time
- Clarifying questions come before implementation — Not after mistakes
- Clean, minimal PRs — No drive-by refactoring or “improvements”
Customization
These guidelines are designed to be merged with project-specific instructions. Add them to your existing CLAUDE.md or create a new one.
For project-specific rules, add sections like:
## Project-Specific Guidelines
- Use TypeScript strict mode
- All API endpoints must have tests
- Follow the existing error handling patterns in `src/utils/errors.ts`
Tradeoff Note
These guidelines bias toward caution over speed. For trivial tasks (simple typo fixes, obvious one-liners), use judgment — not every change needs the full rigor.
The goal is reducing costly mistakes on non-trivial work, not slowing down simple tasks.
License
MIT
相似文章
@Soranlan: https://x.com/nobel_824/status/2057643942980751527/video/1… 这东西最离谱的地方就是 它根本不是代码。 65行纯文本,直接冲上GitHub Trending第一,10万星。不是库不…
OpenAI联合创始人Karpathy的一份仅65行的CLAUDE.md纯文本文件在GitHub上获得10万星,成为趋势第一。该文件并非代码或框架,而是关于如何与AI高效协作编写代码的操作说明,明确了人机分工边界,帮助更好地使用Claude Code等工具。
@AYi_AInotes: Damn,这个GitHub项目,直接给你发了一整个AI公司,都给我收藏拿走! 10万 GitHub star,被称为2026年增长最快的AI项目, 146个专业AI专家,12个完整部门。 一条命令,全部装进你的Claude Code, 从…
这个GitHub项目集成了一整个AI公司,包含146个AI专家和12个部门,可通过一条命令在Claude Code中使用,涵盖前端开发、安全审计等多种功能。
@yaohui12138: Karpathy 发布了一个github开源项目,狠狠让我惊艳到了 这个项目叫 andrej-karpathy-skills,GitHub 13 万+ star,我愿称之为2026 最有用的 AI 工程项目 它解决的问题极其精准:让 Cl…
Karpathy 发布了名为 andrej-karpathy-skills 的开源项目,核心是一个 4KB 的 CLAUDE.md 文件,包含 4 条行为准则(先思考再动手、极简实现优先、手术式精准修改、目标驱动执行),能显著降低 AI 编码错误率(最高下降 90%),提升代码质量和开发效率。
@billtheinvestor: 95K:GitHub 刚把 AI Agent 的开发边界往前推了一格。这个新开源的系统强制要求 AI 在写代码前必须先完成完整的规格说明(Specs)。 几天内狂揽 95K Stars,最直接的后果是,AI 正在从“盲目写代码”转向“先思…
GitHub上出现一个强制AI在写代码前先完成完整规格说明的开源系统,几天内获得95K Stars,推动AI从盲目写代码转向先思考再执行。
@servasyy_ai: Claude Code 的负责人说,他已经好几个月没有手写代码了。 他在 2 天内交付了 49 个完整功能,而且全部都是 100% 由 AI 编写的。 他刚发布了一场 30 分钟的分享,专门讲他是怎么做到的。 这比任何 500 美元的 v…
Claude Code负责人称数月未手写代码,2天内用AI交付49个完整功能,并发布30分钟分享讲述方法。