Claude Codeのトークン節約:品質を保つ7つの方法
この記事で学べること
- Claude Codeのトークンを入力・出力・常時文脈に分けて見直す方法
- コンテキスト、CLAUDE.md、参照ファイル、サブエージェント、出力形式を調整する7つの方法
- 品質や安全条件を削らず、導入しやすさとリスクで最適化の順序を決める基準
Claude Codeのトークンは必要な文脈を残して減らす
トークン(AIの入力・出力に含まれる文章量を数える単位)は、Claude Codeの利用量に関係します。会話履歴や資料を減らせばよいとは限りません。目的、合格条件、安全上の制約を残し、今の作業に関係しない情報だけを外すことが基本です。
この記事では、「何を短くし、何を必ず残せば、作業品質を保ちながら利用量を見直せるか」という問いに焦点を当て、結論を分ける判断軸、適用条件、最初に確認する事項を扱います。
最後まで読むと、「何を短くし、何を必ず残せば、作業品質を保ちながら利用量を見直せるか」という問いを、自分の状況に照らして判断するための材料を持ち帰れます。
節約対象を入力・出力・常時文脈に分ける
Claude Codeの利用量は、選択したモデル、入力、出力、キャッシュ、利用形態などの影響を受けます。正確な料金と上限は契約や製品仕様で変わるため、現在の公式情報を確認してください。[1]
最適化では、次の3つを分けます。
- 入力: 依頼文、会話履歴、読み込んだファイル
- 出力: Claudeが返す説明、コード、調査結果
- 常時文脈: CLAUDE.mdや利用可能なツールなど、作業の前提として参照される情報
削ってよいのは、現在の目的と関係しない履歴、重複した説明、不要な出力です。受け入れ条件、禁止事項、検証方法、対象ファイルは残します。この記事の優先順位は実測した削減率ではなく、導入しやすさと影響範囲を基準にしています。
目的が変わったらコンテキストを区切る
バグ修正、機能設計、コードレビューを1つの会話で続けると、後の依頼でも前の作業に関する文脈が残ります。目的が変わるときは新しいセッションへ分け、関連する作業を続けるときはClaude Codeの/compactで履歴を要約します。関連しない履歴を外す場合は/clearを使います。[1]
/compactただし、新しいセッションへ移る前に、未完了の変更、判断理由、未実行のテストをリポジトリ内のメモやhandoffへ残します。履歴を短くするために、復旧に必要な情報まで失わないことが重要です。
CLAUDE.mdは常時必要な指示に絞る
CLAUDE.md(Claude Codeへプロジェクト共通の約束を伝える文書)は、すべての作業で必要な内容に絞ります。すべての手順を1つの文書へ置くと、対象外の作業でも詳細を参照することになります。公式のコスト管理ガイドでは、CLAUDE.mdを簡潔に保ち、専門的な手順を必要時だけ読み込む方法が案内されています。[1]
- すべての作業に適用する制約を残す
- 詳細手順は専用の文書やSkillへ分ける
- 重複、廃止済み、検証不能な指示を定期的に見直す
短くすること自体を目標にせず、変更前後で指示の遵守、修正回数、入力使用量を確認します。
ファイル参照の開始範囲を絞る
「このプロジェクトの認証を確認して」という依頼では、関連候補を探すために広い範囲のファイルを読む必要があります。既知の起点がある場合は、ファイル、関数、症状、期待動作を示します。
# 広い探索が必要な依頼
「認証周りのバグを直してください」
# 開始範囲と合格条件が分かる依頼
「src/auth/login.tsのgetTokenを確認してください。
症状: 期限切れトークンでも検証が通る。
期待動作: 期限切れなら401を返す。関連テストも更新する。」原因が別の場所にある場合は追加調査が必要です。範囲指定は探索を禁止するためではなく、最初に読む場所と完了条件を明確にするために使います。
独立した調査をサブエージェント(担当を分ける作業単位)へ分ける
Claude Codeのサブエージェントは、個別のコンテキストで作業し、結果をメインの会話へ返せます。[2] 調査、テストログの要約、互いに依存しないレビューなど、入力と成果物を明確に分けられる作業に向いています。
- 依頼する論点と対象範囲を1つに絞る
- 返してほしい根拠、変更ファイル、未解決事項を指定する
- 同じファイルを複数の作業へ同時に割り当てない
サブエージェントにも利用量は発生します。メイン文脈を短くできることと、全体のトークン消費が減ることは同じではないため、並列化だけを目的に使わず、作業の独立性で判断します。
短さより具体性を優先する
依頼文は、背景をすべて繰り返すのではなく、目的、対象、症状、期待動作、制約を短く示します。
# 背景が長く、合格条件が曖昧
「以前から相談していた認証の件ですが、チームでも話した結果、
リフレッシュトークンの処理に問題がありそうなので直してください」
# 対象と合格条件が明確
「src/auth/token.tsのリフレッシュ処理を修正してください。
症状: 期限切れでも検証が通る。
期待動作: 401を返す。公開APIと既存UIは変えない。」既知の制約を省いて一文にするより、追加質問や誤修正を減らせる情報を残す方が効率的です。
必要な出力形式を先に決める
コード、差分、短い判定結果だけが必要なら、依頼時に形式を指定します。
「変更ファイル、検証結果、未解決事項の3項目で報告してください。」
「レビュー結果をCritical、Recommended、Passに分けてください。」
「提案は5項目以内にし、各項目へ根拠を1つ付けてください。」説明を省くと判断根拠やリスクが見えなくなる作業もあります。セキュリティ、法務、データ削除、公開操作などでは、短さより根拠、影響範囲、復旧方法を優先します。
外部サービスとの接続を棚卸しする
Claude Codeが外部サービスを操作するための接続情報も、AIが参照する文章量に含まれます。MCPサーバー(AIと外部サービスをつなぐ接続口)が多い場合、公式ガイドでは必要な情報だけを読み込む仕組みと、/mcpで接続先を確認する方法が説明されています。[1]
/mcp利用していない接続がある場合は、次を確認してから無効化します。
- 現在の作業や自動処理がその接続に依存していないか
- 無効化前後で利用量やツール選択に差があるか
- 必要になったときの再接続手順が残っているか
接続数だけで効果を断定せず、実際のコンテキスト使用量と作業結果を比較します。権限設定はセキュリティ境界であり、トークン節約だけを理由に確認手順を緩めません。
導入しやすさとリスクで順番を決める
7つを同時に変更すると、どの方法が効いたか判断しにくくなります。次の順番は測定済みの効果順位ではなく、試しやすさと副作用の小ささを基準にしています。
| 優先度 | 方法 | 確認すること |
|---|---|---|
| 高 | 目的ごとにコンテキストを区切る | 引き継ぎ情報を失わず、無関係な履歴を外せたか |
| 高 | 対象と合格条件を具体化する | 追加質問と探索範囲が減ったか |
| 中 | 出力形式を指定する | 必要な根拠を残したまま出力を短くできたか |
| 中 | CLAUDE.mdを見直す | 常時必要な制約が欠けていないか |
| 中 | 独立作業をサブエージェントへ分ける | メイン文脈と総利用量の両方を確認したか |
| 低 | 接続ツールを棚卸しする | ワークフローを壊さず差を測定できたか |
1つずつ変更し、同じ種類のタスクで入力、出力、修正回数、完了条件の達成を比較します。
まとめ:必要な情報を残し、1項目ずつ効果を確かめる
Claude Codeのトークン最適化では、単に文章を短くするのではなく、必要な情報と不要な情報を分けます。最初は、目的が変わったらセッションを区切り、対象ファイルと期待動作を具体化し、必要な出力形式を指定します。
CLAUDE.md、サブエージェント、接続ツールを変更する場合は、一度に1項目だけ試し、利用量と作業品質の両方を確認してください。受け入れ条件、安全上の制約、検証結果は節約対象にしません。
参考文献
- Anthropic, Manage costs effectively, Claude Code Docs
- Anthropic, Create custom subagents, Claude Code Docs
最新のリリースやアップデートの詳細は、公式サイト・公式ドキュメントを確認してください。