Keyboard shortcuts

Press or to navigate between chapters

Press S or / to search in the book

Press ? to show this help

Press Esc to hide this help

Giới thiệu

PRECC là gì?

PRECC (Sửa lỗi dự đoán cho Claude Code) là một công cụ Rust chặn các lệnh bash của Claude Code thông qua cơ chế PreToolUse hook chính thức. Nó sửa lỗi trước khi chúng xảy ra, tiết kiệm token và loại bỏ các vòng lặp thử lại.

Miễn phí cho người dùng cộng đồng.

Vấn đề

Claude Code lãng phí đáng kể token vào những lỗi có thể phòng tránh:

  • Lỗi sai thư mục – Chạy cargo build trong thư mục cha không có Cargo.toml, sau đó thử lại sau khi đọc lỗi.
  • Vòng lặp thử lại – Một lệnh thất bại tạo ra đầu ra dài dòng, Claude đọc nó, suy luận và thử lại. Mỗi chu kỳ đốt hàng trăm token.
  • Đầu ra dài dòng – Các lệnh như find hoặc ls -R xuất ra hàng nghìn dòng mà Claude phải xử lý.

Bốn trụ cột

Sửa ngữ cảnh (cd-prepend)

Phát hiện khi các lệnh như cargo build hoặc npm test chạy trong thư mục sai và thêm cd /đường/dẫn/đúng && trước khi thực thi.

Gỡ lỗi GDB

Phát hiện cơ hội đính kèm GDB để gỡ lỗi sâu hơn các segfault và crash, cung cấp thông tin gỡ lỗi có cấu trúc thay vì core dump thô.

Khai thác phiên

Khai thác nhật ký phiên Claude Code để tìm các cặp lỗi-sửa. Khi cùng lỗi xảy ra lần nữa, PRECC đã biết cách sửa và áp dụng tự động.

Kỹ năng tự động hóa

Một thư viện các kỹ năng tích hợp và đã khai thác khớp với các mẫu lệnh và viết lại chúng. Kỹ năng được định nghĩa dưới dạng tệp TOML hoặc hàng SQLite, giúp dễ kiểm tra, chỉnh sửa và chia sẻ.

Cách hoạt động (phiên bản 30 giây)

  1. Claude Code sắp chạy một lệnh bash.
  2. PreToolUse hook gửi lệnh tới precc-hook dưới dạng JSON qua stdin.
  3. precc-hook chạy lệnh qua pipeline (kỹ năng, sửa thư mục, nén) trong vòng dưới 3 mili giây.
  4. Lệnh đã sửa được trả về dưới dạng JSON qua stdout.
  5. Claude Code thực thi lệnh đã sửa thay vì lệnh gốc.

Các lỗi vặt được gộp lại; lý do viết lại được kèm trong phản hồi của hook, nên mỗi chỉnh sửa đều có thể kiểm tra được — không âm thầm.

Ranh giới an toàn

PRECC chỉ viết lại khi tương đương ngữ nghĩa được bảo toàn có thể chứng minh hoặc người dùng có thể xác minh. Các lệnh phá hủy (rm, git push --force, git reset --hard) không bao giờ bị viết lại, ngay cả khi một kỹ năng khớp. Mọi biến đổi phải có giới hạn — lệnh viết lại phải chứa các token cốt lõi của lệnh gốc. Các viết lại không giới hạn tự động được hoàn tác. Mỗi viết lại được áp dụng đều được ghi nhật ký và hiển thị để bạn có thể kiểm tra, vô hiệu hóa hoặc hoàn tác.

Nén thích ứng

Nếu một lệnh thất bại sau khi nén, PRECC tự động bỏ qua nén ở lần thử tiếp theo để Claude nhận được đầu ra đầy đủ không nén để gỡ lỗi.

Thống kê sử dụng trực tiếp

Phiên bản hiện tại :

Chỉ sốGiá trị
Lệnh gọi hook
Token tiết kiệm được
Tỷ lệ tiết kiệm%
Viết lại RTK
Sửa CD
Độ trễ hook ms (p50)
Người dùng

Tiết kiệm đo được (dữ liệu thực)

Tiết kiệm theo phiên bản

Những con số này tự động cập nhật từ dữ liệu đo từ xa ẩn danh.

Liên kết