with one click
automation-loop-hardening
Use when turning repeated manual operations into safer, observable, reusable automation loops. Triggers:
Menu
Use when turning repeated manual operations into safer, observable, reusable automation loops. Triggers:
| name | automation-loop-hardening |
| description | Use when turning repeated manual operations into safer, observable, reusable automation loops. Triggers: |
| practices | ["pragmatic-programmer"] |
| skill_api_version | 1 |
| user-invocable | false |
| context | {"window":"fork","intent":{"mode":"task"},"sections":{"exclude":["HISTORY"]},"intel_scope":"topic"} |
| hexagonal_role | supporting |
| metadata | {"tier":"execution","stability":"experimental","dependencies":[]} |
| output_contract | skills/automation-loop-hardening/skill.spec.json |
Use this skill when a manual operation has repeated enough times that it may deserve automation, but the next step is not yet obvious. The goal is not to automate everything. The goal is to promote proven, repetitive work into the smallest safe loop with clear evidence, controls, and feedback.
Automation earns promotion by evidence:
If those conditions are not met, return a "do not automate yet" verdict and specify what evidence would change the decision.
Record the current operation as a concrete runbook:
Do not design automation from memory when a recent real run can be inspected. Prefer command history, logs, tickets, PRs, CI runs, and chat handoffs as evidence.
Choose the smallest promotion rung that removes real toil while keeping the loop inspectable:
| Rung | Use when | Required controls |
|---|---|---|
| Keep manual | The operation is rare, ambiguous, or high judgment | Checklist, owner, evidence to revisit |
| Runbook checklist | Steps repeat but decisions are still human | Preconditions, stop points, expected outputs |
| Script | Commands repeat and inputs are bounded | Dry run, idempotency, exit codes, structured logs |
| Scheduled job | Timing is predictable and failures can be retried | Locking, alerting, backoff, run history |
| Daemon or service | The loop reacts continuously to external state | State model, health checks, metrics, safe shutdown |
Avoid jumping straight to a daemon when a script plus scheduler provides the same value with less operational surface.
Before implementation, specify:
Missing safety controls are a blocker for promotion, not an implementation detail to solve later.
Every reusable loop must answer these questions from its own output or logs:
Prefer structured output for machines and a concise summary for humans. Store durable evidence where the surrounding project already stores run reports, CI artifacts, or operational notes.
Validate the chosen loop at the lowest practical blast radius:
The validation result must state what was tested, what was not tested, and what remains manual.
Return a report matching skills/automation-loop-hardening/skill.spec.json:
Resume sessions across Claude Code, Codex, Gemini, and other providers when switching agents or migrating active chat history.
Run AGY headlessly via scheduled ticks or `agy -p`, capture agentapi JSONL evidence, and validate automated AGY loops or event streams.
Wire MCP servers and AgentOps plugin bundles into the AGY image with least-privilege access, rollback evidence, and validation hooks.
Manage the PROGRAM.md/AUTODEV.md contract consumed by evolve/factory ticks. Use for loop rules, boundaries, or PROGRAM.md repair.
Audit SKILL.md files against the AgentOps template and readiness checks. Use for quality reviews or template compliance.
Run AGY headlessly via scheduled ticks or `agy -p`, capture agentapi JSONL evidence, and validate automated AGY loops or event streams.