Introduction
What is PRECC?
PRECC (Claude Codeの予測的エラー修正) is a Rust tool that intercepts Claude Code bash commands via the official PreToolUse hook mechanism. It fixes errors before they happen, saving tokens and eliminating retry loops.
コミュニティユーザーは無料。
The Problem
Claude Code wastes significant tokens on preventable mistakes:
- Wrong-directory errors – Running
cargo buildin a parent directory that has noCargo.toml, then retrying after reading the error. - Retry loops – A failed command produces verbose output, Claude reads it, reasons about it, and retries. Each cycle burns hundreds of tokens.
- Verbose output – Commands like
findorls -Rdump thousands of lines that Claude must process.
The Four Pillars
コンテキスト修正 (cd-prepend)
cargo build や npm test などのコマンドが間違ったディレクトリで実行された場合を検出し、実行前に cd /正しい/パス && を追加します。
GDB Debugging
Detects opportunities to attach GDB for deeper debugging of segfaults and crashes, providing structured debug information instead of raw core dumps.
Session Mining
Mines Claude Code session logs for failure-fix pairs. When the same mistake recurs, PRECC already knows the fix and applies it automatically.
Automation Skills
A library of built-in and mined skills that match command patterns and rewrite them. Skills are defined as TOML files or SQLite rows, making them easy to inspect, edit, and share.
How It Works (30-Second Version)
- Claude Code is about to run a bash command.
- The PreToolUse hook sends the command to
precc-hookas JSON on stdin. precc-hookruns the command through the pipeline (skills, directory correction, compression) in under 3 milliseconds.- The corrected command is returned as JSON on stdout.
- Claude Code executes the corrected command instead.
Claude never sees the error. No tokens wasted.
Adaptive Compression
コマンドが圧縮後に失敗した場合、PRECCは次のリトライで圧縮を自動的にスキップし、Claudeがデバッグ用の完全な非圧縮出力を取得できるようにします。
Live Usage Statistics
| Metric | Value |
|---|---|
| Hook invocations | – |
| Tokens saved | – |
| Saving ratio | –% |
| RTK rewrites | – |
| CD corrections | – |
| Hook latency | – ms (p50) |
数値は推定値です。各予防された失敗は、エラー出力、モデルの推論、リトライコマンドの完全なリトライサイクルを回避します。 These numbers update automatically from anonymized telemetry.
Links
- GitHub: https://github.com/peria-ai/precc-cc
- Website: https://peria.ai
- Documentation: https://precc.cc