Community寫作與編輯github.com

mjthechaos101/Claude

減少常見 LLM 編碼錯誤的行為準則。在編寫、審查或重構程式碼時使用,以避免過度複雜化、進行精準修改、揭示假設,並定義可驗證的成功標準。

Claude 是什麼?

此技能提供一套源自 Andrej Karpathy 觀察的行為準則,專門設計來協助 AI 代理(如 Claude Code、Cursor、Codex)在使用大型語言模型(LLM)進行程式碼編寫、審查或重構時,避免常見的錯誤。技能核心在於引導代理以更嚴謹、簡潔且目標導向的方式工作,包含四個主要原則:首先強調在實作前明確思考與陳述假設,避免隱藏混淆;其次堅持「簡潔至上」,僅撰寫解決問題所需的最小程式碼,杜絕不必要的功能或抽象化;第三要求進行「外科手術式」的精準修改,只觸及與任務直接相關的程式碼,不對不相關的部分進行「改善」;最後是「目標驅動執行」,將任務轉化為具體、可驗證的成功標準,並循環迭代直至達成。此技能特別適合用於需要高品質程式碼輸出、減少 AI 代理「過度設計」或「產生幻覺」的場景,支援多種開發者工具與平台。

相容平台✓Claude Code~Codex CLI~Cursor
npx skills add https://github.com/mjthechaos101/Claude/tree/HEAD/skills/karpathy-guidelines

Installed? Explore more 寫作與編輯 skills: steipete/notion, langchain-ai/langchain, bytedance/podcast-generation · View all 6 →

在你喜歡的 AI 中提問

開啟一個已預先載入此 Agent Skill 的新對話。

說明文件

Karpathy 準則

減少常見 LLM 編碼錯誤的行為準則,源自 Andrej Karpathy 對 LLM 編碼陷阱的觀察。

取捨: 這些準則偏向謹慎而非速度。對於簡單任務,請自行判斷。

1. 先思考,再編碼

不要假設。不要隱藏困惑。揭示取捨。

在實作之前:

  • 明確陳述你的假設。如果不確定,請提問。
  • 如果存在多種解讀,請全部提出——不要默默選擇其一。
  • 如果有更簡單的方法存在,請說出來。在必要時提出異議。
  • 如果事情不清楚,請停下來。指出令人困惑的地方。然後提問。

2. 簡潔至上

解決問題所需的最小程式碼。沒有任何投機成分。

  • 沒有超出要求的功能。
  • 沒有為一次性使用程式碼設計的抽象化。
  • 沒有未經要求的「彈性」或「可配置性」。
  • 沒有針對不可能場景的錯誤處理。
  • 如果你寫了 200 行程式碼,而它可以只有 50 行,請重寫它。

問問自己:「資深工程師會說這東西過度複雜嗎?」如果是,請簡化。

3. 外科手術式的修改

只觸碰你必須觸碰的。只清理你自己的爛攤子。

編輯現有程式碼時:

  • 不要「改善」相鄰的程式碼、註解或格式。
  • 不要重構沒有問題的東西。
  • 符合現有風格,即使你會用不同的方式做。
  • 如果你發現不相關的無用程式碼,請指出——但不要刪除它。

當你的修改產生了孤立內容:

  • 移除因你的改動而變成未使用的 import/變數/函式。
  • 除非被要求,否則不要移除先前存在的無用程式碼。

測試標準:每一行被修改的程式碼都應直接追蹤到使用者的請求。

4. 目標驅動執行

定義成功標準。循環直到驗證通過。

將任務轉化為可驗證的目標:

  • 「加入驗證」 → 「為無效輸入撰寫測試,然後讓它們通過」
  • 「修復這個錯誤」 → 「撰寫一個能重現它的測試,然後讓它通過」
  • 「重構 X」 → 「確保測試在重構前後都能通過」

對於多步驟任務,陳述一個簡短的計劃:

1. [步驟] → 驗證:[檢查] 
2. [步驟] → 驗證:[檢查]
3. [步驟] → 驗證:[檢查]

強烈的成功標準讓你能獨立循環。薄弱的標準(「讓它運作」)則需要不斷的釐清。

相關技能