Tide Pool / A2UI
Tide Pool 是智能体驱动的可视化工作区,Triggerfish 在其中渲染交互式内容:仪表板、图表、表单、代码预览和富媒体。与聊天的线性对话不同,Tide Pool 是智能体控制的画布。
什么是 A2UI?
A2UI(Agent-to-UI)是驱动 Tide Pool 的协议。它定义了智能体如何实时向已连接的客户端推送可视内容和更新。智能体决定显示什么;客户端渲染它。
Tide Pool 工具
智能体通过这些工具与 Tide Pool 交互:
| 工具 | 描述 | 用途 |
|---|---|---|
tidepool_render | 在工作区中渲染组件树 | 仪表板、表单、可视化、富内容 |
tidepool_update | 按 ID 更新单个组件的属性 | 无需替换整个视图的增量更新 |
tidepool_clear | 清除工作区,移除所有组件 | 会话转换、重新开始 |
用例
Tide Pool 设计用于仅聊天不够的场景:
- 仪表板 —— 智能体构建显示已连接集成指标的实时仪表板。
- 数据可视化 —— 从查询结果渲染的图表和图形。
- 表单和输入 —— 用于结构化数据收集的交互式表单。
- 代码预览 —— 带实时执行结果的语法高亮代码。
- 富媒体 —— 图像、地图和嵌入内容。
安全集成
Tide Pool 内容与任何其他输出一样受相同的安全执行约束:
- PRE_OUTPUT hook —— 所有推送到 Tide Pool 的内容在渲染前通过 PRE_OUTPUT 执行 hook。违反输出策略的分类数据被阻止。
- 会话 taint —— 渲染内容继承会话的 taint 级别。
- JavaScript 沙箱 —— 通过
eval执行的 JavaScript 在 Tide Pool 上下文中沙箱化。它无法访问主机系统、网络或文件系统。
状态指示器
Tidepool 网页界面包括实时状态指示器:
上下文长度条
显示上下文窗口使用情况的样式化进度条——LLM 的上下文窗口已消耗了多少。
MCP 服务器状态
显示已配置 MCP 服务器的连接状态(例如"MCP 3/3")。颜色编码:全部连接为绿色,部分为黄色,无连接为红色。
安全密钥输入
当智能体需要你输入密钥时(通过 secret_save 工具),Tidepool 显示安全输入弹窗。输入的值直接进入钥匙串——它永远不会通过聊天发送或在对话历史中可见。
将 Tide Pool 视为智能体的白板。聊天是你与智能体对话的方式,Tide Pool 是智能体向你展示东西的地方。 :::
