第 41 章:実行中 Agent のステアリング
Steerability は単なる Prompt 追加ではなく、並行性と宛先の契約です。
公開ソースのスナップショット:実装例は 2026-07-27 に確認した Kocoro 公開
origin/mainのコミット4ec6772に基づきます。学ぶべき対象は不変条件であり、定数は最新ソースで再確認してください。
41.1 解くべき問題
長い作業中にユーザーは優先順位を変えます。追加指示を別 Turn にすると競合し、単に追記すると最終返信の宛先を誤ります。配送系は受理済みメッセージを再送することもあります。
41.2 設計原則
実行中 Run に mailbox を持たせ、安全境界でだけ追加指示を取り込み、各項目に返信先を保持し、次のツール選択前にモデルへ見せます。Delivery Ack は終端の返信が正常に配信された後にのみ発行され、それが transport 側で replay エントリを落とせる根拠になります。mailbox が受理したという信号ではありません。重複排除は永続 message identity、即時停止は別の interrupt 経路で扱います。
41.3 スナップショットの根拠
| ソーススナップショット | 観測 |
|---|---|
4ec6772 | 実行中の追加指示は active context へ取り込まれる |
4ec6772 | 返信先は inbound item ごとに追跡 |
4ec6772 | delivery_ack と at-least-once replay は別状態 |
上記の値は特定時点の実装例であり、普遍的な契約ではありません。
41.4 実装チェックリスト
- Checkpoint 前後の追加指示到着をテストする。
- cancel・redirect・通常の文脈追加を分ける。
- 各終端返信の inbound message を検証する。
41.5 まとめ
Steerability は単なる Prompt 追加ではなく、並行性と宛先の契約です。
各章は一つのシステムとして読んでください。コンテキスト、Tool Schema、永続化、ステアリング、時間規律、ループ検出、並列性は相互に影響します。