Como o Claude Code resolve problemas complexos — e o que você pode aprender para construir produtos melhores
stdin into the CLI prompt{
"role": "user",
"content": [
{
"type": "text",
"text": "Find all TODO comments in src/"
}
]
}
buildForkedMessages() — todos os forks recebem mensagens byte-idênticas, variando apenas o sufixo. Maximiza cache hits porque o prefixo é idêntico em todos os agentes paralelos.
Clique em uma categoria para expandir
.consolidate-lock usa mtime como timestamp E lock. Se falha, rollbackConsolidationLock() retrocede via utimes().
| Common | 60% |
| Uncommon | 25% |
| Rare | 10% |
| Epic | 4% |
| Legendary | 1% |
| ✦ Shiny | 1% |
overlayPath, leituras consultam overlay primeiro. Se você aceita, overlay é promovido para o filesystem real.
tengu_speculation). Writes isolados em sandbox — nunca modifica o código real sem aceitação. Boundaries tipadas: bash | edit | denied_tool | complete# MAGIC DOC: [título] é automaticamente rastreado e atualizado por um subagente. Detecção passiva via listener no FileReadTool.
bun:ffi para chamar prctl(PR_SET_DUMPABLE, 0), bloqueando ptrace de mesmo UID. Impede injeção de prompt via gdb -p $PPID.react-reconciler. JSX renderiza em árvore DOM customizada para terminal. Inclui profiling de commits lentos e debug de repaints via fiber walking.
getEventPriority() replica exatamente o react-dom. O terminal tem o mesmo modelo de eventos do navegador.
SCROLL_QUANTUM = 40 quantiza scrollTop para evitar React commits a cada wheel tick. Scroll visual é independente do rendering.
CharPool, StylePool, HyperlinkPool internam strings como IDs inteiros. Comparação entre frames = comparar dois inteiros. IntersectionObserver no terminal calcula visibilidade caminhando pela chain DOM/Yoga até a raiz.
transition() retorna {"{ next?: CommandState, execute?: () => void }"}. Separação total estado/efeito colateral.Intl.Segmenter. Emojis compostos são unidades atômicas.
pbcopy + tmux + OSC 52).*) via mailbox em disco. Suporta shutdown_request/response (desligamento gracioso com approve/reject), plan_approval_response, e auto-resume de agentes inativos.bridge:<session-id> cross-máquina, uds:<socket> para peers locais.
queueMicrotask().
| # | Padrão | Descrição | Arquivo | Tipo |
|---|---|---|---|---|
| 01 | Withheld Messages | Erros recuperáveis retidos do stream até decisão de recuperação — não expõe ao usuário prematuramente | query.ts | Arch |
| 02 | Tombstone Pattern | Mensagens órfãs marcadas para remoção sem corromper o transcript — deleção lazy segura | query.ts | Arch |
| 03 | Bitmap Rejection | 26 bits por entrada eliminam 80-90% dos candidatos em O(1) antes da busca real | file-index/ | Arch |
| 04 | Content-Addressable History | Conteúdo grande armazenado por hash, referenciado no log — evita duplicação | history.ts | Arch |
| 05 | Dual-Path Undo | Fast path (buffer in-memory) + slow path (skip set) para undo eficiente em todos os cenários | history.ts | Arch |
| 06 | Feature Flag + DCE | feature('FLAG') ? require(...) : null elimina código morto em compile-time via tree shaking | commands.ts | Arch |
| 07 | Write-Once Registry | register() resolve ciclos de dependência sem initialization order hell | mcpSkillBuilders.ts | Arch |
| 08 | Types-as-Documentation | Union types exaustivos documentam máquina de estados — TypeScript garante cobertura em compile-time | vim/types.ts | Arch |
| 09 | Anti-Ptrace via FFI | prctl(PR_SET_DUMPABLE, 0) bloqueia gdb/ptrace — protege secrets em heap de mesmo UID | upstreamproxy/ | Arch |
| 10 | Hand-Rolled Protobuf | 10 linhas de varint manual substituem uma dependência inteira para uma única mensagem | upstreamproxy/ | Arch |
| 11 | Stash-and-Trail | Superior à fila quando só o snapshot mais recente importa — sobrescreve em vez de enfileirar | extractMemories.ts | Arch |
| 12 | Circuit Breaker | MAX_CONSECUTIVE_FAILURES=3. 1279 sessões com 50+ falhas = 250K API calls/dia desperdiçados | autoCompact.ts | Arch |
| 13 | Overlay Filesystem | Copy-on-write para execução especulativa — overlay promovido para real apenas após aceitação | speculation.ts | Arch |
| 14 | Forked Agent Cache Sharing | Prefixo byte-idêntico em todos os forks maximiza cache hits na API para N tarefas paralelas | forkSubagent.ts | Arch |
| 15 | Handoff Classifier | Classificador no handoff sub-agente → principal = defesa em profundidade no vetor mais crítico | agentToolUtils.ts | Arch |
| 16 | Scroll Quantum | SCROLL_QUANTUM=40 quantiza scrollTop para desacoplar scroll visual de React commits | useVirtualScroll.ts | Arch |
| 17 | KeepAlive Clock | Animações visíveis dirigem o clock. Sem subscribers = clock para. Terminal sem foco = taxa reduzida | ClockContext.tsx | Arch |
| 18 | Lazy Schema (Zod) | Schema retornado como função, não valor — evita dependências circulares em module initialization | tools/ | Arch |
| 19 | Tool Deferral | Lazy-loading com search index para centenas de tools — carrega schema só quando precisa | ToolSearchTool | Arch |
| 20 | Pseudo-Tool Placeholder | Substitui tools reais durante estados intermediários sem quebrar o protocolo | McpAuthTool | Arch |
| 21 | 2-Stage Classification | Stage 1 (64 tokens, fast) para aprovações triviais. Stage 2 (4096 tokens, CoT) só para bloqueios | yoloClassifier.ts | Arch |
| 22 | BoundedUUIDSet | Ring buffer + Set para deduplicação em espaço constante — sem crescimento ilimitado de memória | bridge/ | Arch |
| 23 | FlushGate | State machine para operações flush + live — garante ordering sem locks explícitos | bridge/ | Arch |
| 24 | Generation Counter | Invalida promises sem locks — incrementa geração, consumidor verifica antes de usar resultado | lsp/ | Arch |
| 25 | Race Dual OAuth | Fluxo automático e manual correm em paralelo, primeiro a completar vence — elimina timeout de auth | oauth/ | Arch |
| 26 | Settings-First Install | Eventually-consistent install — settings propagam antes do código, nunca estado inválido | plugins/ | Arch |
| 27 | DANGEROUS_ Naming | Prefixo DANGEROUS_ no nome da constante força documentação inline em todo ponto de uso | constants/ | Arch |
| 28 | Native Client Attestation | Placeholder em Zig no HTTP stack para attestation futura do cliente nativo | constants/ | Arch |
| 29 | Speculative Classifier | Classificador roda em paralelo com hooks de pre-tool — latência zero para aprovações comuns | permissions/ | Arch |
| 30 | Schema-not-sent Hint | Auto-detecção de tools deferred — modelo sabe quando schema não foi enviado e solicita via busca | ToolSearchTool | Arch |
| 31 | Evidence Format | Exige output real copy-pasted, não afirmações — "I ran it and it worked" não basta | verificationAgent.ts | IA |
| 32 | Anti-Shortcut Prompting | Documenta padrões de falha DO modelo no próprio prompt — o verificador conhece seus atalhos | verificationAgent.ts | IA |
| 33 | Diminishing Returns | Delta < 500 tokens em 3+ continuações → para cedo. Evita loops infinitos disfarçados de trabalho | query.ts | IA |
| 34 | Chain-of-Thought Descartável | <analysis> melhora qualidade de output mas é stripado depois — thinking que não polui resposta | compact/prompt.ts | IA |
| 35 | Memória Hierárquica | user > project > local com mecanismo de seeding — novos membros herdam contexto do repo | agentMemory.ts | IA |
| 36 | Consolidação Autônoma | Subagente "sonha" em background para organizar memórias — manutenção sem intervenção humana | DreamTask/ | IA |
| 37 | Comunicação Estruturada | XML com campos obrigatórios para resultados de sub-agentes — parsing determinístico garantido | AgentTool/ | IA |
| 38 | Constrangimento Social via Tipos | Nomes de tipo absurdamente longos forçam declaração de verificação — TypeScript como consciência | metadata.ts | IA |
| 39 | Modo Undercover | Auto-proteção contextual em repos públicos — sem config, sem toggle, ativa por contexto detectado | undercover.ts | IA |
| 40 | Numeric Length Anchors | Instrução "em ~3 frases" supera "seja conciso" — redução de ~1.2% na verbosidade medida em produção | prompts/ | IA |
signal() e wake().