Skip to content

UI 消费方

UI 消费方 消费 RuntimeEvent + ReadModel,输出用户可见 投影。它不能拥有 runtime truth。

输入

text
RuntimeEvent stream
ThreadReadModel
TaskSnapshot
Artifact summaries
Evidence summaries
Diagnostics

推荐依赖

用途
Projection reducer / selectors@limecloud/agent-runtime-projection
React surfaces / hooks@limecloud/agent-runtime-ui
共享类型@limecloud/agent-ui-contracts

输出表面

表面来源事实
UIMessagePartstext.deltatext.finalmessages.snapshotreasoning.summary、artifact/evidence refs。
ProcessTimelinerun.statusreasoning.*tool.*action.*artifact.changedevidence.changed
ExecutionGraphtask.*subagent.*job.*attempt.*、dependency / handoff facts。
ToolGrouptool.startedtool.argstool.progresstool.resulttool.failed
ActionRequiredaction.requiredpermission.*action.resolved
TaskCapsuletask.*queue.changedsubagent.*job.*
ArtifactRefartifact.changed 与 artifact service preview。
EvidenceRefevidence.changed 与 evidence/replay/review summary。
RuntimeStatusturn.*run.statusrouting.*limit.*runtime.warning/error

Reducer 规则

  1. sequence 保留 active run order。
  2. text、reasoning、tool、action、artifact、evidence、diagnostics 分开存。
  3. final event 负责 reconciliation,不能重复追加文本。
  4. owner=ui_投影 只允许保存 collapse、focus、selected tab、draft。
  5. 缺少 ids 时标记 degraded,不伪造 evidence 或 completion。

React surface 分层

Surface输入写操作
ConversationUIMessagePartssubmit intent。
ProcessTimelinetimeline entriesnone;只触发 focus/filter。
ExecutionGraphgraph nodes/edgesnone;retry/cancel 走 runtime client。
ToolGroupToolCallViewretry、open output ref。
ActionRequiredActionRequiredViewrespondAction。
Artifact/Evidence lanerefsopen/export/review owner API。
DiagnosticsDiagnosticViewcopy/export diagnostics。

React 组件只接收 projection state 和 command callbacks,不直接订阅 runtime stream。

过程投影的要求

专业过程组件不是把日志缩进展示,也不是让模型生成任意组件树。它至少需要:

  • 稳定节点 id:turnIdstepIdtoolCallIdactionIdtaskId
  • 结构关系:parent/child、attempt、dependency、handoff。
  • 状态分类:running、waiting、blocked、failed、completed、stale。
  • 详情入口:tool output ref、artifact ref、evidence ref、diagnostics ref。
  • active/archived 两种密度,而不是永远展开所有节点。

不合格 UI

  • 用日志缩进生成过程表面。
  • 从最终回答中解析工具状态。
  • 本地保存 approval result,不调用 action owner。
  • 把 collapse/focus 写进 RuntimeEvent。
  • 在产品应用里 fork 一套 projection reducer。

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