Skip to Content
Tares

How do I require green CI before Claude Code merges changes to a Go microservice?

Tares runs a software factory for Claude Code in which a builder merges its pull request only after the reviewer passes it and CI is green. You choose this when you bring up the crew, by answering that it merges on its own after review and green CI. Tares reads the pull request, CI and merge state through its own GitHub access, so the setup is the same for a Go microservice repo as for any other.

How it works

The software factory for Claude Code is a crew of Claude Code sessions on your machine: an orchestrator, a reviewer and builders. Tares holds the plan, the tickets, every review and your answers.

  • Builders take a ticket, work on their own branch and open a pull request with your gh login. A builder merges once the reviewer passes the pull request and CI is green.
  • The reviewer reviews every 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, using its own access to your repos. That access is separate from your gh login.
  • Merge policy is one of the settings crew up asks for. The recommended answer is that the crew merges on its own after review and green CI. The other answer makes the crew wait for your yes.

A single project can also wait for your yes before every merge, even when the rest of the crew merges on its own. That suits a service you want to watch closely.

Set it up

Follow these steps in order. They are the same for your Go microservice as for any repo the crew works in. The Get started page has the full walkthrough.

  1. Check that Claude Code is signed in on a plan that allows background sessions. Sign in to gh with write access to the repos the crew works in, and make sure git, jq and curl are installed.

    gh auth login
  2. Install the CLI.

    uv tool install tares # or: brew install glassflow/tap/tares
  3. On a local Tares, start it, then start the MCP endpoint every crew session shares in a second terminal.

    tares up tares mcp --transport streamable-http

    On Tares Cloud, run tares login instead and pick your workspace in the browser. There is no MCP endpoint to start.

    tares login
  4. Give Tares its own access to GitHub, so it can read the pull request, CI and merge state of every ticket. On Tares Cloud, choose Connect GitHub in your workspace settings and pick the repos, including your Go microservice. On a local Tares, add a GitHub token or App under Settings > GitHub.

  5. Bring up the crew.

    tares factory crew up

    The first run asks how far the crew may go. Answer that it merges on its own after review and green CI, which is the recommended choice. If you want a human gate as well, choose to wait for your yes instead. The answers are kept on Tares. You can also have a second model check every commit.

  6. In the repo of your Go microservice, plan the work. The crew builds the tickets into pull requests.

    tares factory spec "what you want to build"
  7. Run tares factory doctor at any point to check everything the crew needs.

What you get

  • A merge rule that is easy to state: reviewer passed and CI green, then the builder merges.
  • A review verdict on every pull request, posted by the reviewer to the same fixed bar each time.
  • Tickets that end as merged on main, with the plan, reviews and your answers kept on Tares. A crew that restarts carries on where it stopped.
  • The Crew page of the Tares console, which shows the pull requests waiting for review and each project’s builders. Locally it is at http://127.0.0.1:8787/crew.
  • A stop switch. tares factory crew halt stops merges, pushes and new sessions until tares factory crew resume.
  • Questions that need you arrive in the orchestrator’s session, one at a time, each with a recommendation. Open it with tares factory crew attach orchestrator.

When something else fits

  • If you want to approve every merge yourself, answer that the crew waits for your yes, or set that for one project only.
  • If you are working on one service on your own, tares factory session lets you work in your own Claude Code session, still on Tares, instead of running a crew.
  • If the repo is not reachable through your GitHub token or App, fix that access first, because Tares needs its own access to read pull request, CI and merge state.

Still stuck? Get help

Last updated on