skills/prd-generation/SKILL.md
# Skill: PRD Quality Evaluator > Validates a PRD against the standard template before it's handed to engineering. Catches missing fields, vague specs, orphan screens, undefined interactions, missing reuse/debt framing, and TBDs without owners. Runs automatically before PRD finalization — the last gate before the ADLC pipeline consumes it. --- ## Trigger Runs automatically when the PRD Agent completes Phase 7 (Review & Finalize). Also runnable on-demand against any PRD document. --- ## Inpu
npx skillsauth add bigeasyfreeman/adlc skills/prd-generationInstall this skill globally with one command. Works with Claude Code, Cursor, and Windsurf.
3 of 9 scanners reported clean
Some scanners were skipped, did not run, or reported a non-clean status. Review each row below.
Validates a PRD against the standard template before it's handed to engineering. Catches missing fields, vague specs, orphan screens, undefined interactions, missing reuse/debt framing, and TBDs without owners. Runs automatically before PRD finalization — the last gate before the ADLC pipeline consumes it.
Runs automatically when the PRD Agent completes Phase 7 (Review & Finalize). Also runnable on-demand against any PRD document.
{
"adlc_mode": "prd_only | prd_and_decompose",
"prd_content": "string (full PRD markdown)",
"strict_mode": true
}
{
"verdict": "PASS | PASS_WITH_WARNINGS | FAIL",
"score": {
"total": "0-100",
"by_section": {
"goals_metrics": "0-100",
"out_of_scope": "0-100",
"personas": "0-100",
"screens": "0-100",
"dependencies": "0-100"
}
},
"findings": [
{
"severity": "critical | major | minor",
"section": "string",
"finding": "string",
"recommendation": "string",
"blocks_handoff": true
}
],
"engineering_readiness": {
"screens_ready_for_eng": ["Screen 2", "Screen 3"],
"screens_not_ready": ["Screen 1: no field-detail table", "Screen 5: OPEN status"],
"phase_1_candidates": ["screens with IN PROGRESS or FULLY DESIGNED status"],
"missing_for_codegen": ["items the ADLC system needs but PRD doesn't provide"]
},
"decomposition_readiness": {
"scope_lock_epics": ["string"],
"decision_gates_required": ["string"],
"implementation_primitives": ["string"],
"validation_tasks_required": ["string"]
},
"summary": "string"
}
| Check | Points | Severity if Missing | |-------|--------|-------------------| | ≥ 2 business goals stated | 5 | major | | ≥ 3 success metrics defined | 5 | critical | | Every metric has a definition column | 3 | major | | Every metric has a target (or TBD with owner + deadline) | 5 | critical | | At least 1 metric measures adoption | 1 | minor | | At least 1 metric measures value/engagement | 1 | minor |
Common failures:
| Check | Points | Severity if Missing | |-------|--------|-------------------| | ≥ 3 out-of-scope items | 5 | major | | Each item has rationale (why it's out) | 5 | major | | Each item notes where it's covered (other PRD, v2, deliberate exclusion) | 3 | minor | | No ambiguous items ("maybe in v1") | 2 | critical |
Common failures:
| Check | Points | Severity if Missing | |-------|--------|-------------------| | ≥ 2 distinct personas | 4 | major | | Each persona has a name and description | 3 | minor | | Each persona has ≥ 2 user stories (As/I want/So that) | 5 | critical | | User stories are specific, not generic | 3 | major |
Common failures:
| Check | Points | Severity if Missing | |-------|--------|-------------------| | Every screen has a name | 2 | critical | | Every screen has a status badge | 3 | critical | | Every screen has a trigger (what causes it to appear) | 3 | major | | Every screen has a 1-2 sentence description | 2 | minor | | Every screen has a field-detail table | 8 | critical | | Field-detail table has ≥ 5 fields | 3 | major | | Every CTA specifies what it opens/triggers | 5 | critical | | Sub-variants are specified for multi-state screens | 3 | major | | Design reference (Figma link/frame name) | 2 | minor | | No orphan screens (every screen reachable from a flow) | 2 | major | | Error states / empty states addressed | 2 | minor |
Common failures:
| Check | Points | Severity if Missing | |-------|--------|-------------------| | ≥ 1 dependency listed | 3 | major | | Each dependency names what's needed | 3 | critical | | Each dependency names which screens it affects | 3 | major | | ≥ 1 risk identified | 3 | major | | Risks have likelihood and impact | 3 | minor |
Common failures:
When repo or stack context was available during PRD authoring, the evaluator must flag:
Common failures:
Beyond quality, this evaluator assesses whether the PRD is ready for the ADLC pipeline specifically. It checks what the Build Brief Agent, Codebase Research, QA Skill, and Codegen Assembly need:
| ADLC Consumer | What It Needs from PRD | How Evaluator Checks | |--------------|----------------------|---------------------| | Build Brief Agent | Capabilities, out of scope, personas, screen specs, reuse/debt boundaries | Sections 1-5 present and constraints/risks specify reuse or debt where relevant | | Codebase Research | Dependencies, integration points, known blockers | Section 5 has specific dependencies and current-system risks | | QA Skill | Testable behaviors per screen | Field-detail tables have specific values (not "TBD") | | Codegen Assembly | Precise field specs | Every CTA, input, and display element has defined behavior | | Phase planning | Screen status badges | Every screen has a status badge | | Ticket decomposition | Scope locks, Type 1 decisions, reuse boundaries, validation tasks | PRD names primitives, non-goals, blockers, and evidence expectations clearly enough to decompose without guessing |
Output: engineering_readiness — lists which screens are ready for engineering (status IN PROGRESS or FULLY DESIGNED + complete field-detail table) and which are not. This directly feeds the Build Brief's Phase 1/2/3 scoping.
Output: decomposition_readiness — lists the scope-lock epics, required decision gates, implementation primitives, and automatic validation tasks the PRD implies. In prd_and_decompose mode, missing decomposition readiness is blocking because it would force coding agents to invent scope or primitives later.
evaluate_prd{
"name": "evaluate_prd",
"description": "Evaluate a PRD against the standard template for completeness, specificity, and engineering readiness",
"inputSchema": {
"type": "object",
"properties": {
"prd_content": {
"type": "string",
"description": "Full PRD markdown"
},
"strict_mode": {
"type": "boolean",
"default": true,
"description": "If true, TBDs without owners are critical findings"
}
},
"required": ["prd_content"]
}
}
# Evaluate a PRD
adlc-prd evaluate --input ./prd.md --output ./eval-report.md
# Evaluate in strict mode (blocks on any TBD without owner)
adlc-prd evaluate --input ./prd.md --strict
# Check engineering readiness only
adlc-prd ready --input ./prd.md
contract_version and follows docs/specs/skill-contract-versioning.md.docs/schemas/prd-template.schema.json before scoring readiness.session_id, brief_id, phase, and stop_reason for downstream orchestration.development
Orchestration skill: chains the full ADLC Build Loop. PRD → Brief → Council → Scaffold → Codegen → LDD → TDD → Council → PR. Use when implementing a new feature end-to-end.
development
# Skill: Helm & ArgoCD Deployment > Validates Helm charts and generates ArgoCD Application manifests when the ADLC pipeline produces infrastructure or service code. Ensures every deployable artifact has correct chart structure, environment-specific values, and a GitOps-ready Application manifest before code review. --- ## Why This Exists Without deployment validation in the pipeline, common failures slip through to production: - **Helm charts fail `helm template`** because of missing values,
testing
Decide whether an intersecting verifier actually exercises the semantic change.
development
# Skill: UX Flow Builder > Generates user flow diagrams (Mermaid) from PRD personas and screen specifications. Surfaces dead ends, missing screens, and disconnected flows before design or engineering starts. Helps PMs think in screens, not features. --- ## Trigger - Automatically during PRD Phase 4 (Personas & Flows) to visualize the user journey - On-demand when the PM says "show me the flow" or "map the user journey" - During PRD evaluation to verify screen connectivity --- ## Input ```