How do I write a spec a Claude Code crew can build dependency upgrades from in a Go microservice?
Tares writes the spec with you. Run tares factory spec in your Go service’s repo and /tares:spec interviews you one question at a time, has a second model attack the plan, and writes a Tares project from it. The project holds the spec, milestones with acceptance checks, tickets with a working doc each, and an AGENTS.md. Say yes at the end and the crew of Claude Code sessions picks it up. See Get started for the full setup.
How it works
You do not write the spec by hand. /tares:spec runs as an interview inside Claude Code, and you describe the dependency upgrades you want in your own words.
- One question at a time. The interview asks a single question, you answer, and it moves on. Tares keeps your answers in your own words.
- A second model attacks the plan. Before anything is written, a second model challenges the plan so weak spots surface while changing them is still cheap.
- The plan lands in a Tares project. You get:
- the spec
- milestones, each with acceptance checks
- tickets, each with a working doc
- 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.
Once handed over, the orchestrator starts builders, one per milestone and repo. Each builder takes a ticket, works on its own branch and opens a pull request. The reviewer reviews every pull request to a fixed bar and posts its verdict on the pull request. A builder merges once the reviewer passes it and CI is green.
For a Go microservice, Claude Code searches by symbol through a language server. tares factory doctor finds Go repos by their go.mod and tells you whether Claude Code has a server for Go. tares factory crew up offers the same install and runs it only when you say yes.
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 service’s repo, and thatgit,jqandcurlare installed.gh auth login -
Install the CLI.
uv tool install tares # or: brew install glassflow/tap/tares -
On a local Tares, start it, then start the MCP endpoint every crew session shares in a second terminal. On Tares Cloud, run
tares loginand pick your workspace in the browser instead.tares up tares mcp --transport streamable-http -
Give Tares access to GitHub: Settings > GitHub on a local Tares, or Connect GitHub on Tares Cloud. Tares reads the pull request, CI and merge state of every ticket itself.
-
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. If the Go language server is missing, it offers to install it.
tares factory crew up -
In the Go service’s repo, plan the project. Replace the text in quotes with a sentence about the upgrades you want.
tares factory spec "what you want to build" -
Answer the interview. Say what the upgrades should cover and where the service’s repo lives. Pick where the tickets live: Tares holds them by default. To keep them in GitHub Issues, say so during
/tares:specand name the repo. To keep them in Linear, connect Linear in Settings > Linear, then click Use a Linear project on the project’s Tickets page. -
Say yes when asked whether to hand the project to the crew, then answer its questions in the orchestrator’s session.
tares factory crew attach orchestrator
Run tares factory doctor at any point to check everything the crew needs.
What you get
- A Tares project for your dependency upgrades with a 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. The reviewer holds every pull request to a fixed bar, and nothing merges until it passes and CI is green.
- Questions that reach you one at a time in the orchestrator’s session, each with a recommendation. Progress shows on the Crew page of the Tares console.
- A written record of every choice the crew made on its own, so you can check it at the end of each milestone instead of during every step.
- A crew that restarts carries on where it stopped, because Tares keeps the plan, tickets, reviews and your answers.
When something else fits
- If the upgrade is small, work on it in your own Claude Code session with
tares factory session. It asks a few questions, writes a short spec and a ticket list on Tares, and builds it there. If the plan turns out big, it offers the full spec and the hand-over to the crew instead. - If the work is on a planned project that the crew already holds,
tares factory sessionwith the project name asks whether to take it over. Say no and the crew keeps it.
Related
- Build a software factory with Claude Code
- 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?
- How do I write a spec a Claude Code crew can build bug fixes from in a Go microservice?
Still stuck? Get help