Skip to content
Back to skills

Epics

ASecurity

Break the PRD into epics and stories, write docs/epics.md, and create GitHub milestones. Use when the user says "create epics", "break down the PRD", or "plan stories".

  • 2 stars
  • 0 votes
  • 0 copies
  • 3 views
  • Added September 19, 2026
ai-agentsgoswifttestinggit

Security analysis

A100/100

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

Scanned September 19, 2026

npx -y skills add rterakedis/leanwheel-skills --skill epics --agent claude-code

Installs into .claude/skills of the current project.

Are you the author of Epics?

Add the live security badge to your README. It updates with every re-scan.

Security grade badge for Epics
[![Security: A — Skills Directory](https://www.skillsdirectory.com/api/skills/rterakedis-epics/badge)](https://www.skillsdirectory.com/skills/rterakedis-epics)

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: epics
description: Break the PRD into epics and stories, write docs/epics.md, and create GitHub milestones. Use when the user says "create epics", "break down the PRD", or "plan stories".
---

# Epics Skill

**Goal:** Decompose PRD into epics and stories; produce `docs/epics.md` and GitHub milestones.

**Role:** Organize around user value, not tech layers.

## Activation

1. Read `docs/prd.md` (required; stop if missing).
2. Read `docs/architecture.md` (required; stop if missing).
3. Check for `docs/epics.md` (may be update run).
4. Confirm: "Read PRD and architecture. Ready to design epics."

## Phase 1 — Design Epic List

Principles:
- User value (not tech layers); independently shippable; natural progression
- 3–6 stories per epic; minimize file churn

Process:
1. Group PRD FRs by user capability
2. Draft: title + one-sentence goal per epic
3. Confirm with user: standalone value? right FRs? correct sequence?
4. Iterate until approved

## Phase 2 — Generate Stories

Rules:
- One dev session per story; split if too large
- Sequential dependencies only (N.3 depends on N.1, N.2 only)
- Create only what needed (no speculation)
- 2–4 testable ACs per story
- Track FR coverage explicitly

For each epic:
1. List FRs it covers
2. Propose breakdown: title + one-liner + FRs satisfied
3. Get user confirmation, adjust
4. Write full entries using template

**Testability foundation story (Apple app projects):** if the architecture targets iOS/iPadOS/macOS, Epic 1 must include an early story (immediately after project scaffold, before the first feature story) that ships the foundation from `docs/setup/swift/testability.md`: the `SeedScenario` registry (empty/firstRun/typical/heavy/edge), the launch-argument contract (`--seed`/`--route`/`--uitest`/`--reset` with in-memory store isolation), the `.onOpenURL` route table `--route` dispatches into, the accessibility-identifier convention, and one XCUITest smoke target with 2–4 tests. Every later story then *keeps* seeds and identifiers current instead of retrofitting them — this story is what makes automated testing cheap for the rest of the project.

**Cross-epic runtime dependency scan (do after drafting all epics, before writing):**

For every epic, ask: does any story in this epic require a runtime artifact — migration, seed data, table, endpoint — that lives in a *later* epic to be end-to-end testable or operationally complete?

Common patterns to check:
- A seed/bootstrap story (e.g. "create admin user") that only becomes useful after a later epic provides the permission model
- A data model story that references a table introduced in a later epic
- An auth epic whose "first login" flow depends on tenant data only created in a later onboarding epic

For each identified cross-epic dependency:
- Add a note to the *earlier* epic's implementation order: "Operationally complete only after Story X-Y ships"
- Add a note to the *later* epic's relevant story: "Unblocks Story A-B from being fully testable"
- If the dependency is a blocker (earlier epic cannot be validated without it), consider reordering epics or splitting the blocking story out into the earlier epic

## Phase 3 — FR Coverage Check

Verify: every FR in ≥1 story, no gaps or overlaps. Show coverage table. Resolve gaps before writing.

## Phase 4 — Write and Sync

1. Write `docs/epics.md` using template.
2. Create GitHub milestones via **ENSURE-MILESTONE** for each epic (skip if GitHub unavailable).
3. If stories are present in `docs/epics.md`: create one GitHub issue per story via **CREATE-ISSUE** with `initial_label: backlog`, attaching each issue to its epic's milestone. Use the story's user story statement + ACs as the issue body. Skip write-back (no story file exists yet).
4. Report: "{E} epics, {S} stories written, {N} GitHub issues created. Next: `/create-story`."

Files in this skill

  • SKILL.md3.8 KB
  • template.md1.3 KB

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…

Newsletter

Get the weekly list of safe new skills, and the ones we pulled.