Worktree per task
Give each branch (feature, code review, parallel AI agent) its own git worktree checkout so switching never means stashing, WIP commits, or losing unstaged context. That's why worktrees became the default isolation unit for running several agents at once.
The friction is that files outside git don't follow the worktree: .env secrets, node_modules, local config. The fix pattern is to declare them once (copy mutable files like env, symlink heavy immutable ones like node_modules) and have a tool apply them on create, with a sync command when the list changes. workmux does this through .workmux.yaml. sam-natale argues it's worth it "with no AI features" at all.
Related: agent-native-multiplexer, augment-over-replace.
Source: report