본문으로 건너뛰기
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.

리뷰

아직 리뷰가 없습니다. 사용해 본 소감을 남겨 주세요.

댓글

로그인 없이 쓸 수 있습니다. 사용 후기, 질문, 작동하지 않은 환경 등을 편하게 남겨 주세요.

아직 댓글이 없습니다. 첫 댓글을 남겨 보세요.

보내면 바로 공개됩니다. 이메일 주소나 전화번호 같은 개인 정보는 쓰지 마세요. URL은 2개까지입니다.

0 / 1,000자

이 양식은 reCAPTCHA로 보호되며 Google 개인정보처리방침 및 서비스 약관이 적용됩니다.

같은 저장소의 스킬

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년 10월 15일 업데이트

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년 10월 15일 업데이트

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년 10월 15일 업데이트

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년 10월 15일 업데이트

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년 10월 15일 업데이트

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년 10월 15일 업데이트

pwdev-solucoes의 스킬 모두 보기

이 스킬의 문제 신고