Agent Harness
Agent Harness 是 NeuroBook 的 Agent 运行内核。它负责创建 session、准备 profile context、调用模型、执行工具、写入 JSONL session、处理 linked agents、队列、SSE 和 runtime hooks。
普通作者不需要先理解 Harness。你只有在调试 Agent 行为、编写 profile、分析 session 事件或设计新 runtime 机制时才需要读这一页。
运行链路
一次普通 invocation 大致经过:
- 创建或恢复 session。
- 校验 profile input。
- 执行 profile
context(),生成ProfileTurnPlan。 - 组合 system、history、model context、appending context 和当前用户输入。
- 调用 provider。
- 执行工具或 linked agent。
- 写入 transcript、runtime state、session projection。
- 通过 SSE 向前端发布状态。
Runtime Hooks
Runtime hooks 把 profile prompt、session context、transcript persistence、report_result、compact、sidecar 等行为拆成可组合机制。
这让 profile 不需要把所有运行逻辑塞进提示词,也让 Harness 能在 prepareRun、prepareTurn、ingestTurn、prepareNextTurn、settleRun 等阶段做明确处理。
Session 与 SSE
Agent session 使用 JSONL append-only 存储,前端通过 snapshot + SSE event 同步当前状态。重连、waiting、follow-up、steer、abort 等行为都由 Harness 维护一致的 runtime projection。