header-langage
简体中文
繁體中文
English
Tiếng Việt
한국어
日本語
ภาษาไทย
Türkçe
掃碼下載APP

霸榜 GitHub,Claude Code 使用者的必讀指南

閱讀本文需 22 分鐘
給 Claude Code 一份工作說明書
原文標題:Karpathy 的 CLAUDE.md 在 GitHub 上排名第一,获得 82,000 颗星。大多数开发者仍未阅读。
原文作者:Dep


編者按:當許多人使用 Claude Code 時,最大的問題不是模型不夠強大,而是每次都從零開始。


您需要反复告訴它專案背景、技術棧、程式碼規範、哪些地方不能變動、哪些方案之前已嘗試過。只要這些資訊沒有被固定下來,Claude 就會靠猜測工作,結果可能是改了不應該改的檔案、重構了沒有要求重構的程式碼,甚至推薦不適合當前專案的工具。


本文介紹的 CLAUDE.md,就是一份針對 Claude Code 的使用說明書。您只需把它放在專案根目錄中,Claude 每次啟動時就會自動讀取。它可以事先告訴 Claude:如何回答、如何撰寫程式碼、什麼時候必須事先詢問、哪些操作不能擅自執行、專案使用什麼技術棧,以及過去做過哪些重要決策。


簡單來說,CLAUDE.md 的作用就是:減少重複解釋,限制模型越界,讓 AI 程式設計更穩定、更可控。


如果您正在使用 Claude Code,可以先從 Karpathy 總結的 4 條規則開始:不清楚就先問、先做最簡單方案、不碰無關程式碼、明確說明不確定性。先把這幾條寫進 CLAUDE.md,再根據自己的專案逐步補充,就能明顯改善使用體驗。


以下為原文:


一個名為 CLAUDE.md 的檔案登上了 GitHub 趨勢榜首。


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。


→ 永久事實清單


以下事實對本項目始終成立,並必須無例外地應用到每次會話:


[Your Immutable Constraints, Architectural Decisions, and Rules]


If a task conflicts with these facts, point it out before proceeding.


→ Locked-in Tech Stack


The project's tech stack is as follows, always use these tools. Unless I explicitly request, do not recommend alternative solutions:


Language: [e.g., TypeScript]


Framework: [e.g., Next.js 14]


Package Manager: [e.g., pnpm]


Database: [e.g., PostgreSQL with Prisma]


Testing: [e.g., Vitest]


Styling: [e.g., Tailwind CSS]


If a tool seems unsuitable, you can point it out. But unless I explicitly state, the defined tech stack must be used.


→ Enable Difficult Decision Expanded Thinking


For issues involving system architecture, performance trade-offs, database design, or long-term technical decisions, please use expanded thinking mode.


Analyze the problem step by step, propose trade-offs I may not have considered, point out assumptions that may not hold true after scaling, and then give your recommendation.


→ The 4 Cardinal Rules


Karpathy summarized 4 behaviors that would cause Claude Code to fail. A developer distilled them into the following 4 rules. As a result, coding accuracy increased from 65% to 94%.


Ask First, Assume Never.
If there's any uncertainty, ask before writing the first line of code. Do not make silent assumptions about intent, architecture, or requirements.


Do the Simplest Thing That Could Possibly Work First.
Always implement the simplest working solution first. Do not introduce unrequested abstraction layers or flexibility.


Hands Off Unused Code.
If a file or function is not directly related to the current task, do not modify it. Even if you think it could be optimized, leave it untouched.


Explicitly Mark Uncertainty.
If you are unsure about a solution or technical detail, state it before proceeding. Showing confidence without certainty causes more damage than admitting a knowledge gap.


·每週因遺忘決策和錯誤建議造成的恢復成本:每位開發者 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 分鐘。之後每週再根據你發現的缺口逐步補充。


在它被信息流淹沒前,先收藏起來。如果你覺得有用,也可以分享給一個真正需要它的人。


[原文链接]



歡迎加入律動 BlockBeats 官方社群:

Telegram 訂閱群:https://t.me/theblockbeats

Telegram 交流群:https://t.me/BlockBeats_App

Twitter 官方帳號:https://twitter.com/BlockBeatsAsia

举报 糾錯/舉報
選擇文庫
新增文庫
取消
完成
新增文庫
僅自己可見
公開
保存
糾錯/舉報
提交