powered by TechFeed
表示モード
Deep Dive

「Hi」と送るだけでClaudeが84,600トークンを消費していた — 原因と削減策を徹底検証

10月26日、Dibakar Ghoshが「Claude was eating 84.6K tokens at the start of every chat until I made this one change」と題した記事を公開した。この記事では、Claudeデスクトップアプリでチャットをひとこと始めるだけで84,600トークンが消費されていた原因と、その削減策について詳しく紹介されている。

10月26日、Dibakar Ghoshが「Claude was eating 84.6K tokens at the start of every chat until I made this one change」と題した記事を公開した。この記事では、Claudeデスクトップアプリでチャットをひとこと始めるだけで84,600トークンが消費されていた原因と、その削減策について詳しく紹介されている。


「Hi」と打つだけで84,600トークンが消えていた

ClaudeデスクトップアプリのCodeモードには、現在のコンテキスト使用量をリアルタイムで確認できる右パネルがある。著者はCoworkモード(Claude Proのインターフェース上に用意された協調作業向けのモード)からCodeモードに移行したタイミングで、新しいセッションを開始し「Hi」と送信した。Claudeが短い挨拶を返しただけの状態で、パネルには84.6K / 1Mトークンという数字が表示された。

当初の予想は「せいぜい5〜10Kトークン程度」。実際の数値はその8倍以上だった。

なお、LLM(大規模言語モデル)においてトークンとはテキストを分割した最小単位であり、単語や記号がそれぞれ1〜数トークンに対応する。モデルが一度に処理できるトークン数には上限(コンテキストウィンドウ)があり、セッション開始時点のベースライン消費が大きいほど、実際にやり取りに使える余裕が削られる。Claude Proの場合、1Mトークンというコンテキストウィンドウが提供されているが、初期消費だけで約8.5%が失われていた計算になる。


内訳を見ると原因が見えてくる

コンテキストの内訳は以下のとおりだった。

カテゴリ トークン数
システムプロンプト・組み込みツール 約30K
Messages(過去会話の記憶を含む) 約23K
SkillsおよびMCPツール 約30K

表の各カテゴリの合計は約83Kであり、実測値の84.6Kとわずかに差がある。これは元記事が各数値を概数で示しているためであり、端数の扱いによる差異とみられる。

システムプロンプト(約30K) はアプリに組み込まれており、ユーザー側では削減できない。

Messages(約23K) については、「Hi」一言とその返答だけでは説明がつかない量だ。著者の推測では、Claudeが過去の会話から記憶やコンテキストをセッション開始時にロードしているためとみられる。古い会話を削除したところ、Messagesは約14Kまで減少した。メモリ機能を無効化すればさらに下げられるが、著者は有用性を優先して残した。

SkillsとMCPツール(約30K) は驚きの数値だった。SkillsやPluginsは、ツール本体ではなく各ツールの「説明文」だけがコンテキストに読み込まれる仕組みだ。ただし、著者の環境では337個のMCPツールが登録されていた。説明文の積み重ねでも、この規模になるとトークン消費は無視できない。


Connectors・Plugins・Skillsを無効化→16K削減にとどまる

設定からほぼすべてのConnector・Plugin・Skillを無効化したところ、トークン使用量は84.6K → 68.7Kに減少した。削減幅は約16K。

さらに無効化だけでなく完全削除も試みたが、結果は変わらなかった。無効化した時点でコンテキストから除外されており、削除しても追加の効果はなかった。

68.7Kという数字は改善ではあるが、著者が目標にしていた「システムプロンプト分のみの約30K」には遠く及ばない。


根本解決はClaude Code CLIへの移行

デスクトップアプリでの限界を悟り、著者はClaude Code CLI(コマンドラインインターフェース)に切り替えた。CLIで同じ/contextコマンドを実行すると、最小構成のフォルダでは36.9Kまで下がった。

CLIではSkillsが「セッション開始時に一括ロード」ではなくオンデマンドでロードされる点が大きく異なる。著者の環境では25個のSkillを保持しつつ、MCP tools込みで46.7Kに収めることができた。デスクトップアプリの84.6Kと比べると、約38Kの削減だ。


まとめ

Claude Pro(月額$20)などのサブスクリプションでトークン上限を意識しているユーザーにとって、セッション開始時点でのベースライン消費は見落としがちなボトルネックだ。コンテキストウィンドウの約8.5%が最初の「Hi」だけで消費されているという事実は、とくに長期・大規模なセッションを扱う開発者にとって無視できない。対策をまとめると以下になる。

  • 古い会話を削除する:過去の記憶がMessagesとしてロードされるため、不要な会話は整理する
  • 使っていないConnectors・Plugins・Skillsは無効化する:削除しなくても、無効化だけでコンテキストから除外される
  • Claude Code CLIを使う:Skillsのオンデマンドロードによりベースライン消費を大幅に減らせる

なお、/contextコマンドはCoworkモードから削除され、現在はClaude CodeのCLIおよびデスクトップアプリのCodeモードでのみ使用可能だ。自分の環境でどれだけトークンが消費されているか把握していない場合、まずこのコマンドで現状を確認するとよい。


詳細はClaude was eating 84.6K tokens at the start of every chat until I made this one changeを参照していただきたい。