shipmill

The open-source AI software factory for GitHub. Agents triage your issues, fix them, and land the pull requests; release lanes publish, deploy, and roll back by a policy you write.

Get started GitHub PyPI

Why shipmill

Issue to release

Not just a pull request: one pipeline from a new issue to a published, deployed, and announced release

Policy decides what ships

One file, .github/shipmill.toml, sets the lanes (dev, rc, stable, hotfix), their triggers, and the gates that hold them

You stay in control

Each stage runs at observe, propose, or act; one shipmill-hold issue stops everything, even from your phone

GitHub is the database

Issues, labels, pull requests, tags, and deployments hold all state; nothing lives outside your repository

Releases you can trust

CI runs on the exact release commit before it is tagged, and a stable release ships the code a pre-release already soaked

Rollback built in

Health checks, bake time, and promotion between environments; a failing deploy rolls back and opens an incident

Quickstart

From the root of a GitHub repository with a CHANGELOG.md, with gh, uv, and Claude Code installed:

claude plugin marketplace add shipmill/shipmill && claude plugin install shipmill@shipmill && claude "/shipmill:shipmill-setup"

The setup skill inspects the repository, asks which lanes to run, and opens a pull request that wires it all, in dry-run mode until you switch releases on. Prefer to set it up by hand? Read the install guide.