ClaudeApp/epic/SKILL.md
Use when user says "create issues", "break down PRD", "set up epic", "create Linear tasks", "plan sprint", "convert to issues", "draft ticket", "make ticket", "create ticket for [feature]", or wants to transform PRD user stories into Linear epics and sub-issues. Also triggers when user describes a feature idea without a PRD - will use UX skill to gather requirements first.
npx skillsauth add ash4180/vorbit epicInstall 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.
Transform User Stories (from PRD) into executable Engineering Tasks (Epics/Issues) in Linear.
Key Features:
Auto-detect platform from user input:
notion.so or notion.site) → use NotionOnly verify the detected platform (don't test both):
notion-find to search for "test"/mcp to reconnect, then retry." → STOPAPI-list-spaces to verify connection/mcp to reconnect, then retry." → STOPIF Notion PRD URL provided:
notion-find to fetch the PRDIF Anytype PRD URL or object ID provided:
API-get-object to fetch the PRDIF feature name/description provided (no PRD URL):
Incomplete Requirements (USE UX SKILL): Trigger when ANY of these are true:
>>> READ AND USE THE ux SKILL - MANDATORY <<<
# MUST read this skill file first
cat skills/ux/SKILL.md
Rule: Never skip UX questioning when requirements are incomplete. Vague tickets = bugs.
Adapt to team's existing patterns.
Use Linear MCP:
list_teams - Get team IDlist_issue_statuses - Get actual state nameslist_issue_labels - Get existing labelslist_projects - Get relevant projectAsk user if unclear: "Which team/project?"
Before planning, analyze the codebase thoroughly:
# Search for similar patterns
grep -r "similar-feature" --include="*.tsx" --include="*.ts"
Find existing utilities:
src/utils/, src/lib/, src/helpers/Find existing components:
src/components/ui/, src/components/common/# Find constant files
find . -name "constants*" -o -name "config*" | head -20
If prototype exists with mock data:
mocks/ folders)If feature includes UI components:
/vorbit:design:ui-patterns skill"RULE: If ANY requirement is unclear, use AskUserQuestion.
Create SDD (Specification-Driven Development) document:
CRITICAL: Get approval before creating issues.
Present plan and ask:
DO NOT proceed until user confirms.
1 User Story = 1 Epic
For each User Story, create:
add-user-login)TDD rule: Every issue MUST include ## Test Criteria section. Tests are written FIRST before implementation.
For EACH sub-issue, include all these sections:
| Section | Required | Purpose | |---------|----------|---------| | Why This Is Needed | ✅ | What it does + why it matters | | Related Epic AC | ✅ | Copy relevant ACs from parent epic | | Design Decisions | ⚡ | Technical choices with rationale (when trade-offs exist) | | Required Skills | ✅ | Skills implementer MUST read before coding | | Reuse & Patterns | ✅ | Existing code, utilities, constants | | File Changes | ✅ | Grouped by ADDED/MODIFIED/REMOVED | | Acceptance Criteria | ✅ | Structured scenarios with GIVEN/WHEN/THEN | | Test Criteria | ✅ | TDD requirements |
⚡ = Include when multiple valid approaches exist or security/performance trade-offs are involved
Analyze each sub-issue and add required skills:
| If sub-issue involves... | Add Required Skill |
|--------------------------|-------------------|
| React/Next.js components | react-best-practices |
| UI components, forms, modals, accessibility | ui-patterns |
| Both React + UI work | Both skills |
Rule: Implementer MUST read these skill files before writing any code.
Before creating issues, determine execution order:
Identify dependencies between sub-issues:
Group into phases:
Set blocked_by relationships:
Rule: Always plan phases BEFORE creating issues. Implementation Order in report comes from this planning.
Using plan from Step 7:
parentId = epic IDblocked_by relationships based on Implementation Phases planned aboveMUST include ALL of these sections:
**Epic:** [ABC-100] [Epic title]
**URL:** [Linear URL]
**Sub-issues:** X total (P1: Y, P2: Z, P3: W)
**PRD:** [URL or object ID]
>>> THIS SECTION IS MANDATORY <<<
Show the phased dependency tree so implementer knows execution order:
## Implementation Order
Phase 1 (Parallel - no dependencies)
├── ABC-101: [Issue title]
├── ABC-102: [Issue title]
└── ABC-103: [Issue title]
Phase 2 (depends on Phase 1)
└── ABC-104: [Issue title]
└── blocked by: ABC-101, ABC-102
Phase 3 (depends on Phase 2)
├── ABC-105: [Issue title]
│ └── blocked by: ABC-104
└── ABC-106: [Issue title]
└── blocked by: ABC-104
Rules for dependency tree:
blocked by: for each issue with dependenciesInclude in epic description for implementer to check before closing:
## Verification (Check before closing epic)
### Completeness
- [ ] All sub-issues completed
- [ ] Every Epic AC addressed by at least one sub-issue
- [ ] No orphaned requirements (ACs without implementation)
### Correctness
- [ ] Implementation matches spec scenarios (not assumptions)
- [ ] All THEN clauses from scenarios are satisfied
- [ ] Edge cases from scenarios handled
### Coherence
- [ ] Code follows patterns from "Reuse & Patterns" sections
- [ ] No magic numbers (constants used per spec)
- [ ] Design Decisions rationale still valid
- [ ] Required skills were applied
Rule: Epic is not complete until all verification items pass.
Ready to implement! Start with Phase 1:
→ `/vorbit:implement:implement ABC-101`
Rule: Never finish epic without showing Implementation Order. Implementer needs this to know where to start.
Transform the User Story Goal into a kebab-case title.
| User Story | Epic Title |
| :--- | :--- |
| "As a user, I want to login..." | add-user-login |
| "As an admin, I want to manage users..." | add-admin-user-management |
Rules:
add-, implement-, fix-, update-git checkout -b add-user-loginDescription template:
## User Story
US-XXX: As a [user], I want [goal]...
## Acceptance Criteria (Structured Scenarios)
#### Scenario: [Happy path - primary use case]
- **GIVEN** [initial state/context]
- **WHEN** [user action]
- **THEN** [expected outcome]
- **AND** [additional outcome]
#### Scenario: [Alternative flow or edge case]
- **GIVEN** [initial state/context]
- **WHEN** [action performed]
- **THEN** [expected outcome]
#### Scenario: [Error handling]
- **GIVEN** [initial state/context]
- **WHEN** [invalid action or error condition]
- **THEN** [system SHALL respond with specific behavior]
## Design Decisions (if trade-offs exist)
| Decision | Options Considered | Choice | Rationale |
|----------|-------------------|--------|-----------|
| [Key technical choice] | A vs B vs C | B | [Why B over alternatives] |
## Test Criteria (TDD - write tests FIRST)
- [ ] Unit test: [derived from scenario THEN clauses]
- [ ] Integration test: [user flow covering multiple scenarios]
## Verification (Check before closing epic)
### Completeness
- [ ] All sub-issues completed
- [ ] Every AC scenario addressed
### Correctness
- [ ] All THEN clauses satisfied
- [ ] Edge case scenarios handled
### Coherence
- [ ] Patterns followed, no magic numbers
- [ ] Design decisions still valid
## PRD Reference
[Link]
Title: component-name or step-name (use Parallel label, not prefix)
Description template:
## Why This Is Needed
**What this does:** [Simple 1-sentence explanation]
**Why it matters:** [Business/user impact - what breaks without this?]
## Related Epic Acceptance Criteria
> This sub-issue must satisfy these goals from the parent epic:
- [ ] [Epic AC #1 that this sub-issue addresses]
- [ ] [Epic AC #2 that this sub-issue addresses]
⚠️ **Before marking done:** Verify ALL checked items above are satisfied.
## Design Decisions
> ⚡ Include when trade-offs exist. Skip for straightforward implementations.
| Decision | Options Considered | Choice | Rationale |
|----------|-------------------|--------|-----------|
| [Technical choice] | Option A vs Option B | Option A | [Why this over alternatives] |
*(Delete this section if no meaningful trade-offs exist)*
## Required Skills
> ⚠️ **MUST READ before coding.** Implementer: Read these skill files first.
| Skill | Path | Why |
|-------|------|-----|
| `react-best-practices` | `skills/react-best-practices/SKILL.md` | Performance patterns, waterfall elimination |
| `ui-patterns` | `skills/ui-patterns/SKILL.md` | Accessibility, Tailwind, animation rules |
*(Remove rows not applicable to this sub-issue)*
## Reuse & Patterns
> Existing code to reference - DO NOT recreate, NO magic numbers
**Similar features to follow:**
| Reference | Location | What to copy |
|-----------|----------|--------------|
| [Feature] | `src/path/file.tsx` | [Pattern to follow] |
**Utilities to use (don't recreate):**
| Function | Location | Use for |
|----------|----------|---------|
| `validateEmail()` | `src/utils/validation.ts` | Email validation |
**Constants (NO magic numbers):**
| Instead of | Use | Location |
|------------|-----|----------|
| `5` | `MAX_ATTEMPTS` | `src/constants/auth.ts` |
| `"error"` | `MESSAGES.ERROR` | `src/constants/messages.ts` |
⚠️ **New constants:** Add to `src/constants/[category].ts`, don't hardcode.
**UI Patterns (if applicable):**
⚠️ Implementer: Use `/vorbit:design:ui-patterns` skill when implementing.
## File Changes
### + ADDED (new files)
| File Path | Purpose |
|-----------|---------|
| `src/components/feature/Component.tsx` | Main component |
| `src/tests/feature/component.test.ts` | Unit tests |
### ~ MODIFIED (existing files)
| File Path | Change Description |
|-----------|-------------------|
| `src/api/routes.ts` | Add new endpoint |
### − REMOVED (cleanup)
| File Path | Reason |
|-----------|--------|
| `src/mocks/featureMock.ts` | No longer needed after real API |
*(Delete empty sections. Always document REMOVED files with reasoning.)*
## Acceptance Criteria (Structured Scenarios)
#### Scenario: [Happy path description]
- **GIVEN** [initial state/context]
- **WHEN** [action performed]
- **THEN** [expected outcome]
- **AND** [additional outcome if needed]
#### Scenario: [Edge case or error handling]
- **GIVEN** [initial state/context]
- **WHEN** [action performed]
- **THEN** [expected outcome]
*(Use SHALL/MUST for unambiguous requirements: "System SHALL display error within 200ms")*
## Test Criteria (TDD - write tests FIRST)
- [ ] Unit test: [specific behavior from scenario THEN clause]
- [ ] Unit test: [edge case from scenario]
Priority Mapping:
CRITICAL: All implementation follows Test-Driven Development.
Every issue (epic and sub-issue) MUST include ## Test Criteria section:
Apply Parallel label ONLY when ALL are true:
Default: Sequential. When in doubt, don't add Parallel label.
development
Sync design tokens and components from a codebase to a Pencil canvas (`.pen` files), or set up a Pencil canvas from a style guide when no codebase exists. Use when the user says "sync pencil", "setup pencil", "configure pencil", "pencil sync", "sync tokens to pencil", "build pencil component library", or names Pencil/`.pen` files explicitly. Also triggers when mockups generated by Pencil don't match project conventions.
development
--- name: figma version: 1.6.0 description: Use when user says "figma", "figma it", "sync figma", "figma mockup", "create figma file", "design to figma", "figma from PRD", "figma from journey", "build in figma", or "figma design system" — anything that creates, syncs, or updates Figma design systems, components, variables, mockups, or front-end-ready screens. Always enumerates the linked Figma library FIRST (library-driven discovery, not per-need search), produces a block→DS mapping table for us
development
Use when the user wants to build Webflow pages, templates, or components, with or without Figma designs as reference.
testing
Use when the user wants to verify an implementation, validate acceptance criteria, or run a Vorbit-style post-change check using shared project rules.