ActSpace Docs

工具与审批

理解工具的参数校验、权限分级、执行环境、预览和拒绝语义。

工具系统让模型能够读取文件、搜索代码、修改工作区、运行 Bash 和操作浏览器。ActSpace 把“模型想做什么”和“系统允许做什么”分成独立阶段。

一次工具调用的阶段

  1. 定义:模型只看到结构化名称、描述和参数 schema。
  2. 校验:Runtime 校验字段、类型、路径和调用约束。
  3. 权限判断:根据目标边界判断直接允许、询问或硬拒绝。
  4. 执行:由具体 executor 在明确环境中运行。
  5. 结果:产生结构化状态、preview 和给模型的 observation。

权限结果不是一回事

  • 允许执行:满足 allowlist 或已处于可接受的沙盒边界。
  • 需要审批:动作不可逆或需要离开默认沙盒,暂停等待用户选择。
  • 硬拒绝:目标越过不可接受边界,系统不会创建审批请求。
  • 执行失败:动作已经进入 executor,但进程或外部服务返回失败。
  • 未执行:用户拒绝、审批取消或执行环境初始化失败。

界面应明确区分这些状态,不能把“没有执行”显示成普通失败或完成。

Bash 与文件工具

普通文件删除使用结构化的 delete_file,这样可以展示准确目标并请求一次性批准。目录级删除仍由 Bash 处理,但按解析后的路径边界判断风险,而不是只看命令里是否出现 -rf

workspace 根目录、越界路径、glob 和 .git 本体属于硬拒绝目标;明确的 workspace 子目录递归删除可以进入不可逆审批。

工具预览

每种工具都应有匹配任务语义的 preview:

  • 文件编辑展示 additions、deletions 和 diff。
  • Bash 展示命令、工作目录、执行环境和增量输出。
  • Browser 展示目标与批量操作结果。
  • 审批展示风险原因和批准后会发生什么。

每个完成工具按自己的 toolCallId 立即更新,不需要等整轮全部工具结束。

后台任务

dev server 和 watcher 可以在超过前台阻塞时间后转为后台任务。后台任务有运行时长和单会话数量上限;相同工作目录与命令会复用已有任务,避免重复堆积。

继续阅读Browser Use了解浏览器工具的 progressive disclosure 与会话授权。