debugging-code
Ajuda seu agente a depurar códigos linha por linha. Permite ver o estado das variáveis e entender como o programa está funcionando.
O que ela faz
Ajuda a encontrar erros em códigos de programação. Você pode pausar o programa, ver os valores das variáveis e avançar linha por linha para entender o que está acontecendo.
Quando usar
- ✓Quando um programa trava ou dá erro.
- ✓Quando o resultado do programa está errado.
- ✓Quando você precisa entender como o código chegou a um certo ponto.
Exemplo do que pedir para a IA
“Me ajude a depurar este código Python: `meu_script.py`”
Quer saber mais? Abra as seções abaixo.
Como usar
O jeito mais fácil: copie a mensagem abaixo e cole no Claude, ChatGPT, Cursor ou outra IA. Ela lê a skill e segue as instruções.
Link da skill
Mensagem pronta para colar
Como funciona
A ferramenta pausa a execução do seu código em pontos específicos. Você pode então examinar o estado atual, como os valores das variáveis, e controlar a execução passo a passo.
Instalação
Jeito mais fácil: copie o link da skill e cole no Claude, ChatGPT ou Cursor pedindo para seguir as instruções.
No terminal (Claude Code, Codex, Cursor), na pasta do projeto:
npx skills add sickn33/agentic-awesome-skills --skill debugging-codeOu baixe só o arquivo:
curl -L https://raw.githubusercontent.com/sickn33/agentic-awesome-skills/main/plugins/agentic-awesome-skills-claude/skills/debugging-code/SKILL.md -o SKILL.mdConteúdo técnico (SKILL.md)
Tradução do texto original do autor no GitHub. Os comandos e códigos estão como no original.
Depurador Interativo
Quando Usar
Use esta habilidade quando precisar depurar código-fonte interativamente — definir pontos de interrupção, percorrer a execução linha por linha, inspecionar o estado de variáveis em tempo real, avaliar expressões contra o programa em execução e navegar pela pilha de chamadas para rastrear as causas raiz. Use quando um programa travar, gerar exceções inesperadas, produzir...
Use quando um programa travar, produzir saída incorreta ou você precisar entender exatamente
como a execução chegou a um determinado estado — e executá-lo novamente com mais instruções print
não fornecer a resposta rápido o suficiente.
Você pode pausar um programa em execução a qualquer momento, ler os valores das variáveis em tempo real e a pilha de chamadas naquele exato momento, avançar linha por linha ou pular para o próximo ponto de interrupção, e avaliar expressões arbitrárias contra o processo em tempo real — tudo sem reiniciar.
Configuração
Esta habilidade usa dap, uma ferramenta CLI que atua como um daemon em segundo plano para interagir com o depurador via Protocolo DAP, mantendo
o estado do depurador, para que você possa simplesmente interagir com ele com várias chamadas.
Se dap não estiver instalado (verifique: command -v dap), instale-o AGORA.
Pergunte/notifique o usuário antes de prosseguir com a instalação.
Via Homebrew (macOS)
brew install AlmogBaku/tap/dap
Script instalador:
bash scripts/install-dap.sh
Instalar a partir das fontes:
go install github.com/AlmogBaku/debug-skill/cmd/dap@latest
Esta ferramenta é de código aberto e está disponível no GitHub, mantida e segue as melhores práticas.
Suporta nativamente Python, Go, Node.js/TypeScript, Rust, C/C++, e qualquer outra linguagem que suporte DAP.
Se um backend de depurador estiver faltando ou falhar ao iniciar, consulte references/installing-debuggers.md
Para todos os comandos e flags: dap --help ou dap <cmd> --help.
Iniciando uma Sessão
dap debug <file> inicia o programa sob o depurador. O backend é detectado automaticamente pela extensão do arquivo.
Escolha sua estratégia de início com base no que você sabe:
- Tem uma hipótese — defina um ponto de interrupção onde você espera o bug:
dap debug script.py --break script.py:42 - Ponto de interrupção condicional — pare apenas quando uma condição for atendida:
dap debug script.py --break "script.py:42:x > 5"( sempre coloque as especificações com condições entre aspas) - Aplicativo com múltiplos arquivos — pontos de interrupção entre módulos:
--break src/api/routes.py:55 --break src/models/user.py:30 - Sem hipótese, programa pequeno — percorra desde a entrada:
dap debug script.py --stop-on-entry(evite para projetos grandes — o código de inicialização é barulhento; use bissecção com pontos de interrupção em vez disso) - Exceção, localização desconhecida —
dap debug script.py --break-on-exception raised(Python) /all(Go/JS) - Processo remoto —
dap debug --attach host:port --backend <name> - Processo já em execução (servidor travado, problema ativo) — anexe sem reiniciar:
dap debug --pid <PID> --backend <name>Observação sobre macOS + Go:
dlv --pidrequer SIP desativado (csrutil disable). Prefira iniciar o programa sob o depurador em vez disso ou anexe a um depurador remoto!
Isolamento de sessão: --session <name> impede que agentes concorrentes interfiram.
Dica: Você pode querer usar o ID da sua sessão (${CLAUDE_SESSION_ID}) se disponível.
Execute dap debug --help para ver todas as flags, backends e exemplos.
A Mentalidade de Depuração
Recorra a um depurador quando a leitura do código-fonte sozinha não puder validar a causa raiz. Um depurador permite que você observe o que acontece: valores reais, caminho real, estado real. Quando isso diverge do que deveria acontecer, você encontrou seu bug.
Duas tentativas falhas, repense. Se duas hipóteses falharem no mesmo local, seu modelo mental está errado. Releia o código, forme uma teoria completamente diferente com pontos de interrupção diferentes.
Escalone gradualmente. Comece com dap eval para testar uma hipótese rápida. Use pontos de interrupção condicionais
para filtrar o ruído. Volte para pontos de interrupção completos + percorrer apenas quando precisar de controle interativo.
Imite a jornada do usuário. Se você estiver depurando um fluxo de usuário, defina pontos de interrupção ao longo do caminho que você espera que o código siga.
Se você esperava que compute() fosse chamado, mas ele nunca é, então o bug está no chamador — não em compute(), mas no que quer que
fosse suposto chamá-lo.
Defina pontos de interrupção em vez de prints. Quando sentir a vontade de imprimir algo, defina um ponto de interrupção em vez disso.
Conheça Seu Estado
Cada comando de execução dap retorna o contexto completo automaticamente: localização atual, código-fonte, variáveis locais, pilha de chamadas e saída. A cada parada, pergunte:
- As variáveis locais têm os valores que eu esperava?
…
Perguntas frequentes
Como eu instalo essa ferramenta?
Você pode instalar usando o Homebrew no macOS (`brew install AlmogBaku/tap/dap`), um script de instalação (`bash scripts/install-dap.sh`) ou compilando do código fonte (`go install github.com/AlmogBaku/debug-skill/cmd/dap@latest`).
Quais linguagens de programação são suportadas?
Suporta Python, Go, Node.js/TypeScript, Rust, C/C++ e outras linguagens que usam o protocolo DAP.
O que é um 'breakpoint'?
Um 'breakpoint' é um ponto que você define no código onde a execução deve parar temporariamente, permitindo que você inspecione o estado do programa.
Detalhes
Descrição original do autor
Interactively debug source code — set breakpoints, step through execution line by line, inspect live variable state, evaluate expressions against the running program, and navigate the call stack to trace root causes.
Popularidade
- Estrelas no GitHub
- 48 mil
- Posição no ranking
- #2740
- Licença
- MIT
- Atualizada em
- 15/10/2026
Comentários
- …
Mais skills deste repositório
00-andruia-consultant
Ajuda seu agente a iniciar ou melhorar projetos de IA. Ele analisa código, sugere ferramentas e cria planos de ação em espanhol.
sickn33/agentic-awesome-skills
007
Faz seu agente realizar auditorias de segurança e modelagem de ameaças. É útil para proteger projetos contra ataques e vulnerabilidades.
sickn33/agentic-awesome-skills
10-andruia-skill-smith
Ajuda seu agente a criar ou melhorar ferramentas de IA. Ele define como as ferramentas funcionam, escreve a documentação e valida a estrutura.
sickn33/agentic-awesome-skills
20-andruia-niche-intelligence
Faz seu agente criar um resumo sobre um setor específico. É útil para entender o contexto, regras, padrões de uso e riscos de um projeto, usando fontes confiáveis.
sickn33/agentic-awesome-skills
Skills parecidas
cpp-testing
Faz seu agente escrever e melhorar testes para código C++. Ajuda a configurar ferramentas de teste e a corrigir erros.
affaan-m/ECC
csharp-testing
Ajuda seu agente a criar testes para código C# e .NET. Ele usa as melhores práticas para garantir que os testes sejam eficientes e confiáveis.
affaan-m/ECC
django-tdd
Faz seu agente aplicar estratégias de teste para Django com pytest-django e TDD. É útil para escrever testes robustos e garantir a qualidade do código, especialmente para APIs DRF.
affaan-m/ECC