What you get
A pull request with receipts: what failed, what the agent concluded, what it changed, and proof the tests pass in a clean container.
Here’s a mock of one night. Show your team something like it before you build (prompt 5).
Overnight · repo acme/reportd · branch feat/date-ranges
- 02:14✗ workflow failed: test / unit (ubuntu-latest), run #4182, push by dana
- 02:14→ webhook delivered to /webhooks/ci-heal · X-Hub-Signature-256 valid
- 02:15→ agent fetched logs · gh run view 4182 --log-failed (payload carries no logs)
- 02:16→ docker sandbox up · clone, checkout feat/date-ranges, install deps
- 02:19diagnosis: parse_report() raises TypeError on reports with an empty end_date, introduced in 9f3c2ad
- 02:21✗ reproduced locally · pytest tests/test_parse.py: 2 failed
- 02:23✓ patch applied, suite green · pytest: 84 passed in 41s
- 02:24✓ PR opened · gh pr create → #413 · summary posted as a comment on run #4182
- 09:03you, with coffee: read the diff, request one rename, merge.
fix: guard empty end_date in parse_report() #413ci-heal
Who provides what
- Hermes: the webhook gateway on port 8644, the
X-Hub-Signature-256check, the route, the Docker backend, and thegithub_comment/ Telegram / Discord delivery targets. - The route prompt: everything from 02:15 on. It tells
the agent to run
ghand git, because the webhook payload has no logs. It’s on the prompts page. When a fix fails, you still get a diagnosis in chat. - You: a server GitHub can reach and a sandbox image with your toolchain (setup).