AI Coding

對抗 LLM 幻覺與過度工程:基於 Andrej Karpathy 洞察的 Claude Code 行為指南

github.com

該規範庫是以『行為約束』而非『功能實現』為核心的優化方案,其價值在於精準捕捉了 LLM 的過度工程與隨意重構等行為缺陷。我評定此方案具有極高實務價值,因為它將經驗法則轉化為可執行的 Prompt 規則,但其效能提升的前提是使用者必須能區分任務複雜度,否則在簡單任務中會因過度謹慎而導致溝通成本上升。

對抗 LLM 幻覺與過度工程:基於 Andrej Karpathy 洞察的 Claude Code 行為指南

這是一個針對 AI 編碼助手(例如 Claude Code 或 Cursor)的行為規範庫。它並不是一個可以用來執行特定功能的軟體工具,而是一套精心設計的指令文件(CLAUDE.md 或 .mdc 規則),目的是透過「規範 AI 的思考路徑」來減少 LLM 在寫程式時最容易犯的低級錯誤。

這個專案的核心靈感來自於 Andrej Karpathy 對 LLM 編碼陷阱的觀察。許多工程師在使用 AI 寫程式時會發現,AI 經常會擅自替你做決定、把簡單的功能寫得過於複雜,或者在修改 A 功能時順便把不相關的 B 註解刪掉。這個 repo 正是為了修正這些行為而生。

它將 AI 的行為約束在四個核心原則中

第一是編碼前思考。要求 AI 在動手寫 code 之前,必須先明確列出它的假設。如果指令有歧義,AI 不能默默選擇一種方案,而必須將多種可能的解釋呈現給使用者,並在困惑時主動停下來詢問,而不是盲目猜測。

第二是簡潔優先。這是為了對抗 LLM 典型的過度工程(Over-engineering)傾向。要求 AI 僅提供解決問題的最少代碼,禁止為了未來的可能性而增加不必要的抽象層、配置項或錯誤處理。如果 50 行能解決,就不要寫 200 行。

第三是精準修改。要求 AI 像外科手術一樣精確。除了使用者要求的修改,不允許 AI 隨意「優化」周圍的代碼、更改格式或重構沒壞的東西。每一行變動都必須能追溯到用戶的原始請求。

第四是目標驅動執行。將模糊的指令轉化為可驗證的目標。例如將「修復 Bug」轉化為「編寫一個能重現 Bug 的測試,然後讓它通過」。這讓 AI 能在一個可驗證的循環中獨立工作,而不是依賴使用者不斷地給予反饋。

這套指南適合所有深度依賴 AI 編碼工具的開發者,尤其是那些對代碼品質有高要求、不希望 PR 中出現大量無關變動的資深工程師,或是希望學習如何正確與 AI 協作的初級工程師。

導入成本極低。如果你使用 Claude Code,可以直接透過插件市場安裝;如果你使用 Cursor,將其規則文件放入 .cursor/rules 資料夾即可。它不需要安裝任何依賴,也不會影響你的執行環境。

實務上的限制與風險在於這套指南傾向於「謹慎」而非「速度」。對於非常簡單的拼寫錯誤或單行修改,強制執行這套流程可能會讓 AI 變得過於囉嗦,增加溝通成本。因此,使用者需要根據任務的複雜度自行判斷是否啟用。

整體而言,這個 repo 的成熟度在於其對 LLM 行為模式的深刻理解。它將抽象的經驗轉化為可執行的 Prompt 規則,雖然技術含量不在於代碼實現,但其對 AI 工作流的優化具有很高的實務價值。