Verifies implementation plan quality across 8 dimensions (requirement-coverage, task-completeness, dependency-validity, scope-sanity, artifact-wiring, risk-assessment, testability, estimation-quality) and returns pass/fail with per-dimension scores.
Scanned 9/6/2026
Install to Claude Code
npx -y skills add oimiragieo/agent-studio --skill plan-quality-verifier --agent claude-codeInstalls into .claude/skills of the current project.
Are you the author of Plan Quality Verifier?
Add the live security badge to your README — it updates automatically with every re-scan.
[](https://www.skillsdirectory.com/skills/oimiragieo-plan-quality-verifier)More formats (shields.io, HTML) on the badges page.
---
name: plan-quality-verifier
description: Verifies implementation plan quality across 8 dimensions (requirement-coverage, task-completeness, dependency-validity, scope-sanity, artifact-wiring, risk-assessment, testability, estimation-quality) and returns pass/fail with per-dimension scores.
version: 1.0.0
model: sonnet
invoked_by: both
user_invocable: false
tools: [Read, Bash]
agents: [planner, architect, developer]
category: 'Validation & Quality'
tags: [planning, validation, quality, verification, plan]
source: builtin
trust_score: 100
provenance_sha: 39175016f8e2f8ec
---
# Plan Quality Verifier
## Purpose
Score an implementation plan across 8 quality dimensions and gate execution on a minimum threshold.
Returns `{ pass, score, dimensions }` where `pass` is true when overall score ≥ 60/100.
## When to Use
Invoke this skill before handing off a plan to executing agents:
```javascript
Skill({ skill: 'plan-quality-verifier' });
```
Use when:
- A planner agent has finished drafting an implementation plan
- The router wants to gate execution behind a quality check
- An architect needs to validate a submitted plan before approval
- A developer receives a plan and wants to sanity-check it before starting
## Iron Law
```
NO PLAN EXECUTES WITHOUT PASSING QUALITY VERIFICATION FIRST
```
A plan that scores < 60/100 must be revised before spawning executing agents.
## Workflow
### Step 1: Load the plan content
Read the plan file:
```bash
cat .claude/context/plans/<plan-file>.md
```
**Expected output:** Raw markdown text of the plan.
### Step 2: Run the verifier
```javascript
const { verifyPlan } = require('.claude/lib/validation/plan-quality-verifier.cjs');
const planContent = require('fs').readFileSync('<plan-path>', 'utf8');
const result = verifyPlan(planContent);
console.log(JSON.stringify(result, null, 2));
```
**Expected output:**
```json
{
"pass": true,
"score": 72,
"dimensions": [
{ "name": "requirement-coverage", "score": 8 },
{ "name": "task-completeness", "score": 7 },
{ "name": "dependency-validity", "score": 9 },
{ "name": "scope-sanity", "score": 6 },
{ "name": "artifact-wiring", "score": 7 },
{ "name": "risk-assessment", "score": 8 },
{ "name": "testability", "score": 7 },
{ "name": "estimation-quality", "score": 9 }
]
}
```
**Verify:** `result.pass === true` and `result.score >= 60`.
### Step 3: Interpret results
| Result | Action |
| ------------- | ----------------------------------------------------------------------------- |
| `pass: true` | Proceed — hand off plan to executing agents |
| `pass: false` | Block — return feedback to planner with failing dimensions |
| Score 60-69 | Marginal pass — flag low-scoring dimensions for improvement in next iteration |
| Score < 40 | Hard block — plan needs significant rework before re-evaluation |
### Step 4: Report failing dimensions
When `pass: false`, format feedback:
```
Plan quality check FAILED (score: {{score}}/100)
Failing dimensions (score < 6):
{{#each dimensions where score < 6}}
- {{name}}: {{score}}/10 — needs improvement
{{/each}}
Action required: Revise the plan and re-run verification.
```
## Dimension Reference
| Dimension | What it Measures | Good Signals |
| -------------------- | ------------------------------------------------ | ------------------------------------------------- |
| requirement-coverage | Are all stated requirements addressed by tasks? | Keywords: requirement, feature, user story |
| task-completeness | Do tasks have clear ownership and deliverables? | Keywords: implement, create, update, agent |
| dependency-validity | Are task dependencies explicit and cycle-free? | Keywords: depends, blocked by, after, before |
| scope-sanity | Is the plan scope realistic and bounded? | Phase/wave structure, bounded scope language |
| artifact-wiring | Are output artifacts explicitly listed per task? | Keywords: artifact, output, file, deliverable |
| risk-assessment | Are risks identified with mitigations? | Keywords: risk, mitigation, fallback, contingency |
| testability | Are acceptance criteria and test hooks defined? | Keywords: test, verify, acceptance, criteria |
| estimation-quality | Are effort/time estimates provided? | Keywords: estimate, hours, days, effort, wave |
## Enforcement Hooks
Input validated against `schemas/input.schema.json` before execution.
Output contract defined in `schemas/output.schema.json`.
## Anti-Patterns
- Never skip verification to "save time" — a bad plan costs more to fix mid-execution
- Never treat a marginal pass (60-69) as a strong pass — flag and iterate
- Never modify verifier scoring thresholds per-project — the 60/100 gate is standard
- Never run verifier on a partial/draft plan — only run on complete plans
## Memory Protocol
**Before starting:**
Read `.claude/context/memory/learnings.md` for past plan quality issues and common failures.
**After completing:**
- Failed plan with specific dimension scores → Append to `.claude/context/memory/issues.md`
- New plan pattern discovered → Append to `.claude/context/memory/learnings.md`
> ASSUME INTERRUPTION: Your context may reset. If it's not in memory, it didn't happen.
## Related Skills
- `plan-generator` — Generates plans that should pass this verifier
- `verification-before-completion` — Gates task completion (complements plan gating)
- `tdd` — TDD methodology that complements testability dimension scoring
## Implementation Reference
- Verifier lib: `.claude/lib/validation/plan-quality-verifier.cjs`
- Tests: `tests/lib/validation/plan-quality-verifier.test.cjs`
- Schema: `.claude/skills/plan-quality-verifier/schemas/input.schema.json`
Is this your skill, or is something wrong with this listing? Request removal or report an issue. Author removals are honored within 72 hours.
No comments yet. Be the first to comment!