第 36 章:Tool Result の予算と退避

ファイルシステムが作業コンテキストを拡張できるのは、Prompt に信頼できる再取得ポインタが残る場合だけです。

公開ソースのスナップショット:実装例は 2026-07-27 に確認した Kocoro 公開 origin/main のコミット 4ec6772 に基づきます。学ぶべき対象は不変条件であり、定数は最新ソースで再確認してください。

36.1 解くべき問題

一つの巨大なファイル結果だけで次の Prompt を圧迫し、複数の中規模な並列結果でも合計量が同じ問題を起こします。単純な切り捨てでは再確認できず、全保持ではファイルツールがコンテキストを枯渇させます。

36.2 設計原則

完全な内容を Runtime 管理ファイルへ保存し、Prompt 内はプレビューとポインタへ置き換え、その置換を後続 Turn でも維持します。結果単体には上限を設け、Turn 合計はベストエフォートの目標として扱います。並列バッチ後は大きい対象から退避して目標以下へ戻します。ツールが退避の対象外である場合や退避自体が失敗した場合、その Turn は目標を超えたまま終わりえます。目標超過は「起こりえない状態」ではなく「調査すべき兆候」として扱ってください。

36.3 スナップショットの根拠

ソーススナップショット観測
4ec6772結果単体のスナップショット閾値:50,000 文字
4ec6772コンテキスト内プレビュー:2,000 Rune
4ec6772Turn 単位の Tool Result 合計目標:200,000 文字——ハードな天井ではない:退避対象外またはサイズ無制限のツール、および退避の失敗はこの値を超えたまま終わりうる

上記の値は特定時点の実装例であり、普遍的な契約ではありません。

36.4 実装チェックリスト

  • 多言語プレビューは Rune 単位で安全に切る。
  • 退避ファイルを Session スコープと権限制御下に置く。
  • 複数の中規模結果で合計超過をテストする。

36.5 まとめ

ファイルシステムが作業コンテキストを拡張できるのは、Prompt に信頼できる再取得ポインタが残る場合だけです。

各章は一つのシステムとして読んでください。コンテキスト、Tool Schema、永続化、ステアリング、時間規律、ループ検出、並列性は相互に影響します。

この記事を引用する / Cite
Zhang, Wayland (2026). 第 36 章:Tool Result の予算と退避. In AI Agent アーキテクチャ:単体からエンタープライズ級マルチエージェントへ. https://waylandz.com/ai-agent-book-ja/%E7%AC%AC36%E7%AB%A0-Tool-Result%E3%81%AE%E4%BA%88%E7%AE%97%E3%81%A8%E9%80%80%E9%81%BF/
@incollection{zhang2026aiagent_ja_36_-Tool-Result,
  author = {Zhang, Wayland},
  title = {第 36 章:Tool Result の予算と退避},
  booktitle = {AI Agent アーキテクチャ:単体からエンタープライズ級マルチエージェントへ},
  year = {2026},
  url = {https://waylandz.com/ai-agent-book-ja/%E7%AC%AC36%E7%AB%A0-Tool-Result%E3%81%AE%E4%BA%88%E7%AE%97%E3%81%A8%E9%80%80%E9%81%BF/}
}