๐ Tipos de Problemas em Skills
Antes de debugar, e importante entender os tipos de problemas que podem ocorrer. Cada categoria tem suas proprias tecnicas de diagnostico.
Skill Nao Carrega
Skill nunca e ativada
- โข Frontmatter invalido (YAML)
- โข Descricao nao faz match
- โข Diretorio errado
- โข Nome de arquivo incorreto
Comportamento Errado
Carrega mas faz coisa errada
- โข Instrucoes ambiguas
- โข Conflito com outras skills
- โข Falta de contexto
- โข Interpretacao incorreta
Erros de Execucao
Tools falham durante uso
- โข Permissoes insuficientes
- โข Arquivos nao encontrados
- โข Comandos com sintaxe errada
- โข APIs indisponiveis
Problemas de Performance
Funciona mas e lento
- โข Skill muito longa
- โข Muitas tools em sequencia
- โข Loops desnecessarios
- โข Contexto saturado
๐ก Primeira Pergunta
Sempre comece com: "A skill esta sendo carregada?" Se nao, o problema e de descoberta. Se sim, e de comportamento ou execucao.
๐ Tecnicas de Diagnostico
Siga um processo sistematico para identificar a causa raiz do problema.
Verificar se Skill Carrega
Use o comando /skills ou pergunte ao agente
/skills
# ou
"Quais skills voce tem carregadas agora?"
Validar Frontmatter
YAML invalido impede carregamento
# Use um validador YAML online ou:
python3 -c "import yaml; yaml.safe_load(open('SKILL.md').read().split('---')[1])"
Testar Descricao
A descricao faz match com o pedido do usuario?
# Pergunte ao agente:
"Que skill voce usaria para [tarefa especifica]?"
Isolar o Problema
Desative outras skills, simplifique o input, teste passo a passo
๐ Checklist Rapido de Diagnostico
- โ Arquivo e SKILL.md (nao skill.md)?
- โ Esta no diretorio correto?
- โ Frontmatter tem --- no inicio e fim?
- โ name: e description: estao presentes?
- โ YAML e valido (sem tabs, espacos corretos)?
- โ Descricao contem palavras-chave relevantes?
๐ Implementando Logging
Logging nao e automatico em skills - voce precisa instruir o agente a reportar acoes. Bom logging facilita debugging futuro.
๐ Niveis de Log
- DEBUG: Detalhes internos (so para desenvolvimento)
- INFO: Operacoes normais (arquivo criado, analise completa)
- WARN: Algo inesperado mas nao bloqueante
- ERROR: Falha que impede conclusao
Instrucoes de Logging na Skill
## Logging
Ao executar esta skill, reporte progresso no formato:
[INFO] Descricao da acao executada
[WARN] Descricao do alerta
[ERROR] Descricao do erro
Exemplo de execucao:
[INFO] Iniciando analise de codigo em /projeto/src
[INFO] Encontrados 23 arquivos .js
[WARN] Arquivo muito grande ignorado: bundle.min.js
[INFO] Analise completa: 5 issues encontrados
[INFO] Relatorio gerado em /projeto/report.md
โ Logar
- โ Inicio e fim de operacoes
- โ Arquivos criados/modificados
- โ Decisoes importantes
- โ Erros e como foram tratados
โ Evitar Logar
- โ Dados sensiveis (senhas, tokens)
- โ Conteudo completo de arquivos
- โ Detalhes excessivos que poluem
- โ Informacoes pessoais do usuario
๐ง Corrigindo Problemas Comuns
Alguns problemas aparecem repetidamente. Aqui estao solucoes rapidas para os mais comuns.
Skill Nunca Carrega
Problema mais comum
Causas:
- โข Arquivo nao e SKILL.md (case-sensitive)
- โข Diretorio errado
- โข Frontmatter YAML invalido
Solucao: Verifique nome, local e valide YAML
Carrega mas Nao Ativa
Descricao nao faz match
Causas:
- โข Descricao muito especifica ou generica
- โข Faltam palavras-chave
- โข Outra skill mais relevante
Solucao: Melhore descricao com sinonimos e casos de uso
Tool Nao Permitida
allowed-tools restrito demais
Causas:
- โข Tool necessaria nao listada
- โข Pattern de permissao incorreto
Solucao: Adicione tools necessarias ao frontmatter
Comportamento Inconsistente
Funciona as vezes, falha outras
Causas:
- โข Instrucoes ambiguas
- โข Falta de exemplos
- โข Contexto insuficiente
Solucao: Adicione exemplos claros e seja mais especifico
๐งช Testando Skills Sistematicamente
Criar um suite de testes para sua skill previne regressoes e facilita manutencao.
๐ Framework de Testes Manual
Crie um documento com cenarios de teste:
# Testes da Skill: minha-skill
## Cenario 1: Caso basico
Input: "faz X com Y"
Esperado: Cria arquivo Z com conteudo A
Status: [ ] Passou [ ] Falhou
## Cenario 2: Input invalido
Input: "faz X" (sem Y)
Esperado: Pede esclarecimento sobre Y
Status: [ ] Passou [ ] Falhou
## Cenario 3: Arquivo nao existe
Input: "analisa /path/inexistente"
Esperado: Erro claro sobre arquivo
Status: [ ] Passou [ ] Falhou
๐ข Happy Path
Cenario ideal funciona
- โข Input valido
- โข Arquivos existem
- โข Permissoes OK
๐ก Edge Cases
Limites e excecoes
- โข Input vazio
- โข Arquivos grandes
- โข Caracteres especiais
๐ด Error Cases
Falhas esperadas
- โข Arquivo inexistente
- โข Sem permissao
- โข Tool indisponivel
๐ก Dica de Manutencao
Execute os testes apos cada modificacao da skill. Isso pega regressoes antes de afetar usuarios.
๐ Monitoramento em Producao
Mesmo skills testadas podem falhar em producao. Monitoramento continuo ajuda a identificar problemas cedo.
๐ Metricas de Uso
- โข Quantas vezes ativada por dia
- โข Taxa de sucesso vs falha
- โข Tempo medio de execucao
- โข Usuarios unicos
๐ด Metricas de Erro
- โข Tipos de erro mais comuns
- โข Taxa de erro por versao
- โข Erros por horario/dia
- โข Tempo medio para resolver
๐จ Configurando Alertas
Defina alertas para situacoes criticas:
- ๐ด Taxa de erro > 10% - investigar imediatamente
- ๐ก Tempo de execucao > 30s - verificar performance
- ๐ต Queda de 50% no uso - mudanca de comportamento?
๐ Proximo Passo
Com debugging e logging dominados, o proximo modulo aborda Performance e Otimizacao - como criar skills rapidas e eficientes.
๐ Resumo do Modulo
Proximo Modulo:
1.7 - Performance e Otimizacao