Inspiration

Autonomous repository maintenance is useful only if the agent does not quietly inherit unrestricted write authority. RepoRelay was built around a narrower question:

Can an agent maintain a GitHub repository while every write remains bounded, typed, and revalidated?

What it does

RepoRelay receives signed GitHub webhooks, gathers bounded repository evidence, asks a Gemini-powered Google ADK agent for one typed maintenance proposal, and then passes that proposal through deterministic policy before any write occurs.

The flow is:

GitHub webhook → HMAC verification → Firestore delivery claim → bounded evidence → Google ADK + Gemini → typed proposal → deterministic policy → RepoRelay-owned issue/comment

The model never receives a general-purpose GitHub write surface.

Narrow authority by design

RepoRelay may create or update dedicated triage issues and readiness comments. It cannot merge pull requests, push or force-push code, change repository settings, publish releases, delete branches or issues, or rotate credentials.

Every proposed action is validated again immediately before execution. Capability and authority remain separate even when the model produced the proposal.

Reliability

The service includes:

  • atomic delivery-ID claiming in Firestore
  • minimal durable retry context
  • protected admin retry API
  • terminal failure recording
  • action-level deduplication
  • explicit separation between the demo dispatcher and a crash-safe durable queue

The project does not claim queue guarantees it has not implemented.

Agentic stack

  • Gemini 3.5 Flash
  • Google ADK 2.x
  • Google Cloud Run
  • Firestore
  • GitHub App / PyGithub
  • Python 3.12 + FastAPI

Why it matters

RepoRelay demonstrates an agentic maintenance pattern where the model can reason about repository state and propose useful work without being handed the keys to the repository. The agent is allowed to be autonomous inside a deliberately narrow command surface, while deterministic code retains final authority over what can actually change.

The public repository includes tests, architecture documentation, provenance, deployment instructions, and an explicit claims boundary.

Public source: https://github.com/DannyBaanks/RepoRelay

Demo video: https://youtu.be/OprBhMSR6Uk

MIT licensed.

Built With

  • fastapi
  • firestore
  • gemini-3.5-flash
  • github-app
  • google-adk
  • google-cloud-run
  • pygithub
  • python
Share this project:

Updates

Submission history