banyan

Parallel features.
One stack. One brain.

banyan compresses the whole multi-repo dev loop into a single CLI. One feature spans every repo, gets its own Claude agent, its own ports, its own docker stack — so you can run 10 AI agents in parallel without ever stepping on yourself.

Try it

See it in action

Click through a real session. Customize the names and prompt as you go, or hit Auto-play and watch the whole flow.

~/Documents/Dev/mobile — banyan
phase 1/4 · Spawn 4 features (one with a prompt)
# waiting for input — set up your features below and hit Start
4 features to ship in parallel — names editable
Pick the one feature you want to follow through start → merge → cleanup. It receives the prompt below at spawn (via bn wt -p) and is the one we'll run, merge, and clean up in the next phases — the other three spawn in parallel but stay quiet.
Next: Spawn 4 features (one with a prompt)
Features

Everything you need.
Nothing you don't.

Banyan absorbs the plumbing so you can focus on shipping features in parallel.

One feature, every repo

bn wt <name> creates a worktree in front, back, mobile — all on the same branch. Same name everywhere. Zero context switching.

Per-feature Claude agent

Each worktree gets its own Claude with --add-dir on every repo. A project-wide orchestrator predicts conflicts and drives merges.

Dynamic ports + DBs

10 features on the same machine, each with isolated ports and its own docker stack. Cross-repo env wiring resolves at spawn time.

Auto-managed .env

copyOnWorktree seeds gitignored files. loadEnvFiles injects them as actual env vars — Spring Boot, Django, plain Node, all see your secrets.

Web dashboard + remote

Pipeline view per feature, plan review, agent reports, live conversation stream. bn serve --remote tunnels via Cloudflare with a QR code.

One-command teardown

bn cleanup stops tests, removes worktrees, deletes branches, drops compose volumes, clears state. Nothing leaks between features.

Auto branch naming

bn wt -p "<prompt>" turns your prompt into a clean kebab-case branch name via OpenRouter, then sets the prompt as the agent's first message. Free models work fine.

Scriptable lifecycle hooks

Shell scripts at every lifecycle step (worktree_created, pre/post_merge, stack_up/down, …) with the right env vars injected. Three lookup levels so teams ship hooks alongside code.

How it works

Four commands. Whole flow.

From context switch to clean teardown in four commands. Multiply by N for parallel work.

01

Spin up the feature

Worktrees in every repo. Same branch. One agent with --add-dir everywhere.

$ bn wt feature
02

Run it isolated

Each repo gets a dynamically-allocated port and its own docker stack.

$ bn start feature
03

Ship it

Rebase, push, MR/PR, auto-resolve cross-feature conflicts.

$ bn merge feature
04

Tear it down

Stop processes, remove worktrees, delete branches, drop compose volumes.

$ bn cleanup feature
Roadmap

What's coming next

v1.0.0 nails the multi-repo, multi-agent workflow on Claude Code. Here's what we're working on after that.

planned

Agents beyond Claude Code

Banyan currently launches Claude Code per feature. The agent layer will become pluggable — bring your own (Cursor agents, Codex CLI, Gemini CLI, Aider) and use banyan as the multi-repo + worktree orchestration backbone for whichever stack you prefer.

planned

Monorepo projects

Today a banyan project is N independent git repos. Monorepo support is in design: declare a single root, point at sub-packages, get the same per-feature isolation (one branch, one set of worktrees, per-package run commands) without the multi-repo overhead.

Ready to ship parallel features?

Open source, MIT licensed. Runs on any macOS or Linux machine with tmux, git, and Claude Code installed — bn doctor tells you exactly what's missing.