aeonaeon

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, <=500 changed lines, CLEAN merge state, no opt-out labels), capped at 3 merges per run.

On this page