長時間稼働エージェントのコンテキスト工学

マルチターン・エージェントの劣化を防ぐ 4 手法:圧縮(切り詰めでなく)、構造化メモ、サブエージェント分離、都度取得。

intermediate · Claude / GPT-5
#コンテキスト#エージェント#信頼性

問題

長時間稼働するエージェントは特徴的な失敗をします。クラッシュではなく 緩やかな漂流 です。初期の決定が忘れられ、ツール出力が積み上がり、古いコンテキストに対して最適化し始めます。

コンテキスト窓は有限の予算です。全トークンが注意を奪い合い、関連性は端からの距離で減衰します。

効く 4 つの手法

1. 切り詰めではなく圧縮

末尾を切るのではなく、要約して再起動します。要約に残すべきもの:

単純な切り詰めは直近のノイズを残し、初期の意図を捨てます。まさに逆です。

2. 構造化スクラッチパッド

状態はウィンドウ外のファイルに置き、エージェントに「思い出させる」のではなく「読み直させます」:

progress.md      # 完了 / 進行中
decisions.md     # 決定と理由(追記のみ)
blockers.md      # 詰まりの内容と理由

追記のみのログは可変状態に勝ります。履歴そのものがコンテキストだからです。

3. サブエージェント分離

自己完結したサブタスクはサブエージェントに任せます。きれいなウィンドウを得て、袋小路での探索は自分のトークンを消費し、結論だけを返します。メインスレッドを保つ最も効果の大きい手です。

4. 必要時取得(JIT)

ペイロードではなくポインタ(パス、クエリ、ID)を渡します。ファイルは必要になった瞬間に読みます。「関連しそうなもの」を先読みするのは、作業前に窓を埋める行為です。

効いているかどうかの測り方

感覚ではなく次を監視します:

シグナル健全劣化中
コンテキスト量ターン間で安定単調増加
質問の繰り返しまれ解決済み項目を再質問
やり直しまれ却下済み案の再提案
変更ファイルの範囲集中無関係モジュールに波及

却下したはずの案を再提案してくるなら、圧縮が決定履歴を落としています。モデルを責める前に要約テンプレートを直してください。