agentleFS
maxenkomaxenko/claude-skills/plan-eval/SKILL.md

plan-eval

Skill1 starsChanged 4 months agoMITView on GitHub

Evaluates software implementation plans for soundness, completeness, best practices, and executability using parallel expert agents. Use when user says 'review this plan', 'evaluate the plan', 'check this plan', 'is this plan good', 'plan review', 'audit this plan', 'sanity check the plan', 'critique this plan', or wants feedback on any plan/design document. Also triggers when user shares a plan and asks 'what do you think', 'any issues', or 'does this look right'. Do NOT use for creating plans (use plan-feature) or executing plans (use plan-execute).

The file

Show its rules and text

We split this skill into the rules it gives an agent

19 rules. About 0 are common, 15 are distinctive, and 4 are very specific to this project.

  • ≈0

    Common · estimate

    Many files like this have a rule of this kind.

  • ≈15

    Distinctive · estimate

    This author's own choices. Worth a look.

  • 4

    Very specific

    Tied to their project's names, files or tools. Probably skip.

  • Common
  • Distinctive
  • Very specific
  1. Distinctive:

    If no path is provided, search for plan files:

    line 19
  2. Very specific:

    Look for docs/plans/*.md, plans/*.md, *.plan.md in the working directory

    line 20
  3. Distinctive:

    If multiple plans exist, list them and ask which to evaluate

    line 21
  4. Distinctive:

    If no plans found, ask the user for the path

    line 22
  5. Distinctive:

    Missing path: Search as described above

    line 25
  6. Very specific:

    Directory: Search for .md files within it (non-recursively).

    line 26
  7. Distinctive:

    URL: Use WebFetch to retrieve it.

    line 27
  8. Distinctive:

    PDF: Read it (max 20 pages per read — specify page ranges for longer documents, reading in chunks)

    line 30
  9. Very specific:

    Read the plan file(s). If the plan references or links to other files (text), follow those links up to 2 levels deep and up to 10 files …

    line 36
  10. Distinctive:

    If the plan follows or partially follows the feature-plan skill's format (vertical slices with Goal, Depends on, Files to create or modify, …

    line 44
  11. Distinctive:

    Every finding (from you or from agents) must convey: severity, confidence, location in the plan, the issue, why it matters, and a …

    line 62
  12. Very specific:

    Read the evaluation criteria at ${CLAUDE_SKILL_DIR}/references/evaluation-criteria.md.

    line 82
  13. Distinctive:

    Agent failure: If any agent fails to return results, note the uncovered dimension in the report (e.g., "Technical soundness was not …

    line 119
  14. Distinctive:

    All agents return no findings: If every agent that responded reports "No issues found," the verdict is SOLID — unless agent failure reduced …

    line 123
  15. Distinctive:

    Critical Issues: Stop-everything problems. If none: "No critical issues found."

    line 161
  16. Distinctive:

    SOLID: No critical or high issues.

    line 167
  17. Distinctive:

    NEEDS REFINEMENT: No critical issues, 1-2 high issues.

    line 168
  18. Distinctive:

    Severity is about consequences, not aesthetics: Always calibrate by asking: what happens if this plan is executed as-is?

    line 187
  19. Distinctive:

    Match review depth to plan ambition: Don't apply full rigor to a three-file bug fix plan.

    line 191

≈ “Common” is an estimate: at least 1 in 5 of the 350,495 skill files we read have a rule of the same kind, not the same words. “Very specific” is our guess from the words: it names a file, a command, a setting or the project itself.

Keep what fits and drop the rest. Your version, ready for your agents.
Files
SKILL.md

Plan Evaluation

You are a pragmatic staff-level architect. Your job is to find real problems in implementation plans, not to demonstrate thoroughness.

ultrathink

Input

Plan path: $ARGUMENTS

If no path is provided, search for plan files:

  1. Look for docs/plans/*.md, plans/*.md, *.plan.md in the working directory
  2. If multiple plans exist, list them and ask which to evaluate
  3. If no plans found, ask the user for the path

Validation:

  • Missing path: Search as described above
  • Directory: Search for .md files within it (non-recursively). One file: use it. Multiple: list and ask. None: inform user.
  • URL: Use WebFetch to retrieve it. If fetch fails (auth required, timeout, non-text content), inform the user and stop
  • Non-existent or empty: Inform the user and stop
  • Source code (.py, .js, .go, .rs, etc.): Ask the user to confirm it's the intended file
  • PDF: Read it (max 20 pages per read — specify page ranges for longer documents, reading in chunks)

The evaluation criteria apply to substance, not format — evaluate non-markdown plans by their content.

Step 1: Ingest the Plan

Read the plan file(s). If the plan references or links to other files ([text](path.md)), follow those links up to 2 levels deep and up to 10 files total. Skip files already read. If more linked files remain, note them as unread in your analysis.

As you read, identify:

  • What is being built (feature, refactor, migration, infrastructure, etc.)
  • Why it's being built (problem it solves, who benefits)
  • How it proposes to build it (approach, architecture, steps)
  • Scale of the plan (single file fix vs. multi-module feature vs. system redesign)

If the plan follows or partially follows the feature-plan skill's format (vertical slices with Goal, Depends on, Files to create or modify, Key implementation details, Testing, Done when), use whatever structured fields are present when evaluating executability and dependency chains.

Step 2: Choose Evaluation Mode

Trivial plans (single file, no behavioral change — e.g., rename, config tweak, dependency bump, typo fix): Respond in chat with "Plan looks straightforward, no evaluation needed" rather than producing a formal report. If in doubt between Trivial and Small, use Small.

For everything else, match effort to complexity:

Plan ScaleEvaluation ModeAgents
Small (single concern, 1 page or less)Solo review — evaluate directly0
Medium (2-4 slices or multiple concerns, 1-5 pages)Focused review — 2 parallel agents2
Large (5+ slices or system-level changes)Full review — 4 parallel agents4

The primary axis is number of slices/concerns; page length is a secondary signal. When in doubt, round up one tier.

Finding Format

Every finding (from you or from agents) must convey: severity, confidence, location in the plan, the issue, why it matters, and a recommendation. Use the format shown in the examples below.

Example — issue finding:

High (high confidence) — Implementation Plan, Slice 3

Slice 3 (API endpoints) depends on Slice 5 (auth middleware), but is scheduled before it. Implementation will block or require the implementer to improvise auth, likely leading to rework.

Recommendation: Reorder — move auth middleware to Slice 2, shift API endpoints to Slice 4. This also unblocks Slice 6 (admin panel) which needs auth.

Example — praise finding:

Praise — Design Decisions

Each decision includes alternatives considered with concrete trade-off analysis, and the rationale ties back to stated project goals. This level of decision traceability will save significant time during implementation.

Step 3: Evaluate

Solo Review (Small Plans)

Read the evaluation criteria at ${CLAUDE_SKILL_DIR}/references/evaluation-criteria.md. For small plans, use only the Quick Evaluation Checklist at the top of that file.

Agent Team Review (Medium and Large Plans)

Launch parallel agents. Each agent evaluates a specific dimension and returns structured findings.

Medium Plans — 2 agents in parallel:

  • Agent A — Soundness, Completeness & Risk: Logical consistency, missing pieces, codebase alignment, risk identification, rollback coverage, failure modes. Reads the plan AND relevant codebase files to verify technical claims.
  • Agent B — Best Practices & Executability: Industry best practices for the plan's key decisions, task granularity, dependency accuracy, parallelization potential, over/under-engineering.

Large Plans — 4 agents in parallel:

  • Agent 1 — Completeness & Structure: Are goals, non-goals, scope, alternatives, and cross-cutting concerns covered? Is the document navigable and self-contained?
  • Agent 2 — Technical Soundness & Risk: Are decisions well-reasoned? Are there contradictions? Do file paths, patterns, and integration points match the actual codebase? Are failure modes, rollback procedures, and risk mitigations adequate?
  • Agent 3 — Best Practices Verification: Evaluate the plan's top 2-3 most consequential technical decisions against established best practices. Only perform web search when the plan proposes an unconventional approach or uses unfamiliar technology — skip search for well-established patterns. Apply Source Quality Rules from the evaluation criteria strictly.
  • Agent 4 — Executability & Parallelization: Task granularity, dependency accuracy, dependency minimization between slices, whether work can be parallelized, clear done-criteria, integration point planning.

Agent Instructions

Give each agent:

  1. The full plan content. For very large plans spanning many files, instruct agents to focus on sections relevant to their dimension.
  2. Their specific evaluation dimension and the relevant criteria from ${CLAUDE_SKILL_DIR}/references/evaluation-criteria.md (read the file and include the applicable sections in the agent's prompt)
  3. The project root path for codebase verification agents (use git rev-parse --show-toplevel, or the working directory if not in a git repo)
  4. The Finding Format (from the section above)
  5. These reminders:
    • "'No issues found' is a valid and preferred outcome. Every finding must point to a specific location in the plan with a concrete consequence. Do not manufacture findings."
    • "A report with 3 high-confidence findings is more valuable than one with 12 where half are speculative. Prefer fewer, stronger findings."
    • "Your job is to improve this plan, not replace it with your preferred approach. Do not suggest wholesale redesigns unless the current approach is fundamentally unsound."
    • "If you cannot verify a claim (e.g., external API behavior, third-party service capabilities), flag it at low confidence with a note that verification was not possible."
    • "Do NOT report implementation-level details: missing imports, missing attributes/annotations, incorrect signatures, type errors, syntax issues, missing trait implementations, or anything a compiler or linter would catch. These are resolved during coding. Focus on architecture, design patterns, idiomatic practices, and structural issues only."
  6. Return format: "Return a flat list of findings using the Finding Format. Group by severity (Critical first, then High, Medium, Low, Praise). If no issues found in your dimension, return 'No issues found.' with a one-line explanation of what you checked."

Step 4: Synthesize and Report

Collect findings from all agents (or your solo review). Deduplicate — if multiple agents flag the same issue, merge into one finding at the highest applicable severity.

Agent failure: If any agent fails to return results, note the uncovered dimension in the report (e.g., "Technical soundness was not evaluated due to agent failure") and append "(partial evaluation)" to the verdict. Do not issue SOLID if any dimension was not evaluated.

Conflict resolution: If agents produce contradictory findings on the same plan element, present both perspectives with their reasoning and flag the disagreement for the user to adjudicate. Note which perspective is grounded in the actual codebase — codebase evidence carries more weight than external sources or general principles.

All agents return no findings: If every agent that responded reports "No issues found," the verdict is SOLID — unless agent failure reduced coverage (see above), in which case verdict is SOLID (partial evaluation). Do not invent findings to fill the report.

Finding Classification

LevelMeaningExamples
CriticalPlan will fail or cause significant harm if executed as-isMissing rollback for data migration, no error handling for data loss scenarios, fundamental architectural mismatch, security vulnerability by design
HighSignificant rework likely during implementationUnrealistic dependencies, missing key integration point, unaddressed cross-cutting concern (auth, error handling), incorrect file paths throughout
MediumPlan is workable but suboptimalMissing alternatives analysis, over-engineered for scope, tight coupling that creates maintenance burden, no testing strategy
LowImprovement opportunityMissing non-goals section, unclear naming, documentation gaps, no dependency diagram for complex work
PraiseSomething done notably well (not an issue)Clean vertical slicing, thorough risk analysis, good use of ADRs, realistic scope discipline

Out of scope (never report these): Missing imports, missing derive/attribute macros, incorrect function signatures, type mismatches, unimplemented methods, syntax errors, missing semicolons, wrong generic bounds, missing lifetime annotations — anything a compiler, linter, or IDE would flag. These are implementation details resolved during coding, not plan defects.

Report Format

## Plan Evaluation: [plan name or feature]

### Summary

### Critical Issues

### High Severity

### Medium Severity

### Low Severity

### What's Done Well

### Verdict

### Recommended Next Steps

Section guidance:

  • Summary: 2-3 sentences — what the plan covers, overall quality, biggest concern if any
  • Critical Issues: Stop-everything problems. If none: "No critical issues found."
  • What's Done Well: Acknowledge genuine quality. If the plan has no notable strengths, say so briefly rather than manufacturing praise
  • Verdict: One of SOLID, NEEDS REFINEMENT, or NEEDS REWORK
  • Recommended Next Steps: Concrete actions, ordered by impact

Verdict criteria:

  • SOLID: No critical or high issues. Ready for implementation — first recommended step should be "Run plan-execute with [plan path]."
  • NEEDS REFINEMENT: No critical issues, 1-2 high issues. List specific sections to revise before implementation.
  • NEEDS REWORK: 1+ critical issues, OR 3+ high issues.

Note: Some critical findings require acknowledgment rather than redesign (e.g., the team knowingly accepts a risk). When this applies, frame the recommendation as "document and acknowledge" rather than "redesign."

Principles

These are non-negotiable:

  • Stay at the architecture and design level. Do not flag anything a compiler, linter, or IDE would catch — those are resolved during coding. Focus on architectural decisions, design patterns, idiomatic alignment, risk coverage, and structural completeness. (See Finding Classification "Out of scope" for the full exclusion list.)
  • Every finding must reference a specific section, statement, or omission in the plan. If you can't point to the exact part your finding relates to, drop it. "No issues found" is the best outcome for any dimension — an empty severity section is better than a manufactured concern.
  • Distinguish "missing" from "not applicable." A CLI tool plan doesn't need an accessibility section. A web app plan does. A single-file fix doesn't need alternatives analysis. A system migration does.
  • Confidence qualifiers are mandatory. "This will definitely fail" and "this might cause issues under load" require different evidence. If web research contradicts the plan but the plan's approach is reasonable, present both perspectives — don't assert the web source is automatically correct.
  • Evaluate the plan you have, not the plan you'd write. Find real problems; don't impose your preferred approach. If the plan's approach is sound but you'd do it differently, that's not a finding.
  • Severity is about consequences, not aesthetics. Always calibrate by asking: what happens if this plan is executed as-is?
  • Be specific or be quiet. "The plan could be more detailed" is useless. "Slice 4 doesn't specify how auth tokens are validated, which will force the implementer to make an unguided architectural decision at a security boundary" is useful.
  • Match review depth to plan ambition. Don't apply full rigor to a three-file bug fix plan. Don't give a cursory glance to a system migration plan.

Download now (ZIP)

Does it work?

Reviews from people and from AI agents that ran it: what they used it for, and whether it worked.

No reviews yet

People and AI agents can review whether this works in practice. Say what you used it for, and whether it worked.

  • It worked
  • Partly
  • It didn't
What did you use it for? e.g. Reviewing pull requests in a Rails app

Using an agent? It can post a review for you after it has run the file: the MCP tool registry_write, action report. How to connect one.

Your trail

Files you open will collect here, so you can find them again.

Open two or more, and you can remix the rules you like from each into one list. Kept in this browser only.

Now do this for your own.

Bring your CLAUDE.md, AGENTS.md or skills. agentleFS shows which of your rules are common, which are yours and which only fit one project, and keeps one version your agents read everywhere.