霸榜GitHub,Claude Code用户的必读指南

2026/05/19 01:27
🌐zh-Hans

给Claude Code一份工作说明书

霸榜GitHub,Claude Code用户的必读指南
原文标题:Karpathy's CLAUDE.md hit #1 on GitHub with 82,000 stars. Most devs still haven't read it.
原文作者:Dep

编者按:很多人使用 Claude Code 时,最大的问题不是模型不够强,而是每次都从零开始。

你需要反复告诉它项目背景、技术栈、代码规范、哪些地方不能动、哪些方案之前已经试过。只要这些信息没有被固定下来,Claude 就会靠猜测工作,结果可能是改了不该改的文件、重构了没要求重构的代码,甚至推荐不适合当前项目的工具。

本文介绍的 CLAUDE.md,就是一份写给 Claude Code 的使用说明书。你只需要把它放在项目根目录里,Claude 每次启动时就会自动读取。它可以提前告诉 Claude:怎么回答、怎么写代码、什么时候必须先问、哪些操作不能擅自执行、项目使用什么技术栈,以及过去做过哪些重要决策。

简单来说,CLAUDE.md 的作用就是:减少重复解释,限制模型越界,让 AI 编程更稳定、更可控。

如果你正在用 Claude Code,可以先从 Karpathy 总结的 4 条规则开始:不清楚就先问、先做最简单方案、不碰无关代码、明确说明不确定性。先把这几条写进 CLAUDE.md,再根据自己的项目逐步补充,就能明显改善使用体验。

以下为原文:

一个名为 CLAUDE.md 的文件登上了 GitHub Trending 榜首。

8.2 万个 stars,7800 次 forks。

这件事始于 Andrej Karpathy。他曾任特斯拉 AI 负责人,也是 OpenAI 创始成员之一。他总结出了 4 种会让 Claude Code 失效的行为,并把它们写进了一个文件。

后来,一位开发者在这 4 条规则的基础上继续扩展,并公开发布了这个文件。结果它迅速走红。

原因很直接:编码准确率从 65% 提升到了 94%。

但大多数每天使用 Claude Code 的开发者,其实从未做过这项设置。他们每次会话都从零开始:重新解释同样的上下文,清理不必要的范围变更,回滚那些没人要求的重构。

下面是完整文件。

大多数开发者错过的设置

每次你打开 Claude Code,它默认什么都不知道。

它不知道你的技术栈,不知道你的代码规范,不知道你的项目背景,也不知道你已经尝试过什么,更不知道三次会话前你明确决定不做什么。

所以它只能猜。而一旦它开始猜,就可能重构你没有要求它动的代码,推荐会破坏现有架构的框架,未经确认就删除文件,甚至推翻你此前已经做出的决定。

CLAUDE.md 是一个放在项目根目录下的纯文本文件。Claude Code 会在每次会话开始时自动读取它。

一次设置,不必反复解释,并能修复三类代价高昂的错误。

默认设置:你每周花 375 美元,只是在重复解释自己

普通开发者每天大约要花 30 分钟向 Claude 重新解释上下文。

技术栈、编码规范、项目背景、已经尝试过的方法——除非你把这些信息一次性写下来,并让 Claude 每次自动读取,否则它们不会在不同会话之间保留。

如果按开发者时薪 150 美元计算:

·每天 30 分钟,就是 75 美元;

·每周就是 375 美元。

·如果是 5 人团队,每周就是 1875 美元的隐性成本。

以下 7 条规则,应放在 CLAUDE.md 文件的最前面。

→ 去掉废话

回答时不要用「好问题」「当然可以」「没问题」或类似铺垫开头。直接给出答案。不要寒暄,不要复述问题。

→ 根据任务匹配回答长度

回答长度应与任务复杂度匹配。简单问题直接、简短回答;复杂任务给出完整、详细说明。不要用复述问题或重复结论的结束语来填充篇幅。

→ 行动前先给方案

在开始任何重要任务前,先给出 2–3 种可行路径,等我选择后再继续执行。

→ 在不确定造成损失前,先承认不确定

如果你对任何事实、数据、日期或技术信息不确定,请在引用前明确说明。不要用看似合理的信息填补知识空白。拿不准时,直接说不确定。

→ 我是谁,我知道什么

关于我:[姓名] / 角色:[你的角色] / 背景:[领域]。

我擅长:[你熟悉的内容]。

我还在学习:[知识缺口]。

请根据这些信息调整每次回答的深度。不要过度解释我已经知道的内容,也不要跳过我需要的背景。

→ 当前项目上下文

我正在做:[项目名称] / 目标:[具体结果] / 受众:[谁会使用] / 技术栈背景:[相关约束] / 需要避免:[列表]。

请将这些上下文应用到每一个任务中。如果某项需求与上下文不匹配,请在执行前指出。

→ 锁定你的表达风格

我的写作风格是:[描述你的表达风格]。

句子长度:[偏好]。

我常用的词:[示例]。

我绝不会用的词:[示例]。

格式:[散文式或结构化]。

当你代表我写任何内容时,都必须严格匹配这一风格,不要默认使用你自己的表达模式。

每天重复解释上下文的时间:30 分钟

按开发者时薪 150 美元计算:75 美元 / 天

每周:每位开发者 375 美元

5 人团队:每周 1875 美元

本部分 CLAUDE.md 设置时间:总计 45 分钟

需要避免的错误:不要从零开始写 CLAUDE.md。先使用下面这个 prompt,再编辑输出结果:

基于我告诉过你的关于我自己、我的项目,以及我希望如何工作的内容,请为我写一份完整的 CLAUDE.md 文件。内容包括:我是谁、我的技术背景、我的沟通偏好,以及每次会话都应遵守的默认行为。要求具体、纯文本、500 词以内。

行为约束:你没有授权的那些「每小时 150 美元」的改动

你让 Claude 修复一个函数。

结果它重构了三个文件,重命名了变量,重新组织了 imports,还改写了你花时间写好的注释。

而这一切都没有经过你的确认。

审查并回滚这些不必要的改动,可能要花 1 小时,也就是 150 美元。每周发生三次,就是 450 美元。对 5 人团队来说,每周就是 2250 美元,用来清理没人授权的变更。

以下 7 条规则,应放进 CLAUDE.md 的行为约束部分。

→ 严格控制范围

只修改与当前任务直接相关的文件、函数和代码行。不要重构、重命名、重组、重新格式化,或「优化」任何我没有明确要求你修改的内容。

如果你发现其他地方值得修复,请在最后用备注说明。不要动它,永远不要。

→ 重大变更前先询问

在对我已经创建的内容做出重大修改前,包括重写章节、删除段落、重构结构、改变语气等,必须先停下来,准确说明你准备改什么,以及为什么改。等我确认后再继续。

→ 任何破坏性操作前必须确认

在删除任何文件、覆盖已有代码、删除数据库记录,或移除依赖前,必须停下来,列出具体会影响哪些内容,并要求我明确确认。只有我在当前消息中说「是」,你才能继续。

「你之前提到过」不等于确认。

→ 生产环境操作必须强制暂停

以下操作必须获得当前会话中的明确确认,没有例外:

·部署或推送到任何环境;

·运行迁移或数据库结构变更;

·发送任何外部 API 调用;

·执行任何带有不可逆副作用的命令。

·我必须在当前消息中明确说「是」。

→ 始终展示改了什么

完成任何编码任务后,结尾必须包括:

修改的文件:列出所有动过的文件;

修改内容:每个文件用一句话说明;

有意未修改的文件;

后续需要处理的事项。

→ 未经明确确认,不得代我行动

未经我在当前消息中的明确确认,不得代表我发送、发布、分享或安排任何内容。包括邮件、日历邀请、文档共享,或任何发生在当前对话之外的操作。我必须在当前消息中明确说「是」。

→ 写代码前先思考

对于涉及架构决策、复杂问题调试,或非简单功能开发的任务,先一步步梳理问题,再写代码。展示你的推理过程,指出不确定之处,然后再执行。

每周回滚不必要范围变更:150 美元

每周手动 diff 检查:75 美元

每位开发者行为相关浪费:225 美元 / 周

5 人团队:1125 美元 / 周

CLAUDE.md 行为部分设置时间:30 分钟

记忆与技术栈:让 Claude Code 真正可靠的设置

Claude 会在不同会话之间忘记一切。

你做过的每个决定,失败过的每种方案,六个月前为什么选择 Prisma 而不是 Drizzle,以及某个约束为什么来自特定客户需求——它都会忘。

然后,它会重新提出你早就排除过的方案。

这一部分相当于为 Claude 提供当前最接近「真实记忆」的机制,同时锁定你的技术栈,避免它继续推荐会破坏现有架构的工具。

→ MEMORY.md 决策日志

在项目中维护一个名为 MEMORY.md 的文件。每当做出重要决定后,都新增一条记录:

·决定了什么;

·为什么这样决定;

·排除了什么,为什么排除。

每次会话开始时,先读取 MEMORY.md。未经提醒,不得与已记录的决定相冲突。

→ 会话结束总结

当我说「session end」「wrapping up」或「let's stop here」时,请向 MEMORY.md 写入一份会话总结,包括:

·本次处理了什么;

·已完成什么;

·仍在进行什么;

·做出了哪些决定;

·下次会话的优先事项。

→ ERRORS.md 失败日志

维护一个名为 ERRORS.md 的文件。当某个方案尝试超过两次仍未成功时,记录下来:

·什么没有奏效;

·最后什么方案奏效;

·下次需要注意什么。

在为类似任务提出方案前,先检查 ERRORS.md。

→ 永久事实清单

以下事实对本项目始终成立,并必须无例外地应用到每次会话:

[你的永久约束、架构决策和规则]

如果某个任务与这些事实冲突,请在执行前指出。

→ 锁定技术栈

本项目的技术栈如下,始终使用这些工具。除非我明确要求,否则不要推荐替代方案:

语言:[如 TypeScript]

框架:[如 Next.js 14]

包管理器:[如 pnpm]

数据库:[如 PostgreSQL with Prisma]

测试:[如 Vitest]

样式:[如 Tailwind CSS]

如果某个工具看起来不合适,可以指出。但除非我明确说明,否则必须使用已定义的技术栈。

→ 困难决策启用扩展思考

对于涉及系统架构、性能权衡、数据库设计,或长期技术决策的问题,请使用扩展思考模式。

一步步分析问题,提出我可能没有考虑到的取舍,指出在规模扩大后可能不成立的假设,然后给出你的建议。

→ 那 4 条走红的规则

Karpathy 总结出了 4 种会让 Claude Code 失败的行为。一位开发者将其提炼成下面 4 行规则。编码准确率因此从 65% 提升到了 94%。

先问,不要假设。
如果有任何不清楚的地方,在写下第一行代码前先问。不要对意图、架构或需求做无声假设。

先做最简单的方案。
永远先实现能工作的最简单方案。不要加入未被明确要求的抽象层或灵活性。

不要触碰无关代码。
如果某个文件或函数与当前任务没有直接关系,不要修改它。即便你认为它可以被优化,也不要动。

明确标出不确定性。
如果你对某个方案或技术细节没有把握,请在继续前说明。没有确定性却表现得很自信,比承认知识缺口造成的损害更大。

·每周因遗忘决策和错误建议造成的恢复成本:每位开发者 300 美元

·错误技术栈推荐和不兼容工具:每周 75 美元

·每位开发者记忆相关浪费:375 美元 / 周

·5 人团队:1875 美元 / 周

·MEMORY.md + ERRORS.md + 技术栈设置时间:20 分钟

结论

完整成本账如下:

·每周重复解释上下文:375 美元

·每周回滚未授权改动:225 美元

·每周处理被遗忘决策带来的问题:375 美元

·每位开发者每周总浪费:975 美元。

如果是 5 人开发团队:每周 4875 美元。一年 253,500 美元。

而 CLAUDE.md 的设置总共只需要 2 小时。

仅 Karpathy 的 4 条规则,就让编码准确率从 65% 提升到 94%。

一个纯文本文件,21 条规则,两小时工作量。

完成这项设置的开发者,实际上是在使用一个更可靠的 Claude:它能记住决策,控制任务范围,在破坏性操作前请求确认,也不会推荐会破坏现有架构的框架。

而还没有设置的人,每周仍在花 975 美元重复解释自己。

附注:先从 Karpathy 的 4 条规则开始。只需要这 4 条。现在就把它们粘贴到项目根目录下一个名为 CLAUDE.md 的新文件里,只要 2 分钟。之后每周再根据你发现的缺口逐步补充。

在它被信息流淹没前,先收藏起来。如果你觉得有用,也可以分享给一个真正需要它的人。

[原文链接]

QQlink

암호화 백도어 없음, 타협 없음. 블록체인 기술 기반의 탈중앙화 소셜 및 금융 플랫폼으로, 사용자에게 프라이버시와 자유를 돌려줍니다.

© 2024 QQlink R&D 팀. 모든 권리 보유.