
specsfy-03-specify
Use quando o usuário pede para promover uma entrada ou backlog já refinado, criar, iniciar ou consolidar uma especificação nova ou ainda em Draft em spec.md. Use também quando uma transição automática exigir criar ou completar a fonte normativa inicial. Inicializa specs em specs/draft/ e aplica o MCR-10; para mudar spec aprovada use specsfy-update-spec, para captura sem perguntas use specsfy-01-inbox, para refinamento use specsfy-02-backlog e para revisão sem edição use specsfy-04-validate.
- Installs
- 443
- Last 24h
- —
- Trending rank
- —
- Security
- Not audited
Install
Works with every agent the skills CLI supports.
npx skills add https://github.com/promovaweb/specsfy --skill specsfy-03-specify- 01
Install
Run the command in your project. The CLI asks which agents to install for.
- 02
Describe the task
Ask your agent for something this skill covers. It loads specsfy-03-specify automatically when relevant.
- 03
Review the result
The agent follows the SKILL.md steps, scripts and references bundled with the skill.
SKILL.md
The instructions your agent reads when the skill is triggered.
Montar a especificação única
Preparação obrigatória
Antes de executar esta skill, carregue obrigatoriamente $specsfy-setup na
raiz do projeto. Em handoff automático, carregue-o de novo antes desta etapa.
Reutilize a raiz confirmada na conversa e não prossiga se o setup apontar uma
pendência.
Modo de interação
Modo de interação: perguntas.
Antes de formular qualquer pergunta, leia e aplique o
Contrato de perguntas numeradas de .specsfy/Spec.md.
Crie ou atualize o pacote specs/draft/<NNNN>-<slug>/, no qual spec.md é a única fonte normativa de todo o fluxo SDD. Somente o diretório recebe o número; mantenha o arquivo sempre como spec.md. Consolide descoberta, research, esclarecimentos, produto, plano técnico, modelo de dados, contratos, TDD, BDD, validações, tarefas, decisões e conclusão em três atos explícitos. Evidências externas consultadas vivem em research/; não gere plan.md, research.md, data-model.md, tasks.md, checklists ou uma segunda especificação.
Antes de consolidar uma spec Laravel, leia .specsfy/PACKAGES.md,
docs/packages/README.md e as fichas de docs/packages/. Se a solicitação
trouxer uma URL GitHub de pacote ou depender de uma biblioteca Composer,
carregue $specsfy-specialist-laravel-package-manager para conferir se o
pacote já existe e registrar a necessidade sem duplicar dependências.
Orquestrar a conversa
Ao concluir esta etapa ou detectar trabalho de outra etapa, anuncie
Pendência detectada: <descrição> — ação: resolvendo nesta etapa e resolva-a
quando pertencer ao próprio escopo. Quando houver troca de responsabilidade,
anuncie Transição automática: $specsfy-03-specify → $<destino> — motivo: <motivo> — resultado esperado: <resultado> e carregue imediatamente a skill de
destino, sem pedir confirmação nem repetir o comando. Continue na mesma
conversa. Depois de uma correção necessária a esta etapa, anuncie Retomada automática: $<destino> → $specsfy-03-specify — pendência resolvida: <resultado> e retome-a imediatamente. Reavalie o estado após cada handoff para
evitar ciclos. Não peça confirmação para o handoff; ações sensíveis continuam
exigindo autorização específica.
Preparar
- Resolva a raiz do projeto pelo diretório informado pelo usuário ou por
Path.cwd()quando ele não informar outro. Não procure nem promova o destino para uma raiz Git. - Ao criar uma spec, resolva o diretório desta skill e execute antes de escrever:
node <diretório-da-skill>/scripts/iniciar_spec.mjs \
--title "<nome da especificação>" [--slug <slug>] [--root <raiz>]
- Use o caminho absoluto impresso pelo script. Ele aloca o próximo ID local,
prefere
.specsfy/templates/custom/Spec.md, recorre ao template gerenciado.specsfy/templates/Spec.mde cria somentespecs/draft/<NNNN>-<slug>/spec.md; nunca renomeie o arquivo para incluir o ID. Ao desenvolver este repositório, o script usaskills/templates/Spec.mdcomo fallback; no projeto consumidor, template ausente exigespecsfy install. - Ao atualizar, use o caminho da spec existente fornecido ou descoberto sob a raiz atual; não execute o inicializador novamente.
- Leia a captura de origem em
specs/inbox/, o item de backlog, o brief da refinamento do backlog, o pedido atual, a spec nesse caminho, seuresearch/e arquivos do repositório que revelem restrições reais. - Se não houver informação suficiente para identificar problema, ator e
resultado, anuncie a pendência e carregue
$specsfy-02-backlogpara executar o ciclo. Retome esta skill ao final do ciclo e use o brief completo ou parcial produzido. - Leia
references/mcr-10.mdao receber relato, história, transcrição ou especificação a refinar. - Leia
.specsfy/DATABASE.mdquando existir. Se a jornada depender de informações guardadas e o arquivo não explicar o que o produto precisa lembrar, quem usa essas informações ou quando elas deixam de ser necessárias, carregue$specsfy-data-discoverye retome esta skill depois do registro confirmado.
Aplicar o MCR-10
- Preserve a formulação original e identifique finalidade, ator e resultado.
- Analise termos ambíguos, equivalências terminológicas e derivações.
- Use substância, quantidade, qualidade, relação, lugar, tempo, posição, posse, ação e afecção como lentes adaptativas, não como questionário.
- Distinga cada declaração da pessoa de inferência, hipótese, decisão, conflito ou questão aberta produzida durante a análise.
- Se existir lacuna aplicável, carregue
$specsfy-02-backlogpara executar o ciclo limitado a oito perguntas por área e retome esta skill ao final do ciclo. Se a pessoa escolheravançar, aplique a confirmação e o registro definidos no contrato central. MantenhaStatus: DrafteDefinition Gate: Pendingquando restarem pontos aplicáveis; não promova a spec aDefinede não reabra o mesmo ciclo nesta retomada. - Recombine decisões em afirmações com sujeito, condição, ação e efeito observável; derive regras, histórias, Gherkin, limites e falhas.
- Registre o resultado nas seções existentes de
spec.md; não gere relatório MCR separado nem copie a referência para o pacote da fatia.
Escrever
- Grave sempre em
<raiz>/specs/draft/<NNNN>-<slug>/spec.md; o ID pertence ao diretório e o arquivo permanece exatamentespec.md. - Use
<raiz>/specs/draft/<NNNN>-<slug>/research/somente para cópias, snapshots, contratos, schemas, exemplos e notas de proveniência realmente consultados. Não coloque código de produção, testes ou documentos normativos nesse diretório. - Ao pesquisar uma API ou documentação externa, armazene a evidência permitida em
research/e indexe caminho, origem, versão/data, licença e impacto emArtefatos de pesquisa armazenados. Se licença ou termos impedirem a cópia, armazene metadados, URL, data de acesso, checksum/versão quando disponível e notas próprias, sem reproduzir conteúdo protegido. - Fora de
spec.mderesearch/, não crie outra entrada no pacote da feature. - Ao promover
specs/backlog/<NNNN>-<slug>.md, registre esse caminho na spec e atualize o item paraStatus: Promotedcom o caminho da spec criada. O backlog preserva proveniência, mas deixa de governar o comportamento. - Ao derivar diretamente de
specs/inbox/<data-hora>-<slug>.md, registre o caminho na spec e preserve a captura sem alteração. A análise inicial é contexto, não requisito confirmado. - Preserve o cabeçalho como uma tabela Markdown de duas colunas,
CampoeValor; não converta seus metadados em linhas**Campo**: valor. - Na tabela, declare
IDcomoSPEC-NNNNeSlugcomo<NNNN>-<slug>e mantenha o slug igual ao diretório pai. - Preserve exatamente os três atos e as 18 seções do template resolvido:
.specsfy/templates/custom/Spec.mdquando existir ou.specsfy/templates/Spec.mdcaso contrário. - Substitua o conteúdo editorial restante do modelo durante o refinamento; não
deixe seus exemplos ou placeholders na spec promovida para
Defined. - Ao atualizar, edite o arquivo existente e preserve IDs e decisões ainda válidas.
- Numere novos itens sem reutilizar ou renumerar IDs removidos:
- histórias:
US-001; - requisitos funcionais:
FR-001; - requisitos não funcionais:
NFR-001; - cenários de aceite:
AC-001; - decisões:
DEC-001.
- histórias:
- Escreva cada requisito como comportamento verificável.
- Escreva cada cenário com Given/When/Then e associe-o a pelo menos um requisito.
- Defina no mínimo três
ACdistintos para a feature inteira e para cadaUS,FReNFR. Conte cobertura somente quando oACdeclarar o ID em**Cobre**; use caminho feliz, variação/regra crítica e falha ou limite material para ampliar contexto sem duplicar cenários equivalentes. - Inclua fora de escopo, erros, limites, segurança e acessibilidade quando relevantes.
- Quando o cabeçalho declarar
Interface para pessoas: Sim, preencha na seção 10 as nove partes do template com stack e convenções locais, telas, fluxo de informação, menus e navegação principal, formulários e ações, composição, blocos React e componentes shadcn/ui/ReUI, estados e acessibilidade. UseINTERFACE.md,.specsfy/STACK.md, manifests, telas e código existente como fonte da stack e do sistema atual; registre o que será preservado e alterado. Não proponha biblioteca incompatível nem reestruture uma tela existente sem esse exame. Carregue$specsfy-specialist-ux-design,$specsfy-specialist-ui-designe o especialista da stack de interface. Não aceite uma descrição de CRUD que tenha somente API, banco ou serviço. Em Laravel com React, registre explicitamente shadcn/ui e ReUI, todos os blocos React previstos, suas responsabilidades, arquivos, componentes de origem e regra de reuso. A página apenas compõe esses blocos. - Quando não houver interface, declare
Interface para pessoas: Nãoe explique por que a entrega não será usada por uma pessoa em uma tela. - Mantenha a seção técnica concreta o bastante para permitir tarefas com caminhos de arquivo, sem confundir escolha interna com resultado do usuário.
- Registre defaults reversíveis em
Suposições; peça esclarecimento apenas quando opções plausíveis mudarem materialmente escopo, dados, segurança, UX ou testes. - Não deixe placeholders, exemplos do template,
TBD,TODOou marcadores de clarificação em um arquivo marcado comoDefined. - Mantenha tarefas futuras na seção
14. Tarefas; skills posteriores atualizam a mesma seção, nunca outro arquivo. - Use os metadados
Definition Gate,Plan GateeDelivery Gatepara expressar prontidão sem criar relatórios separados.
Respeitar specs já aprovadas
Se a spec já obteve Definition Gate: Passed e a pessoa pedir para adicionar,
remover, corrigir ou mudar algo, anuncie a pendência e carregue automaticamente
$specsfy-update-spec. Essa skill classifica o impacto, atualiza a fonte
normativa e invalida somente os gates afetados. Retome esta skill apenas se a
mudança retornar a spec ao estado de definição inicial.
Preservar rastreabilidade
Para cada FR e NFR, aponte no mínimo três cenários AC e mantenha o método
de verificação explícito dos NFRs. Para cada história, identifique os requisitos
que entregam seu valor e ao menos três AC. Use os mesmos IDs mais tarde nos
casos TDD e na seção 14.
Controlar research
- Antes do planejamento, carregue somente as evidências indexadas e valide claims com:
node .agents/skills/specsfy-03-specify/scripts/load_research.mjs \
specs/<estado>/<NNNN>-<slug>/spec.md
- Para pesquisa material, registre
R-ID, criticalidade, claim, veredito, confiança, evidência local e orçamento na seção 2. Claimcriticalainda não verificado bloqueia o handoff; claim refutado permanece registrado. IDs devem ser únicos, gasto não pode superar o limite e a âncora Markdown citada precisa existir no arquivo local.
Autovalidar
Enquanto o arquivo estiver em Draft, execute a validação estrutural intermediária:
node .agents/skills/specsfy-04-validate/scripts/validate_spec.mjs specs/<estado>/<NNNN>-<slug>/spec.md --allow-draft
Corrija falhas estruturais em no máximo três ciclos. A skill specsfy-04-validate faz a revisão semântica, registra o resultado na seção 13 e promove Definition Gate: Passed e Status: Defined. Até lá, mantenha Status: Draft, Definition Gate: Pending e relate decisões bloqueantes.
Relatar
Informe:
- caminho
specs/<estado>/<NNNN>-<slug>/spec.md; - caminhos de research armazenados ou a declaração de que não houve fonte externa;
- status;
- contagem de
US,FR,NFReAC; - suposições relevantes;
- transição automática para
$specsfy-04-validate, com motivo e resultado esperado.
Especialistas sob demanda
Leia references/specialists.md quando requisitos, NFRs, dados ou decisões técnicas exigirem conhecimento especializado. Registre o requisito na spec e proponha carregar o especialista. Se ele não estiver instalado, peça autorização específica antes de instalar.
FAQ
What does the specsfy-03-specify skill do?
Use quando o usuário pede para promover uma entrada ou backlog já refinado, criar, iniciar ou consolidar uma especificação nova ou ainda em Draft em spec.md. Use também quando uma transição automática exigir criar ou completar a fonte normativa inicial. Inicializa specs em specs/draft/ e aplica o MCR-10; para mudar spec aprovada use specsfy-update-spec, para captura sem perguntas use specsfy-01-inbox, para refinamento use specsfy-02-backlog e para revisão sem edição use specsfy-04-validate.
How do I install specsfy-03-specify?
Run npx skills add https://github.com/promovaweb/specsfy --skill specsfy-03-specify in your project. The skills CLI detects the agents you use and copies the skill into the right folder. For Claude Code you can also place the skill folder at ~/.claude/skills/specsfy-03-specify/ (personal) or .claude/skills/specsfy-03-specify/ (project).
Which AI agents can use specsfy-03-specify?
Any agent that supports the open Agent Skills format (a folder with a SKILL.md file), including Claude Code, Codex, Cursor, GitHub Copilot, Gemini CLI, Windsurf, Cline, OpenCode and more.
Is specsfy-03-specify safe to install?
No partner security audit is available yet. Skills can run commands and scripts, so read the SKILL.md and any bundled files before installing.
Who maintains specsfy-03-specify?
It is published by promovaweb in promovaweb/specsfy. It has 443 recorded installs.
More from promovaweb/specsfy
specsfy-aux-stack
promovaweb/specsfy
Monitorar manifests e arquivos estruturais para criar ou atualizar .specsfy/STACK.md de forma aditiva. Use quando o monitor de contexto apontar stack pendente; quando framework, linguagem, runtime, pacote estrutural, ferramenta de teste ou persistência mudar; quando a documentação técnica estiver incompleta; ou após adicionar Laravel, Next.js, Astro ou dependências relevantes. Preserva conteúdo humano existente.
specsfy-specialist-data-modeling
promovaweb/specsfy
Modelar dados, entidades, relações, ciclos de vida, qualidade e contratos persistentes antes de implementar mudanças.
specsfy-specialist-software-architecture
promovaweb/specsfy
Analisar e evoluir arquitetura com boundaries, dependências, atributos de qualidade, integrações, ADRs, migração e trade-offs. Use para modularização, coupling, escalabilidade, resiliência ou decisões difíceis de reverter; não use para renomeação local sem impacto estrutural.
specsfy-specialist-domain-modeling
promovaweb/specsfy
Descobrir e refinar linguagem de domínio, invariantes, eventos, aggregates e boundaries a partir de cenários concretos. Use quando termos, regras ou ownership estiverem ambíguos ou uma decisão de modelo for necessária; não criar documentação paralela à fonte autorizada.
specsfy-specialist-reui
promovaweb/specsfy
Criar interfaces React e Tailwind CSS com os componentes gratuitos do ReUI. Use em projetos com React, Tailwind CSS e shadcn/ui, incluindo Laravel com Inertia; não use itens premium nem introduza ReUI sem confirmar a stack.
specsfy-setup
promovaweb/specsfy
Preparar e monitorar os contextos do projeto, incluindo a constituição e as specs preservadas de projetos com GitHub Spec Kit.
Popular code quality & workflow skills
grill-me
mattpocock/skills
A relentless interview to sharpen a plan or design.
improve-codebase-architecture
mattpocock/skills
Scan a codebase for deepening opportunities, present them as a visual HTML report, then grill through whichever one you pick.
handoff
mattpocock/skills
Compact the current conversation into a handoff document for another agent to pick up.
domain-modeling
mattpocock/skills
Build and sharpen a project's domain model. Use when discussing codebase terminology, writing or editing a GLOSSARY.md, or recording or editing an ADR.
codebase-design
mattpocock/skills
Shared vocabulary for designing deep modules. Use when the user wants to design or improve a module's interface, find deepening opportunities, decide where a seam goes, make code more testable or AI-navigable, or when another skill needs the deep-module vocabulary.
diagnosing-bugs
mattpocock/skills
Diagnosis loop for hard bugs and performance regressions. Use when the user says "diagnose"/"debug this", or reports something broken/throwing/failing/slow.