跳转至

Tool Contracts

状态

工具契约以 dojoagents/tools/registry.py::ToolSpecdojoagents/agent/models.py::ToolResult 为准。

ToolSpec

字段 说明
name 工具名
description 给模型看的能力说明
parameters JSON schema 参数
handler async handler
sandbox_policy sandbox 策略名

ToolResult

字段 说明
call_id 工具调用 ID
name 工具名
ok 是否成功
content 面向模型和用户的文本
error 错误文本
latency_ms 执行耗时
truncated 内容是否截断
data 结构化数据
viz_blocks Agent visualization blocks
artifacts 产物引用
resource_changes 资源变更通知
metadata 额外元数据

Handler 返回值

handler 应返回 dict[str, Any] 或字符串;异常由 ToolExecutor.execute_one() 捕获、记录并转成失败 ToolResult

资源刷新

前端应优先根据 resource_changes 刷新缓存,而不是按工具名猜测副作用。