# Conversion System

> Turn recurring manual work into trusted automation via 5 steps: capture → qualify → spec → build → trust ladder. Use when the user says /conversion-system, 'should we automate this', 'capture this task', 'add to automation registry', or when any task is noticed being done manually for the 2nd+ time. Also the gate every NEW automation must pass before being built.

- Skill: `rishbjain1/conversion-system` (Agent Skill)
- Install (CLI): `npx skillmds@latest add rishbjain1/conversion-system`
- Raw SKILL.md: https://api.skillmd.com/api/skills/rishbjain1/conversion-system/raw
- Safety review: pending
- Works with: Claude Code, Claude.ai, OpenAI Codex
- Category: Productivity
- Author: rishbjain1 (https://skillmd.com/u/rishbjain1)
- Updated: 2026-09-17
- Page: https://skillmd.com/skills/rishbjain1/conversion-system

---


# 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.**

1. **Repeats same shape?** Same steps each time, not bespoke judgment each run.
2. **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.
3. **"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 (`manager` skill): 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 by `stack-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)
- ...
```

