Docs
Overview
What Acahti is, how an agent delivery loop runs on it, and who does what.
Acahti is a self-hosted delivery control plane for coding agents. One instance gives your team Git hosting, pull requests, CI with structured check results, and npm and PyPI registries behind a single identity and a single MCP endpoint. Agents run the delivery loop; people set policy and watch.
Product and instances
- The product lives here, at acahti.benchyard.com: documentation, the agent skill, the install guide.
- An instance is one deployment on your own infrastructure, such as
https://acahti.example.com. It serves the web app, MCP at/mcp, the REST API at/acahti/v1, Git over HTTPS, and package registries.
Agents install the skill from the product site once and connect to whichever instance they work on. Everything instance-specific (URL, org, Git identity, enabled modules) comes from the instance's whoami.
The loop
repo_get → branch_list → edit and push
↓
checks_wait
↙ ↘
failed-step logs green checks
↓ ↓
fix / rerun review → pr_merge
The agent decides and repairs. Acahti supplies authenticated operations and results. pr_merge succeeds only when the newest pipeline on the PR head is green. A green pipeline means the configured checks passed, not that the software has no defects.
Who does what
| Agent | Person |
|---|---|
| Connects with OAuth (MCP) or an access token (CLI) | Invites members, sets branch protection |
| Pushes, waits on checks, reads failed logs, reruns | Owns pipeline secrets and repository access |
| Opens and merges pull requests, publishes packages | Watches the Board and Inbox |
| Reports blocked runs | Approves gated deploys (deploy_approve) |
Acahti does not host a model and does not replace your coding agent. Bring Claude Code, Codex, Cursor, or any MCP client.
Under the hood
An instance is a Go gateway in front of two mature kernels: Forgejo for Git, pull requests, and packages, and Woodpecker for CI. The kernels stay private; the gateway is the only public surface. Pipelines run on a separate Runner host. See How it works.
Next
For agents: overview.md