From somnio-operations
Define well-structured user stories with acceptance criteria, sizing, and dependencies from project context. Use when breaking down features into implementable stories, refining a backlog, turning requirements or ideas into actionable tickets, preparing stories for sprint planning, or when someone says "create stories for this feature" or "break this down into tickets."
npx claudepluginhub somnio-software/somnio-ai-tools --plugin somnio-operationsThis skill uses the workspace's default tool permissions.
Help teams define clear, implementable user stories from features, epics, requirements, or ideas. Pull project context from connected tools, apply structured frameworks, and create stories directly in the project tracker.
Creates isolated Git worktrees for feature branches with prioritized directory selection, gitignore safety checks, auto project setup for Node/Python/Rust/Go, and baseline verification.
Executes implementation plans in current session by dispatching fresh subagents per independent task, with two-stage reviews: spec compliance then code quality.
Dispatches parallel agents to independently tackle 2+ tasks like separate test failures or subsystems without shared state or dependencies.
Help teams define clear, implementable user stories from features, epics, requirements, or ideas. Pull project context from connected tools, apply structured frameworks, and create stories directly in the project tracker.
Understand what needs to be broken down before writing anything.
If ~~project tracker is connected:
If no project tracker is connected:
Always ask:
Break down the input into logical, implementable units.
Decomposition principles:
Splitting strategies when a story is too large:
| Strategy | When to use | Example |
|---|---|---|
| By workflow step | Multi-step process | "User can add item to cart" vs "User can checkout" |
| By business rule | Complex validation | "Basic validation" vs "Edge-case handling" |
| By data variation | Multiple entity types | "Import CSV contacts" vs "Import CSV companies" |
| By interface | Multiple entry points | "Create via form" vs "Create via API" |
| By operation | Full CRUD | "View list" vs "Edit item" vs "Delete item" |
| By persona | Different user types | "Admin can configure" vs "Member can view" |
| Happy path / edge cases | Complex flows | "Successful payment" vs "Payment retry on failure" |
Use this format for each story. Adapt field names to match the project's conventions if they differ.
Title: [Action-oriented, concise — starts with a verb or "As a..."]
User story:
As a [specific persona/role],
I want to [concrete action],
so that [measurable outcome or business value].
Acceptance criteria:
- [ ] Given [context], when [action], then [expected result]
- [ ] Given [context], when [action], then [expected result]
- [ ] [Additional criteria using Given/When/Then or plain checkboxes]
Definition of done:
- [ ] Code implemented and passing CI
- [ ] Unit/integration tests covering acceptance criteria
- [ ] Code reviewed and approved
- [ ] [Project-specific DoD items from team conventions]
Technical notes:
- Implementation hints, API contracts, data model changes
- Links to relevant specs, designs, or documentation
- Known risks or open questions to resolve during implementation
Size: [T-shirt (XS/S/M/L/XL) or story points — match project convention]
Priority: [P0-Critical / P1-High / P2-Medium / P3-Low]
Labels: [Use existing project labels when available]
Dependencies: [List story titles or IDs this story depends on]
Writing quality checklist — apply to every story:
Before presenting or creating stories, run a quality pass.
Validation checks:
~~project tracker is connected, verify no existing stories already cover this work.Organize the output:
If ~~project tracker is connected:
| # | Title | Size | Priority | Dependencies |
|---|---|---|---|---|
| 1 | ... | S | P1 | — |
| 2 | ... | M | P1 | #1 |
If no project tracker is connected:
If ~~chat is connected:
Use the project's existing scale. If none exists, suggest one of these:
T-shirt sizes (recommended for teams new to estimation):
| Size | Typical scope | Examples |
|---|---|---|
| XS | Config change, copy update, one-line fix | Toggle a feature flag, fix a typo |
| S | Single component, clear path | Add a form field, new API endpoint with known pattern |
| M | Multiple components, some unknowns | New CRUD feature, integration with documented API |
| L | Cross-cutting, needs design decisions | New auth flow, data migration with transformation |
| XL | Should probably be split further | Full feature redesign, new service |
Fibonacci story points (for teams using velocity tracking):
| Points | Relative effort |
|---|---|
| 1 | Trivial — hours |
| 2 | Small — a day or less |
| 3 | Moderate — a couple of days |
| 5 | Significant — most of a week |
| 8 | Large — full week, consider splitting |
| 13 | Very large — must split |
| Level | Label | Criteria | Action |
|---|---|---|---|
| P0 | Critical | Blocks release, security issue, data loss risk | Immediate — current sprint |
| P1 | High | Core to the feature/epic goal, high user impact | Next available sprint |
| P2 | Medium | Valuable improvement, not blocking | Backlog — schedule when capacity allows |
| P3 | Low | Nice-to-have, polish, minor enhancement | Backlog — revisit during planning |
| Anti-pattern | Problem | Fix |
|---|---|---|
| "Implement feature X" | No user value stated, no acceptance criteria | Add persona, outcome, and testable criteria |
| Horizontal slicing | "Build the API" then "Build the UI" — no deliverable value until both done | Slice vertically — one behavior end-to-end |
| Giant stories | "As a user I want the whole checkout flow" — unestimable | Split by workflow step, operation, or business rule |
| Vague acceptance criteria | "It should work correctly" — untestable | Use Given/When/Then with specific inputs and outputs |
| Missing dependencies | Story fails because a prerequisite was not identified | Map dependencies explicitly during decomposition |
| Gold-plating | Story includes "nice-to-have" details mixed with core requirements | Separate must-have criteria from enhancements |
| Copy-paste personas | "As a user" for everything — loses context | Use specific roles: admin, member, guest, API consumer |