Skip to Content
Tares

How do I require green CI before Claude Code merges changes to a documentation website?

Tares runs a software factory for Claude Code in which each builder merges its pull request once the reviewer passes it and CI is green. You choose this merge behavior the first time you run tares factory crew up, and you can point the crew at your documentation website’s repo like any other project. Tares reads the pull request, CI and merge state of every ticket through its own GitHub access, so you see where each change stands.

How it works

The software factory for Claude Code is a crew of Claude Code sessions that run in the background on your machine. For a documentation website, the roles work like this:

  • Builders start one per milestone and repo of a project. Each takes a ticket, works on its own branch and opens a pull request. It merges that pull request once the reviewer passes it and CI is green.
  • The reviewer reviews every pull request to a fixed bar and posts its verdict on the pull request.
  • The orchestrator hands out work, answers the others and brings you what needs you. It is the only session you talk to.
  • Tares holds the plan, the tickets and their stages, every review, the assumptions the crew made and your answers. It reads the pull request, CI and merge state of every ticket with its own GitHub access, separate from the gh login the builders use to push and open pull requests.

The first run of tares factory crew up asks how far the crew may go. One question is whether it merges on its own after review and green CI (recommended) or waits for your yes. The answers are kept on Tares. A single project can also wait for your yes before every merge, even when the rest of the crew merges on its own.

The crew works on all projects at the same time, so a documentation website can sit next to your other repos. While one project waits for you, the others carry on.

Set it up

  1. Check the prerequisites. Claude Code must be signed in. gh must be signed in with write access to the documentation website’s repo. git, jq and curl must be installed.

    gh auth login
  2. Install the CLI.

    uv tool install tares # or: brew install glassflow/tap/tares
  3. Start Tares locally and leave it running. The console is at http://127.0.0.1:8787.

    tares up
  4. In a second terminal, start the MCP endpoint every crew session shares. On a local Tares the crew reaches Tares only through it. On Tares Cloud, sign in with tares login instead and there is no endpoint to start.

    tares mcp --transport streamable-http
  5. Give Tares access to GitHub, so it can read pull request, CI and merge state itself. On a local Tares, add a GitHub token or App under Settings > GitHub. On Tares Cloud, choose Connect GitHub in your workspace settings and pick the documentation website’s repo. The Get started guide covers both paths.

  6. Bring up the crew. In the first-run questions, choose that the crew merges on its own after review and green CI, or that it waits for your yes.

    tares factory crew up
  7. Plan the work from the repo of your documentation website, or from a folder that holds its repos. The interview ends by asking whether to hand the project to the crew. Say yes.

    tares factory spec "what you want to build"
  8. Check the setup, and answer the crew’s questions in the orchestrator’s session.

    tares factory doctor tares factory crew attach orchestrator

If you need to stop merges at any point, run tares factory crew halt "<reason>". It stops merges, pushes and new sessions until you run tares factory crew resume.

What you get

  • Pull requests for your documentation website that the reviewer has checked against a fixed bar, with its verdict posted on each pull request.
  • Builders that merge their own pull requests once the reviewer passes them and CI is green, so you do not click merge on every change.
  • The option to wait for your yes before every merge on a project, or on the whole crew, if you want a human gate as well.
  • A Crew page in the Tares console that shows each project’s progress, its builders and the pull requests waiting for review. Locally it is at http://127.0.0.1:8787/crew.
  • A record on Tares of the plan, tickets, reviews, assumptions and your answers. If the crew restarts, it carries on where it stopped.

When something else fits

  • If you want to work on one project in your own Claude Code session instead of with a crew, use tares factory session. The same Tares record applies.
  • If a release or deploy step matters for your site, add the releaser when you set up the crew. Without it, tickets end at merged on main.
  • The software factory is built for solo developers and very small teams who already use Claude Code. It runs on one machine, on your own Claude Code login and your own GitHub repos.

Still stuck? Get help

Last updated on