Symphony
Symphony is the control plane for parallel AI software development: plan once, execute many approaches, compare results, and merge the winner It turns product intent into parallel implementation runs you can compare and
Core trick
Forks isolated git worktrees, runs a Codex agent per strategy, executes the same test harness, and compares traces and diffs.
Description
Symphony is the control plane for parallel AI software development: plan once, execute many approaches, compare results, and merge the winner
It turns product intent into parallel implementation runs you can compare and control. Instead of coding one approach at a time, Symphony forks multiple isolated Git worktrees (“worlds”), runs Codex agents on different strategies, executes the same test/playback harness on each, captures traces and diffs, and lets a human pick the best outcome to merge.
Problem It Solves
Teams still build software in a serial loop: pick one approach, implement, test, backtrack, repeat. That makes experimentation slow, risky, and hard to trust. Planning artifacts are also disconnected from execution, and multi-agent workflows are often opaque.
README excerpt
# Parallel Worlds
Parallel Worlds is a local tool for exploring multiple implementation branches ("worlds") for the same intent, then comparing and selecting one.
This README is web-first and focused on clean startup.
## What you can do in web mode
- Create branchpoints and worlds
- Run Codex + test/runner workflows across worlds
- Run render/playback workflows across worlds
- Compare world outcomes and logs
- Select a winning world
- Refork from an existing world
- Use prompt-driven autopilot (`kickoff` + optional `run` + optional `play`)
## Prerequisites
- Python 3.9+
- Git (repo must already have at least one commit on your base branch, usually `main`)
- Node.js + npm
## Required files in repo root
These must exist in the same repo root where you run commands:
- `pw.py`
- `pw_web.py`
- `parallel_worlds/`
- `parallel_worlds.json`
- `webapp/`
## 1) Configure once
```bash
python3 pw.py init -c parallel_worlds.json
```
Then edit `parallel_worlds.json` for your repo:
- `runner.command` for tests/checks
- `codex.enabled` and `codex.command` if using Codex stage
- `render.command` if using `play`
- `execution.workspace_mode: "worktree"` for true parallel branch execution
- `execution.max_parallel_worlds` to cap concurrent branch runs
## 2) Start web app (recommended dev mode)
Terminal 1 (API backend):
```bash
python3 pw.py web --host 127.0.0.1 --port 8787
```
Terminal 2 (React frontend):
```bash
npm --prefix webapp install
npm --prefix webapp run dev
```
Open: