アイドルエージェントが1日5000万トークンを消費した理由と改善方法

Reddit上のOpenClawユーザーが、LLM API使用量が6日間で1100万から5100万トークンに急増し、合計1億9600万トークンに達したと報告。そのほとんどがアイドル状態のエージェントによって無駄に消費されていた。原因は、OpenClawのハートビート機能が30分ごとに、忘れ去られた「main」というエージェントを呼び出し、22万5千トークンのセッション履歴を読み込んで「HEARTBEAT_OK」と返答していたことだった。
リークの兆候:cacheReadの支配
トランスクリプト分析から、2つの数字が浮かび上がった:
- トークンの95%がcacheRead — モデルが新しい作業をする代わりに、古い会話履歴を再読み込みしていた。
- 全トークンの56%が、もはや使用されていない「main」という単一のエージェントによるものだった。
ハートビートは1日48回実行され、そのたびに数ヶ月前のセッションを読み込んでいた。ハートビートを無効にするために意図された空のHEARTBEAT.mdですら、そのビルドでは効果がなかった。
修正方法:2つのステップ
- 肥大化したセッションをクリアする。 アイドルエージェントのセッションファイルを消去。次回のハートビートは白紙状態から開始される。不要なセッションだけを削除し、実際のDMやチャットセッションは保持すること。
- 再蓄積を防ぐ。 1回のクリアだけではハートビートがセッションに追加し続けるため効果が続かない。設定変更で対応:
heartbeat every: "0m"を設定してハートビート自体を完全にオフにする(エージェントが何もしない場合)、またはisolatedSession: trueとlightContext: trueを設定し、各ハートビートをフル履歴(約10万トークン以上)ではなく、新鮮で小さなコンテキスト(約2〜5千トークン)で実行する。
補足:他のエージェントも、セッションIDがそのビルドで実際には新しく開始されていなかったため、拡大し続けるセッションを再利用していた。ジョブ間でセッションをリセットすることで、各実行をクリーンに保つことができる。
教訓
- アイドルエージェントは無料ではない——肥大化したセッションでのハートビートは、実際の作業よりもコストがかかる可能性がある。
- ほとんどのトークンが
cacheReadなら、新しい作業ではなく履歴の再読み込みに支払っている。 - 「オフ」が実際にオフであることを確認せよ——報告されたビルドでは、空の
HEARTBEAT.mdはハートビートを止められなかった。 - ターンごとのトランスクリプトを読め;トークン使用量は入力/出力/cacheReadごとに記録されている。
ユーザーはこれらの設定変更によりトークン使用量を半分以上削減した。
📖 全文ソース: r/openclaw
👀 See Also

OpenClaw 101: 初心者向けクイックスタート概要
新規ユーザーが知っておくべきすべてを網羅した簡潔ガイド。142件の賛成票と66件のコメントにより、定番のクイックリファレンスとなっています。

Claude Code オーケストレーターが有用であるための4つの要素
Claude Codeでオーケストレーターエージェントを構築した開発者からの実践的アドバイス:ミッションドキュメント、ハートビート、エージェント間通信、監査可能な制御。

ヒッチハイカーによるエージェンティックAIガイド — 完全概説
LLMの内部動作、RL訓練、推論、RAGメモリ、マルチエージェントシステム、MCPやスキルなどのツールを解説するReddit投稿。論文へのリンク付き。

Power AutomateとFastMCPサーバーを介してClaudeにM365アクセスを付与する
ある開発者が、ClaudeがMicrosoft 365(受信トレイ、カレンダー、OneDrive、Planner、Excel、Word)とやり取りできる軽量MCPサーバーを構築しました。Power Automateウェブフックを使用しており、管理者のGraph権限は不要です。