How do I write a spec a Claude Code crew can build dependency upgrades from in a Node/TypeScript app?
Tares writes the spec for you through the /tares:spec interview, so you do not draft a document by hand. Run tares factory spec in your Node/TypeScript repo and Claude Code asks you one question at a time, has a second model attack the plan, and writes the result into a Tares project. That project holds the spec, milestones with acceptance checks, tickets with a working doc each, and an AGENTS.md, ready to hand to the crew.
How it works
tares factory spec opens Claude Code with /tares:spec. The interview runs in four parts:
- One question at a time. You describe the dependency upgrades you want, and Claude Code asks follow-ups in turn. You never face a long form.
- A second model attacks the plan. Before anything is written, a second model challenges the plan so weak points surface while they are cheap to fix.
- The plan lands in a Tares project. You get the spec, milestones with acceptance checks, tickets with a working doc each, and an AGENTS.md.
- A hand-over question. The interview ends by asking whether to give the project to the crew. If you say yes, the orchestrator picks it up.
The crew is an orchestrator, a reviewer and builders, all Claude Code sessions on your machine. Builders are started one per milestone and repo. Each takes a ticket, works on its own branch and opens a pull request. The reviewer reviews every pull request, and a builder merges once the reviewer passes it and CI is green. Tares keeps the plan, tickets, reviews and your answers, so a crew that restarts carries on where it stopped.
For a Node/TypeScript app, tares factory doctor also checks language servers. It finds TypeScript through tsconfig.json and JavaScript through package.json. When Claude Code has no server for them, doctor prints what to run, and builders and the reviewer search less without one.
Set it up
-
Check that Claude Code is signed in,
ghis signed in with write access to the repo (gh auth login), andgit,jqandcurlare installed. Give Tares access to GitHub under Settings > GitHub on a local Tares, or with Connect GitHub on Tares Cloud. See Get started for the full setup. -
Install the CLI and start Tares and the MCP endpoint every crew session shares. On Tares Cloud, run
tares logininstead oftares upandtares mcp.uv tool install tares # or: brew install glassflow/tap/tares tares up tares mcp --transport streamable-http -
In a third terminal, bring up the crew. The first run asks how far the crew may go: whether it merges on its own after review and green CI or waits for your yes, whether it releases, whether a second model checks every commit, and how many builders run at once. Then run
tares factory doctorto confirm the TypeScript and JavaScript language servers are in place.tares factory crew up -
Change into the Node/TypeScript repo, or a folder that holds its repos, and start the interview. Replace the quoted text with what you want built, such as upgrading the app’s dependencies.
tares factory spec "what you want to build" -
Answer each question as it comes, in plain words. If you want the tickets in GitHub Issues, say so during the interview and name the repo. Claude Code then creates the issues with
ghand links them. -
Read what the interview wrote: the spec, the milestones and their acceptance checks, the tickets and the AGENTS.md. When the interview asks whether to hand the project to the crew, say yes.
-
Open the orchestrator to answer the crew’s questions. Each arrives one at a time with a recommendation.
tares factory crew attach orchestrator
What you get
- A Tares project for your dependency upgrades that holds the spec, milestones with acceptance checks, tickets with a working doc each, and an AGENTS.md.
- A plan that a second model has already attacked, so you review a challenged plan instead of a first draft.
- Pull requests merged on main, built by builders and held to a fixed bar by the reviewer. Nothing merges until the reviewer passes it and CI is green. You can also have a project wait for your yes before every merge.
- One place to answer questions. The orchestrator is the only session you talk to, and the Crew page in the Tares console shows each project’s progress, builders and pull requests waiting for review.
- A record that stays on Tares: the plan, tickets and their stages, every review, the assumptions the crew made and the questions it asked you.
When something else fits
- If the upgrade is small, use
tares factory session "<idea>". It plans a small project with a few questions and a short spec, then builds it in your own Claude Code session. If the plan turns out big, it offers the full spec and the hand-over to the crew. - If you want to work on a project you already planned, use
tares factory session <project>and work the ready tickets yourself instead of handing them to the crew. - If a project has no repo that Claude Code can work in with your
ghlogin, the crew has nothing to build on. Fix access first, usingtares factory doctorto see what is missing.
Related
- Build a software factory with Claude Code
- How do I write a spec a Claude Code crew can build dependency upgrades from in a Go microservice?
- How do I write a spec a Claude Code crew can build bug fixes from in a monorepo?
- How do I write a spec a Claude Code crew can build bug fixes from in a Python backend?
Still stuck? Get help