Karpathy流CLAUDE.md|AIのコード破壊を防ぐ4原則と使い方

Claude Code に作業を任せると、頼んでいない部分まで書き換えられたり、100行で済む処理を1000行に膨らませられたりして困った経験はありませんか。この悩みに応えるのが、Andrej Karpathy 氏の指摘を出発点に作られた「Karpathy流 CLAUDE.md」です。本記事では、その4つの原則が何を防ぐのか、どうやって自分のプロジェクトに30秒で導入するのかを整理します。

Conclusion

Karpathy流 CLAUDE.md は、AI が勝手な思い込みで進む・コードを過剰に複雑化する・無関係な行を壊す、という3つの典型的失敗を1枚の設定ファイルで抑える仕組みだとわかる。curl 1行でプロジェクト直下に置くだけで、Claude Code の振る舞いを4原則に沿って安定させられる。

Contents (11)

Karpathy流 CLAUDE.md とは何か

「Karpathy流 CLAUDE.md」は、開発者 Forrest Chang 氏が公開した1枚の CLAUDE.md ファイルです。Claude Code はプロジェクト直下の CLAUDE.md を起動時に読み込み、そこに書かれた指示を全作業の前提として扱います。この性質を利用し、AI が犯しがちなミスを封じるルールを凝縮したものが本ファイルです。

元になったのは、Andrej Karpathy 氏が2026年1月26日に X へ投稿した内容です。同氏は「手動80%・エージェント80%」と表現し、自身のプログラミングワークフローがこの約20年で最大級に変化したこと、その主戦場が Claude Code であることを述べました。翌日に Chang 氏がファイルを作成し、その反響からリポジトリは急速に伸びています。

出典: multica-ai/andrej-karpathy-skills(GitHub)

Karpathy が指摘した3つの失敗モード

Karpathy 氏はエージェント型コーディングで繰り返し起きる問題を、具体的に3つ挙げています。

  1. 勝手な思い込み(Silent Wrong Assumptions): 曖昧な指示に対して確認せず、誤った前提のまま進んでしまう。矛盾があっても指摘しない。
  2. 過剰な複雑化(Over-Complication): コードや API を無駄に膨らませる。100行で済むところを1000行の大仰な構造で実装する。
  3. 無関係な破壊(Orthogonal Damage): 十分に理解していないコードやコメントを、タスクと無関係でも副作用的に変更・削除してしまう。

この3つは Claude Code に限らず多くの AI コーディングで共通する落とし穴で、そのまま放置するとレビュー工数やバグの温床になります。

出典: Karpathy-Inspired CLAUDE.md(AlphaSignal)

AIの暴走を防ぐ4つの原則

CLAUDE.md 本体は、上記の失敗モードに1対1で対応する4つの原則で構成されています。

原則1: Think Before Coding(考えてから書く)

「思い込むな。混乱を隠すな。トレードオフを表に出せ」。前提を明示し、指示が曖昧なら複数の解釈を提示して質問する。勝手に1つの解釈を選んで走り出すことを禁じ、失敗モード1に対処します。

原則2: Simplicity First(まず簡潔に)

「問題を解く最小限のコードだけ。投機的なものは書くな」。頼まれていない機能、使い回しのない抽象化、起こり得ない事態へのエラーハンドリングを避ける。過剰な複雑化(失敗モード2)を抑えます。

原則3: Surgical Changes(外科手術的な変更)

「必要な箇所だけ触れ。自分が散らかしたものだけ片付けろ」。依頼に直接関係する行のみ変更し、隣接コードのリファクタリングや既存の不要コード削除は勝手に行わない。無関係な破壊(失敗モード3)を防ぎます。

原則4: Goal-Driven Execution(ゴール駆動の実行)

「成功条件を定義し、検証できるまでループせよ」。「動くようにして」といった曖昧な指示を、検証可能な成功基準に翻訳してから着手する。例えば「バグを直して」を「再現するテストを書き、それを通す」に変換します。

出典: Karpathy's CLAUDE.md Skills File: The Complete Guide(Agentpedia)

導入手順(約30秒)

自分のプロジェクトへ取り込む方法は複数用意されています。目的に応じて次のいずれかを選びます。

  1. 新規に置く場合: プロジェクト直下で以下を実行し、ファイルを丸ごと取得する。 curl -o CLAUDE.md https://raw.githubusercontent.com/forrestchang/andrej-karpathy-skills/main/CLAUDE.md
  2. 既存の CLAUDE.md へ追記する場合: 空行を入れてから内容を末尾へ追記する。 echo "" >> CLAUDE.md && curl https://raw.githubusercontent.com/forrestchang/andrej-karpathy-skills/main/CLAUDE.md >> CLAUDE.md
  3. プラグインとして入れる場合: /plugin marketplace add forrestchang/andrej-karpathy-skills を実行後、/plugin install andrej-karpathy-skills@karpathy-skills でインストールする。
  4. Cursor で使う場合: .cursor/rules/karpathy-guidelines.mdc を自分のプロジェクトの .cursor/rules/ に配置する。

いずれも数十秒で完了し、次回起動時から4原則が効き始めます。

実際にどう変わるか

分かりやすい例が「ユーザーデータのエクスポート機能を追加して」という依頼です。ルールなしの場合、AI は全ユーザーを JSON/CSV で出力する関数を書き、保存場所や出力フィールドを確認せず勝手に決めてしまいがちです。

一方、4原則を適用した状態では、コードを書く前に次を確認します。対象範囲(全ユーザーか絞り込みか)、出力形式(ダウンロードかバックグラウンドジョブか API か)、機微なフィールドの扱い、想定データ量。回答を得てから実装するため、手戻りが減ります。原則1と原則4が噛み合った典型例です。

普及の広がりと注意点

リポジトリは公開直後から反響を集め、star 数はミラーを含めて非常に大きな規模に達しています(本記事執筆時点で multica-ai ミラーは約186k star、fork 約19.1k、ライセンスは MIT)。「4行だけで AI のコード破壊を止める」といった切り口で多くの技術メディアにも取り上げられました。

出典: Turning Andrej Karpathy's LLM Coding Thoughts into Claude.md(Level Up Coding)

ただし、CLAUDE.md はあくまで振る舞いのガイドラインであり、万能ではありません。プロジェクト固有のルール(使用言語のバージョン、テストコマンド、ディレクトリ構成など)は別途書き加える必要があります。Karpathy流のルールを土台にしつつ、自分のリポジトリの文脈を追記していくのが実用的な使い方です。

まとめ

Karpathy流 CLAUDE.md は、Andrej Karpathy 氏が指摘した「思い込み・過剰実装・無関係な破壊」という3つの失敗を、4つの原則で1枚に封じ込めた設定ファイルです。curl 1行やプラグインで手軽に導入でき、Claude Code の出力を安定させたい人にとって最初の一歩として有効です。まずは既存プロジェクトへ追記し、そこに自分のルールを重ねていくとよいでしょう。

Helpful? ♡
Clauder Navi Editorial Team
@clauder_navi

Delivering the latest Claude / Claude Code news and practical insights daily. Learn more about us at About this site.