A policy gate that doesn't guess.
Deterministic checks protect pipeline files and package scripts, reject deleted tests, and flag dependency or test changes for review.
CODE ENFORCED. NO MODEL INVOLVED.A coding pipeline that lives in your repo.
Turn GitHub issues into verified pull requests.
Your agents do the work. You make the call.
Respect system preferences. Persist the choice.
01 / THE PIPELINE
From a rough idea to a reviewable change.
Every step has a job. Every change has a check.
Add the agent label to a GitHub issue. The strategist turns your request into testable acceptance criteria, and asks questions on the issue when something needs clarifying.
See how it works# A clear spec before the first line of code.
Already in a PR? Comment @pi or @agent to keep the work moving.
02 / CONTROL, BY DESIGN
Autonomy is useful. Boundaries make it practical.
Repo2Ship puts checks between a generated patch and your main branch.
Deterministic checks protect pipeline files and package scripts, reject deleted tests, and flag dependency or test changes for review.
CODE ENFORCED. NO MODEL INVOLVED.A separate verification pass reviews the diff and runs browser QA against every acceptance criterion. You can give it a different model.
Auto-merge is off by default. Agents work on their own branches, with bounded repair rounds. Review the evidence, then ship when you're ready.
03 / GET IT RUNNING
Create a repo from the template, or copy the pipeline into an existing project.
Use this template ↗Choose Pi or OpenCode. Configure your provider credentials, model, and publishing token in GitHub Actions.
Set your verify commands and app URL in .pi/pipeline.json. Configure review rules, enable the agent, and label an issue agent.
# Repository variables IMPLEMENTER_ENGINE=pi IMPLEMENTER_MODEL=your-model-id STRATEGIST_MODEL=your-review-model-id # Repository secret MODEL_API_KEY=your-provider-api-key # Keep the final decision with you ENABLE_AUTO_MERGE=false
NO BLACK BOX REQUIRED
Connect Langfuse to inspect run trajectories, token counts, and estimated costs. Score merged or closed agent PRs to compare model outcomes over time.
Explore the repository04 / A FEW MORE DETAILS
The pipeline runs in GitHub Actions inside your repository. You supply model credentials and a publishing token. Langfuse tracing is optional. GitHub Actions and model providers may incur charges.
Choose Pi or OpenCode independently for each model role. Repo2Ship supports OpenAI-compatible endpoints, Azure, and native Amazon Bedrock. You provide model IDs; there is no built-in default model. The Bedrock integration has not been live-tested.
Yes. Copy the workflow, pipeline scripts, configuration, and supporting files into your repo, then set the verify and start commands for your app. The pipeline assumes a Node setup with npm ci and Playwright; other stacks need commands that run after those steps. Follow the migration guide ↗
The implementer can run up to three repair rounds when verification fails. Verifier findings can trigger at most one automatic fix round. Mandatory unresolved hygiene issues fail the run instead of opening a PR.
Repo2Ship is early-stage developer tooling. Start with a test repository, configure review rules and provider budgets, and review generated code before merging. Keep auto-merge off while you evaluate the workflow. Read the trust boundaries ↗
LESS COORDINATING. MORE CREATING.
Open source. MIT licensed. Built to be yours.