"Scaffold a new skill (SKILL.md) inside a Claude Code plugin, with valid frontmatter and effective description. Use when the user asks to criar uma skill, adicionar skill a um plugin, escrever um SKILL.md, ou melhorar a description/gatilhos de uma skill existente."
Resources
1Install
npx skillscat add sallzzbr/hefesto-publico/criar-skill Install via the SkillsCat registry.
Criar Skill
Scaffolda uma skill nova dentro de um plugin, com frontmatter válido e corpo no padrão da casa. As convenções completas estão em ${CLAUDE_PLUGIN_ROOT}/skills/criar-skill/references/convencoes-skill.md — leia antes de escrever.
Input
Pergunte ao usuário (o que ainda não tiver sido dito):
- Plugin de destino — se houver mais de um em
plugins/, confirme qual. - Nome da skill — kebab-case, PT quando o público é PT-BR (ex.:
analisar-voz). - O que ela faz — uma frase de capacidade ("escreve X", "valida Y").
- Gatilhos — 3+ frases que o usuário diria quando precisa dela ("na minha voz", "analisa esses docx").
- I/O — o que a skill lê e o que escreve, e onde (projeto do usuário vs
${CLAUDE_PLUGIN_ROOT}).
Before writing
- Confirme que
plugins/<plugin>/skills/<nome>/não existe. - Verifique se já existe skill com propósito sobreposto no plugin — se sim, proponha estender em vez de duplicar.
Output
plugins/<plugin>/skills/<nome>/SKILL.mdcom:- Frontmatter mínimo:
nameigual ao nome do diretório (kebab-case, até 64 caracteres) edescriptioniniciando com verbo em inglês + gatilhos concretos em PT/EN (200–400 chars úteis, máx 1024). Campos opcionais quando fizer sentido:allowed-tools,argument-hint,disable-model-invocation. - Corpo estruturado:
## Input,## Before X,## Output,## Important(adapte os títulos à natureza da skill, mantendo a progressão entrada → pré-condições → saída → armadilhas). - Dependências externas declaradas no corpo (ex.: precisa da skill oficial
docx; consomebragir:escrever-como-antonio).
- Frontmatter mínimo:
- Se a skill tiver material de apoio longo, mova para
references/<tema>.mdno diretório da skill e referencie via${CLAUDE_PLUGIN_ROOT}. - Se a skill precisar de script, coloque em
scripts/no diretório da skill — sem dependências externas, sem build step. - Command atalho opcional em
plugins/<plugin>/commands/<nome>.md(pergunte ao usuário; padrão da casa é ter).
Autochecagem obrigatória antes de concluir
Use este molde de frontmatter, substituindo o nome pelo diretório criado:
---
name: nome-da-skill
description: "Write the requested content. Use when o usuário pedir esta capacidade."
---Depois de escrever, releia o arquivo gerado e execute o validador DESTA cópia do plugin:
node "${CLAUDE_PLUGIN_ROOT}/skills/validar-plugin/scripts/validar.mjs" "<raiz-do-marketplace>" --plugin "<plugin-criado>"Ausência ou divergência de name é erro. Corrija e execute novamente antes de anunciar o
scaffold pronto. Não substitua este comando por claude plugin validate: o parser nativo não
cobra este contrato da forja. Não procure outra instalação global do validador.
After
- Atualize a tabela de skills no
README.mdda raiz do marketplace (e no README do plugin, se houver). - Invoque
versionar-plugin(minor: skill nova). - Invoque
validar-pluginpara conferir. - Sugira commit:
feat: nova skill <nome>.
Important
- Description vaga não dispara auto-invocação — gatilhos concretos são o que faz a skill existir na prática.
- Instruções de I/O específicas: "escreva
./foo.md" é melhor que "salve em algum lugar". - Nunca hardcode paths absolutos; dados do usuário ficam no projeto dele, recursos da skill ficam no plugin.
- Sem emojis, salvo pedido explícito do dono do plugin.