Agent skill · alirezarezvani

grade-iterate

Phase 3 of building a Claude Managed Agent — the bounded grade→iterate loop. Define a CMA outcome (a required markdown rubric graded by an isolated grader), read each verdict, decide the next move (sharpen / re-run / promote to schedule), and once a version passes, run held-back eval cases in parallel. Use when the user says "grade my agent", "make it pass the rubric", "iterate until it's good", "is it good enough", or when the orchestrator routes phase=grade-iterate. outcome_builder.py builds the user.define_outcome payload (rubric required, max_iterations clamped 1..20 — never unbounded); verdict_reader.py reads the grader result and recommends the next move; eval_scaffold.py generates held-back cases + a parallel run plan (capped at the 25-thread CMA ceiling). Distinct from stage-launch (first launch) and run-without-you (scheduling).

What it needs

About 2k tokens when loaded.

What this skill does

Phase 3 — Grade → Iterate (the bounded loop) This is the plugin's loop: CMA's outcome primitive self-grades the agent's work in an isolated context and feeds failing verdicts back for the next attempt. It is always bounded by maxiterations (1..20) — never "improve forever". See ../../references/loops-and-workflows.md and the outcome section of ../../references/cma-primitives.md. Workflow 1. Define the outcome. The rubric is required; maxiterations is clamped to 1..20. Send the payload as a user.defineoutcome event (append to the running session). 2. Read every verdict first. Tables the rubric outcome and recommends: SHIP (satisfied), SHARPEN then re-run (needsrevision), ESCALATE (maxiterationsreached / failed), RESUME (interrupted). With ≤1 iteration left it flips to "make the single highest-value fix or escalate now". 3. Loop invariant. Each iteration must move ≥1 rubric line fail→pass, or the run halts at the cap and escalates. Don't burn the budget on cosmetic edits. 4. Once a version passes, run held-back eval. Held-back cases (never seen during iteration) run in parallel, capped at the 25-thread CMA ceiling, each graded against the same rubric. 5. Decide. SHIP as v0, or promote to a scheduled deployment (Phase 4). Record the verdict on the goal: goalstate.py set --phase run-without-you. Hard rules Bounded, always. No outcome without a maxiterations cap. Read the verdict before acting. The grader's explanation drives the next move. Held-back cases are held back. Never grade generalization on cases the agent already iterated against. Forcing-question library (recommend + cite) 1. "What are the 3–5 rubric lines?" Recommend: grounded, checkable criteria. Cite: cma-primitives.md (rubric required). 2. "How many iterations before you'd rather look yourself?" Recommend: 3–5. Cite: loops-and-workflows.md (bounded loop). 3. "On a fail, sharpen the prompt or the tools?" Recommend: whichever rubric line failed points to. Cite: verdictreader next-move table. 4. …

How to use it

Reference it in AdaL, Claude Code, Cursor or any coding agent — nothing to install:

@skills alirezarezvani/grade-iterate--8ba7a9

View the source on GitHub

Browse the @skills marketplace