One worktree per agent
When the Supervisor spawns an agent, it creates a fresh git worktree on a new branch — zevyn/<role>/<id>. The agent gets a complete, independent checkout of your repo to work in.
Same repo, separate filesystems. What one agent edits, the others never see until it merges.