Can a crew of Claude Code sessions handle framework migrations in a monorepo?
Yes, Tares runs a crew of Claude Code sessions that can take a framework migration in a monorepo from plan to merged pull requests. You plan the migration as milestones and tickets, the orchestrator starts one builder per milestone and repo, and every pull request has to pass the reviewer and green CI before it merges. Tares keeps the plan and the record, so a crew that restarts carries on where it stopped.
How it works
You hand the crew a project, and the repo you plan in decides how the work is split.
- The plan.
tares factory specinterviews you one question at a time, has a second model attack the plan, and writes a Tares project: the spec, milestones with acceptance checks, tickets with a working doc each, and an AGENTS.md. Run it in the repo the project builds on, or in a folder that holds its repos. For a migration, put the steps in as milestones so each one has its own acceptance checks. - Builder assignment. The orchestrator starts builders, one per milestone and repo of the project, up to the number of builders you allow. In a monorepo that is one repo, so builders divide the work by milestone. If the migration spans several repos, each repo gets its own builder for each milestone. While one project waits for you, the others carry on.
- Each builder’s loop. A builder takes a ticket, works on its own branch, opens a pull request, and merges it once the reviewer passes it and CI is green.
- The gate on every pull request. The reviewer reviews each pull request to a fixed bar and posts its verdict on the pull request. Tares reads the pull request, CI and merge state of every ticket itself. Nothing merges until the reviewer has passed it and CI is green. If you want a human check on one project, it can wait for your yes before every merge while the rest of the crew merges on its own.
- Language servers. Builders and the reviewer search less well without a language server.
tares factory doctorreads each handed-over repo’s languages from its manifests, at the repo root or one folder down, and says whether Claude Code has a server for each. In a monorepo with packages one folder down, those manifests are found too. Python, TypeScript, JavaScript, Go and Rust are covered.
Set it up
- Check that Claude Code is signed in on a plan that allows background sessions, that
ghis signed in with write access to the monorepo, and thatgit,jqandcurlare installed. - Install the CLI and start Tares locally. On Tares Cloud, run
tares logininstead and pick your workspace in the browser. - On a local Tares, start the MCP endpoint every crew session shares in a second terminal. The crew reaches Tares only through it.
- Give Tares access to GitHub so it can read pull request, CI and merge state: add a token or App under Settings > GitHub on a local Tares, or choose Connect GitHub on Tares Cloud.
- Bring up the crew. The first run asks how far the crew may go: merge on its own after review and green CI or wait for your yes, whether it releases, how many builders run at once, and anything you always allow.
- Plan the migration from inside the monorepo, then say yes when asked whether to hand the project to the crew.
uv tool install tares # or: brew install glassflow/tap/tares
tares up
tares mcp --transport streamable-http
tares factory crew up
tares factory spec "what you want to build"- Answer the crew’s questions in the orchestrator’s session, and check the setup at any point.
tares factory crew attach orchestrator
tares factory doctorThe Get started page has the full walkthrough, including keeping the tickets in Linear or GitHub Issues instead of Tares.
What you get
- Migration work split into milestones, with builders assigned per milestone and repo, and a cap you set on how many run at once.
- A pull request for each ticket, reviewed to a fixed bar, with the verdict posted on the pull request.
- Merges only after the reviewer passes and CI is green.
- A written record on Tares of the plan, tickets and their stages, every review, the assumptions the crew made and your answers, so you can check the crew’s own choices at the end of each milestone.
- One place to talk to the crew. Questions from every project reach you in the orchestrator, one at a time, each with a recommendation, and the Crew page shows each project’s progress and builders.
- A crew that picks up where it stopped after a restart, because the record stays on Tares.
When something else fits
- For a small change,
tares factory sessionlets you work on a project in your own Claude Code session, still on Tares, without bringing up a crew. - The crew runs on one machine, on your Claude Code login and your GitHub repos, so it suits solo developers and very small teams more than a large team sharing one crew.
Related
Last updated on