Introdução
O que é PRECC?
PRECC (Correção preditiva de erros para o Claude Code) é uma ferramenta Rust que intercepta comandos bash do Claude Code através do mecanismo oficial PreToolUse hook. Corrige erros antes que aconteçam, economizando tokens e eliminando ciclos de retentativa.
Gratuito para usuários da comunidade.
O problema
O Claude Code desperdiça tokens significativos em erros evitáveis:
- Erros de diretório errado – Executar
cargo buildem um diretório pai semCargo.toml, e tentar novamente após ler o erro. - Ciclos de retentativa – Um comando falho produz saída verbosa, o Claude a lê, raciocina e tenta novamente. Cada ciclo consome centenas de tokens.
- Saída verbosa – Comandos como
findouls -Rproduzem milhares de linhas que o Claude precisa processar.
Os quatro pilares
Correção de contexto (cd-prepend)
Detecta quando comandos como cargo build ou npm test são executados no diretório errado e adiciona cd /caminho/correto && antes da execução.
Depuração GDB
Detecta oportunidades de anexar GDB para depuração mais profunda de segfaults e travamentos, fornecendo informações de depuração estruturadas em vez de core dumps brutos.
Mineração de sessões
Minera logs de sessões do Claude Code em busca de pares falha-correção. Quando o mesmo erro reaparece, o PRECC já conhece a correção e a aplica automaticamente.
Habilidades de automação
Uma biblioteca de habilidades integradas e mineradas que correspondem a padrões de comando e os reescrevem. As habilidades são definidas como arquivos TOML ou linhas SQLite, facilitando a inspeção, edição e compartilhamento.
Como funciona (versão de 30 segundos)
- O Claude Code está prestes a executar um comando bash.
- O hook PreToolUse envia o comando para
precc-hookcomo JSON via stdin. precc-hookprocessa o comando pelo pipeline (habilidades, correção de diretório, compressão) em menos de 3 milissegundos.- O comando corrigido é retornado como JSON via stdout.
- O Claude Code executa o comando corrigido em vez do original.
Erros triviais são agrupados; o motivo da reescrita viaja na resposta do hook, então cada correção é auditável, não silenciosa.
Limite de segurança
PRECC só reescreve quando a equivalência semântica é provavelmente preservada ou verificável pelo usuário. Comandos destrutivos (rm, git push --force, git reset --hard) nunca são reescritos, mesmo se uma habilidade corresponder. Toda mutação deve ser limitada — o comando reescrito deve conter os tokens essenciais do original. Reescritas ilimitadas são automaticamente revertidas. Cada reescrita aplicada é registrada e exibida para que você possa auditá-la, desativá-la ou desfazê-la.
Compressão adaptativa
Se um comando falhar após compressão, PRECC automaticamente pula a compressão na próxima tentativa para que Claude obtenha a saída completa não comprimida para debug.
Estatísticas de uso ao vivo
Versão atual –:
| Métrica | Valor |
|---|---|
| Tokens saved (measured) | – |
| Projected savings (% traffic covered) | – (–%) |
| Prevented failures (est. tokens avoided) | – (~– tok est.) |
| Output compression ratio (measured) | –% |
| Cobertura de medição | – / – (–%) |
| Latência do hook | – ms (p50) |
| Usuários | – |
| crates.io downloads | – |
crates.io downloads count CI, docs.rs and mirror traffic — they are not a measure of unique users.
Headline change (June 2026): we now report measured savings — verified byte-for-byte from each command output before and after compression. Our earlier headline summed per-event heuristic estimates (about 34.4M tokens at a ~46% ratio) that over-counted unmeasured savings by roughly 300x. The measured number is much smaller, but every token behind it is backed by a real measurement, and the Projected savings row extrapolates it across observed traffic. We made this change so the figures here are honest and reproducible.
Economia por versão
Esses números são atualizados automaticamente a partir de telemetria anonimizada.
Links
- GitHub: https://github.com/peri-a-i/precc-cc
- Site: https://peria.ai
- Documentação: https://precc.cc