A2UI v0.8 统一技能
概览
提供 A2UI v0.8 的端到端规范与实操流程:UI 生成(surfaceUpdate/dataModelUpdate/beginRendering/deleteSurface)与客户端事件回传(action → userAction → A2A)。
工作流(必须遵循)
- •确认 Catalog 与 surfaceId:默认标准 Catalog,所有组件 id 唯一。
- •设计组件图:扁平组件列表 + children/child 组装树。
- •写入数据模型:dataModelUpdate 填充 ValueMap,并用 path 绑定。
- •触发渲染:发送 beginRendering 指定 root。
- •交互回传:组件 action.context 绑定数据,客户端解析为 userAction。
- •增量更新:结构变更 surfaceUpdate,数据变更 dataModelUpdate。
生成侧规则
- •每条消息只能有一个顶级键:beginRendering / surfaceUpdate / dataModelUpdate / deleteSurface。
- •surfaceUpdate.components 中 component 只能有一个组件类型键。
- •children 使用 explicitList 或 template(template 必须含 componentId 与 dataBinding)。
- •dataModelUpdate.contents 只使用 ValueMap(valueString/valueNumber/valueBoolean/valueMap)。
- •BoundValue 的 literal* 与 path 二选一;相对 path 以 dataContextPath 解析。
客户端事件规则
- •userAction 必填:name、surfaceId、sourceComponentId、timestamp。
- •action.context 必须解析成最终值(不可保留 path)。
- •发送 DataPart 时 mimeType 必须与服务端一致,规范为 application/json+a2ui。
- •每次 A2A 消息都携带 a2uiClientCapabilities(supportedCatalogIds)。
兼容性提示
- •TextField 字段命名在 schema 与 renderer 存在差异:schema 常用 textFieldType,Lit v0.8 类型用 type。接入时必须做字段对齐或映射。
- •Modal 的 entryPointChild 会被渲染器赋 slot="entry",不要复用 slot 名称。
参考资料(按需加载)
- •协议与数据模型:
references/protocol-v0-8.md - •标准组件清单:
references/standard-catalog-v0-8.md - •Schema 定位:
references/schemas-v0-8.md - •JSONL 模板示例:
references/examples-jsonl-v0-8.md - •片段库:
references/snippets-v0-8.md - •客户端事件解析:
references/client-events-v0-8.md - •A2A 扩展与能力协商:
references/a2a-extension-v0-8.md - •端到端流程:
references/sample-client-flow.md - •端到端请求模板:
usage.md