Every Agent Needs a Box: 未来 Agent 架构的思考
3/10/2026

核心问题: 当 Agent 数量是人类的 10 倍、100 倍时,它们在哪里运行?用什么权限?访问什么数据?

近期,Box CEO Aaron Levie 在播客中提出了一个观点:“Every Agent Needs a Box”。这句话点出了 Agent 基础设施的核心挑战——每个 Agent 都需要独立的运行空间、身份边界和权限控制。

这不是在讨论某家公司的产品,而是在思考:当 AI Agent 成为主流计算范式时,我们需要怎样的架构设计?


🎯 为什么是现在?

几个信号同时出现:

  1. 企业采用跨越鸿沟 - PwC 调查显示 79% 企业已在生产环境运行 AI Agent
  2. 安全危机集中爆发 - MIT 研究发现主流 Agent 平台缺乏紧急停止机制
  3. 权限劫持漏洞 - 安全公司警告 Agent 可被劫持并继承全部访问权限

当 Agent 从”实验性工具”转向”流程所有者”,架构设计必须跟上。


📦 “Box”到底是什么?

这里的”Box”不是某个具体产品,而是一个概念模型

层面核心问题架构需求
物理隔离Agent 在哪里运行?独立沙盒/容器环境
身份边界Agent 是谁?独立于创建者的身份系统
权限控制Agent 能做什么?细粒度权限 + 审批流
数据空间Agent 访问什么数据?授权数据子集,非全量继承
审计追踪如何追溯 Agent 行为?完整行为日志

核心洞察: Agent 不应该简单继承人类用户的全部权限。


🔐 Easy Mode vs Hard Mode

当前 Agent 部署有两种模式:

Easy Mode(个人使用)

Agent = 你
- 使用你的 API Key
- 访问你的所有文件
- 继承你的全部权限
- 行为责任归你

适合个人场景,但无法企业化。

Hard Mode(企业级)

Agent ≠ 你
- 独立的 Agent Identity
- 只能访问授权的数据子集
- 权限可审计、可撤销
- 创建者承担连带责任

这才是企业需要的。


🏗️ 未来 Agent 架构参考设计

基于上述原则,一个生产级 Agent 系统应该包含以下层次:

┌─────────────────────────────────────────────────────────┐
│                    Client Layer                         │
│         (Web / Mobile / API / Messaging)                │
└────────────────────┬────────────────────────────────────┘

┌────────────────────▼────────────────────────────────────┐
│                  API Gateway                            │
│         (Auth + Rate Limit + Routing)                   │
└────────────────────┬────────────────────────────────────┘

┌────────────────────▼────────────────────────────────────┐
│              Agent Identity Layer                       │
│  ┌─────────────┐  ┌─────────────┐  ┌─────────────┐     │
│  │ User ID     │  │ Agent ID    │  │ Service ID  │     │
│  │ (OAuth/SSO) │  │ (JWT+Scope) │  │ (API Key)   │     │
│  └─────────────┘  └─────────────┘  └─────────────┘     │
└────────────────────┬────────────────────────────────────┘

┌────────────────────▼────────────────────────────────────┐
│              Agent Runtime                              │
│  ┌─────────────────────────────────────────────────┐   │
│  │           Agent Pool (Per-Agent Isolation)      │   │
│  │  ┌───────────┐  ┌───────────┐  ┌───────────┐   │   │
│  │  │ Agent A   │  │ Agent B   │  │ Agent C   │   │   │
│  │  │ [Box A]   │  │ [Box B]   │  │ [Box C]   │   │   │
│  │  │ - Workspace│ │ - Workspace│ │ - Workspace│   │   │
│  │  │ - Tools[] │  │ - Tools[] │  │ - Tools[] │   │   │
│  │  │ - Permissions││ - Permissions││ - Permissions││   │
│  │  └───────────┘  └───────────┘  └───────────┘   │   │
│  └─────────────────────────────────────────────────┘   │
└────────────────────┬────────────────────────────────────┘

┌────────────────────▼────────────────────────────────────┐
│              Governance Layer                           │
│  ┌─────────────────────────────────────────────────┐   │
│  │  Level 1: Auto-Execute (查询/读取)              │   │
│  │  Level 2: User Approval (写入/删除/外发)        │   │
│  │  Level 3: Admin Approval (资金/权限/配置)       │   │
│  └─────────────────────────────────────────────────┘   │
└────────────────────┬────────────────────────────────────┘

┌────────────────────▼────────────────────────────────────┐
│              Data Access Layer                          │
│  ┌─────────────┐  ┌─────────────┐  ┌─────────────┐     │
│  │User Data    │  │Agent Data   │  │Shared Data  │     │
│  │(Private)    │  │(Sandbox)    │  │(Approved)   │     │
│  └─────────────┘  └─────────────┘  └─────────────┘     │
└─────────────────────────────────────────────────────────┘

🆕 关键设计决策

1. Agent 身份独立于用户

问题: 如果 Agent 只是继承用户权限,无法实现细粒度控制。

方案:

Agent Identity:
  id: agent-invoice-001
  name: "发票处理助手"
  creator: user-123
  scopes:
    - read:invoices
    - write:accounting_db
    - send:email (需审批)
  permissions:
    max_transaction: $1000
    allowed_domains: ["company.com"]
    data_access: ["invoices/", "accounting/"]
  audit:
    log_all_actions: true
    retention_days: 365

实现要点:

  • JWT Token 携带 Agent ID + Scopes
  • 每次工具调用验证权限
  • 行为日志独立于用户日志

2. 沙盒隔离

问题: Agent 需要独立工作空间,不能污染用户环境。

方案:

Agent Workspace:
├── workspace/          # 专属文件区
├── memory/             # 专属记忆/向量库
├── tools/              # 授权工具集
├── config.yaml         # 权限配置
└── audit.log           # 行为审计

实现要点:

  • 文件系统隔离(容器或 chroot)
  • 向量数据库按 Agent ID 分区
  • 会话历史独立存储

3. 数据访问控制

问题: Agent 不应访问用户的所有数据。

方案:

@tool(requires_data_access=["invoices/"])
def process_invoice(file_path: str):
    # 运行时检查 Agent 权限
    if not agent.has_permission("read:invoices"):
        raise PermissionDenied("缺少发票访问权限")
    
    # 检查文件是否在授权路径内
    if not file_path.startswith(agent.allowed_paths):
        raise PermissionDenied("文件超出授权范围")

4. 审批流程

问题: 高风险操作需要人工批准。

方案:

用户请求:"处理这 10 张发票"

Agent 解析:需要调用 process_invoice × 10

Governance 检查:10 笔交易,总额 $5000

Level 2 审批:发送确认消息(带金额明细)

用户点击"批准"

Agent 继续执行

审计日志记录完整决策链

🛡️ 安全设计:防御 Prompt Injection

安全公司警告:攻击者可劫持 Agent 并继承其全部权限。

防御矩阵:

攻击方式防御措施
Prompt Injection系统指令与用户输入物理隔离
权限提升运行时权限检查,不信任 Agent 自述
数据泄露输出过滤,敏感数据自动脱敏
工具滥用工具调用需要签名验证
身份冒充JWT + 双向认证

关键原则: 永远不要信任 Agent 的自述身份或权限声明,所有权限检查必须在运行时由基础设施层执行。


📊 架构对比

功能传统 SaaS未来 Agent Infra
身份管理用户账号用户 + Agent 双层身份
数据隔离租户级隔离Agent 级隔离
权限模型RBACRBAC + 动态审批
审计登录/操作日志完整决策链追溯
部署云端 SaaS云端 + 本地混合

🚀 实施路线图

Phase 1: 基础隔离(1-2 个月)

  • Agent 独立 workspace
  • 基础权限配置文件
  • 审计日志

Phase 2: 身份层(2-3 个月)

  • Agent JWT Token 系统
  • 运行时权限检查
  • 数据访问控制

Phase 3: 治理层(3-4 个月)

  • 三层审批系统
  • 审批 UI(Web/Mobile)
  • 审批记录入库

Phase 4: 企业级(4-6 个月)

  • 容器化隔离
  • 多租户支持
  • SSO 集成

💡 对开发者的建议

如果你正在构建或部署 AI Agent:

立即开始

  1. 使用独立 workspace - 不要让 Agent 直接操作用户文件
  2. 记录所有行为日志 - 为每个 Agent 建立审计追踪
  3. 最小权限原则 - 只授予完成工作必需的权限

避免的陷阱

  1. 不要让 Agent 继承用户全部权限
  2. 不要跳过审批流程(即使”只是测试”)
  3. 不要在生产环境使用 Easy Mode

评估标准

选择 Agent 平台时,问清楚:

  • Agent 如何隔离?
  • 权限如何控制?
  • 审计日志是否完整?
  • 是否支持自托管?

🔮 未来预测

基于当前趋势:

  1. 2026 Q2: 第一起大规模 Agent Prompt Injection 数据泄露事件
  2. 2026 Q3: 监管机构开始关注 Agent 身份和权限管理
  3. 2026 Q4: “Agent Box”成为企业采购 Agent 的标准要求
  4. 2027: Agent Infra 市场规模超过 $10B

核心判断: 安全合规的 Agent 基础设施不是可选项,是企业采用的前提条件。


📚 参考资料


结语

“Every Agent Needs a Box”不是一句口号,而是对未来的判断。

当 Agent 数量超越人类,当它们承担关键业务流程,当安全漏洞可能造成真实损失——我们需要认真思考:Agent 应该在哪里运行?用什么身份?访问什么数据?如何追溯行为?

这些问题没有标准答案,但每个构建和部署 Agent 的人都应该有自己的答案。

毕竟,未来不是等来的,是 build 出来的。

相关文章