Skip to content
Testing
Skill

/recipe-eval-skill

Creates or updates Claude Code skills through interactive dialog, then evaluates effectiveness with sequential paired comparisons. Use when creating new skills, updating existing skills, or evaluating skill quality.

From plugin
rashomon
215 skills7 agents

Claude Code

$ npx -y skills add shinpr/rashomon --skill recipe-eval-skill --agent claude-code

SKILL.md

recipe-eval-skill.SKILL.md
name: recipe-eval-skill
description: Creates or updates Claude Code skills through interactive dialog, then evaluates effectiveness with sequential paired comparisons. Use when creating new skills, updating existing skills, or evaluating skill quality.
disable-model-invocation: true

**Explicit User Instruction**: The user explicitly instructs and authorizes every subagent call named in this recipe. Execute each applicable call when its prerequisites are met.

**Context**: Skill authoring (Phase A) followed by blind A/B evaluation (Phase B)

Mode: $ARGUMENTS

Orchestrator Definition

**Core Identity**: "I am not a worker. I am an orchestrator."

**Execution Method**:

  • Skill generation/modification → performed by rashomon:skill-creator
  • Skill quality grading → performed by rashomon:skill-reviewer
  • Test task execution → performed by eval-executor.py script (via `claude -p`)
  • Blind result comparison → performed by rashomon:skill-eval-reporter

Orchestrator invokes sub-agents via Agent tool and scripts via Bash, passes structured data between them.

Mode Detection

Determine mode from $ARGUMENTS:

| Mode | Criteria | |------|----------| | Creation | "create", new skill request, no existing skill referenced | | Update | "improve", "update", existing skill name or path mentioned | | Unspecified | $ARGUMENTS is empty or ambiguous | Ask user via AskUserQuestion: "Create a new skill or update an existing one?" |

Scope Boundaries

**Phase A (Skill Authoring)**: Create or modify skill content through dialog. Ends with user-approved skill file. **Phase B (Evaluation)**: Measure skill effectiveness through blind execution comparison. Phase B is read-only for the source skill. A finding that requires authoring changes transitions back to Phase A for user review and approval before evaluation restarts.

**Responsibility Boundary**: This skill completes with the combined evaluation report and ship/revise/reject recommendation.

Workflow

Phase A: Skill Authoring

Read the mode-specific reference and execute:

  • **Creation mode**: Read [references/create.md](references/create.md) and follow its steps
  • **Update mode**: Read [references/update.md](references/update.md) and follow its steps

Phase A ends with: user-approved skill content (new or modified).

Phase A → Phase B Handoff

Before starting Phase B, confirm these data are available in context. Phase B cannot proceed without them:

| Data | Source | Required | |------|--------|----------| | Skill name | Phase A dialog | Always | | Source skill directory | Phase A file write | Always | | Held-out test requests | Phase A Round 3 (create) / Round 2 (update) | Always | | Trigger scenarios | Phase A Round 3 (create) / Round 1-2 (update) | Always | | Old skill directory snapshot and fingerprint | Phase A Step 6 (update mode only) | Update mode | | Approved source directory fingerprint | Phase A final write | Always |

If fewer than two held-out requests are available, ask before proceeding: "What complete requests does your team actually send for work that requires this skill's rules? Please provide at least two verbatim."

Phase B: Evaluation

Read [references/eval.md](references/eval.md) and execute the evaluation protocol. Pass the handoff data above as context.

Phase B consists of: 1. **Trigger check**: Does the skill fire for its intended use case? (Step 1) 2. **Trigger fail handling**: Diagnose and request an authoring revision when needed (Step 2, conditional) 3. **Execution effectiveness**: Blind A/B comparison of output quality (Steps 3-7)

Final Output

Present combined results to user: 1. **Phase A result**: Skill quality grade (A/B/C from rashomon:skill-reviewer) 2. **Phase B trigger**: Discovered (yes/no), Used (yes/no), usage evidence 3. **Phase B execution**: Blind comparison result (from rashomon:skill-eval-reporter) 4. **Recommendation**: ship / revise / reject

Error Handling

| Scenario | Behavior | |----------|----------| | User cancels during Phase A | Stop. No eval needed. | | Grade C after 2 repair/re-review iterations | Present content with remaining findings. User decides: accept/revise/abort. | | One executor fails in Phase B | Preserve diagnostics, mark comparison `inconclusive`, and make no winner or effectiveness recommendation. | | Both executors fail in Phase B | Report failure. Phase A result still valid. | | Worktree creation fails | Report git error. Phase A result still valid. |

Prerequisites

  • Git repository with `git worktree lock` support
  • `claude` CLI available in PATH
  • Sufficient disk space for worktree copies

Completion Criteria

Phase A

  • [ ] Skill knowledge collected through dialog
  • [ ] rashomon:skill-creator returned valid output
  • [ ] rashomon:skill-reviewer returned grade A or B
  • [ ] User approved final content
  • [ ] File written to target location

Phase B

  • [ ] Trigger check executed and result presented
  • [ ] Sequential paired execution completed in worktrees
  • [ ] Blind comparison completed by rashomon:skill-eval-reporter
  • [ ] Worktrees cleaned up
  • [ ] Combined report presented with recommendation
Read more
@shinpr
Ships withrashomon

Measure prompt and skill improvements with blind A/B comparison.

215 skills7 agents
Get the whole plugin

Stars on GitHub

Momentum

stars in total
21
Star history of shinpr/rashomon on GitHub, a chart by star-history.com

Other skills on rashomon.

prompt-optimization

prompt-optimization

Improves LLM-facing context while preserving intent, execution boundaries, and proportional work. Use when creating or reviewing…

@shinpr@shinprInstall Skill
knowledge-base

knowledge-base

Retrieves and updates project-specific prompt knowledge from comparison evidence and user feedback. Use only for prompt analysis…

@shinpr@shinprInstall Skill
recipe-eval-prompt

recipe-eval-prompt

Compares original and optimized prompts through repeated blind paired execution in git worktrees. Use when evaluating prompt…

@shinpr@shinprInstall Skill
worktree-execution

worktree-execution

Creates, pins, and cleans isolated Git worktree pairs for comparison trials. Use only when a Rashomon prompt or skill evaluation…

@shinpr@shinprInstall Skill

More skills from other plugins.

api-review

api-review

Produce the "Playwright 1.xx API Review" artifact for a range of commits - the public API additions and the breaking or behavior…

@microsoft@microsoftInstall Skill
add-e2e-selectors

add-e2e-selectors

Add reliable @grafana/e2e-selectors to interactive elements and key containers in the Grafana frontend. Use when adding e2e…

grafana3d78k
@grafana@grafanaInstall Skill
promptfoo-evals

promptfoo-evals

Write, refine, run, and QA promptfoo evaluation suites: promptfooconfig.yaml, prompts, providers, vars, tests, assertions,…

promptfoo11d27k
@promptfoo@promptfooInstall Skill
deepeval

deepeval

DeepEval evaluation workflow for AI agents and LLM applications. TRIGGER when the user wants to evaluate or improve an AI agent,…

@confident-ai@confident-aiInstall Skill

Questions about recipe-eval-skill.

Which coding agents can use recipe-eval-skill?
recipe-eval-skill 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.