Claudeのコードアーキテクチャ分析:流出したソースマップから

✍️ OpenClawRadar📅 公開日: April 4, 2026🔗 Source
Claudeのコードアーキテクチャ分析:流出したソースマップから
Ad

技術スタックとアーキテクチャ

2026年3月31日にnpmに公開されたClaude Codeパッケージには、完全なTypeScriptソースコードを明らかにする.mapファイルが含まれていました。このコードベースは約1,900ファイル、51万2,000行以上のTypeScriptで構成されています。

コアテクノロジー

  • ランタイム: Bun
  • 言語: TypeScript(strictモード)
  • ターミナルUI: React + Ink(CLI用React)
  • CLI解析: Commander.js(追加の型定義付き)
  • スキーマバリデーション: Zod v4
  • コード検索: ripgrep(GrepTool経由)
  • プロトコル: MCP SDK、LSP(vscode-jsonrpc)
  • API: Anthropic SDK
  • テレメトリ: OpenTelemetry + gRPC(遅延読み込み、〜400KB + 700KB)
  • 機能フラグ: GrowthBook
  • 認証: OAuth 2.0、JWT、macOS Keychain
  • 状態管理: Zustand(Reactベースのストア)

ディレクトリ構造のハイライト

src/ディレクトリには以下が含まれます:

  • main.tsx - Commander.js CLI + React/Inkレンダリングのエントリーポイント
  • commands.ts - 100以上のコマンドを登録するコマンドレジストリ
  • tools.ts - 38以上のツールを登録するツールレジストリ
  • Tool.ts - ツールの型定義
  • QueryEngine.ts - LLMクエリエンジン(〜46,000行)
  • query.ts - メインクエリループ(〜1,729行)
  • context.ts - システム/ユーザーコンテキスト収集
  • cost-tracker.ts - トークンコスト追跡
  • commands/ - スラッシュコマンド実装(100以上)
  • tools/ - ツール実装(38以上)
  • components/ - Ink UIコンポーネント(約140)
  • hooks/ - React Hooks + パーミッションフック
  • services/ - API、MCP、LSP、コンテキスト圧縮、メモリ抽出、分析を含む外部サービス統合
  • constants/ - システムプロンプト + 定数
  • bridge/ - IDE統合ブリッジ
  • coordinator/ - マルチエージェントコーディネーター
  • plugins/ - プラグインシステム
  • skills/ - スキルシステム
  • memdir/ - 永続メモリシステム
  • tasks/ - タスク管理システム
  • state/ - 状態管理
  • remote/ - リモートセッション
  • server/ - サーバーモード
  • vim/ - 完全なステートマシンを備えたVimモード
  • voice/ - 音声入力
  • keybindings/ - キーバインドシステム
  • screens/ - フルスクリーンUI(Doctor、REPL、Resume)
  • schemas/ - Zod設定スキーマ
  • migrations/ - 設定マイグレーション
  • query/ - クエリパイプラインサブモジュール
  • outputStyles/ - 出力スタイル
  • buddy/ - コンパニオンスプライト(イースターエッグ)
Ad

コアデータフロー

このシステムは以下のデータフローパターンに従います:

  1. ユーザー入力(ターミナル / IDE / リモート)
  2. main.tsx → Commander.js解析
  3. REPL.tsx(メインインタラクションループ)
  4. QueryEngine.submitMessage() ← セッションライフサイクル
  5. メッセージ準備ステージには以下が含まれます:
    • applyToolResultBudget() - 結果サイズ上限
    • snipCompact() - スニペット圧縮
    • microCompact() - マイクロ圧縮
    • contextCollapse() - コンテキスト圧縮
    • autoCompact() - 自動圧縮

この分析は、本番AIコーディングエージェントがコンテキスト、ツール、マルチエージェント連携をどのように管理しているかを示す、流出したソースコードに基づいています。

📖 Read the full source: r/ClaudeAI

Ad

👀 See Also

コーディングフラッシュカード:Rust、SQLite、Godot、Wolfram言語向け800枚以上のAnkiカード
Tools

コーディングフラッシュカード:Rust、SQLite、Godot、Wolfram言語向け800枚以上のAnkiカード

Rust、SQLite、Godot、Wolfram Languageを基本原理から学べる800枚以上のMarkdownフラッシュカード。AnkiデッキやPDFに変換するスクリプト付き。

OpenClawRadar
ルフロ:複数のAIエージェントをチームとして稼働させるオープンソースプラットフォーム
Tools

ルフロ:複数のAIエージェントをチームとして稼働させるオープンソースプラットフォーム

Rufloは、複雑なタスクをチームとして協力して取り組むために、多くのAIエージェントを同時に実行できるオープンソースプラットフォームです。以前はClaude Flowとして知られており、タスクを分割する必要があるワークフローの調整を支援します。

OpenClawRadar
メングラムはOpenClawエージェントに永続メモリを追加します
Tools

メングラムはOpenClawエージェントに永続メモリを追加します

Mengramは、OpenClawエージェントにセッションを超えた長期記憶を提供するオープンソースのメモリシステムです。エージェントが再起動時にすべてを忘れてしまう問題を解決し、古くなった事実のスマートなアーカイブ機能を備えたエピソード記憶、エンティティ記憶、手続き記憶を提供します。

OpenClawRadar
オープンソースAIモデルスタック、コスト効率の高いClaude代替品向け
Tools

オープンソースAIモデルスタック、コスト効率の高いClaude代替品向け

Redditユーザーが、ローカル実行用のオープンソースモデル(Llama 3.3 70bやDeepSeek R1 32bなど)を活用した実用的なAIモデルスタックを共有。タスクの90%を無料モデルにルーティングすることで、月額AIコストを£60以上から£3未満に削減。

OpenClawRadar