掲載済み (2026-08-01号)
069 208文字 • 2分

Claude Code の仕組み — ハーネスの動作と Claude API

日本語

掲載情報

概要

AnthropicのCLIツール「Claude Code」が、ステートレスなAPI、状態管理を担うハーネス、JSONL形式のログをどのように組み合わせて自律的な動作を実現しているかを詳説した技術解説。

詳細内容

この記事は、Claude Codeの内部構造を「Claude API」「ハーネス」「セッションログ」の3層構造として体系的に解説しています。主な内容は以下の通りです。 - **ステートレスなAPIとプロンプトキャッシュ**: Messages API自体は会話履歴を保持しないため、ハーネスが毎回全履歴を送信。コスト抑制のためにサーバーサイドのプロンプトキャッシュをcache_controlで制御する仕組みを詳述。 - **Agentic Loopの二重構造**: ハーネス側で回る「ツール実行ループ」と、API応答内で完結する「thinking(推論)」の役割分担を整理。 - **セッションとJSONL構造**: 会話履歴が連結リスト形式のJSONLで保存される仕組みを解明。`/compact`による要約置換や、`/rewind`によるファイルスナップショットと履歴の分岐管理を視覚的に説明。 - **コンテキスト注入技術**: システムプロンプトやCLAUDE.md、`<system-reminder>`タグを用いた動的な情報の差し込み、および不要な再読込を防ぐ設計(pull型設計)について解説。 Claude Codeが単なるラッパーではなく、高度なコンテキスト管理を行う「エージェント用馬具(harness)」であることを技術的側面から浮き彫りにしています。