Skip to content

过程投影

过程投影是 Runtime facts 到用户可见过程表面的标准映射,不是日志列表,也不是新的 runtime truth。它应支持 active run 的即时观察、完成后的 timeline archive,以及 task / subagent / job / attempt / dependency 的结构化查看。

标准分层

| 层 | 参考 | 职责 | | --- | --- | | UIMessageParts | AI SDK UIMessage.parts | text、reasoning summary、tool preview、artifact card、evidence citation 等消息级分片。 | | ProcessTimeline | AG-UI event stream | 按 sequence 展示 run、status、reasoning、tool、action、artifact、evidence 和 diagnostics。 | | ExecutionGraph | Lime RuntimeCore | 展示 task、subagent、job、attempt、dependency、handoff 的结构关系。 |

Timeline entry model

字段要求
entryId稳定 id,优先来自 eventIdstepIdtoolCallIdactionIdartifactIdevidenceId
sequence来自 RuntimeEvent,保证流式顺序和回放顺序一致。
kindstatusreasoningtoolactionartifactevidencetaskdiagnostic
phasepreparingplanningactingwaitingreviewingcompletedfailed 等。
ownerruntime、tool、action、artifact、evidence、task、agent、diagnostics。
refstool output、artifact、evidence、raw diagnostics、trace。

Execution graph node model

字段要求
nodeId稳定 id,优先来自 taskIdrunIdattemptIdstepIdtoolCallIdactionId
parentId表达 task、run、attempt、step、tool、subagent、dependency 或 handoff 关系。
nodeTypeturnruntasksubagentjobattemptsteptoolaction
statusqueuedrunningwaitingblockedcompletedfailedcancelled
refstimeline entries、artifact refs、evidence refs、diagnostics refs。

Active vs archived

ModeBehavior
Active展示当前 running/waiting/blocked 事实,允许用户处理 approval、cancel、retry。
Archived默认折叠为摘要,用户可展开 timeline detail 或 graph detail。

组件要求

专业过程组件可以选择树、时间线、列表或工作板形态,但必须服务这些 runtime 语义:

  • 节点增量更新不会重排已完成事实。
  • pending action 和 failed tool 有明确 attention state。
  • artifact/evidence refs 可跳转到相邻 surface。
  • 子代理、后台 job、team work item 不被压平成单层文本。
  • 缺少 parent/ids 时渲染 degraded node,不伪造层级。

Deprecated patterns

  • 用字符串前缀、emoji、缩进或正则从正文生成过程结构。
  • 每个产品 App 自己实现一套过程节点模型。
  • 工具成功只依赖 assistant 说“完成了”。
  • 完成后丢弃过程,只保留最终文本。

Dead patterns

  • 把任意组件树名称作为 Lime 标准协议名或 runtime 事实名。
  • 让模型直接生成任意组件树并拥有状态真相。

Lime Agent Workbench 是面向 Lime AgentRuntime 与 AgentUI 的治理优先标准。