Skip to content
Development
Skill

/run-iteration-eval

Run the Logic-Lens content-eval pipeline for one iteration and produce a scored summary.json — use to measure a skill change. Wraps scripts/run-content-evals.sh (runner, costs tokens) and scripts/grade-iteration.py (grader, free, re-runnable). ALWAYS sync the plugin cache first.

From plugin
logic-lens
2511 skills3 agents6 commands1 hook

Claude Code

$ npx -y skills add hyhmrright/logic-lens --skill run-iteration-eval --agent claude-code

SKILL.md

run-iteration-eval.SKILL.md
name: run-iteration-eval
description: Run the Logic-Lens content-eval pipeline for one iteration and produce a scored summary.json — use to measure a skill change. Wraps scripts/run-content-evals.sh (runner, costs tokens) and scripts/grade-iteration.py (grader, free, re-runnable). ALWAYS sync the plugin cache first. Use when the user wants to "run the evals", "score this iteration", "measure the skill change", "smoke-test before the full run", or "re-grade existing outputs".
disable-model-invocation: true

run-iteration-eval

Measures a skill change by running the content cases in `evals/content/v2/evals-v2.json` through `claude -p` and grading the outputs. Outputs land in `skills-workspace/iteration-<TAG>/`.

The runner and grader are split on purpose: **running** calls Claude and costs tokens; **grading** is pure regex Python and is free to re-run on outputs that already exist. Never re-run the runner just to re-score — re-grade instead.

Steps

1. **Sync the cache first — non-negotiable.** The runner loads the skill from the plugin cache, not `skills/`. Run the `sync-skill-cache` skill (or its script directly). If you skip this, the eval grades the previously-published skill and the entire run is wasted:

   bash .claude/skills/sync-skill-cache/scripts/sync-cache.sh

2. **Pick a scope.** Full runs cost real tokens; scope down while iterating:

   SMOKE=1 bash scripts/run-content-evals.sh              # one case per mode (~$0.10) — fast sanity
   CASES="200 201 202" bash scripts/run-content-evals.sh  # only the cases a diagnosis flagged
   TAG=myfix bash scripts/run-content-evals.sh            # full run, named tag
   bash scripts/run-content-evals.sh                      # full run, tag = git short SHA

The runner is idempotent — a case with an existing `output.md` is skipped. Delete the `eval-<id>/` dir to force a re-run of that case.

3. **Read `summary.json`** in the iteration dir. It carries overall pass rate plus the per-mode and **per-subscore (logic vs format)** breakdown. The `logic` subscore reflects reasoning quality; `format` reflects Output-Skeleton compliance and is the historical bottleneck with high single-run variance. Judge a change on the right subscore — a format wobble is not a reasoning regression.

4. **Re-grade without re-running** (free) after editing the grader or to recompute on existing outputs:

   python3 scripts/grade-iteration.py skills-workspace/iteration-<TAG>

5. **Single-iteration grade without the full suite** — when you already have outputs and only want the score table, `grade-iteration.py <iteration-dir>` is the cheapest path (see `scripts/README.md`).

Variance caveat

logic-review single-run scores are variance-dominated (see project memory). One run is a signal, not a verdict — for a decision near the margin, run the affected cases 2–3× or widen the case set before concluding a change helped or hurt. Hand the result to `iteration-guard` for the ship/rollback call rather than eyeballing a single number.

Read more
@hyhmrright
Ships withlogic-lens

Logic-first bug investigation for coding assistants: establish behavioral contracts, follow real callers and dependencies, trace failure paths, and report reproducible violations with evidence.

2511 skills3 agents
Get the whole plugin

Stars on GitHub

Momentum

stars in total
25
Star history of hyhmrright/logic-lens on GitHub, a chart by star-history.com

Other skills on logic-lens.

bump-version

bump-version

Bump the Logic-Lens version across all six metadata locations at once (package.json, the four plugin manifests, and the README…

iterate-skill

iterate-skill

Run the Logic-Lens skill-improvement loop end to end — baseline → diagnose failures → edit → sync cache → re-eval → verify net…

new-skill

new-skill

Scaffold a new logic-* skill in the Logic-Lens repo and wire it into every place a skill must be registered, so no step is…

sync-skill-cache

sync-skill-cache

Sync the Logic-Lens working-copy skills/ into the installed plugin cache so content-evals test the EDITED skill, not the last…

logic-diff

logic-diff

Compare two code versions for semantic equivalence via semi-formal tracing of both versions side-by-side. Trigger when the user…

logic-explain

logic-explain

Explain what a specific piece of code actually does for a given input by producing a step-by-step execution trace…

More skills from other plugins.

brainstorming
Auto-invoked

brainstorming

You MUST use this before any creative work - creating features, building components, adding functionality, modifying behavior, or…

@obra@obraInstall Skill
ask-matt

ask-matt

Ask which skill or flow fits your situation. A router over the skills in this repo.

skills11d309k
@mattpocock@mattpocockInstall Skill
accessibility
Auto-invoked

accessibility

Design, implement, and audit accessible UI to WCAG 2.2 Level AA across Web, iOS, and Android — semantic ARIA roles and labels,…

ecc12d293k
@affaan-m@affaan-mInstall Skill
compiler-commit

compiler-commit

Use when you want to verify compiler changes and commit with the correct convention. Runs tests, lint, and format, then commits…

react2d252k
@facebook@facebookInstall Skill

Questions about run-iteration-eval.

Which coding agents can use run-iteration-eval?
run-iteration-eval installs in Claude Code, Codex, Cursor, Gemini CLI, GitHub Copilot, OpenCode and Windsurf with the skills CLI, using each agent's flag shown on this page. Flowy's auto-invocation, which fires a skill when your prompt matches, runs in Claude Code only.