agent-skills/skills/loop-engineering/templates/research-loop.json
F4473 208af622d9 Add loop-engineering skill (DRAFT): 5-stage pattern + 3 Orchestrator templates with approval gates
No Stripe objects, draft status flag set in SKILL.md frontmatter and index.json.

Co-Authored-By: Claude Fable 5.1 <noreply@anthropic.com>
2026-09-04 15:02:56 +00:00

61 lines
2.4 KiB
JSON

{
"name": "Research Loop (research -> verify -> approve -> act -> learn -> monitor)",
"description": "A self-supervising research loop: gathers evidence, verifies it against an independent check, then stops at a human approval gate before anything leaves the sandbox. Draft template - wire tool_slug values to your own tools.",
"min_tier": "growth",
"steps": [
{
"stage": "research",
"tool_slug": "web-research",
"params": {"query": "<your research question>", "max_sources": 8},
"hil": false,
"note": "Broad gather. No side effects. Runs unattended."
},
{
"stage": "verify",
"tool_slug": "evidence-checker",
"params": {"require_independent_source": true, "min_sources": 2},
"hil": false,
"note": "Cross-check the research stage's claims against at least one independent source before anything is proposed. A single self-reported source is not evidence."
},
{
"stage": "propose",
"tool_slug": "draft-proposal",
"params": {"format": "one-paragraph recommendation + evidence links"},
"hil": false,
"note": "Drafting is free - still no side effects."
},
{
"stage": "approve",
"tool_slug": "approval-gate",
"params": {
"surface": "act.outward",
"scope": "<name the exact target this run may act on>",
"ttl_minutes": 60,
"reason_required": true
},
"hil": true,
"note": "APPROVAL GATE. Nothing downstream of this step runs without a scoped, time-limited, human-granted permission naming this exact target. This step alone blocks on a person."
},
{
"stage": "act",
"tool_slug": "execute-action",
"params": {"mode": "paper_or_draft_first"},
"hil": false,
"note": "Only reachable once the approval-gate step above has granted a live, matching permission. Prefer a reversible/paper mode over the real action wherever one exists."
},
{
"stage": "learn",
"tool_slug": "outcome-scorer",
"params": {"attribute_to_run_tag": true},
"hil": false,
"note": "Score the outcome and tag it to this exact run, so it can be re-graded later under updated logic."
},
{
"stage": "monitor",
"tool_slug": "loop-watchdog",
"params": {"alert_on_silence_minutes": 120},
"hil": false,
"note": "A monitor that stops reporting is itself an alert-worthy event, not silence-as-health."
}
]
}