MODULO 2.4

๐ŸŽจ Skills Personalizadas

Crie, configure e gerencie skills customizadas para o Claude Code.

6
Topicos
35
Minutos
Interm.
Nivel
Pratico
Tipo
1

๐Ÿ“‚ Estrutura de Skills no Claude Code

Claude Code descobre skills automaticamente em dois locais: ~/.claude/skills/ (global) e .claude/skills/ (projeto).

Locais de Skills

~/.claude/skills/           # Skills GLOBAIS (todos os projetos)
โ”œโ”€โ”€ code-review/
โ”‚   โ””โ”€โ”€ SKILL.md
โ”œโ”€โ”€ tdd/
โ”‚   โ””โ”€โ”€ SKILL.md
โ””โ”€โ”€ formatting/
    โ””โ”€โ”€ SKILL.md

projeto/.claude/skills/     # Skills LOCAIS (apenas este projeto)
โ”œโ”€โ”€ api-patterns/
โ”‚   โ””โ”€โ”€ SKILL.md
โ””โ”€โ”€ database-migrations/
    โ””โ”€โ”€ SKILL.md

Global (~/.claude/skills/)

  • โ€ข Disponivel em TODOS os projetos
  • โ€ข Ideal para skills pessoais de uso geral
  • โ€ข Code review, TDD, formatacao

Local (.claude/skills/)

  • โ€ข Apenas neste projeto
  • โ€ข Versionada com o codigo
  • โ€ข Compartilhada com o time
2

๐ŸŽฏ Criando sua Primeira Skill

Criar uma skill e simples: uma pasta com um arquivo SKILL.md contendo frontmatter YAML e instrucoes em Markdown.

Passo a Passo

# 1. Criar pasta da skill
mkdir -p ~/.claude/skills/my-formatter

# 2. Criar SKILL.md
cat > ~/.claude/skills/my-formatter/SKILL.md << 'EOF'
---
name: my-formatter
description: Formats code following team standards. Use when
  user asks to format, lint, or clean up code files.
allowed-tools: Bash(prettier:*), Bash(eslint:*)
---

# Code Formatter

## When to Use
- User asks to format code
- Before committing changes
- After generating new files

## Instructions
1. Run prettier on the file
2. Run eslint --fix
3. Report any remaining issues

## Commands
- Format: `prettier --write {file}`
- Lint: `eslint --fix {file}`
EOF
3

๐Ÿ”ง Slash Commands Customizados

Skills podem ser invocadas como slash commands: /skill-name. O nome vem do frontmatter.

Invocando Skills

# Invocacao explicita via slash command
/my-formatter              # Ativa a skill
/my-formatter src/app.js   # Ativa com argumento

# Ativacao automatica (via description)
"Formate o arquivo utils.ts"  # Detecta e ativa

# Listar skills disponiveis
/skills                    # Mostra todas as skills

๐Ÿ’ก Dica de Nomes

Use nomes curtos e memoraveis para suas skills. Eles viram slash commands, entao /fmt e melhor que /my-super-awesome-code-formatter-v2.

4

๐Ÿ“ฆ Skills com Recursos

Skills podem incluir arquivos adicionais: scripts, templates e configuracoes.

Estrutura com Recursos

my-skill/
โ”œโ”€โ”€ SKILL.md                 # Obrigatorio
โ”œโ”€โ”€ scripts/
โ”‚   โ”œโ”€โ”€ validate.py          # Script de validacao
โ”‚   โ””โ”€โ”€ generate.sh          # Script de geracao
โ”œโ”€โ”€ templates/
โ”‚   โ”œโ”€โ”€ component.tsx.tmpl   # Template de componente
โ”‚   โ””โ”€โ”€ test.ts.tmpl         # Template de teste
โ””โ”€โ”€ resources/
    โ””โ”€โ”€ design-tokens.json   # Configuracoes

Referenciando Recursos no SKILL.md

## Scripts Disponiveis

Para validar: execute `./scripts/validate.py {arquivo}`
Para gerar: use o template em `./templates/component.tsx.tmpl`

## Design Tokens

As cores e fontes estao em `./resources/design-tokens.json`
5

๐Ÿงช Testando Skills

Teste suas skills antes de compartilhar. Verifique se ativam corretamente e produzem resultados esperados.

Checklist de Teste

  • 1.Descoberta: Execute /skills e verifique se aparece
  • 2.Slash command: Invoque com /nome-da-skill
  • 3.Ativacao automatica: Use prompts naturais e veja se ativa
  • 4.Resultado: Verifique se as instrucoes sao seguidas

Problemas Comuns

  • โ€ข Skill nao aparece: Verifique se SKILL.md existe e tem frontmatter valido
  • โ€ข Nao ativa automaticamente: Melhore a description com mais keywords
  • โ€ข Permissoes negadas: Verifique allowed-tools no frontmatter
6

๐Ÿ“ค Compartilhando Skills

Skills podem ser compartilhadas via Git, como submodulos ou copiando para repositorios.

Via Git (Projeto)

# Skills em .claude/skills/ sao
# versionadas automaticamente

Ideal para skills especificas do projeto.

Via Repositorio

git clone repo ~/.claude/skills/skill-name

Ideal para skills reutilizaveis.

๐Ÿ“š Resumo do Modulo

โœ“
Locais - ~/.claude/skills/ (global) e .claude/skills/ (projeto)
โœ“
Criacao - Pasta + SKILL.md com frontmatter e instrucoes
โœ“
Invocacao - /skill-name ou ativacao automatica via description
โœ“
Recursos - scripts/, templates/, resources/
โœ“
Compartilhamento - Git, submodules, repositorios

Proximo Modulo:

2.5 - Hooks e Automacao