給 Agent 開發者的駕馭工程 (4): 回饋時機二: 兩次 model request 之間,把訊息注入執行中的 agent

後設資料

一句話濃縮

Mid-run injection 發生在一輪內、兩次 model request 之間;它讓人或程式在 agent 還沒輸出最終答案前,把合法的新訊息送進下一次模型請求。

提取要點

  • 一個 turn 不是一次問答,而是多次 model request 與 tool call 的迴圈;注入點在工具結果都補齊、下一次 model request 尚未送出之前。
  • OpenAI / Anthropic API 都要求每個 tool call 必須先有對應結果;因此不能在 tool call 懸空時插入一般訊息。
  • 人中途 steer 是互動式 coding agent 的常見功能;它不同於預先設計的 human-in-the-loop,因為 agent 原本沒有停下來等人。
  • steering 與 interrupt 差別在是否中斷正在跑的工具;如果常常需要手動 steer,通常代表起始 prompt / feedforward 不夠清楚。
  • 程式也可在同一位置注入,例如背景工具完成、webhook、告警、外部事件或 Pydantic AI enqueue
  • 背景工具的合法做法是先回一個「工具已在背景跑」的 tool_result,完成後再用 user message 注入結果;不能重複用 tool_result。

提取概念

連結到此來源衍生 / 更新的 wiki 頁:

Ingest 筆記

2026-07-06

  • 本次從 2026-07-06-ihower-Harness-Engineering系列 挑出的 9 篇系列文逐篇入庫;此頁為其中一篇的摘要型來源頁。
  • 本篇補上 runtime 層的訊息排序限制;暫不新建 mid-run injection 頁,先作為 Harness-Engineering 的回饋時機子題。
  • 未保存完整原文;保留 canonical URL、後設資料、摘要與概念連結。理由:原文為公開網站長文,source note 以可回找與可整合為主,避免在 vault 中重製整篇文章。

原文(可選)

未貼入完整原文。若日後需要全文快照,請以使用者明確授權或短摘錄策略處理。