技術解析 · Field Manual 2026-05-30 版本快照
github.com/multica-ai/andrej-karpathy-skills · 162k ★
AK
Agent Behavior / Coding Discipline

給 coding agent 的行為約束規範,以四條原則限制常見失誤。

andrej-karpathy-skills 是一個檔案極小的 agent 行為準則包。它將 Karpathy 對 LLM coding 常見失誤的觀察,整理為一份 CLAUDE.md、一個 Claude Code plugin、一條 Cursor alwaysApply rule,以及可複用的 SKILL.md。規範的目標是減少 agent 犯錯、過度擴張與修改不相關範圍。

4
Behavior Principles
1 file
Core CLAUDE.md
3 forms
Claude / Cursor / Skill
MIT
README / Plugin License
01
Repository Signal

行為約束以最小檔案集交付,不包含執行期程式碼。

此 repo 的可交付物是一組行為約束,不含執行期程式碼。GitHub metadata 描述為「一個單一 CLAUDE.md,用來改善 Claude Code 行為」,repository tree 只有 CLAUDE.mdCURSOR.mdEXAMPLES.mdREADME.claude-plugin.cursor/rulesskills/karpathy-guidelines/SKILL.md

此 repo 將 coding agent 常犯的四類錯誤轉為可安裝的政策層。當 agent 進入專案時,規範要求它先暴露假設、保持簡單、做 surgical changes、定義可驗證成功條件。

Codex 使用者可將此內容轉譯為 AGENTS.md 或 repo-local agent instructions,但不宜機械照抄。Claude Code、Cursor、Codex 的 instruction merge 規則不同;需要保留的是四個行為原則,而非特定檔名。

02
The Four Principles

四個原則對應四種 agent 常見失誤類型。

01 · Think

先思考再寫碼

不要默默選一種解讀就開始改。模糊時先列假設、指出多種可能、必要時追問,尤其是涉及資料範圍、權限、UX 或安全邊界的任務。

02 · Simplicity

先用最小解

不為單次需求創造抽象,不加未被要求的彈性,不寫假想場景的 error handling。若 200 行可以是 50 行,就先縮回來。

03 · Surgical

只碰必要範圍

不要順手重排、格式化、改註解或重構鄰近程式。若任務外發現壞味道,記錄或提醒;除非被要求,不要擅自刪。

04 · Goals

把任務變成可驗證目標

不要只執行「修好它」。要把需求轉為測試、重現步驟、檢查命令與完成條件,讓 agent 能自己 loop 到證據成立。

Behavior Loop
Clarify Choose Simple Path Edit Narrowly Verify Report Evidence
03
Install Paths

同一份準則提供三種安裝格式:Claude plugin、Cursor rule、reusable skill。

README 的主要路徑是 Claude Code plugin marketplace;per-project 路徑則是下載或 append CLAUDE.md。Cursor 使用 committed project rule:.cursor/rules/karpathy-guidelines.mdc,並設定 alwaysApply: true。可複用技能位於 skills/karpathy-guidelines/SKILL.md

# Claude Code plugin marketplace /plugin marketplace add forrestchang/andrej-karpathy-skills /plugin install andrej-karpathy-skills@karpathy-skills
# New project curl -o CLAUDE.md https://raw.githubusercontent.com/forrestchang/andrej-karpathy-skills/main/CLAUDE.md # Existing project, append instead of overwrite echo "" >> CLAUDE.md curl https://raw.githubusercontent.com/forrestchang/andrej-karpathy-skills/main/CLAUDE.md >> CLAUDE.md
Current GitHub URL is multica-ai/andrej-karpathy-skills, while README install snippets still use the older forrestchang/andrej-karpathy-skills path. Treat this as an upstream packaging detail to verify before copying install commands into production documentation.
04
Package Anatomy

repo 檔案集小,跨工具同步一致性是主要維護負擔。

檔案目標工具用途
CLAUDE.mdClaude Code / generic root instructions核心四原則,最容易複製到任意專案。
.claude-plugin/plugin.jsonClaude Code plugin宣告 plugin metadata、MIT、keywords 與 skill path。
.cursor/rules/karpathy-guidelines.mdcCursor同一份準則,frontmatter 設 alwaysApply: true
skills/karpathy-guidelines/SKILL.mdPersonal skill systems可複製或 symlink 到個人 skills 目錄。
EXAMPLES.mdHuman review用反例與修正案例展示四原則對應的錯誤型態。

CURSOR.md 特別提醒貢獻者:改四原則時要同步 CLAUDE.md、Cursor rule 與 SKILL.md。這是此 repo 最容易出錯的地方,因為內容重複分布在多個工具格式中。

05
Examples

EXAMPLES.md 把抽象原則轉成可辨識的 diff 味道。

Hidden Assumptions

資料匯出不是一句話需求

範例指出 agent 會默認匯出所有使用者、選定格式與欄位。正確模式是先問資料範圍、下載方式、敏感欄位與容量。

Search Faster

快有三種意思

回應時間、吞吐量與 perceived speed 是不同問題。agent 應先拆解 tradeoff,而不是同時加 cache、index 與 async。

Over-Abstraction

折扣計算不需要策略框架

如果需求只是百分比折扣,一個函式就夠。只有真的出現多種折扣型態時,才值得抽象。

Drive-by Refactor

修 email bug 不等於重寫 validator

典型錯誤是修一個 crash,順便改註解、username 規則、email 判斷與格式。這正是 surgical changes 要防的事。

06
Codex Adaptation

在 Codex 裡用它, 應該轉成 AGENTS.md 行為規範

這份 repo 的 CLAUDE.md 可以直接啟發 Codex,但 Codex CLI 更自然的放置點是 root AGENTS.md 或特定子目錄的 AGENTS.md。轉譯時保留四原則即可,不需要保留 Claude Code plugin 指令。

建議在 Codex 版本補充三點:如何處理 dirty worktree、何時使用 rg 與測試命令、final response 必須列出驗證結果。Karpathy 準則提供通用行為框架,專案的工程慣例需另行補充。

# AGENTS.md adaptation outline 1. State assumptions before edits when scope is ambiguous. 2. Prefer the smallest change that satisfies the request. 3. Touch only files required by the task; preserve unrelated user changes. 4. Define success criteria and run the relevant verification commands. 5. Report what changed, what passed, and what was not run.
07
Tradeoffs

這份規範會降低錯誤, 也會降低某些情境的速度。

  • 不要把「先問」變成逃避執行。 對明確的小修,直接做;對有風險的模糊需求,再追問。
  • 不要用 simplicity 壓掉必要架構。 最小解不是臨時 hack;它仍然要符合現有邊界與測試要求。
  • 不要把 surgical changes 理解成不能清理。 如果你的改動製造 unused import 或 orphan code,就要清掉自己的痕跡。
  • 不要只寫原則, 不寫驗證命令。 Goal-driven execution 需要具體檢查:test、lint、typecheck、build、manual route check。
  • 多工具同步需要 review。 Claude、Cursor、Skill 三份內容一旦不同步,使用者會得到不一致行為。
08
Usage Playbook

將此準則作為團隊 agent policy 的起點文件。

01

先合併到專案規範

不要單獨丟進 repo。把四原則嵌入既有 stack、測試、review、部署慣例。

02

保留例外規則

明確寫出 trivial one-liner、純文案修正、只讀查詢等不需要完整澄清流程的場景。

03

加上 dirty worktree policy

Codex/Claude 在真實 repo 裡最常踩到使用者未提交變更;這部分要比原始 CLAUDE.md 更具體。

04

為 PR review 設完成門檻

把「驗證成功」定義成命令與輸出,而不是 agent 自稱完成。

05

定期檢查 diff 品質

看這份 policy 是否真的減少 drive-by refactor、過度抽象與未驗證完成聲明。