From product-ops
Write an epic specification with structured metadata, problem statement, success criteria, and scope boundaries. Output includes machine-parseable YAML frontmatter compatible with GitHub Issues and Jira.
How this skill is triggered — by the user, by Claude, or both
Slash command
/product-ops:write-epicThis skill is limited to the following tools:
The summary Claude sees in its skill listing — used to decide when to auto-load this skill
Write a complete epic specification with scope, success criteria, and structured metadata output.
Write a complete epic specification with scope, success criteria, and structured metadata output.
$ARGUMENTS = epic title and high-level description of the initiative.
Title: Scoped and outcome-oriented.
Epic specification body:
## Problem Statement
[1-2 sentences: What problem does this solve? Who is affected? What happens if
we do nothing?]
## Desired Outcome
[1-2 sentences: What does success look like when this epic is complete?]
## Success Metrics
- [Measurable indicator 1]
- [Measurable indicator 2]
## Scope
**In scope:**
- [Capability or deliverable that IS included]
**Out of scope:**
- [Capability explicitly excluded — prevents scope creep]
**Non-goals:**
- [Things this epic intentionally does NOT try to achieve]
## Dependencies and Risks
- **Depends on**: [other epics, services, decisions, or infrastructure]
- **Blocks**: [what downstream work is waiting on this epic]
- **Risks**: [technical unknowns, external dependencies, capacity concerns]
Construct the YAML frontmatter metadata block from the information gathered in steps 1-2:
type: always epictitle: the scoped, outcome-oriented title from step 2labels: prefix with area: for domain labels (e.g., area:auth, area:payments)priority: critical, high, medium, or low — infer from strategic contextsize: XS, S, M, L, or XL — based on scope breadthstatus: always draftdependencies: list of blocked_by objects with reason; omit if noneacceptance_criteria: extract from success metrics and scope boundaries as testable criteriaCheck the overall epic before finalizing:
The markdown body MUST follow this exact section order with ## headings:
## Problem Statement## Desired Outcome## Success Metrics## Scope## Dependencies and RisksAdditional rules:
dependencies): omit entirely if empty. Never include blank bullets, "None", or placeholder text.Print YAML frontmatter followed by the markdown body. Example:
---
type: epic
title: "User Authentication — Email and OAuth Login"
labels:
- "area:auth"
priority: high
size: L
status: draft
dependencies:
- blocked_by: "User database schema migration"
reason: "Auth records require the users table to exist"
acceptance_criteria:
- "Users can register and log in with email and password"
- "Users can authenticate via Google OAuth"
- "Failed login attempts are rate-limited after 5 attempts"
---
## Problem Statement
[...]
## Desired Outcome
[...]
## Success Metrics
[...]
## Scope
**In scope:** [...]
**Out of scope:** [...]
**Non-goals:** [...]
## Dependencies and Risks
[...]
npx claudepluginhub cpliakas/claude-code-digital-coworkers --plugin product-opsCreates epic JSON files with vision (overview, goals, metrics, scope, NFRs) via user dialog, ID generation, and existence checks. Deprecated; use /plan instead.
Creates backlog epics in an issue tracker from a specification document. Accepts optional flags for decomposition into subtasks, updates to existing issues, or dry-run preview.
Creates Epics and Stories from GDD requirements for development planning. Useful when turning design docs into agile artifacts; activates on 'create epics' or 'create stories'.