agentsclimarketplace

Loops graduate

Skill tcf-jw/plan-with-loops/skills/loops-graduate

πŸŒ€ Claude Code skills that plan the agent loop, remember what worked, and graduate proven loops into new skills. A loop-design + Reflexion-memory flywheel.

Install
npx -y skills add tcf-jw/plan-with-loops --skill loops-graduate

Assembled from the repository path, not quoted from the project. Check it against their README if it does not work.

One thing to look at

  • 0 stars0 stars. Stars are a popularity signal and not a quality one, but at this level it is likely that nobody has read this closely except its author, and you would be relying on your own review.

What its author says it does

Copied from the file, not written here

Promote a proven agent-loop from the loop store (~/.claude/loops/) into a reusable global skill. Reads the relevant loop-record note(s), verifies the loop has actually succeeded, then scaffolds a new ~/.claude/skills/<name>/ SKILL.md that encodes the proven loop as a concrete Claude Code Workflow procedure. Triggers: /loops-graduate, "promote this loop to a skill", "graduate this loop", "make a skill from this loop", "turn this loop into a skill".

SKILL.md

3.3 KB, 726 tokens by cl100k_base, as published. Nobody here has run it

loops-graduate

Graduation step for the loop-memory subsystem. Turns a loop that has proven itself (captured by loops-save) into a first-class reusable skill. The user is the gatekeeper β€” promotion is always manual, one record at a time.

Procedure

  1. Find the record(s). From $ARGUMENTS (a task-type, loop name, or record slug), search the loop store: Glob ~/.claude/loops/loop-record-*.md then Grep/Read for matches. Pull the matching loop-record-*.md and the linked agent-type-*.md notes. (Optional: also query_vault if that backend is used.)
  2. Verify it's proven. Require loop_outcome: worked (ignore records still marked TODO β€” those haven't been judged via /loops-save yet). Prefer repeated success β€” multiple worked records of the same loop_task_type, or agent success_count > 1. If only a single success exists, warn and ask the user to confirm before graduating a one-off.
  3. Confirm naming + scope. Propose a kebab-case skill name; default scope is global (~/.claude/skills/<name>/). Confirm with the user.
  4. Scaffold the skill. Write ~/.claude/skills/<name>/SKILL.md encoding the proven loop (see template). Pull roster, pattern, termination, and lessons straight from the record β€” bake the lessons in as guidance.
  5. Optionally scaffold agents. Offer to write .claude/agents/<name>.md for each reused agent type (role, tools, model from its registry note). Skip if the user prefers the loop to spawn them inline via the Workflow tool.
  6. Report the files created and how to invoke the new skill.

Generated SKILL.md template

---
name: <skill-name>
description: >
  <what the proven loop does, when to use, trigger phrases>. Graduated from
  loop-record <record-slug> (<N> successful runs).
---

# <skill-name>

<one-line purpose β€” the proven loop>

## Procedure (proven loop)
1. <phase 1 from the record's topology>
2. ...

## Workflow sketch
    phase('...')
    const x = await agent('...', {schema, model: '<from roster>'})
    const results = await pipeline(items, stageA, stageB)
    // parallel([...]) only where a barrier is genuinely needed

## Roster
| agent | role | model | tools |  (from the record)

## Termination & circuit breaker
<stop condition + cap from the record>

## Baked-in lessons
- <reusable lessons carried from the loop record>

Rules

  • This skill writes a new skill file β€” the one intended write in the loop system. Confirm the target path before writing; never overwrite an existing skill without asking.
  • Don't graduate partial/failed records. If the user insists on an unproven loop, say it's unproven and proceed only on explicit confirmation.
  • Carry the record's lessons into the generated skill so the proven knowledge isn't lost.

What ships with it

Read from the repository

Just SKILL.md. No reference files, no scripts.

Keep looking

Skills are one crate of 328,083. Ordering is by how many stacks a row turns up in, so the top of any crate is what has actually been picked rather than what has the most stars.