v1.2.0 — Parallel Orchestrator
What's new
Parallel execution via git worktrees
Add [parallel] to any epic header in TASKS.md to run its tasks concurrently:
## Epic 2 — Scanners [parallel]
- [ ] **E2-T1** Implement AppCacheScanner
- [ ] **E2-T2** Implement SystemCacheScanner
- [ ] **E2-T3** Implement LogsScannerThe orchestrator:
- Creates an isolated git worktree per task (
.ralph/worktrees/E2-T1/, etc.) - Runs all workers simultaneously via
ThreadPoolExecutor, streaming prefixed output ([E2-T1] ...) - Merges successful branches sequentially into the main tree
- Runs
VERIFY_STEPSonce on the merged state - Marks all passing tasks done; reverts and re-queues failed ones as sequential
New CLI flags
python ralph.py --no-parallel # force sequential (disable parallel)
python ralph.py --max-parallel 8 # allow up to 8 concurrent workers
Other changes
run_claude()now acceptscwdandoutput_prefixfor worker isolation- All state writes (
log_activity,log_progress,add_guardrail) are thread-safe show_status()displays[parallel]tag on parallel epic headerstemplates/.gitignoreupdated: adds.ralph/worktrees/and planning filestemplates/TASKS.mdupdated: includes[parallel]example with commentREADME.md: new Parallel Execution section + updated CLI referenceSKILL.mdStep 2:[parallel]syntax documented in format + rules
Upgrade
curl -O https://raw.githubusercontent.com/vansearch/ralphloop-implementation/main/ralph.pyOr re-run the skill in your project:
/ralphloop-implementation