Loopforge
把模糊工作流锻造成可复用的 AI Agent 工作流循环规范。
Route
Choose one path:
Extract: convert notes, transcripts, prompts, artifacts, or history into a loop spec.Forge: create a new loop spec from the user's intended recurring workflow.Doctor: audit and minimally repair an existing loop spec.Package: prepare a loop spec for reuse or publication.
Do not handle:
- official published loop search; send that to the official Loop Library skill or catalog
- direct loop execution; hand off to the runtime
- pure
/goalwriting; use a goal skill when available - general systems-thinking feedback-loop analysis
Intake
Ask one high-leverage question by default; ask up to three only when answers materially change the spec. Default only when grounded or safe no-op. Ask for permissions, security, production writes, external messages, private data, and validation.
Required Reading
- For boundary decisions, read
references/loop-vs-goal-sop-checklist.md. - For spec fields, read
references/loop-spec-v1.md. - For repair work, read
references/loop-doctor.md. - For examples or pattern help, read
references/case-patterns.mdandreferences/templates.md.
Output Contract
Return one:
- a concise prompt-mode loop the user can copy
- a full
loop-spec-v1YAML or JSON spec, followed by a copy-ready Loop Prompt companion unless the user asks for machine-only output - a doctor verdict:
Ready,Repair needed, orNot actually a loop - a package checklist for reuse or publication
Every spec must satisfy references/loop-spec-v1.md: identity, trigger/exclusion, inputs, authority, state, round, next_action_rule, working_signal, acceptance_gate, terminal states, outputs, provenance, and optional execution_handoff.
When outputting YAML/JSON, also finish with the module-based Loop Prompt from references/templates.md. YAML/JSON is the source; the prompt is the copy/use entry.
Validation
For YAML/JSON specs, run:
python3 scripts/lint_loop_spec.py <spec-file>
Use --profile template for reusable templates with declared placeholders. Use --profile runnable when the loop is ready to run and placeholders must be gone.
If the linter fails, fix the spec before presenting it as ready.