MODULO 3.2

πŸ› οΈ Customizando skills

Pegue a skill, faΓ§a sua.

9
Secoes
45
Minutos
Intermediario
Nivel
Pratico
Tipo
1

🎯 Por que customizar

Uma skill instalada direto do repositorio publico ja funciona β€” mas funciona de forma genΓ©rica. Ela nao conhece o seu cliente, o seu vocabulario, o seu stack, as suas regras de compliance. O salto de qualidade entre uma skill boa e uma skill excelente esta em uma camada fina: o domΓ­nio que voce injeta nela.

Customizar uma skill nao Γ© refazer ela. Γ‰ pegar uma base que ja resolve o problema generico (revisar codigo, gerar documentacao, planejar feature) e adicionar as 5–10 perguntas, 3 termos tecnicos e 2 regras de negocio que transformam a skill em uma colega de equipe que fala o idioma da sua empresa.

πŸ’‘ Dica Pratica

Skill generica vira otima quando voce carrega ela com o vocabulario do seu dominio. Ex: a skill code-review generica acha bug de logica; a versao customizada para um time fiscal acha tambem "esta calculando ICMS sem considerar substituicao tributaria". Mesma estrutura, contexto novo, valor 10x.

βœ“ Skill adaptada ao seu dominio

  • βœ“ Conhece termos da empresa (siglas, produtos, equipes)
  • βœ“ Faz perguntas especificas do seu negocio
  • βœ“ Trigger se ativa nos contextos certos
  • βœ“ Reaproveita logica e workflow do upstream
  • βœ“ Mantem updates da comunidade quando quiser

βœ— Skill out of the box

  • βœ— Faz perguntas genericas que voce ja respondeu
  • βœ— Nao reconhece termos do seu dominio
  • βœ— Trigger ativa em contextos errados (ou nunca ativa)
  • βœ— Resultado precisa de muita correcao manual depois
  • βœ— Pode entrar em conflito com regras internas (compliance)
2

πŸ” Anatomia detalhada de uma SKILL.md

Antes de customizar, voce precisa enxergar a anatomia. Toda skill tem 3 camadas: o frontmatter YAML (metadados de ativacao), o corpo em Markdown (instrucoes para o agente) e, opcionalmente, arquivos de referencia em references/. A maior parte das customizacoes acontece nas duas primeiras.

πŸ“„ SKILL.md completo (modelo de referencia)

---
name: minha-skill
description: Use when X happens. Triggers: keyword1, keyword2.
---

# Skill Body

## When to use

Descreva os cenarios onde o agente DEVE carregar esta skill.
Inclua exemplos de frases do usuario que devem ativar.

## Workflow

1. Read the relevant project files
2. Ask the domain-specific questions in references/QUESTIONS.md
3. Produce the output document at docs/output.md
4. Validate against the checklist in references/CHECKLIST.md

## Output format

Sempre devolva um resumo em 3 bullets + caminho do arquivo gerado.

Cada parte tem um papel diferente:

⚠️ O campo que decide tudo

O description Γ© o gatilho. Se ele for vago, sua skill nunca vai ser ativada β€” mesmo com workflow brilhante. Antes de customizar workflow, customize description. Γ‰ a porta de entrada.

3

🎣 Triggers e descriptions eficazes

A description ideal tem 3 partes: quando ativar (cenario em prosa), triggers explicitos (palavras-chave) e, opcionalmente, contra-indicacoes (quando NAO ativar). Esse formato reduz drasticamente falso positivo e falso negativo.

βœ— Description vaga

"Ajuda com cΓ³digo"

Ativa em qualquer conversa sobre programacao. Resultado: skill carregada o tempo todo, sem foco. O agente nao sabe quando ela Γ© util de verdade.

βœ“ Description especifica

"Use ao debugar bugs intermitentes em pipelines async. Triggers: race condition, flaky test, retry storm, intermitente."

Ativa so quando o problema Γ© desse tipo. O agente carrega skills focadas e o ruido cai.

πŸ”§ 3 antes/depois reais

# Exemplo 1 β€” Skill de revisao de PR
description: Revisa pull requests
description: Use ao revisar PRs em monorepo TypeScript com Turborepo.
Triggers: revisar PR, code review, analisar diff, checar mudancas.
NAO usar para revisao de docs ou changelog.

# Exemplo 2 β€” Skill de migration SQL
description: Cria migrations de banco
description: Use ao criar/ajustar migrations Postgres com Prisma
em ambiente multi-tenant. Triggers: migration, alter table,
adicionar coluna, schema change, prisma migrate.

# Exemplo 3 β€” Skill de checklist de compliance
description: Ajuda com compliance
description: Use antes de fazer deploy em ambiente que processa
dados de cartao (PCI-DSS). Triggers: deploy, release, producao,
pagamento, cartao, PCI. Bloqueia o deploy se faltar item.

Observe o padrao: cada description virou uma frase + lista de triggers + opcional bloqueio. Esse e o formato que o agente usa melhor para decidir ativacao.

4

✏️ Editando templates internos

Muita skill carrega templates: arquivos em references/ ou templates/ com perguntas, checklists ou modelos de documento. Customizar uma skill geralmente significa editar esses arquivos β€” nao a SKILL.md em si.

Exemplo: a skill /grill-with-docs usa um arquivo QUESTIONS.md com perguntas genericas pra desafiar seu plano. Pra um time que trabalha com regulacao fiscal brasileira, essas perguntas sao insuficientes. Voce adiciona as perguntas do dominio fiscal sem mexer no resto.

πŸ“ Editando references/QUESTIONS.md

# QUESTIONS.md (template original)

## Architecture
- Por que essa solucao e nao outra?
- Quais alternativas voce considerou?
- O que acontece se a carga 10x?

## Data
- Como esses dados sao persistidos?
- Qual o owner do schema?

## Fiscal (BR) β€” adicionado pelo time
- Esta operacao gera fato gerador de ICMS?
- Tem substituicao tributaria (ICMS-ST) envolvida?
- Estado de origem e destino sao os mesmos? Se nao,
  qual a aliquota interestadual aplicavel?
- O CFOP escolhido bate com a natureza da operacao?
- Existe regime especial (Simples, MEI, Lucro Real)
  que muda o calculo?
- Como o XML da NFe vai refletir essa mudanca?

Note que voce acrescenta, nao remove. Mantem o que veio do upstream (boas praticas gerais de arquitetura e dados) e injeta o conhecimento de dominio. Assim, quando o time fiscal usa /grill-with-docs, ele recebe um interrogatorio que cobre tanto arquitetura geral quanto regras fiscais brasileiras.

πŸ“Š Onde editar

  • references/*.md β€” Perguntas, checklists, dicionarios de termos.
  • templates/*.md β€” Modelos de documento que a skill preenche.
  • SKILL.md (workflow) β€” So edite se a sequencia de passos mudou.
  • SKILL.md (description) β€” Edite SEMPRE que adicionar novos triggers de dominio.
5

🍴 Forks vs overrides locais

Duas estrategias dominam no mundo real: forkar o repo inteiro de skills (voce vira dono de tudo) ou override local em ~/.claude/skills/ (voce mantem o upstream limpo e sobrescreve so o que precisa). Cada uma tem trade-off claro.

βœ“ Fork do repo inteiro

  • βœ“Controle total: pode mudar qualquer skill
  • βœ“Versionamento unico, historico claro
  • βœ“Bom pra times grandes (CI valida tudo)
  • βœ—Atualizar com upstream Γ© trabalho recorrente
  • βœ—Conflitos de merge podem apilhar

βœ“ Override local em ~/.claude/skills/

  • βœ“Upstream continua atualizando sozinho
  • βœ“Voce versiona so o que customizou
  • βœ“Otimo pra individuo ou time pequeno
  • βœ—Override pode conflitar quando upstream muda estrutura
  • βœ—Compartilhar entre maquinas exige sync manual ou repo paralelo

A escolha quase nunca Γ© binaria β€” Γ© um caminho de decisao baseado em quantas skills voce muda e quao critico Γ© manter sync com a comunidade.

1

Voce customiza 1–3 skills?

Caso individual ou time pequeno

Use override local. Copia a SKILL.md para ~/.claude/skills/nome-skill/ e edita. Upstream segue independente.

2

Voce customiza 5+ skills e tem time?

Compartilhamento e padronizacao importam

Fork do repo + repositorio interno. Time inteiro consome a mesma versao customizada. CI roda checagens de qualidade.

3

Voce precisa de updates frequentes do upstream?

A comunidade evolui rapido a base

Use override local com git pull regular no upstream. Override absorve so o que voce mudou β€” o resto se atualiza sozinho.

4

Voce mudou o workflow inteiro?

A skill virou outra coisa

Considere criar skill nova (modulo 3.3). Customizacao tem limite β€” quando o workflow muda muito, Γ© mais limpo nascer skill propria.

6

🌿 Versionamento com git

Customizacao sem versionamento Γ© perda de tempo. Em algum momento voce vai querer voltar atras, comparar versoes ou compartilhar com o time. A pratica que funciona melhor: branch separado para customizacoes + rebase periodico com upstream.

βš™οΈ Setup inicial β€” fluxo completo

# 1. Clone o repo de skills (publico ou fork do time)
git clone https://github.com/seu-org/skills.git
cd skills

# 2. Crie um branch para suas customizacoes do dominio
git checkout -b custom/fiscal-br

# 3. Customize as skills (edite SKILL.md, references/, etc)
$EDITOR grill-with-docs/references/QUESTIONS.md

# 4. Commit com mensagem que explica O QUE de dominio mudou
git add grill-with-docs/
git commit -m "grill-with-docs: adiciona perguntas fiscais BR (ICMS-ST, CFOP)"

# 5. Periodicamente, pegue updates do upstream
git fetch origin main
git rebase origin/main

# 6. Se houver conflito, resolva preservando seu dominio
#    Em geral conflitos sao em paragrafos de exemplo,
#    nao em estrutura β€” facil de resolver.

# 7. Empurre para o seu fork ou repo do time
git push origin custom/fiscal-br --force-with-lease

Tres regras que evitam dor:

7

πŸ§ͺ Exemplo completo: customizando /grill-with-docs

Vamos juntar tudo em um caso real. Voce Γ© tech lead em uma fintech brasileira. A skill /grill-with-docs da context-mode faz um interrogatorio bom no plano antes de codar, mas nao conhece compliance fiscal. Vamos customizar passo a passo.

1

Copia a skill para o override local

Trazemos a estrutura completa pra ~/.claude/skills/ renomeando para isolar a versao fiscal.

2

Adiciona secao "Domain Questions"

No references/QUESTIONS.md, acrescenta o bloco fiscal sem remover nada do generico.

3

Atualiza description com triggers fiscais

No SKILL.md, inclui palavras-chave de dominio (ICMS, CFOP, NFe) pra ativacao certa.

4

Testa e versiona

Roda em um plano real, confirma que o agente faz as perguntas fiscais, e commita no branch custom/fiscal-br.

πŸ“‚ Diff completo da customizacao

# Passo 1: copia para override local
mkdir -p ~/.claude/skills/grill-with-docs-fiscal
cp -r ./grill-with-docs/* ~/.claude/skills/grill-with-docs-fiscal/

# Passo 2: SKILL.md β€” antes e depois
---
name: grill-with-docs-fiscal
description: Grilling session that challenges your plan
  against the existing domain model.
description: Grilling session that challenges your plan
  against the domain model AND Brazilian fiscal rules.
  Triggers: grill, desafiar plano, plano fiscal, ICMS,
  ICMS-ST, CFOP, NFe, substituicao tributaria, fiscal BR.
  NAO usar para revisao puramente de UI/frontend.
---

# Passo 3: references/QUESTIONS.md β€” adiciona secao
## Domain Questions β€” Fiscal BR

### Operacao
- Esta operacao gera fato gerador de ICMS?
- Tem ICMS-ST (substituicao tributaria)?
- Existe DIFAL entre estados envolvidos?
- O CFOP escolhido bate com a natureza da operacao?

### Regime
- Cliente esta em Simples Nacional, Lucro Real ou Presumido?
- Tem regime especial (RETID, Reintegra, Zona Franca)?

### Documento fiscal
- Como NFe vai refletir a mudanca?
- Precisa de carta de correcao para historico?
- Vai impactar SPED Fiscal ou EFD-Contribuicoes?

### Compliance
- A regra esta no nosso parecer juridico fiscal vigente?
- Quem Γ© o owner contabil para validar?

# Passo 4: commit no branch de customizacoes
cd ~/skills-fork
git checkout -b custom/fiscal-br
git add grill-with-docs-fiscal/
git commit -m "grill-with-docs-fiscal: customiza com regras fiscais BR

- adiciona triggers ICMS, ICMS-ST, CFOP, NFe
- adiciona secao Domain Questions com 15 perguntas fiscais
- mantem questoes genericas de arquitetura do upstream"

Resultado: quando voce ou alguem do time roda /grill-with-docs-fiscal num plano que envolve emissao de NFe, o agente passa pelas 15 perguntas fiscais alem das genericas. O plano que sai dali ja considerou substituicao tributaria, DIFAL e SPED β€” coisa que a skill generica jamais ia perguntar.

8

πŸ‘₯ Compartilhando customizacoes com o time

Customizacao individual Γ© bom; customizacao compartilhada Γ© multiplicador. Quando o time inteiro usa a mesma versao customizada das skills, as decisoes ficam consistentes β€” todo PR Γ© revisado com o mesmo rigor, todo plano passa pelo mesmo grill.

βœ“ Monorepo de skills do time

  • βœ“Uma fonte da verdade, versionada
  • βœ“CI valida estrutura (frontmatter, secoes obrigatorias)
  • βœ“Onboarding novo: git clone e pronto
  • βœ“Reviews em PR garantem qualidade da skill
  • βœ“Time inteiro pensa igual em areas criticas

βœ— Cada um na sua maquina

  • βœ—Drift: cada dev tem versao ligeiramente diferente
  • βœ—Conhecimento fica preso na maquina de quem customizou
  • βœ—Onboarding: novo dev nao herda nada
  • βœ—Sem CI, sem revisao, sem qualidade garantida
  • βœ—Decisoes do agente variam entre devs (mesmo plano, perguntas diferentes)

πŸ”„ Sincronizacao no monorepo do time

# Repo: github.com/empresa/skills-team

# Dev novo: instala todas as skills do time
git clone git@github.com:empresa/skills-team.git ~/.claude/skills

# Dev existente: pega atualizacoes
cd ~/.claude/skills
git pull origin main

# Customizou algo? Manda PR para o monorepo do time
git checkout -b feat/grill-fiscal-novas-perguntas
$EDITOR grill-with-docs-fiscal/references/QUESTIONS.md
git commit -m "grill-fiscal: 3 perguntas sobre EFD-Reinf"
git push origin feat/grill-fiscal-novas-perguntas
gh pr create --fill

Esse fluxo transforma cada melhoria individual em ativo do time. Quando alguem descobre que falta uma pergunta importante, Γ© PR β€” nao um arquivo na maquina dele que ninguem mais vai usar.

9

πŸ€” Quando criar skill nova vs customizar

Nem toda necessidade Γ© customizacao. As vezes o que voce precisa Γ© uma skill nova β€” o workflow Γ© tao diferente que estender uma existente fica pior do que comecar do zero. Quatro perguntas resolvem essa duvida.

🧭 As 4 perguntas

  1. O workflow (sequencia de passos) Γ© o mesmo? Se sim β†’ customizar. Se o roteiro de execucao muda completamente β†’ skill nova.
  2. O output final tem o mesmo formato? Se sim β†’ customizar. Se voce esta gerando um artefato diferente (codigo vs documento vs json) β†’ skill nova.
  3. Os triggers se sobrepoem com a skill base? Se sim β†’ customizar (mesmo trigger, mais contexto). Se sao triggers totalmente novos β†’ skill nova.
  4. Voce esta adicionando <30% de conteudo? Se sim β†’ customizar. Se voce vai reescrever metade do SKILL.md β†’ skill nova (e mais limpo).

Regra de bolso: 3+ "skill nova" nas respostas = pare de customizar e crie do zero. Voce vai sofrer menos no longo prazo.

10

πŸ‹οΈ Exercicio pratico

Hora de colocar a mao. O exercicio Γ© simples e curto, mas Γ© o que separa quem so leu de quem realmente aprendeu a customizar.

πŸ“ Passo a passo

  1. Escolha 1 skill que voce usa pelo menos 1x por semana.
  2. Identifique 1 ponto onde ela "nao conhece seu dominio" β€” uma pergunta generica demais, um trigger que pega contexto errado, ou um template sem termos do seu trabalho.
  3. Copie a SKILL.md para ~/.claude/skills/.
  4. Customize o ponto que voce identificou (description, references/* ou workflow).
  5. Documente o antes/depois: copie e cole o texto antigo, copie e cole o novo, e descreva em 2 frases o que melhorou.
  6. Use a versao nova por 1 semana. Se ajudou, commite e compartilhe. Se nao, ajuste ou volte ao original.

πŸ’‘ Onde costuma estar o ponto fraco

Na grande maioria dos casos, o ponto que "nao conhece seu dominio" Γ© uma pergunta generica em references/. Comece por la antes de mexer em workflow.

πŸ“Œ Resumo do Modulo

βœ“
Skill generica vira otima com vocabulario do dominio β€” adicionar 5–10 perguntas certas vale mais que reescrever workflow.
βœ“
A description decide ativacao β€” invista nela antes de customizar qualquer outra coisa.
βœ“
Edite templates em references/, nao a SKILL.md β€” Γ© onde o conhecimento de dominio mora.
βœ“
Fork x override local Γ© trade-off claro β€” 1–3 skills = override; 5+ ou time = fork.
βœ“
Versione com branch separado e rebase β€” historico linear, rollback barato, conflito raro.
βœ“
Compartilhe no monorepo do time β€” customizacao individual Γ© ok, customizacao do time Γ© multiplicador.
βœ“
Saiba a hora de parar de customizar β€” 3+ "skill nova" nas 4 perguntas = crie do zero.

Proximo Modulo:

3.3 β€” Criando skills do zero