簡介
什麼是PRECC?
PRECC (Claude Code 預測性錯誤糾正) 是一個Rust工具,通過官方的PreToolUse鉤子機制攔截Claude Code的bash命令。它在錯誤發生之前修復它們,節省token並消除重試循環。
對社區用戶免費。
問題
Claude Code在可預防的錯誤上浪費大量token:
- 目錄錯誤 – 在沒有
Cargo.toml的父目錄中運行cargo build,然後在讀取錯誤後重試。 - 重試循環 – 失敗的命令產生冗長的輸出,Claude讀取、推理並重試。每個循環消耗數百個token。
- 冗長輸出 –
find或ls -R等命令輸出數千行,Claude必須處理這些內容。
四大支柱
上下文修復 (cd-prepend)
檢測到 cargo build 或 npm test 等命令在錯誤的目錄中運行時,在執行前添加 cd /正確/路徑 &&。
GDB調試
檢測附加GDB進行更深入調試的機會,提供結構化的調試信息而不是原始的核心轉儲。
會話挖掘
挖掘Claude Code會話日誌中的失敗-修復對。當同樣的錯誤再次發生時,PRECC已經知道修復方法並自動應用。
自動化技能
內置和挖掘技能庫,匹配命令模式並重寫它們。技能定義爲TOML文件或SQLite行,便於檢查、編輯和共享。
工作原理(30秒版本)
- Claude Code即將運行一個bash命令。
- PreToolUse鉤子將命令作爲JSON通過stdin發送給
precc-hook。 precc-hook在3毫秒內通過管道(技能、目錄修正、壓縮)處理命令。- 修正後的命令作爲JSON通過stdout返回。
- Claude Code執行修正後的命令。
Claude永遠看不到錯誤。沒有token浪費。
自適應壓縮
如果命令在壓縮後失敗,PRECC會自動在重試時跳過壓縮,以便Claude獲得完整的未壓縮輸出來除錯。
實時使用統計
| 指標 | 值 |
|---|---|
| 鉤子調用次數 | – |
| 節省的token | – |
| 節省比率 | –% |
| RTK重寫 | – |
| CD修正 | – |
| 鉤子延遲 | – ms (p50) |
數字為估算值。每次預防的失敗避免了完整的重試循環:錯誤輸出、模型推理和重試命令。 這些數字會從匿名遙測數據自動更新。
鏈接
- GitHub: https://github.com/peria-ai/precc-cc
- 網站: https://peria.ai
- 文檔: https://precc.cc