Da ideia à especificação
Ajude a pessoa a transformar uma ideia em uma especificação pronta para planejamento. Você lidera a conversa; a pessoa dá as respostas.
Artefatos e status
- Cada item de trabalho fica em
docs/specs/<YYYYMMDD>-<tipo>-<nome>/. O tipo segue Conventional Commits (feat,fix,refactor,docs…) e o nome é em kebab-case. Se esse diretório já existir, adicione-2. spec.mdeplan.mdcarregamstatus: draft | approved | obsoleteem seu frontmatter. Apenas uma pessoa defineapproved.- Se você modificar um artefato aprovado, reverta-o para
drafte avise. - Gerenciamento de trabalho (prioridade, responsável, concluído) não é função desta skill: isso fica no sistema de tarefas. Se houver uma issue, seu ID vai em
issue:.
Comportamento
- Comece resumindo a ideia em um parágrafo curto.
- Identifique o que está faltando para escrever uma boa especificação e faça o número mínimo de perguntas úteis, começando pelas bloqueadoras.
- Foque no o quê e no por quê, não no como: nenhum framework ou arquitetura, a menos que a pessoa os peça. Isso pertence à skill
spec-to-plan. - Se
docs/ARCHITECTURE.mdexistir, leia-o para usar o vocabulário do glossário e detectar conflitos com os princípios.
Perguntas por rodada
- Problema e resultado esperado.
- Usuários e atores.
- Histórias de usuário (o que cada um precisa e por quê).
- Escopo e fora de escopo.
- Comportamento e casos de contorno: dados vazios, inválidos ou massivos; falhas de dependências externas; ações concorrentes.
- Restrições não funcionais.
- Segurança, se envolver dados, autenticação ou entrada externa: sensibilidade dos dados, quem pode fazer o quê, quais entradas não são confiáveis e quais testes negativos são necessários.
- Critérios de aceitação ("Dado…, quando…, então…").
Se algo ainda estiver ambíguo após uma rodada, pergunte apenas sobre essa parte.
Perguntas em aberto
Nunca assuma uma resposta silenciosamente. Para cada pergunta não resolvida:
[Pergunta]
- A) [Sua proposta padrão, se houver]
- B) [Alternativa óbvia]
- C) Deixar como pergunta em aberto na especificação
- D) Outra resposta
Ela só é resolvida quando a pessoa responde ou opta por deixá-la em aberto.
Formato de cada resposta: O que entendi · Perguntas em aberto · Próximo passo.
Tamanho
Combine a profundidade com a mudança. Proponha o caminho e deixe a pessoa decidir:
| Mudança | Artefatos |
|---|---|
| Bug de uma linha | Nenhum, ou apenas tasks.md |
| Bug complexo | spec.md + tasks.md |
| Funcionalidade pequena | spec.md + plan.md + tasks.md |
| Funcionalidade de produção ou refatoração arquitetural | Tudo, com revisão de especificação e plano |
Quando parar
Pare quando houver o suficiente para: objetivo, problema, usuários, histórias de usuário, escopo e fora de escopo, requisitos funcionais e não funcionais, casos de contorno e critérios de aceitação.
Então:
- Proponha o nome do diretório e um rascunho de
spec.mda partir deassets/spec-template.md, comstatus: draft. Exclua as seções opcionais que não se aplicam. - Mostre o rascunho e escreva-o apenas quando a pessoa aprovar.
- Próxima etapa sugerida: revisá-lo com
review-spec. Se for pequeno e a pessoa estiver satisfeita, ela pode marcá-lo comoapprovede passar paraspec-to-plan.