autonomous-run
Installation
SKILL.md
Autonomous run
You own the exit condition. Define done, then drive to it without stopping.
Steps
- State the exit predicate. Before the first iteration, write done as a predicate you can check by running something: tests green, the repro fixed, all N PRs merged, pixel-diff zero. Done when the predicate names the command or artifact that proves it.
- Pick the wake mechanism. Use your harness's loop or scheduling command if it has one. Otherwise:
- When there is an event to watch (CI finishing, a merge, a ref advancing), start a subagent in the background that watches for the event and wakes you, with a long time-based heartbeat as the fallback.
- When there is no event, use a fixed-interval heartbeat sized to when the result is worth checking again.
- Iterate. Each iteration makes the smallest change the evidence justifies, checks it against the predicate, commits it if the predicate advanced, and discards it if it did not help. Revert a belt-and-suspenders change that "might help" instead of leaving it in. Sequence the work by the sequence-verifiable-units principle (call the Skill tool with "principles"). Verify each unit before starting the next, never in one batch at the end.
- Own mid-run discoveries. Fix what you find along the way yourself, each through the skill that owns that kind of work:
- A broken skill:
Call the Skill tool with "writing-for-agents"and fix it. - A related bug, a flaky verifier, or a tooling failure:
Call the Skill tool with "diagnosing-bugs". - Red CI, review noise and bot comments on a PR: call the Skill tool with "babysit" in
drivemode. Its rules (no rebase or retarget, one fresh build for a flake, conflicts go to the branch owner) apply inside this run too, and it never merges. - Orphaned follow-ups and fixable drift: finish them with the skill that matches the work.
- A broken skill: