CoreCode を使いこなす
Claude Code を安く使う節約ガイド
Claude Code で 1 日に数十ドルを使うのは珍しくありません。その大半はコードを書くことではなく、毎ターン送り直されるコンテキストに費やされています。このページでは、お金がどこに使われているかを示したうえで、品質を落とさずに安く使う方法を紹介します。キャッシュの詳細はキャッシュと課金を参照してください。
- 請求の大半は、出力ではなく入力側、つまり毎ターン送り直されるコンテキストです。
- Anthropic の料金では、Opus 5.5 と Sonnet 5.5 のキャッシュ読み取りは入力料金の 0.05 倍(Haiku 5.5 は 0.1 倍)、5 分キャッシュの書き込みは 1.25 倍、1 時間キャッシュの書き込みは 2 倍です。
- 普段の作業は Sonnet、難しい問題は Opus を使い、モデルはタスクの開始時に選びます。
- タスクを変えるときは
/clear、長いセッションは早めに/compact、CLAUDE.mdと MCP は簡潔に保ちます。 - auto モードがツール呼び出しの前に送る分類器リクエストはほとんどキャッシュに当たらず、支出の大きな割合を占めることがあります。
お金はどこに使われるか
Claude Code は毎ターン、システムプロンプト、ツール定義、読み込んだファイル、会話全体を送り直します。しばらく続いたセッションでは 1 ターンに数万~数十万トークンを送り、返ってくるのは数百~数千トークンです。したがって次のようになります。
- 入力は出力をはるかに上回ります。請求の大半は通常、入力側です。
- 入力の単価はキャッシュで決まります。キャッシュ済みの入力は、Opus 5.5 と Sonnet 5.5 では入力料金の 5% です。ミスすると書き込み料金で書き直され、キャッシュ読み取りの 25~40 倍になります(倍率は Anthropic のプロンプトキャッシュの料金を参照)。
- コンテキストが長いほど、毎ターンが高くなります。同じ「もう一度直して」でも、30 万トークンのセッションでは 3 万トークンのセッションの 10 倍かかります。
節約のポイントは 3 つに絞られます。適切なモデル、当たり続けるキャッシュ、無駄に膨らまないコンテキストです。
1. 適切なモデルを選ぶ
- 普段の作業は Sonnet を使います。バグ修正、テストやドキュメントの作成、仕様が明確な機能の実装は Sonnet で十分で、Opus よりはるかに安くなります。
/modelで切り替えるか、claude --model claude-sonnet-5-5で起動します。 - Opus は難しい問題のために取っておきます。アーキテクチャ、複数ファイルにまたがるリファクタリング、Sonnet が何度も間違える問題は Opus の価値があります。
- モデルはセッションの開始時に選びます。キャッシュはモデルごとなので、セッション途中で切り替えると、次のターンでコンテキスト全体が書き込み料金で書き直されます。タスクの開始時に切り替えるか、切り替えた直後に
/compactを実行してください。
単価は料金表に、各モデルの向き不向きはモデルの選び方にあります。
2. キャッシュを当て続ける
- 1 つのタスクは 1 つのセッションで終えます。途中でモデルや thinking effort を切り替えたり、MCP サーバーを接続・切断したりしないでください。いずれもキャッシュを無効にします。
- 中断が多いなら 1 時間キャッシュを有効にします。既定のキャッシュは 5 分しか持たないため、会議の後の最初のターンですべてが書き直されます。
settings.jsonのenvに"CLAUDE_CODE_PROMPT_CACHE_TTL": "1h"を追加してください。1 時間キャッシュを参照してください。 - セッションを固定するリレーを選びます。1 つのセッションのリクエストが上流アカウントの間を行き来すると、ほぼ毎ターンキャッシュがミスし、請求が何倍にもなることがあります。CoreCode はセッション ID ごとに 1 つのアカウントに固定します。ほかのリレーは、検証スクリプトのキャッシュチェックで確認できます。
3. コンテキストを簡潔に保つ
- タスクを変えるときは
/clearします。前のタスクのファイルや会話は次のタスクには役に立ちませんが、毎ターン送られ続けます。 - 長いセッションは早めに
/compactします。コンパクト化の後の最初のターンはキャッシュが書き直されますが、それ以降の毎ターンは安くなります。気分を新たにするために新しいセッションを開いてコンテキストを並べ直すのは避けてください。コンパクト化より高くつきます。 - 1M コンテキストをオフにすることを検討します。
envに"CLAUDE_CODE_DISABLE_1M_CONTEXT": "1"を追加します。上限が 200K になり、自動コンパクト化が早く始まり、毎ターンの送信量が減ります。 - CLAUDE.md と MCP を整理します。
CLAUDE.mdは毎ターン送られるので、ドキュメントをまるごと貼らずにルールだけを書いてください。使わない MCP サーバーは切断し、既定の MCP ツール検索は有効のままにします(ENABLE_TOOL_SEARCH=falseは設定しないでください)。
auto モードのコストを計算する
auto パーミッションモードは、各操作を実行してよいかを判断する必要があります。CoreCode は Claude Code のサーバー側レビューをそのまま通すので、通常は追加のリクエストはありません。ただし CLAUDE_CODE_DISABLE_EXPERIMENTAL_BETAS を設定すると、Claude Code は代わりにツール呼び出しのたびに別の分類器リクエストを送ります。これらはほとんどキャッシュに当たらず、実際の例ではリクエストの 3 分の 1、支出の 60% を占め、CoreCode ではセッションのモデルで実行されます。CoreCode にはこの変数は不要ですので、削除してください。Claude Code v2.1.283 から、新しいセッションは auto で始まります。放置して任せる必要がないときは、Shift+Tab で Manual または「accept edits」モードに切り替えてください。詳しい分析は auto モードのコストにあります。
お金の行き先を確認する
- Claude Code で
/usage(または/cost)と入力すると現在のセッションの使用量とコストが、/contextでコンテキストを占めているものが分かります。 - コンソールの利用ログで連続するリクエストを時系列に見ます。キャッシュ読み取りが着実に増え、キャッシュ書き込みが数百~数千なら正常です。あるリクエストのキャッシュ書き込みが突然コンテキスト全体に近くなったら、先頭部分が変わったことを意味します。
- 非ストリーミングのリクエストが多く、それぞれ数万トークンを書き込んでいる場合は、auto モードのチェックである可能性が高いです。
- 選んだ覚えのないモデルが請求に出ているときは、たいていバックグラウンドの要約、サブエージェント、auto の分類器です。請求に表示される他のモデルを参照してください。
Anthropic 自身の Claude Code のコストガイドには、支出を管理するその他の方法が載っています。ログを見ても理由が分からない場合は、それらのリクエストの時刻をお知らせください。上流アカウントとルーティングを調べます。
FAQ
Claude Code はなぜこんなにトークンを使うのですか?
毎ターン、システムプロンプト、ツール定義、読み込んだファイル、会話全体を送り直すからです。セッションが長いほど 1 ターンの送信量は増えます。キャッシュに当たれば、その部分は Opus 5.5 と Sonnet 5.5 では入力料金の 5% です。
セッションにいくらかかったかはどう見ますか?
Claude Code で /usage(または /cost)と入力し、/context でコンテキストを占めているものを確認します。コンソールの利用ログには、各リクエストの使用量とコストが一覧で表示されます。
1 時間キャッシュは常に安くなりますか?
いいえ。1 時間キャッシュの書き込みは 5 分のものの 1.6 倍です(2 対 1.25)。5 分を超える中断が頻繁にある場合にだけ元が取れ、中断が少ないとかえって高くなります。
Opus しか使っていないのに、請求に Haiku や Sonnet が出てくるのはなぜですか?
バックグラウンドの要約、サブエージェント、auto モードの分類器が別のモデルを使うためです。請求に表示される他のモデルを参照してください。