Skip to content
Back to skills

Plan Quality Verifier

ASecurity

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.

  • 40 stars
  • 0 votes
  • 0 copies
  • 3 views
  • Added September 6, 2026
testingjavascriptrustgojavabash

Security analysis

A100/100

Pro scans all 10 files and shows the line behind each finding

Scanned September 6, 2026

npx -y skills add oimiragieo/agent-studio --skill plan-quality-verifier --agent claude-code

Installs 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 with every re-scan.

Security grade badge for Plan Quality Verifier
[![Security: A — Skills Directory](https://www.skillsdirectory.com/api/skills/oimiragieo-plan-quality-verifier/badge)](https://www.skillsdirectory.com/skills/oimiragieo-plan-quality-verifier)

More formats (shields.io, HTML) on the badges page. Keep it an A: scan every change in CI with Pro.

Download with Pro
SKILL.md
---
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`

Files in this skill

  • SKILL.md5.9 KB
  • commands/plan-quality-verifier.md121 B
  • hooks/post-execute.cjs270 B
  • hooks/pre-execute.cjs387 B
  • references/research-requirements.md1.7 KB
  • rules/plan-quality-verifier.md1.5 KB
  • schemas/input.schema.json639 B
  • schemas/output.schema.json1.4 KB
  • scripts/main.cjs2.1 KB
  • templates/implementation-template.md195 B

Attribution

Is this your skill, or is something wrong with this listing? Request removal or report an issue. Author removals are honored within 72 hours.

Comments

Loading comments…