⚠ ネタバレ注意: 本サイトはSFアニメ「SOLAR LINE」の内容を詳細に分析しています。未視聴の方はご注意ください。
📝 AI生成コンテンツ: 本考証の大部分は AI(Claude Code 等)によって生成されています。内容の正確性については原作および引用元をご確認ください。

AI コスト分析

Claude Code エージェントループのトークン使用量・コスト内訳・キャッシュ効率の分析。プロジェクト全体のAIコストパフォーマンスを可視化する。

はじめに

本ページは、AI エージェントを用いたソフトウェア開発のコスト構造に興味がある方向けの分析レポートです。

SOLAR LINE 考証プロジェクトは Claude Code による自律エージェントループで開発されています。Claude Code は、メインセッション(Opus モデル)が開発タスクを統括し、必要に応じてサブエージェント(Sonnet/Haiku モデル)を起動してファイル探索やレビューなどの補助タスクを並列処理します。開発環境(VM)の起動から終了までが1回の「VMブート」であり、その中で複数のセッション(タスク単位の対話)が実行されます。

要点: 97.3%のキャッシュヒット率により、大規模プロジェクトでも追加コストを極めて低く抑えられています。Max サブスクリプション利用時の追加課金はサブエージェント分のみで、1VMブートあたり約$6.50です。

概要

主要指標

指標
総トークン数約3.6億
サブエージェントコスト(Haiku・測定時点)$6.57
メインセッションコスト(Opus)$0(Maxサブスク)
キャッシュヒット率97.3%
ツール呼び出し回数4,675回
サブエージェント起動数120回

*注: 上記は1回のVMブート(エージェントループ実行環境の起動〜終了サイクル、58セッション)からのサンプルデータです。測定時点ではサブエージェントのデフォルトモデルが Haiku でしたが、その後品質上の理由から Sonnet に変更しています(後述)。*

プロジェクト規模

指標
完了タスク数489
コミット数647+
TypeScript ユニットテスト3,640
Rust テスト497
Playwright E2E テスト256

トークン分布

トークン使用量の97.3%がキャッシュ読み取りで、非常に効率的なキャッシュ活用を実現しています。

カテゴリ割合
キャッシュ読み取り97.3%
キャッシュ作成2.7%
入力+出力(実I/O)<0.1%

実質的な「仕事」(新規入力トークンとモデル出力)はトークン全体のごくわずかです。残りはコンテキスト維持のためのキャッシュ操作が占めています。キャッシュ読み取りは、過去のコンテキストを再送する際にキャッシュ済みトークンを再利用する仕組みで、API課金が大幅に割引されます。

対数スケールで表示すると、キャッシュ読み取りが全トークンの圧倒的多数を占めていることが明確になる。実質的な新規処理(赤)は0.1%未満であり、残りの99.9%以上はコンテキスト維持のためのキャッシュ操作である。

トークン分布(対数スケール)— 全体の97.3%がキャッシュ読み取り

キャッシュ読み取り 97.30 "%" キャッシュ作成 2.70 "%" 入力+出力(実I/O) 0.08 "%"

コスト内訳

測定可能なコスト($6.57)の100%がHaikuサブエージェントから発生しています。Opusメインセッションは Max サブスクリプションに含まれるため追加コストなし。

モデル別使用状況

モデル起動回数トークン割合コスト
Haiku95回 (79%)72%$6.57
Sonnet13回 (11%)21%$0*
Opus12回 (10%)7%$0*

*Maxサブスクリプション対象のため追加コストなし

Haiku が起動回数(79%)・トークン量(72%)ともに最多で、単純タスクを大量に処理していた。Sonnet は少ない起動回数ながらトークン量は21%を占め、1回あたりの処理が重い。この分析後、品質上の理由から Haiku→Sonnet へデフォルトモデルを変更した。

サブエージェントの特性

各サブエージェントは平均して:

Haiku は主にファイル探索・検索などの単純タスクに、Sonnet はコードレビューや複雑な分析に、Opus は設計判断を伴う高度なタスクに使い分けていました。

サブエージェント モデル別起動回数と消費トークン比率

Haiku(95回/72%) 95.00 "回" Sonnet(13回/21%) 13.00 "回" Opus(12回/7%) 12.00 "回"

効率化施策

実施済み

  1. TodoWrite頻度の削減: 状態遷移時のみ更新するよう CLAUDE.md に明記。全ツール呼び出しの9.8%を占めていた
  2. サブエージェントのデフォルトモデル変更: 当初は Haiku をデフォルトとしていたが、応答品質が不十分であったため Sonnet に変更。コスト増だが品質向上により手戻りが減少
  3. バックグラウンド実行: Whisper、yt-dlp等の長時間コマンドは run_in_background を使用
  4. サブエージェントのスコープ制限: max_turns でTool呼び出し回数を制限
  5. ワークフローのSkill化: 繰り返しパターンをSkillとして定義(episode-analysis, subtitle-extraction, report-review, cost-analysis)

効果

施策影響度節約見込み
TodoWrite頻度削減200コンテキストターン/日
Sonnetデフォルト化品質向上による手戻り削減(コスト増とトレードオフ)
バックグラウンド実行セッションサイズ削減
Read/Grep優先サブエージェント効率化
max_turns制限低-中暴走防止

プラン別コスト比較

もし Max サブスクリプション以外のプランで同じ作業を行った場合のコスト見積もりです。API 料金は2026年2月時点の公式価格に基づきます。

料金体系

モデル入力出力キャッシュ読取キャッシュ書込
Opus 4.6$5/MTok$25/MTok$0.50/MTok$6.25/MTok
Sonnet 4.6$3/MTok$15/MTok$0.30/MTok$3.75/MTok
Haiku 4.5$1/MTok$5/MTok$0.10/MTok$1.25/MTok

プラン別推定コスト(58セッション分)

プラン総コスト1セッション平均備考
Max Plan~$7 + 月額$100〜200$0.12Opusは月額に含まれる。$100=Max、$200=上位プラン
API-only~$196~$3.39全トークンがAPI課金
Batch API~$195~$3.36入出力50%引。キャッシュ読み取りは割引対象外のため節約効果は限定的
Pro Plan + API$20 + ~$196レート制限あり、エージェントループには非実用的

API-only の内訳

用途トークンコスト
Opus メインセッション (260M)キャッシュ読取97.3%~$174
Haiku サブエージェント (72M)キャッシュ読取97.3%~$10
Sonnet サブエージェント (21M)キャッシュ読取97.3%~$8
Opus サブエージェント (7M)キャッシュ読取97.3%~$5
合計360M~$196

分析

キャッシュが極めて重要: 97.3%のキャッシュヒット率により、Opus の実質的な入力単価は $0.50/MTok(基本料金の10分の1)となっている。これがなければAPI-onlyコストは数千ドルに膨らむ。

Max Plan の効果: 月額$100〜200のサブスクリプションで約$196分のAPI利用が含まれる。1回のVMブートで回収できる計算であり、エージェントループ型の開発には非常に費用対効果が高い。

Pro Plan は非実用的: Pro Plan ($20/mo) はレート制限があり、エージェントループの速度を維持できない。エージェントループはレート制限を超えやすく、超過分は通常のAPI料金で課金されるため、結局API-only以上のコストになる可能性がある。

プラン別コスト比較(58セッション、サブエージェント+月額換算)

Max Plan(追加コスト) 7.00 "$" Max Plan(月額含む) 107.00 "$" API-only 196.00 "$" Batch API 195.00 "$"

プロジェクト全体のコスト見積もり

推定パラメータ

プロジェクト全体(489タスク、647+コミット、4,393テスト)で:

コスト効率の評価

キャッシュヒット率 97.3% は非常に優秀です。これは Claude Code のコンテキスト管理が効果的に機能していることを示しています。

主な最適化ポイントは:

更新方法

プロジェクト管理者がコスト分析を更新する場合は以下のコマンドを実行してください。bunx(Bunランタイム)と Claude Code のローカルログが必要です。


# ccusageでコストデータを取得:
bunx ccusage@17 session --offline --json --timezone Asia/Tokyo | \
  npm run analyze-costs -- --mode session

# 日別サマリー:
bunx ccusage@17 daily --offline --json --timezone Asia/Tokyo | \
  npm run analyze-costs -- --mode daily

関連ページ