霸榜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

Không có cửa hậu mã hóa, không thỏa hiệp. Một nền tảng xã hội và tài chính phi tập trung dựa trên công nghệ blockchain, trả lại quyền riêng tư và tự do cho người dùng.

© 2024 Đội ngũ R&D QQlink. Đã đăng ký Bản quyền.