工具与工作面板¶
工具调用、子 Agent,以及执行过程中的截图、终端与文件视图。
工具调用¶
展示工具输入、输出、错误、进度和来源。

| API | ToolCall(part, onApproval) |
| AI Elements | Tool |
| 依赖模块 | ai-elements-ui |
| API 文档 | ToolCall |
用相同的 part id 更新输入、进度与输出。onDecision 可携带理由、编辑后的参数及记住决定;不提供回调时只读展示。
import androidx.compose.runtime.Composable
import dev.ai.elements.core.chat.ChatController
import dev.ai.elements.core.model.ToolPart
import dev.ai.elements.ui.chat.ToolCall
@Composable
fun ToolCallsExample(part: ToolPart, controller: ChatController) {
ToolCall(part, onDecision = { controller.respondToApproval(part.id, it) })
}
子 Agent¶
展示委派任务及其嵌套执行过程。

| API | ToolPartView(part) |
| 依赖模块 | ai-elements-ui |
| API 文档 | ToolPartView |
在上游设置 ToolKind.Delegation 和 subagent。ToolPartView 会选择委派视图并应用自定义 renderer;嵌套审批共用回调。
import androidx.compose.runtime.Composable
import dev.ai.elements.core.chat.ChatController
import dev.ai.elements.core.model.ToolPart
import dev.ai.elements.ui.chat.ToolPartView
@Composable
fun SubAgentsExample(part: ToolPart, controller: ChatController) {
ToolPartView(part, onToolDecision = controller::respondToApproval)
}
Agent 工作面板¶
按步骤查看截图、终端、差异与文件,支持时间线和回放。

| API | AgentComputerPanel(state, message), AgentComputerScaffold(state, messages, layout) |
| 依赖模块 | ai-elements-ui |
| API 文档 | AgentComputerPanel |
将面板状态与页面一起保存。Auto 按容器宽度选择侧栏或底部抽屉;已有自适应布局时可使用 Hosted。
import androidx.compose.material3.Text
import androidx.compose.runtime.Composable
import dev.ai.elements.core.model.Message
import dev.ai.elements.ui.chat.AgentComputerScaffold
import dev.ai.elements.ui.chat.rememberAgentComputerState
@Composable
fun AgentComputerExample(message: Message) {
val computer = rememberAgentComputerState()
AgentComputerScaffold(computer, listOf(message)) {
androidx.compose.material3.Button(onClick = { computer.open(message.id) }) { Text("Open computer") }
}
}
回复中的工作预览¶
在涉及电脑操作的回复下方自动展示工作预览。

| API | Conversation / Chat (automatic) |
| 依赖模块 | ai-elements-ui |
| API 文档 | Chat |
Chat 已包含预览卡和工作面板。工具分类、位置及文件内容应在上游设置;普通工具名称本身不构成 UI 语义。
import androidx.compose.runtime.Composable
import dev.ai.elements.core.chat.ChatController
import dev.ai.elements.ui.chat.Chat
执行步骤视图¶
按工具分类展示浏览器、终端或差异内容。

| API | StepView(step) |
| 依赖模块 | ai-elements-ui |
| API 文档 | StepView |
截图通过 AgentStep.files 传入。工具分类决定展示方式;请为视图提供有界布局区域。
import androidx.compose.runtime.Composable
import dev.ai.elements.core.model.ToolPart
import dev.ai.elements.ui.chat.AgentStep
import dev.ai.elements.ui.chat.StepView
Agent 信息卡¶
展示 Agent 的模型、指令、工具与输出结构。

| API | Agent(name, model, instructions, tools, outputSchema) |
| AI Elements | Agent |
| 依赖模块 | ai-elements-ui |
| API 文档 | Agent |
这是说明卡片,不是 Agent 运行时。数据应来自 backend 配置或远端 Agent Card。
import androidx.compose.runtime.Composable
import dev.ai.elements.ui.chat.Agent
import dev.ai.elements.ui.chat.AgentToolSpec