aayudha docs Built from de79988 (2026-10-26)

retro: learn from how the work went

Plans miss and agents repeat corrections, and nobody has time to add it up by hand. retro compares plans with what happened and files each lesson as a Feedback issue a person accepts or rejects.

Field Value
In plain words Compares plans with what happened and files what to improve as feedback you can accept or reject.
Journey stage Measure and learn
Accountable seat Engineering Manager (Drona)
Does the work Drona, the Accountable seat's twin, in the spec model lane, with the seat's paired human when it has one
Consulted Auditor (Vidhi), AI Native Engineer (Nakul)
Informed Founder (Atri)
Layers it can touch every layer
Who reasons your agent's own model, inside the skill
Writes as the bot identity (a GitHub App); without one, your identity, tagged as human fallback
Where it runs the aayu command, a skill in your agent, an MCP tool (only with [mcp] expose_writes on)
The skill your agent reads skills/retro/SKILL.md

When to use it

Did the product's number move? That is measure. A better skill from prose Feedback is evolve.

Run it

Run it in your agent, or let the weekly retro loop run it. Then ask:

Use the retro skill to run this week's retro, comment on each Feedback issue it files with what the numbers cannot say, and classify each one by the highest layer that can fix it for good.
aayu retro
Input Required What it does
--since no Window start (YYYY-MM-DD UTC or RFC 3339); default the cursor of the newest retro report on the ledger, else 7 days back.
--until no Window end (RFC 3339, exclusive); default now.
--ledger no Ledger commit to read; default the ledger tip.
--out no Also write the report to this file.
--replay no Regenerate a report from the GitHub inputs snapshot at this ledger path (retro/<date>/…inputs.json); files nothing.
--classify no Feedback issue to classify by the highest layer that can fix its correction for good (needs --layer and --reason); writes no report.
--layer no With --classify: codebase (a type, invariant, or boundary), check (a lint rule, test, or CI check), prose (skill or AGENTS.md guidance), or review (what is surfaced for human review). One of: codebase, check, prose, review.
--reason no With --classify: why this is the highest layer that can fix the correction for good.
--not-catchable no With --classify: why no type, invariant, lint rule, or test can catch it; required for prose and review, and lets evolve rewrite a skill for a codebase or check correction.
--criterion no With --classify and a layer other than prose: the Completion Goal criterion of the Story filed for it, [evidence] state: …; expected: …, whose proof is the new type, invariant, lint rule, test, or review surface.

To record a fix layer: aayu retro --classify <n> --layer <layer> --reason "<why this layer>".

What you get back

A report under retro/<date>/ on the ledger, with its inputs in the header and flow numbers that are reported, never filed. Each new finding becomes a Feedback issue titled Feedback: retro: …, labelled type:feedback, status:backlog, and intake. retro never opens a pull request.

You should see one Feedback: retro: … issue per new finding, counted in the report's "Fix layer of Feedback" table. A loop run stopped? See loop problems.

Gates

It checks these before it acts, and stops when one fails:

What only a person does

The registry reserves no step of this verb for a person.

A person accepts a Feedback issue with the needs:grill label, and can reclassify its fix layer by running --classify again. The fix goes through a Story or evolve, and a person reviews either one.

What's next