|
1 | 1 | # ci-autopilot |
2 | 2 |
|
3 | | -Enterprise-grade CI automation and operational control plane for Codex-driven workflows. |
| 3 | +AI-powered CI autopilot — detects GitHub Actions failures and autonomously dispatches repairs via a Python agent |
4 | 4 |
|
5 | | -## Quick start (local) |
6 | | -```pwsh |
7 | | -python -m venv .venv |
8 | | -.\.venv\Scripts\Activate.ps1 |
9 | | -pip install -r requirements.txt |
| 5 | +[](https://github.com/Coding-Autopilot-System/ci-autopilot/actions/workflows/ci.yml) |
| 6 | +[](https://www.python.org/) |
| 7 | +[](LICENSE) |
| 8 | + |
| 9 | +## Overview |
| 10 | + |
| 11 | +ci-autopilot is an AI-powered CI repair agent that monitors GitHub Actions workflows, detects failures, triages them via an issue queue, and dispatches autonomous repairs using a Python agent backed by Codex. It runs on a self-hosted runner and coordinates the full lifecycle from failure detection to merged fix. |
| 12 | + |
| 13 | +The agent (`agent/poll_once.py`) is a Python 3.12 stdlib-only program that polls the issue queue, picks up queued repair tasks, and dispatches them to the Codex repair pipeline. No external dependencies are required. |
| 14 | + |
| 15 | +## Architecture |
| 16 | + |
| 17 | +```mermaid |
| 18 | +flowchart LR |
| 19 | + A["GitHub Actions\nfailure detected"] --> B["autopilot-failure-intake\n(intake workflow)"] |
| 20 | + B --> C["Issue queue\n(runner-offline label)"] |
| 21 | + C --> D["agent/poll_once.py\n(Python 3.12)"] |
| 22 | + D --> E["Codex\n(repair dispatch)"] |
| 23 | + E --> F["PR / fix\ncommitted"] |
| 24 | +``` |
| 25 | + |
| 26 | +**Core components:** |
| 27 | + |
| 28 | +- **autopilot-failure-intake.yml** — Intake workflow triggered on `workflow_run` failure events; creates a queued issue |
| 29 | +- **autopilot-create-issue.yml** — Creates GitHub issues via `actions/github-script` when monitored workflows fail |
| 30 | +- **fixer.yml** — Main CI autopilot; runs `agent/poll_once.py` on the self-hosted Windows runner |
| 31 | +- **agent/poll_once.py** — Python 3.12 stdlib agent; polls the issue queue and dispatches repairs |
| 32 | +- **runner-smoke-test.yml** — Smoke tests the self-hosted runner on demand |
| 33 | +- **runner-health.yml** — Manual runner health check (dispatch only) |
| 34 | + |
| 35 | +## Quick Start |
| 36 | + |
| 37 | +```bash |
| 38 | +# Prerequisites: Python 3.12, GitHub CLI, GH_TOKEN env var |
| 39 | +export GH_TOKEN=<your_token> |
10 | 40 | python -m agent.poll_once |
11 | 41 | ``` |
12 | 42 |
|
| 43 | +For full runner registration, service setup, and local development instructions see the [Setup Guide](https://github.com/Coding-Autopilot-System/ci-autopilot/wiki/Setup-Guide) wiki page. |
| 44 | + |
13 | 45 | ## Documentation |
14 | | -- `docs/README.md` - Documentation index |
15 | | -- `docs/architecture.md` - System architecture and design goals |
16 | | -- `docs/runner-setup.md` - Runner registration and service setup |
17 | | -- `docs/operations.md` - Day-2 operations runbook |
18 | | -- `docs/security.md` - Security posture and access model |
19 | | -- `docs/troubleshooting.md` - Common issues and remediation |
20 | | -- `docs/site/index.html` - Professional docs landing page |
21 | | - |
22 | | -## Workflow triggers |
23 | | -```pwsh |
24 | | -gh workflow list |
25 | | -gh workflow run "CI Autopilot Fixer" |
26 | | -gh api repos/Coding-Autopilot-System/ci-autopilot/dispatches -f event_type=ci-autopilot |
27 | | -``` |
| 46 | + |
| 47 | +| Source | Description | |
| 48 | +|--------|-------------| |
| 49 | +| [docs/architecture.md](docs/architecture.md) | System architecture and design goals | |
| 50 | +| [docs/runner-setup.md](docs/runner-setup.md) | Runner registration and service setup | |
| 51 | +| [docs/operations.md](docs/operations.md) | Day-2 operations runbook | |
| 52 | +| [docs/security.md](docs/security.md) | Security posture and access model | |
| 53 | +| [docs/control-plane.md](docs/control-plane.md) | Failure intake and issue control plane | |
| 54 | +| [GitHub Pages](https://coding-autopilot-system.github.io/ci-autopilot/) | Professional docs landing page | |
| 55 | + |
| 56 | +**Wiki:** [Home](https://github.com/Coding-Autopilot-System/ci-autopilot/wiki/Home) | [Setup Guide](https://github.com/Coding-Autopilot-System/ci-autopilot/wiki/Setup-Guide) | [Architecture](https://github.com/Coding-Autopilot-System/ci-autopilot/wiki/Architecture) | [Configuration Reference](https://github.com/Coding-Autopilot-System/ci-autopilot/wiki/Configuration-Reference) |
| 57 | + |
| 58 | +## Ecosystem |
| 59 | + |
| 60 | +Part of the [Coding-Autopilot-System](https://github.com/Coding-Autopilot-System) ecosystem: [gsd-orchestrator](https://github.com/Coding-Autopilot-System/gsd-orchestrator) | [Promptimprover](https://github.com/Coding-Autopilot-System/Promptimprover) | [autogen](https://github.com/Coding-Autopilot-System/autogen) |
0 commit comments