06-sandbox-autonomy.md
1.8 KB
6. Agent 沙盒自治
v1.1 新增 — 每个 Agent 在沙盒内拥有完全自治能力,框架只做隔离,不干预内部实现。
6.1 Workspace 目录
data/agents/{agent-id}/
├── define/ # 框架管理: Agent 定义文件
│ ├── AGENTS.md
│ ├── SOUL.md
│ └── TOOLS.md
├── memory/ # 框架管理: 记忆系统
├── logs/ # 框架管理: 日志
├── config.json # 框架管理: cron/api/gateway 配置
├── skills/ # 框架管理: Skill 定义
│
└── workspace/ # Agent 自治区域
├── code/ # Agent 自主编写的代码(爬虫、处理脚本等)
├── data/ # Agent 自主创建的数据(SQLite、JSON 等)
├── assets/ # Agent 自主管理的资产(文件、图片、视频等)
└── .env # Agent 自己的环境变量
6.2 沙盒能力与边界
class SandboxManager {
async createSandbox(agentId) {
return {
cwd: `data/agents/${agentId}/workspace`,
// ACP 进程可访问的路径范围
allowedPaths: [
`data/agents/${agentId}/`, // 自己的全部数据
],
// 从 config.json 注入 API keys 等
env: await this.loadAgentEnv(agentId),
// 资源限制
limits: {
maxMemoryMB: 512,
maxCpuPercent: 25,
maxDiskMB: 1024,
maxProcesses: 5,
},
};
}
}
6.3 关键原则
workspace/是 Agent 的 自治领地,框架不干预- Claude Code ACP 内核天然具备写代码、运行代码、读写文件的能力
- Agent 在沙盒内自主创建爬虫、数据库、数据处理脚本
- 框架只负责 进程级隔离 + 文件系统隔离 + 资源限制