Files
ai-agent-deep-dive/docs/12-workspace-and-isolation.md
2026-04-02 10:09:34 +00:00

1.5 KiB
Raw Permalink Blame History

12. 工作区与隔离策略规格

1. 目标

不同 agent 不能默认拥有相同的文件系统权限。产品必须允许根据角色与场景控制工作区隔离。

2. 隔离模式

Python 版建议至少定义:

2.1 shared workspace

主线程默认工作区,共享项目目录。

2.2 read-only workspace

用于探索、规划、验证等只读角色。

2.3 temp workspace

用于临时脚本、临时测试产物。

2.4 worktree workspace

用于隔离修改型子任务,避免污染主分支。

2.5 remote workspace

用于远程执行环境(第一版可不做)。

3. 为什么隔离必须存在

没有隔离会导致:

  • 子任务互相污染
  • 验证角色破坏项目
  • fork 实验影响主线程
  • 风险动作边界模糊

4. 角色与隔离建议

  • Explore Agent -> read-only
  • Plan Agent -> read-only
  • Verification Agent -> read-only + temp writable
  • General Agent -> shared 或 worktree
  • 高风险实现任务 -> worktree

5. 路径翻译需求

如果子任务运行在 worktree 中,而继承的上下文引用的是父工作区路径,系统需要能做路径翻译或重新读取。

6. 清理需求

隔离工作区结束后必须支持:

  • 清理临时文件
  • 清理临时目录
  • 清理 worktree如适用
  • 清理孤儿进程

7. 验收标准

  1. 只读角色不能修改项目文件
  2. 验证角色只能在 temp 目录写测试脚本
  3. worktree 任务不污染主项目目录
  4. 任务结束后能清理隔离资源