Conversion System
Turn repeated manual work into automation you can actually trust — and refuse
to automate what shouldn't be. The registry is the single source of truth:
~/.claude/automations/registry.md.
Step 1 — CAPTURE
Any task done manually twice gets a one-line entry in the registry backlog.
No judgment at capture time. Format:
- [ ] <task, one line> — seen <n>x, ~<minutes> each
Step 2 — QUALIFY (3-question filter)
Ask all three. 3 yeses = automate. Any no = leave manual, note why.
- Repeats same shape? Same steps each time, not bespoke judgment each run.
- Inputs digital? Everything needed is reachable by tooling (API, file, MCP). ⚠️ claude.ai-connector MCPs (Linear, Granola, Slack…) are session-auth only — they do NOT work headless. If inputs need them, the automation is in-session, never a LaunchAgent.
- "Done" definable in one sentence? Objective end-state a checker can verify.
Then apply the build bar (from manager skill): name the hours/week saved
(with a number) OR the outward output shipped. Neither → don't build, even with 3 yeses.
Step 3 — SPEC (template, mandatory before build)
TASK: <one sentence>
TRIGGER: <manual /command | /loop in-session | LaunchAgent clock-based>
INPUT: <exact sources; flag session-auth'd ones>
RULES: <constraints, incl. voice/verify rules from memory>
STEPS: <numbered, each verifiable>
OUTPUT: <artifact produced — a DRAFT/file/report, never a sent thing>
CHECK: <how the run proves itself correct; what auto-verify exists>
ESCALATE: <when it must stop and ask>
Hard rule, non-negotiable, lives in every spec: Never send / spend / delete / promise ALONE. Any outward message, payment, destructive op, or commitment requires the human. Automation prepares; the human ships. (This encodes two standing rules: show-draft-before-send, and verify-before-asserting: data claims in outputs must be verified live by the run itself, never carried from notes.)
Step 4 — BUILD
- Trigger type per scheduler doctrine (
managerskill): clock-based → LaunchAgent with token auth + log + dedup + 1 retry; in-session → /loop ONLY if it passes the 4-condition gate in~/CLAUDE.md; else a plain /skill run on demand. - Day-1 requirements: appears in
aios-cron-view, probed bystack-health(if scheduled); registry row moves from backlog → active with spec link.
Step 5 — TRUST LADDER
Every automation starts at rung 1. Track current rung in the registry.
| Rung | Runs | Human involvement |
|---|---|---|
| 1 | run 1 | watch everything live, step by step |
| 2 | runs 2–4 | review full output before it's used |
| 3 | 5+ | spot-check weekly |
Demotion: any wrong output → drop one rung immediately and log the failure in the registry. Two failures at rung 1 → back to manual, entry closed with reason. An automation is never "done proving itself" — rung 3 is the ceiling, spot-checks never stop.
Registry format (~/.claude/automations/registry.md)
## Active
| name | spec | trigger | rung | last check | failures |
## Backlog (captured, unqualified)
- [ ] ...
## Rejected (failed qualify — with which question failed)
- ...