Self-Healing
How Aeon scores every skill output 1-5, tracks degradation, files internal issues, and opens automated fix PRs.
After every skill run, Haiku scores its output 1-5 (1 = failed or empty, 5 = clean) and records diagnostic flags (api_error, stale_data, rate_limited) into memory/skill-health/ as a rolling 30-run history.
Four Self-Healing Skills
heartbeat - the sentinel
heartbeat runs daily and is the only skill enabled by default. Inspects memory/cron-state.json for failures, stalled PRs, and missed schedules; logs HEARTBEAT_OK when clean and notifies you when action is needed.
skill-health - the auditor
skill-health analyzes the rolling 30-run score history for quality degradation and files structured issues in memory/issues/.
skill-repair - the mechanic
skill-repair diagnoses a failing skill (SKILL.md, run logs, and filed issue) and opens a targeted fix pull request. Fires automatically after 3 consecutive failures when reactive triggers are enabled.
self-improve - the evolver
self-improve makes one small, targeted refinement per run based on recent score history rather than rewriting skills wholesale.
Enabling full self-healing
Turn on skill-health, skill-repair, and the consecutive_failures >= 3 reactive trigger in aeon.yml.
Issue Lifecycle
Issues live in memory/issues/ISS-NNN.md with structured YAML frontmatter (status, severity, root_cause, fix_pr). Health skills open issues (status: open), and repair skills transition them to resolved once the fix PR lands.
PR Governance
pr-review(--survey) - buckets open PRs by risk tier (core-review,infra-review,skill-pass,fast-track) and only re-notifies when a riskier PR arrives.auto-merge- merges green PRs that pass the safety policy (allowlisted paths,<=500changed lines,CLEANmerge state, no opt-out labels), capped at 3 merges per run.