| name | parallel-work |
| version | 3.0.0 |
| description | Work on multiple stories at the same time. Creates isolated parallel streams (git worktrees) from the current branch, wires up local settings, and opens each in its own Claude Code session. Also shows stream status and cleans up finished streams. Pairs with /merge-up (publish a stream's work to the parent branch) and /merge-down (pull the parent's accumulated work into a stream). |
| trigger | manual |
| depends-on | [] |
| references | [] |
| disable-model-invocation | true |
| user-invocable | true |
| allowed-tools | Read, Glob, Grep, Bash, AskUserQuestion |
| argument-hint | [status|start [count]|cleanup] |
parallel-work
Manage parallel development streams. Each stream is an isolated copy of the
project (a git worktree) on its own branch, so multiple Claude Code sessions can
build different stories at the same time without touching each other's files.
When Parallel Work Makes Sense (and When It Doesn't)
Parallel work is opt-in, never required. The default workflow is one branch,
one story at a time — that keeps the user fully aware of every change.
Good fit:
- Stories are self-contained: no dependencies on each other, no shared hot files
- Each story is a complete outcome on its own (outcome over output)
- The user is comfortable reviewing several streams of change
Bad fit — advise sequential work instead:
- Stories depend on each other (one needs the other's code or schema)
- Stories touch the same files or the same module's core
- The stories are parts of one mechanism (they should be ONE story, not parallel streams)
The start command checks this before creating anything (see below). When in
doubt, recommend sequential: merging conflicting parallel work costs more than
it saves.
Commands
Status (default, or "status"/"list")
Run the status script:
bash "${CLAUDE_PLUGIN_ROOT:-.claude}/skills/parallel-work/scripts/worktree-status.sh"
Show all active streams with their branches, their parent (from
git config branch.<name>.exosuitParent), and ahead/behind counts vs the parent:
### Active Streams
| Path | Branch | Parent | Ahead/Behind parent |
|------|--------|--------|---------------------|
| [path] | [branch] | [parent or "-"] | [+N/-M] |
**Options:**
- `/parallel-work start` — create new parallel streams
- `/merge-up` (inside a stream) — publish its work to the parent
- `/merge-down` (inside a stream) — pull the parent's accumulated work in
- `/parallel-work cleanup` — remove finished streams
Start — Create Parallel Streams
If $ARGUMENTS contains "start", "create", a count, or story IDs: