返回文章列表

Agent 工具沙箱设计:把危险动作关进笼子里

说明 Agent 调用代码执行、文件操作和外部 API 时,为什么需要权限、目录、网络和时间限制。

当 Agent 能执行工具,尤其是代码、文件和网络工具时,沙箱就成了基础设施。OpenAI 和 Anthropic 的工具调用文档都把工具作为模型连接外部世界的机制,但工具执行边界必须由开发者控制。[sandbox-001][sandbox-002]

沙箱限制什么

至少要限制:

  • 可读写目录。
  • 网络访问范围。
  • 命令执行时间。
  • 环境变量暴露。
  • 外部 API 权限。
  • 输出大小。

工具越强,沙箱越重要。不要让模型直接拿到无限制的系统能力。

概念策略:

{
  "tool": "run_script",
  "filesystem": "workspace-only",
  "network": "disabled",
  "timeout_ms": 10000,
  "env": "allowlist"
}

权限要按任务临时发放

不要给所有工具默认最高权限。读文件、写文件、访问网络、调用生产 API 应分开授权,并记录审批来源。

综合工具调用和安全资料可以推断:Agent 沙箱是把模型能力产品化的前提,它让系统可以尝试自动化,同时不把整个运行环境交出去。

参考资料

  1. [sandbox-001] OpenAI Developers, “Tools”, https://developers.openai.com/api/docs/guides/tools
  2. [sandbox-002] Anthropic Docs, “Tool use overview”, https://docs.anthropic.com/en/docs/agents-and-tools/tool-use/overview