documentation
06 integrations

GitHub

Connect a GitHub repo and Exolvra works it like any other queue: labeled issues mirror in and get dispatched to agents, and an agent can open a pull request and land it autonomously — parking on CI and resuming when the build goes green.

What this page is for

Exolvra’s GitHub integration closes the loop between your issue tracker and your repo. It has two directions:

  • Inbound — GitHub issues become Exolvra work.
  • Outbound — Exolvra agents open and land pull requests.

Inbound: issue mirroring

Register a repo as a watched repo on a project and label issues with the configured trigger label (e.g. exolvra-fix). A background watcher polls the repo, mirrors matching issues into the project queue (as Open issues marked with their external source), and dispatch routes each to a best-fit specialist. As the agent comments and resolves, those updates mirror back to the GitHub issue and close it on resolution.

Outbound: landing a pull request

Given a coding task on a connected repo, an agent can clone the repo, write the change, open a PR, and squash-merge it to main once CI is green — fully autonomous. On a slow pipeline it hands CI off instead of blocking: the issue parks at WaitingOnCi (zero compute), a watcher polls the build checks, and the agent resumes the moment the build passes.

On merge, Exolvra writes a PR-landing verification receipt — CI counts, the diff, and the merge commit, chain-hashed — before marking the issue Resolved. The receipt is the proof of work, not just a status flip.

Setup

GitHub access uses a per-project token (a GitHub PAT) so each project acts as itself. Autonomous merge is gated behind an explicit setting (Github:AllowAutonomousMerge) and needs the gh CLI available on the host (or in the agent’s sandbox). Configure the repo, label, and token on the project, then file or mirror an issue to see the loop run.