A monorepo on demand
One workspace holds a worktree of every repo your feature touches, in one folder. Your agent works across the whole set at once, understanding all of them, as if it were a monorepo you never had to migrate to.
Multi-repo worktrees for AI agents
A workspace with a worktree of every repo your feature touches, so a single agent works across them all like a monorepo. Each workspace is isolated, so you can run a dozen in parallel.
Installation
grove installs itself. Paste this into Claude Code (or any AI CLI). It clones grove, then follows the guided setup baked into the repo, one question at a time.
Clone grove from https://github.com/shivgodhia/grove to ~/.zsh/grove. Then open its README.md, find the guided "Installation" prompt, and follow it exactly, walking me through setup and configuration one question at a time.
How it grows
Set up the group once. From then on, any branch is a single gv call, and everything else is already done.
Name groups of repos: fullstack = frontend + backend, db-backfill = backend + db-admin, everything = frontend + backend + db-admin, etc.
gv fullstack dark-mode: a worktree in every repo, deps installed, one agent that sees them all, in a fresh tmux session with your agent already running. Any repo fails, they all roll back.
What it does
One command sets up worktrees, deps, and tmux across every repo, so you can run a dozen agents at once without the mess.
One workspace holds a worktree of every repo your feature touches, in one folder. Your agent works across the whole set at once, understanding all of them, as if it were a monorepo you never had to migrate to.
Every workspace is its own private set of checkouts. Run a dozen agents in parallel and none of them share a directory or a branch. No stomping on each other, no stashing, no “which agent touched this file?”
.envrc, whatever the repo needs, done before you touch it.
gv for an fzf dashboard of every workspace, branch tree and PR status included.
But my agent already does worktrees
Claude Code and Cursor already give each agent its own worktree, but only within a single repo. A real feature rarely stays in one. The moment your change spans a frontend and a backend, you’re back to coordinating branches across separate clones by hand. That’s the part grove does.
❯ gv fullstack dark-mode
One workspace, a worktree of every repo the feature touches, and a single agent that sees the whole set, so nobody has to relay context between them. Still isolated, still one command.
Field guide
One verb, gv, does it all.
gt ls–styleIsolated workspaces across your repos, so your agents run in parallel without stepping on each other. grove is one Zsh file, MIT-licensed, and installs itself in a couple of minutes.