Claude Code はなぜ修正漏れが起きる?GitHub CodeGraph が示す答え(2026)

ビルドもテストも通ったのに本番で漏れる——AI コーディングで一番つらいのは書くことより直すこと

AI ノート  ·  2026.06.01  ·  約 16 分

大規模コードベースで修正漏れする Claude Code と Cursor。CodeGraph ローカル Code Knowledge Graph で呼び出しチェーンを把握

こんな経験、ありませんか。

Claude Code に API の変更を頼む。

すると:

  • ビルドは通る
  • ユニットテストも通る

デプロイ後:

  • 別モジュールが旧契約のまま
  • 見えない呼び出しチェーンが更新されない
  • Mock がレガシー実装を指し続ける

「モデルが賢くない」と言いがちですが、より正確には:Claude Code、Cursor、Windsurf、Copilot Agent はコードがどう繋がっているかを理解していない。断片しか見えないまま large codebase 全体を編集しようとする——だから Claude Code 修正漏れCursor 変更漏れが 2026 年の AI コーディングで最も多い不満になっています。

本文は検索意図に沿って構成します:なぜ漏れるか大規模プロジェクトで Agent が破綻する理由RAG と Grep の限界Code Knowledge Graph が必要な理由GitHub TrendingCodeGraph と導入実践。背景は「なぜすべての AI コーディング Agent にコード知識グラフが必要か」も参照してください。

20万+
行の large codebase
1 回
impact クエリ vs 数十回 Read
MCP
Claude Code + Cursor

Claude Code はなぜ修正漏れが起きる?

Claude Code 修正漏れ」「Claude Code monorepo」という検索は IQ の問題ではなく、一箇所直したのに他が追従しないのはなぜかという問いです。

Claude CodeCursorWindsurf新しいコードを書くのが得意。痛みは稼働中システムを直すとき——公開 API、プロトコルフィールド、モジュール横断の挙動変更。典型的な漏れ:

  • 別 package の adapter が旧シグネチャのまま
  • 隠れたチェーン上の wrapper が未更新
  • テストと Mock が旧ロジックを参照

CI が緑のままでも、テストが漏れた経路を踏んでいなければ起きます。より大きなモデルだけでは リポジトリ理解は解決しません。

Claude Code が大規模プロジェクトを「見えない」理由

Claude Code large codebase」「Claude Code context window」は修正漏れとセットで検索されます。単一ファイルは読めても、呼び出しグラフ全体を作業記憶に載せられないからです。

どんな context window も 20 万行の monorepo を prompt に常駐させられません。Claude Code が毎ターン持てるのは一部のファイルだけ——コンテキスト外モジュールは実質不可視。主経路は直るが、遠方 package や別 Target は静かに失敗します。

Cursor large project でも同様:@ で数ファイルを編集できても、プロジェクト級の影響範囲は推測のまま。どちらも切る前に一問必要:このシンボルに依存しているのは誰か?

Cursor の穴:構文ではなく接続性

Claude Code vs Cursor を比較すると、ターミナル Agent とエディタ内 AI の違いはありますが、monorepo では似た失敗をします:

  • 深い呼び出しスタック — UI → ViewModel → Service → Repository → SDK。インライン補完は上 2 層に偏りがち
  • Monorepo の re-export — 意味検索は「似たファイル」を返すが、真の import 経路の呼び出し元ではない
  • マルチ Target / マルチ言語 — Swift↔ObjC、RN ブリッジ。構造なしでは Cursor MCP も盲読のまま

要するに:Cursor と Claude Code は書けないのではなく、call graph がどう見えるか分からない。

RAG だけでは足りない

多くの AI コーディング ツールはリポジトリをベクトル索引——典型的な RAG。「似た実装を探す」には向くが、「一緒に直すべきファイルを列挙する」には弱い。

RAG が返すのは解決策っぽい断片であって法的な呼び出し元ではない。本番では Mock、クライアント SDK、codegen テンプレが旧 API のまま残り、ハッピーパスの単体テストだけ緑、というパターンが起きます。

Grep だけでは足りない

CodeGraph がないと Claude CodeReadGrepGlob がデフォルト。Grep は文字列は得意だが、オーバーロード解決・動的ディスパッチ・マクロ・言語間ブリッジが苦手——多段チェーンは結果が途切れます。

Agent が 20 ファイル以上読んでも影響範囲は漏れる——遅くて穴がある。次の Before/After は抽象統計より体感しやすい比較です。

Code Knowledge Graph が必要な理由

Code Knowledge Graph はシンボル・呼び出し辺・モジュール境界を事前索引し、Claude Code MCPCursor MCP が grep 当てではなくグラフを照会できるようにします。

欲しいのは決定論的な答え:impact(AuthService) が callers、テスト、Mock を列挙——「あと 5 ファイル読んで当てる」ではない。2026 年の context engineering:リポジトリ地図を増分更新インデックスとして外付けし、prompt を膨らませない。

Before / After:差を体感する

AuthService.refreshSession を変更する——代表ワークフロー(単一ベンチではありません):

Before · Claude Code のみ(CodeGraph なし)
# Agent ツールトレース(抜粋)
Read File   src/auth/AuthService.ts
Read File   src/auth/SessionStore.ts
Grep        "refreshSession"
Read File   apps/api/handlers/login.ts
Read File   packages/shared/contracts/auth.ts
Read File   ...
# Read/Grep 20 回超 — Mock までカバーできたか不明
After · Claude Code + CodeGraph MCP
codegraph impact "AuthService.refreshSession" --depth 3
# 1 回の構造化閉包、例:
# · 14 callers(package 横断)
# · 関連テスト 3 ファイル
# · 旧シグネチャの Mock/fixture 2 件
# チェックリストから Claude Code が編集 — 漏れが大幅に減る

体感の変化:影響範囲を当てる → リストから編集する。 グラフ付きでツール呼び出しは減るが、エンジニアリングで大事なのは Agent がどんな構造を根拠にしたかです。

図解:断片 vs 呼び出しチェーン

グラフなしでは暗闇を這う;グラフありでは辺を辿る。

CodeGraph なし · 典型的な Claude Code 探索
     [開いているファイル]
            ?
            ?  ← 残りは context window 内?不明
            ?
            ?
     (Read/Grep 多数 — チェーンはまだ途切れる)
CodeGraph あり · 1 本の trace
  Controller  →  AuthHandler
       ↓
    Service     →  AuthService.refreshSession
       ↓
  Repository  →  SessionStore
       ↓
       DB

Mermaid · 比較(必要なら拡大)

flowchart LR
  subgraph blind["Claude Code without graph"]
    A["?"] --> B["?"]
    B --> C["?"]
  end
  subgraph graph["CodeGraph"]
    D[Controller] --> E[Service]
    E --> F[Repository]
    F --> G[(DB)]
  end

CodeGraph とは?GitHub Trending の答え

なぜ漏れるかが分かったら、CodeGraphcolbymchenry/codegraph)が 2026 年 5 月末の GitHub Trending 実装です:ローカル tree-sitter Code Knowledge Graph.codegraph/codegraph.db に、Claude Code MCP / Cursor MCP で公開:

  • codegraph_context — タスク単位の入口
  • codegraph_trace — 端から端まで 1 チェーン
  • codegraph_impact / codegraph_callers — 変更前の閉包
  • 保存後 ~2 秒の増分同期

CodeGraphClaude CodeCursor の代替ではなく、欠けていたリポジトリ地図。AI コーディング インフラであり、トレンド追いではありません。

Claude Code への正しい指示

「X をリファクタ」だけは避ける。Claude Code MCP → codegraph_impact / callers → ファイル一覧 → その後編集と要求してください。

GitHub 上のどの CodeGraph?

GitHub Trending が指すのは colbymchenry/codegraph:SQLite、ソースアップロード不要、MCPClaude Code / Cursor。Kuzu + ベクトル fork など別系統あり。ドキュメント:colbymchenry.github.io/codegraph

CodeGraph のインストール(macOS / Linux / Windows)

公式スクリプト
# macOS / Linux
curl -fsSL https://raw.githubusercontent.com/colbymchenry/codegraph/main/install.sh | sh

# Windows
irm https://raw.githubusercontent.com/colbymchenry/codegraph/main/install.ps1 | iex
npm
npx @colbymchenry/codegraph
npm i -g @colbymchenry/codegraph
codegraph install --target=cursor,claude --yes

索引:Claude Code に構造を見せる

monorepo または 20 万行級リポジトリのルートで:

初期化 + 全量索引
cd /path/to/your-large-repo
codegraph init -i
codegraph status

初回全量索引は数十分かかることも——下記の Cloud Mac が有効な理由です。

Claude Code MCP と Cursor MCP

codegraph install が stdio MCPcodegraph serve --mcp)を登録。手動 Claude Code MCP 例:

Claude Code · ~/.claude.json
{
  "mcpServers": {
    "codegraph": {
      "type": "stdio",
      "command": "codegraph",
      "args": ["serve", "--mcp"]
    }
  }
}

Claude Code と Cursor を再起動。 AI コーディング では CodeGraph ツールを repo 全体 grep より優先。

MCP ツール使うタイミング
codegraph_context新タスク — モジュールを圈定
codegraph_impact公開 API / スキーマ変更前
codegraph_trace「リクエストはここまでどう来る?」
codegraph_callers旧 API を誰が使っている?

実践:Claude Code と 3 コマンド

1 · Context
codegraph context "ログイントークン更新ロジックを変更" --format markdown
2 · Impact(漏改防止)
codegraph impact "AuthService.refreshSession" --depth 3
codegraph callers "AuthService.refreshSession" --limit 20
3 · Trace
codegraph query SessionStore --limit 5

ワークフロー:Claude Code + Cursor + CodeGraph

  1. clone 後 codegraph init -i(大規模リポは Cloud Mac)。
  2. 横断変更は Claude Code、ファイル単位は Cursor — 同一グラフ。
  3. 公開シンボル変更前は必ず codegraph_impact
  4. pre-commit:git diff --name-only | codegraph affected --stdin --quiet

チームが Cloud Mac で索引する理由

large codebase で初めて Code Knowledge Graph を構築するとき:

  • CPU 高負荷 — tree-sitter 全量パース
  • IO 高負荷 — SQLite + FTS5
  • 数十分 — 1 万ファイル超でよくある

MacBook 上では Claude Code / Cursor の並行セッションと競合。Mac mini、Cloud Mac、Apple Silicon VPS — .codegraph/ を rsync し、ローカルから MCP 照会。ZavCloud Cloud Mac プランは索引 + CI 専用ノード向き。

  • チーム — Cloud Mac で索引、グラフを開発機に同期
  • CI — PR で codegraph affected
  • iOS / RN — 多言語横断の盲読を減らす

グラフ ≠ 魔法

CodeGraph は構造的事実を出す;テストと CI は依然必須。品質 = モデル + グラフ + 人のレビュー。詳細:Code Knowledge Graph 入門

トラブルシュート

  • Claude Code が grep のまま.codegraph/、MCP 読み込み、mcp__codegraph__* allow、再起動。
  • Cursor にツールがないcodegraph install --target=cursor、再起動。
  • 索引が遅いCloud Macnode_modules、ビルド成果物を除外。

FAQ

CodeGraph で修正漏れはゼロになる? 保証はできませんが、impact + Code Knowledge Graph で当てからチェックリストへ——Claude Code monorepo でいま最も監査しやすい層です。

Claude Code MCP と Cursor MCP は別インストール? codegraph install --target=cursor,claude --yes 一度で可。共有 .codegraph/

20 万行リポを AI に渡すには? context window に詰め込まず、codegraph init -i して公開 API 変更前に codegraph_impact

Cloud Mac は必須? 小規模はローカル索引。large codebase の初回索引は Cloud Mac 推奨;ノート PC は AI コーディング に専念。

ZavCloud · Cloud Mac

大規模リポの索引は専用 Cloud Mac へ

M4 Mac mini Cloud Mac:実 macOS で CodeGraph 全量索引。Claude Code / Cursor はノート PC で軽く。

Cloud Mac プランを見る
Cloud MacMac mini をオンラインでレンタル