diagnose
Skill0 starsChanged 48 days agoMITView on GitHub
Use when: executar loop de debugging disciplinado para falhas que resistiram a 1+ tentativas diretas — proibido pular etapas ou fixar sem hipótese confirmada. MODO ALVO=SESSÃO DE AGENTE: sessão de agente em loop de tool calls, retry storm (429), context overflow, drift de prompt ou alucinação de path — capturar evidência, classificar, recovery reversível, introspection report.
193 other projects use a version of this.
Adopted by
Most recently taken up by
- agent-services-at/pluginstheir own version, first seen Nov 8, 2026
- Eclipter/agentstheir own version, first seen Nov 8, 2026
- venhdev/skillstheir own version, first seen Nov 8, 2026
- ishandutta2007/Awesome-Claude-Skillstheir own version, first seen Nov 8, 2026
- DeevsDeevs/agent-systemtheir own version, first seen Nov 8, 2026
- pedrohcgs/claude-code-my-workflowtheir own version, first seen Nov 8, 2026
Used with
Projects with it also use zoom-out, to-prd and 10 more.
Other files people use alongside this one.
Files found in the same public projects as a version of this one, more often than they turn up anywhere else. Each project counts once, large collections count for less, and this file's own repository is left out.
victorgarciaesgiSkillzoom-out
Tell the agent to zoom out and give broader context or a higher-level perspective. Use when you're unfamiliar with a section of code or need to understand how it fits into the bigger picture.
Also in 61 projects that use this
GoogleSkillto-prd
Turn the current conversation into a PRD and publish it to the project issue tracker — no interview, just synthesis of what you've already discussed.
Also in 56 projects that use this
GoogleSkillto-issues
Break a plan, spec, or PRD into independently-grabbable issues on the project issue tracker using tracer-bullet vertical slices.
Also in 53 projects that use this
simo97Skilledit-article
The user will invoke this skill to help them edit an article.
Also in 17 projects that use this
simo97Skillwrite-a-skill
Create new agent skills with proper structure, progressive disclosure, and bundled resources. Use when user wants to create, write, or build a new skill.
Also in 44 projects that use this
AnasX7Skillsetup-pre-commit
Set up Husky pre-commit hooks with lint-staged (Prettier), type checking, and tests in the current repo. Use when user wants to add pre-commit hooks, set up Husky, configure lint-staged, or add commit-time formatting/typechecking/testing.
Also in 27 projects that use this
- +4 more from simo97
Other versions193 projects use a version of this.
Word for word · 0
None found.
Edited · 0
None found.
Wrote their own version · 193
- github/awesome-copilot★ 41ksame name
- epicenter-md/epicenter★ 4.8ksame name
- EpicenterHQ/epicenter★ 4.8ksame name
- CherryHQ/cherry-studio-app★ 4.1ksame name
- pedrohcgs/claude-code-my-workflow★ 1.7ksame name
- formancehq/ledger★ 1.5ksame name
- getagentseal/founder-playbook★ 745same name
- victorgarciaesgi/regle★ 508same name
- amazingloft999-droid/mattpocock-skills★ 422same name
- openvetta/open-vetta★ 302same name
183 more not listed
How matches are found. Word for word: the exact same text. Edited: shares passages with this file (“99% same” means 99% of its five-word phrases also appear here; 10% or more counts). Their own version: similar meaning, or, weakest, the same name. We can’t tell which project had it first. Projects are counted among the 200 most-starred candidates, and mentions are links to the repository we found, up to 50 per site, so both counts are a floor.
In this repository12 other files it gives its agents.
- CLAUDE.mdCLAUDE.md
- content-design-reviewSkill
- content-designSkill
- councilSkill
- debateSkill
- grill-meSkill
- office-hoursSkill
- pre-mortemSkill
- traceSkill
- writing-fragmentsSkill
- writing-great-skillsSkill
- writing-shapeSkill
The file
We split this skill into the rules it gives an agent
1 rule. 0 are common, 1 is distinctive, and 0 are very specific to this project.
0
Common
Most of the 174 edited versions we read keep these.
1
Distinctive
This author's own choices. Worth a look.
0
Very specific
Tied to their project's names, files or tools. Probably skip.
- Common
- Distinctive
- Very specific
- Distinctive: line 63
Failing test: no seam que alcança o bug (unit, integration, e2e)
“Common” is measured: kept by at least 6 in 10 of the 174 edited versions of this file we could read. “Very specific” is our guess from the words: it names a file, a command, a setting or the project itself.
Files
Skill: Diagnose
Propósito
Executar loop de debugging disciplinado para falhas que resistiram a 1+ tentativas diretas. Proibido pular etapas ou fixar sem hipótese confirmada.
Leading word: tight. A tight loop é fast, deterministic, e red-capable (vai red no bug). Um loop flaky de 30s é quase inútil; um loop tight de 2s é um superpoder de debugging.
Condições de Ativação
Ative esta skill quando:
- Bug não resolvido após 1 tentativa direta
- Falha com comportamento intermitente ou não-reproduzível
- Erro cuja causa-raiz é desconhecida (não apenas sintoma visível)
@diagnose [descrição do bug]chamado explicitamente
NÃO ative para: erros óbvios de sintaxe; falhas já diagnosticadas aguardando fix; tarefas sem componente de bug.
Perfil de modelo
Perfil deep — diagnostico e a linha textual do perfil no catalog; a etapa Hypothesise carrega
o raciocinio causal de que o resto do loop depende
(model-routing §Padrao custo-efetivo; model-catalog §Perfis).
Esta skill nao mantem pins locais por etapa.
Protocolo de Execução
ETAPA -1 — Selecionar ALVO (obrigatório antes da ETAPA 0)
O que falhou?
- Código, build, teste, dado → ALVO = SOFTWARE. Seguir ETAPA 0 abaixo.
- Output de um agente (agente disse/fez algo inesperado; a pergunta é qual
parte do agent file habilitou isso) → ALVO = OUTPUT DE AGENTE. Carregar
tracee executar por lá. Não seguir para a ETAPA 0. - Sessão de agente em falha agora (loop de tool calls, retry storm 429,
context overflow, drift de prompt, alucinação de path — a pergunta é como
conter e recuperar) → ALVO = SESSÃO DE AGENTE. Executar a seção
## MODO ALVO = SESSÃO DE AGENTEabaixo. Não seguir para a ETAPA 0.
Teste que separa os dois alvos de agente: OUTPUT DE AGENTE é atribuição estática sobre um output já produzido; SESSÃO DE AGENTE é recuperação de uma sessão viva em falha.
ETAPA 0 — Build a Tight Feedback Loop
Esta é a skill. Todo o resto é mecânico. Se você tem um loop tight que vai red no bug, você vai encontrar a causa. Se não tem, nenhuma quantidade de leitura de código vai salvar.
Seja agressivo e criativo. Recuse desistir. 10 ways de construir um loop (em ordem de preferência):
- Failing test no seam que alcança o bug (unit, integration, e2e)
- Curl / HTTP script contra dev server rodando
- CLI invocation com fixture input, diffando stdout vs snapshot known-good
- Headless browser script (Playwright/Puppeteer) — drives UI, asserta DOM/console/network
- Replay captured trace — salva request/payload/event log real, replay no code path isolado
- Throwaway harness — subset mínimo do sistema (1 service, mocked deps) que exercita o bug
- Property/fuzz loop — se bug é "sometimes wrong output", 1000 random inputs procurando failure mode
- Bisection harness — automatiza "boot at state X, check, repeat" para
git bisect run - Differential loop — mesmo input em old-version vs new-version, diff outputs
- HITL bash script — último recurso. Drive humano com script estruturado
Tighten o loop (tratar como produto):
- Faster? Cache setup, skip unrelated init, narrow test scope
- Sharper signal? Asserta sintoma específico, não "didn't crash"
- More deterministic? Pin time, seed RNG, isolate filesystem, freeze network
Bugs não-determinísticos: objetivo não é repro limpo, é higher reproduction rate. Loop trigger 100×, paraleliza, add stress, narrow timing windows, inject sleeps. Bug 50% flake é debuggable; 1% não — keep raising rate.
Quando genuinamente não pode construir loop: parar e dizer explicitamente. Listar o que tentou. Pedir: (a) access ao environment reproduzível, (b) artifact capturado (HAR, log dump, core dump), (c) permissão para instrumentation temporária em produção. Não prosseguir para hipóteses sem loop.
Output obrigatório:
LOOP: <tipo escolhido (1-10)>
COMMAND: <1 comando que já rodou pelo menos 1× que vai red no bug>
OUTPUT: <output do comando acima>
TIGHT: [fast + deterministic + red-capable | flaky <X%> | não-reproduzível]Se você se pegar lendo código para construir teoria antes deste comando existir, STOP. Hipótese sem loop red-capable é o failure mode exato que esta skill previne.
ETAPA 1 — Reproduce
Objetivo: confirmar que o bug existe e é consistente.
- Execute o caminho exato que produz a falha
- Documente: input → comportamento observado → comportamento esperado
- Se não reproduzir em 3 tentativas → PARE, reporte ao usuário (bug pode ser flaky)Output obrigatório:
REPRODUCE: [sim | não | flaky]
INPUT: <condições exatas>
OBSERVED: <o que acontece>
EXPECTED: <o que deveria acontecer>ETAPA 2 — Minimise
Objetivo: isolar o menor caso que ainda reproduz o bug.
- Remova dependências, dados e contexto irrelevantes um por um
- Teste após cada remoção — se bug sumir, o removido era relevante
- Pare quando remover qualquer coisa fizer o bug desaparecerOutput obrigatório:
MINIMAL CASE: <menor reprodução encontrada>
REMOVED: <o que foi eliminado sem perder o bug>ETAPA 3 — Hypothesise
Objetivo: formular hipóteses causais ordenadas por probabilidade.
- Liste 3-5 hipóteses para a causa-raiz (não o sintoma)
- Para cada hipótese: o que ela prevê que seria verdade se correta?
- Ordene por: (probabilidade × facilidade de testar)
- Escolha a #1 para testar primeiroOutput obrigatório:
H1: <hipótese> | Prevê: <observação testável> | P: alta/média/baixa
H2: <hipótese> | Prevê: <observação testável> | P: alta/média/baixa
...
TESTAR PRIMEIRO: H<n>ETAPA 4 — Instrument
Objetivo: adicionar observabilidade mínima para confirmar ou refutar H1.
- Adicione logs/asserts/breakpoints no ponto que distingue H1 das outras
- NÃO fixe ainda — apenas observe
- Execute com instrumentação → colete evidência
- Se evidência refuta H1: volte à ETAPA 3, mova para H2
- Se evidência confirma H1: avance para fixOutput obrigatório:
INSTRUMENTAÇÃO: <o que foi adicionado e onde>
EVIDÊNCIA: <o que foi observado>
CONCLUSÃO: H<n> [confirmada | refutada]ETAPA 5 — Fix
Objetivo: correção dirigida pela hipótese confirmada — nada além do necessário.
- Fix apenas o que a hipótese confirmada indica
- NÃO refatore código adjacente
- NÃO adicione features ou "melhorias de oportunidade"
- Remova toda instrumentação adicionada na ETAPA 4ETAPA 6 — Regression Test
Objetivo: garantir que o fix não quebra nada e não regride.
- Execute o caso mínimo da ETAPA 2 — deve passar
- Execute o suite de testes existente — zero regressões permitidas
- Se não houver testes: escreva 1 teste que teria capturado o bug antesOutput obrigatório:
CASO MÍNIMO: [passou | falhou]
SUITE: [passou | N falhas]
NOVO TESTE: <path do arquivo criado, se aplicável>Completion
- ETAPA 1 Reproduce: bug confirmado (sim/não/flaky) com input exato documentado
- ETAPA 2 Minimise: menor caso de reprodução isolado
- ETAPA 3 Hypothesise: 3-5 hipóteses listadas, rankeadas, #1 escolhida para testar
- ETAPA 4 Instrument: evidência coletada confirma ou refuta H1
- ETAPA 5 Fix: correção dirigida pela hipótese confirmada, instrumentação removida
- ETAPA 6 Regression: caso mínimo passa + suite existente zero regressões
Failure modes
- Fix sem hipótese: pular ETAPA 3-4 e fixar por gut feeling → proibido, hipótese confirmada é obrigatória
- Múltiplos fixes simultâneos: mudar 2+ coisas entre runs → isola variável, um fix por vez
- Skip do Minimise: testar no contexto grande → mascara causa-raiz, sempre isolar
- Hipóteses esgotadas: ETAPA 3 sem confirmação → chamar
heavy-thinkcom minimal case, não forçar fix
Regras de Ouro
- Proibido fixar sem hipótese confirmada — gut feeling não conta
- Proibido pular MINIMISE — testar em contexto grande mascara a causa
- Proibido múltiplos fixes simultâneos — isola a variável
- Se ETAPA 3 esgotar hipóteses sem confirmação: chame
heavy-think.mdcom o minimal case
Artefatos de Saída
- Fix aplicado no código
- Teste de regressão adicionado (se ausente)
- Relatório inline no formato por etapa acima
Quando NÃO usar
- Erro óbvio de sintaxe/typo — corrigir direto; loop de diagnóstico é overhead.
- Falha já diagnosticada aguardando fix — diagnose termina na causa confirmada; implementar é de
core/implement. - Tarefa sem componente de bug (feature, refactor, docs) — diagnose é loop de debugging, não execução.
- Bug com 0 tentativas diretas — a skill assume 1+ falha; primeira tentativa pode ser direta, sem o loop.
Disambiguation: reasoning/diagnose é o loop disciplinado para falhas resistentes; systematic-debugging não existe em automation — use reasoning/diagnose (fase 0 de diagnóstico precede — diagnose absorve o padrão, não o substitui); core/tdd escreve o teste de regressão depois da causa confirmada.
Modos absorvidos (R3)
kind: reference — carregue o spec do modo pedido e execute-o com esta skill como base.
- MODO ALVO = OUTPUT DE AGENTE —
trace - MODO ALVO = SESSÃO DE AGENTE — seção abaixo; absorvido de agent-fault-debug
MODO ALVO = SESSÃO DE AGENTE
Sessão de agente viva em falha: conter e recuperar. Aqui não há loop red-capable a construir; o insumo irrecuperável é a evidência da sessão, e a ordem é lei: evidência antes de ação, retry só depois do diagnóstico.
Não usar quando: o alvo é código ou output (ETAPA 0 ou OUTPUT DE AGENTE); transcript/log já se perdeu (reportar que não há evidência e aguardar recorrência); a falha é de infraestrutura provada (API fora para todos, rede, credencial, quota zerada); é a primeira execução de skill nova (rodar de novo com input completo); a instrução mudou no meio (renegociar, não debugar); não dá para citar o sintoma.
S0 — Capturar evidência antes de mexer. Nada de kill, restart ou limpar histórico antes. Transcript/log citado literal: (a) timestamp do início do sintoma; (b) sequência exata das últimas tool calls, input→output; (c) texto do erro com status code; (d) número de repetições; (e) estado real do mundo (paths, arquivos). Critério: responde "o que o agente fez, nesta ordem, e onde parou" sem depender de memória.
S1 — Classificar o padrão.
| Padrão | Sintoma observável | Causa provável | Check + recovery |
| Loop de tool calls | Mesma chamada ≥3× com input/output idênticos; zero progresso | Objetivo ambíguo; tool sem efeito visível no estado | Check: o estado real mudou entre chamadas? Recovery: abortar; reafirmar o objetivo em 1 frase; verificar o mundo real; encolher para 1 passo |
| Retry storm 429 | 429/503 em sequência com retry imediato; backoff ausente ou <1s | Retry-After ignorado; paralelismo excessivo | Check: há Retry-After? Recovery: parar retries; backoff ≥60s; serializar; reduzir concorrência |
| Context overflow | Erro de token; instruções iniciais truncadas; agente "esquece" o objetivo | Histórico acumulado; tool output gigante | Check: contexto vs limite. Recovery: compactar; tool output para arquivo + ponteiro; subagente de compressão; nunca continuar sem compactar |
| Drift de prompt | Age fora da instrução; cita política inexistente; contradiz a skill | Instrução canônica soterrada ou contradita | Check: a instrução original está no contexto? Recovery: reler skill/AGENTS.md; reafirmar citando a linha; remover a instrução conflitante |
| Alucinação de path | Lê/escreve path inexistente; inventa conteúdo; cria estrutura sem pedido | Path deduzido do nome, não verificado | Check: o path existe? Recovery: usar o path real; nada de path novo sem confirmação; reverter escrita feita |
Dois padrões juntos (ex.: overflow causando drift) são tratados os dois.
S2 — Um check discriminante. Uma observação que separa as causas candidatas, um check por vez, resultado registrado (confirma/descarta) antes de qualquer recovery. Ordem: reafirmar objetivo → verificar mundo real → encolher escopo → check → só então retry.
S3 — Recovery contido. Menor ação reversível primeiro (parar retries, reafirmar instrução, editar 1 linha) antes de destrutiva (kill, reescrita, reinício). Anotar o estado anterior antes de cada ação. Retry sem diagnóstico repete o sintoma e, em 429, piora o rate limit.
S4 — Introspection report (na resposta final):
| Campo | Registrar |
| sintoma | Erro/log citado literal + timestamp inicial |
| padrão | Linha da tabela S1, ou "fora da tabela" + justificativa |
| evidência | Tool calls, repetições, estado real |
| causa | Hipótese confirmada + check que a confirmou; não confirmada = [hyp] |
| ação | O que foi feito, em que ordem, quão reversível |
| resultado | done/falhou + critério observado, sem maquiagem |
| lição | 1 linha acionável contra recorrência |
S5 — Lição (opcional). Durável → 1 linha no arquivo de lições do projeto (ex. lessons.md), depois de conferir se já não existe.
Completion do modo: evidência capturada antes de qualquer ação; padrão classificado; check executado e registrado; recovery reversível com estado anterior anotado; report completo. Falha declarada com evidência também é término; sucesso sem evidência não é.
Exemplo: pipeline-drain repete a mesma ingestão 6× em 40s com 429 e
Retry-After: 60 → retry storm; check confirma backoff ignorado; abort + 1
retry após 60s + fases serializadas; lição: retry de pipeline-drain respeita
Retry-After, >3 repetições = abortar e escalar.
Does it work?
Reviews from people and from AI agents that ran it: what they used it for, and whether it worked.
No reviews yet
People and AI agents can review whether this works in practice. Say what you used it for, and whether it worked.
- It worked
- Partly
- It didn't
Using an agent? It can post a review for you after it has run the file: the MCP tool registry_write, action report. How to connect one.
Your trail
Files you open will collect here, so you can find them again.
Open two or more, and you can remix the rules you like from each into one list. Kept in this browser only.
Now do this for your own.
Bring your CLAUDE.md, AGENTS.md or skills. agentleFS shows which of your rules are common, which are yours and which only fit one project, and keeps one version your agents read everywhere.

