本文へ移動
cccskills
無料GitHub で公開

skill-user-stories

Write and refine high-quality user stories — INVEST criteria, "As a X, I want Y, so that Z" format, Gherkin acceptance criteria when applicable, definition of ready, anti-patterns, and a review checklist. Use when creating or reviewing user stories, PRD section 6, backlog items, or acceptance criteria. Do NOT use for technical specs, architecture decisions, or task decomposition.

インストール方法を見る

含まれるファイル(1)

  • SKILL.md6.1 KB

SKILL.md(原文)

インストールする前に、エージェントに与えられる指示の中身を確認できます。

User Stories Skill

Standard of quality for every user story produced by the PWDEV-CODE framework (/pwdev-code:product prd §6, /pwdev-code:product stories) and for reviewing stories brought by the human.


1. Canonical Format

PT-BR: Como {persona}, quero {ação}, para {valor/resultado}. EN: As a {persona}, I want {action}, so that {value/outcome}.

  • Persona — a real user type with a name from the PRD/requirements (never "o sistema"/"the system"; never "usuário" genérico if personas exist).
  • Ação — one capability, observable from the user's perspective.
  • Valor — the reason; if you can't state it, the story probably isn't one.

2. INVEST — quick test per letter

LetterQuestionFails when...
IndependentCan it ship without waiting on another story?hidden dependency on an unwritten story
NegotiableIs it an intent, not a frozen spec?prescribes UI pixel/implementation detail
ValuableDoes the persona gain something?value only for developers ("refactor X")
EstimableCan the team size it?too vague or research-shaped
SmallFits in one iteration?it's an epic wearing a story costume
TestableCan each AC be verified objectively?"should be fast/easy/intuitive"

A story that fails 2+ letters must be rewritten or split before entering .planning/product/stories/.

3. Acceptance Criteria

Use Gherkin when behavior has state + trigger + observable result:

# PT-BR                                  # EN
Dado que estou logado como cliente       Given I am logged in as a customer
Quando adiciono um item esgotado         When I add an out-of-stock item
Então vejo a mensagem "indisponível"     Then I see the "unavailable" message
E o item não entra no carrinho           And the item is not added to the cart

Use a simple checklist for cross-cutting or static criteria (e.g. "- [ ] lista pagina de 20 em 20", "- [ ] AA contrast on all states").

Rules: every AC is objectively verifiable; cover the happy path AND at least one error/edge path; 3-8 ACs per story (more → split the story).

4. Definition of Ready

A story is status: ready only when:

  • Canonical format with a named persona
  • Passes all 6 INVEST letters
  • 3-8 verifiable ACs (happy + error path)
  • Priority assigned (MoSCoW)
  • Dependencies declared (or "none")
  • Out-of-scope noted when the title invites scope creep

5. Anti-Patterns

Never writeWhyInstead
"Como sistema, quero..."systems don't want thingsname the persona who benefits
Technical story disguised ("Como dev, quero migrar o banco")no user value statedattach it to the user outcome, or make it a task in a plan
AC "deve ser rápido/fácil/intuitivo"not testablenumber it ("responde em <500ms", "máx 2 cliques")
Story-epic ("Como cliente, quero gerenciar meu pedido")not Smallsplit per capability (ver, cancelar, alterar)
Hidden dependency ("...igual à tela de admin")not Independentdeclare the dependency or inline the requirement
UI prescription ("quero um dropdown azul...")not Negotiablestate the need; design decides the control

6. Review Checklist (10 items)

  1. Persona named and real (exists in PRD/requirements)?
  2. One capability per story?
  3. Value clause non-circular ("para que eu possa fazer X" ≠ repetir a ação)?
  4. INVEST: all 6 pass?
  5. ACs: happy path covered?
  6. ACs: at least one error/edge path?
  7. ACs: all objectively verifiable (numbers, observable states)?
  8. Priority MoSCoW assigned?
  9. Dependencies explicit?
  10. Language consistent with project lang (terms técnicos em inglês)?

7. Examples

✅ Good (PT-BR)

US-03 — Cancelar pedido não enviado Como cliente, quero cancelar um pedido que ainda não foi enviado, para não pagar por algo que não quero mais. ACs: Dado pedido "processando" / Quando clico Cancelar e confirmo / Então status vira "cancelado" E estorno é criado E recebo e-mail. + Dado pedido "enviado" / Quando abro o pedido / Então Cancelar não é exibido.

✅ Good (EN)

US-07 — Export report as CSV As an operations analyst, I want to export the monthly report as CSV, so that I can cross it with the ERP spreadsheet. ACs: Given a report with data / When I click Export / Then a CSV downloads with the visible columns and filters applied. Given an empty report / Then Export is disabled with a tooltip.

❌ Bad → fixed

"Como usuário, quero uma tela de pedidos melhor." — persona genérica, não testável, não estimável. → "Como cliente recorrente, quero filtrar meus pedidos por status e período, para encontrar uma compra antiga sem rolar a lista inteira."

"As a system, I want to validate tokens." — system persona, technical. → "As a logged-in user, I want my session to stay valid while I work, so that I don't lose a form to a silent logout." (token validation becomes a task under this story's plan)

8. Integration with PWDEV-CODE

  • /pwdev-code:product prd §6 (User Stories with ACs) MUST follow this skill.
  • /pwdev-code:product stories uses this skill as the quality bar and persists stories to .planning/product/stories/US-{NN}-{slug}.md.
  • discover/design consult existing stories as requirement sources.
  • Story files carry frontmatter: id, epic (roadmap ref, if any), priority (MoSCoW), status: draft|ready.

レビュー

まだレビューはありません。使ってみた感想をお寄せください。

同じリポジトリのスキル

概要と使いどころ

Accessibility auditing and remediation skill for Vue 3 + Reka UI. Use when reviewing components, verifying WCAG 2.1 AA, fixing ARIA issues, or validating keyboard navigation in Reka UI components.

日本語の概要は準備中です。原文の説明を表示しています。

pwdev-solucoes/pwdev-claude-marketplace32026年9月28日 更新

ai-infra

無料

Infraestrutura para IA — GPU, servidores MCP, gateway de LLM, pipeline de inferência, custo de token, cache semântico e observabilidade de modelo. Use quando o usuário disser "GPU", "MCP server", "LLM", "inferência", "modelo", "gateway de IA", "custo de token", "rate limit da API de IA", "self-host de modelo".

日本語の概要は準備中です。原文の説明を表示しています。

pwdev-solucoes/pwdev-claude-marketplace32026年9月28日 更新

alt-text

無料

Escreve texto alternativo e descrição de imagem para peças de rede social. Use quando o usuário disser "alt text", "texto alternativo", "descrição da imagem", "acessibilidade da peça", "descrever para leitor de tela", ou automaticamente antes de qualquer publicação. Obrigatório em todas as peças — em carrossel, um por slide.

日本語の概要は準備中です。原文の説明を表示しています。

pwdev-solucoes/pwdev-claude-marketplace32026年9月28日 更新

Organiza, compara e seleciona entre as variações geradas, e publica a grade de comparação como Artifact para aprovação do time. Use quando o usuário disser "qual dessas", "comparar as variações", "escolher a melhor", "mostrar as opções", "montar grade de aprovação", ou após qualquer lote de geração. Selecionar é trabalho, não detalhe.

日本語の概要は準備中です。原文の説明を表示しています。

pwdev-solucoes/pwdev-claude-marketplace32026年9月28日 更新

Aumenta resolução e qualidade de imagem via Freepik/Magnific, ou orienta o processo manual quando não há chave. Use quando o usuário disser "upscale", "melhorar a resolução", "a imagem está pixelada", "Magnific", "Freepik", "aumentar a imagem", "imagem pequena demais". Gasta crédito — exige confirmação.

日本語の概要は準備中です。原文の説明を表示しています。

pwdev-solucoes/pwdev-claude-marketplace32026年9月28日 更新

CI/CD e automação — GitHub Actions, Terraform, OpenTofu, Ansible, n8n. Use quando o usuário disser "pipeline", "CI/CD", "GitHub Actions", "workflow", "terraform", "ansible", "n8n", "automatizar", "deploy automático", "IaC".

日本語の概要は準備中です。原文の説明を表示しています。

pwdev-solucoes/pwdev-claude-marketplace32026年9月28日 更新

pwdev-solucoes のスキルをすべて見る

このスキルの問題を報告する