rtk là gì: công cụ giảm token cho AI lập trình như Claude Code
rtk là gì: công cụ dòng lệnh viết bằng Rust giúp giảm token cho AI lập trình bằng cách rút gọn kết quả git, ls, test trước khi đưa cho agent.

Thử hình dung anh chị đang dùng Claude Code sửa một lỗi nhỏ. Claude chạy bộ test, terminal xả ra hơn 200 dòng, trong đó chỉ hai dòng là lỗi thật. Claude đọc hết cả 200 dòng, và đống chữ đó nằm lì trong trí nhớ của phiên cho tới cuối buổi. Chiều về, hạn mức gói thuê bao đã cạn mà việc chưa xong.
rtk là công cụ giảm token cho AI lập trình, sinh ra để chặn đúng dòng chữ thừa đó. rtk là chương trình dòng lệnh mã nguồn mở viết bằng Rust, rút gọn kết quả của các lệnh như git status, ls, cargo test trước khi chúng lọt vào ngữ cảnh của agent. Tên đầy đủ là Rust Token Killer.
Đọc nhanh trong 30 giây
- rtk là công cụ dòng lệnh mã nguồn mở (giấy phép MIT) viết bằng Rust. Commit đầu tiên ngày 22/01/2026, bản v0.2.0 ngày 23/01/2026, có file chạy sẵn cho macOS, Linux, Windows.
- Agent gọi
rtk git statusthay vìgit status; rtk chạy lệnh thật, lọc phần thừa rồi trả bản gọn.- Cài bằng script hoặc file tải sẵn, rồi
rtk initđể Claude Code biết dùng rtk.- Hợp với người dùng Claude Code nhiều giờ mỗi ngày, repo lớn, log dài, hoặc đang trả API theo token.
rtk là gì, đứng ở đâu trong luồng làm việc?
rtk là một lớp trung gian đứng giữa AI agent và lệnh thật. Tác giả là tài khoản GitHub pszymkowiak. Khi agent cần xem trạng thái git, thay vì gọi thẳng git status, nó gọi rtk git status; rtk chạy lệnh gốc, lọc rồi chỉ trả phần agent cần đọc.
Ví von cho dễ hình dung: rtk giống một cô thư ký lọc thư cho giám đốc. Bốn mươi email thông báo tự động được gom thành một dòng "có 40 thông báo hệ thống", chỉ email cần trả lời mới được chuyển nguyên văn lên bàn sếp.

Agent không đọc thẳng terminal nữa, mà đọc bản đã qua tay "thư ký".
Theo README, rtk lọc theo bốn cách:
- Lọc nhiễu: bỏ chú thích, khoảng trắng, phần khuôn mẫu lặp lại.
- Gom nhóm: gộp file theo thư mục, gộp lỗi theo loại.
- Cắt bớt: giữ phần liên quan, bỏ phần dư.
- Gộp trùng: dòng log lặp lại được thu về một dòng kèm số lần.
Ví dụ trong README: git push thường in 15 dòng về nén và đếm đối tượng, còn rtk git push chỉ trả một dòng xác nhận kèm tên nhánh. Khi bộ test có bài hỏng, thay vì hơn 200 dòng, rtk chỉ in các bài hỏng và vị trí lỗi.
Vì sao kết quả lệnh lại ngốn token đến vậy?
Kết quả lệnh ngốn token vì mọi chữ agent đọc từ terminal đều vào ngữ cảnh và tiếp tục chiếm chỗ ở các lượt sau của phiên. Giống như cái balo: mỗi lần agent nhặt thêm một tờ log, tờ đó theo nó suốt cả chặng đường, kể cả khi chẳng còn dùng tới.
Một lần cat file dài hay một lần chạy test lỗi có thể nặng hơn cả đoạn code anh chị nhờ sửa. Bảng dưới trích từ README, là ước tính của tác giả cho một phiên Claude Code 30 phút trên dự án TypeScript hoặc Rust cỡ vừa:

Số tự công bố của tác giả, mức thật tùy kích thước dự án.
| Thao tác | Số lần | Lệnh thường (token) | Qua rtk (token) | Giảm |
|---|---|---|---|---|
cat / read |
20 | 40.000 | 12.000 | 70% |
grep / rg |
8 | 16.000 | 3.200 | 80% |
npm test / cargo test |
5 | 25.000 | 2.500 | 90% |
git add/commit/push |
8 | 1.600 | 120 | 92% |
| Tổng các dòng trong bảng gốc | 101.000 | 22.000 | 78% |
README ghi các con số tổng ở dạng xấp xỉ và nói rõ mức tiết kiệm thật tùy kích thước dự án. Cho cả phiên, tác giả ước tính từ 150.000 xuống 45.000 token, tức giảm 70%. Đây là số theo tác giả rtk, tôi chưa đo lại.
Chưa quen cách Claude Code chạy lệnh trên máy thì anh chị đọc trước bài Claude Code là gì.
Cài rtk và nối với Claude Code trong vài phút
rtk cài trong vài phút, sau đó chạy rtk init để ghi hướng dẫn vào CLAUDE.md, nhờ vậy Claude Code biết dùng rtk thay cho lệnh gốc.

Cài, nối với Claude Code, làm việc bình thường, cuối buổi xem rtk gain.
- Linux hoặc macOS, chạy script cài theo README:
curl -fsSL https://raw.githubusercontent.com/pszymkowiak/rtk/master/install.sh | sh
- Debian, Ubuntu có thể cài gói
.deb:
curl -LO https://github.com/pszymkowiak/rtk/releases/latest/download/rtk_0.2.0-1_amd64.deb
sudo dpkg -i rtk_0.2.0-1_amd64.deb
- Windows: tải file
rtk-x86_64-pc-windows-msvc.zipở trang Releases, giải nén và đặtrtk.exevào một thư mục nằm trong PATH. - Nối với Claude Code:
rtk init --global # ghi vào ~/CLAUDE.md, áp dụng mọi dự án
rtk init # ghi vào ./CLAUDE.md của dự án hiện tại
rtk init --show # xem cấu hình đang dùng
Lưu ý
README có ghi lệnh
cargo install rtk, nhưng trên crates.io cái tênrtkđã thuộc về một dự án khác (Rust Type Kit, đăng từ 27/06/2025). Chạy lệnh đó sẽ cài nhầm công cụ. Anh chị nên dùng script hoặc file tải sẵn từ trang Releases.
Thử ngay với hai việc tốn token nhất
Việc 1: cho agent đọc một repo lạ. Thay vì để agent ls -la từng thư mục và cat nguyên file, các lệnh sau trả kết quả gọn hơn:
rtk ls . # cây thư mục rút gọn
rtk read src/main.rs -l aggressive # chỉ giữ chữ ký hàm, bỏ thân hàm
rtk grep "invoice" . # kết quả tìm kiếm gom theo file
Việc 2: build hoặc test bị lỗi. Đây là lúc tốn token nhất, vì log lỗi thường rất dài:
rtk err npm run build # chỉ lấy lỗi và cảnh báo
rtk test cargo test # chỉ hiện bài test hỏng
rtk log app.log # log đã gộp dòng trùng
Mẹo
Cuối buổi gõ
rtk gainđể xem đã tiết kiệm bao nhiêu token, thêm--graphđể có biểu đồ ASCII hoặc--historyđể xem theo từng lệnh. Con số đo trên chính dự án của anh chị đáng tin hơn mọi bảng ước tính.
Cái giá của việc rút gọn
rtk tiết kiệm bằng cách bỏ bớt thông tin, nên có lúc bỏ nhầm thứ cần. Những điểm cần biết trước khi dùng:
- Dự án mới một ngày tuổi: bản v0.2.0 ra ngày 23/01/2026, lệnh và cách lọc còn thay đổi liên tục. Bản Homebrew README ghi "sắp có".
- Rút gọn là mất chi tiết:
rtk jsonchỉ giữ cấu trúc, bỏ giá trị. Lỗi khó thì agent có thể cần đầu ra đầy đủ. Lịch sử commit cho thấy tác giả đã phải sửa để rtk hiện đủ lỗi khi lệnh git thất bại. - Dựa vào CLAUDE.md:
rtk initchỉ ghi hướng dẫn, không ép buộc. Agent vẫn có thể gọi lệnh gốc nếu quên. - Biến môi trường:
rtk env -f AWSlọc biến môi trường theo tên. Biến môi trường hay chứa khóa bí mật, cân nhắc trước khi cho agent đọc. - Giấy phép MIT: dùng được trong doanh nghiệp.
Nhận xét của chuyên gia
rtk đánh đúng vào một khoản lãng phí ít ai để ý: nhiều token trong phiên lập trình nằm ở những gì terminal in ra. Khi tư vấn cho doanh nghiệp, tôi thường thấy người ta gọt prompt rất kỹ nhưng lại để agent đọc nguyên log build dài, kiểu tiết kiệm từng đồng tiền chợ mà để vòi nước chảy cả ngày.
Hợp với ai: đội kỹ thuật dùng Claude Code nhiều giờ mỗi ngày, repo lớn, test và log dài; người trả API theo token muốn giảm hóa đơn.
Chưa hợp với ai: người dùng AI qua giao diện chat, không cho agent chạy lệnh; dự án nhỏ vài file, tiết kiệm không đáng công cài. Thêm một rủi ro: cài bằng curl | sh nghĩa là chạy script từ Internet trên máy. Máy chứa mã nguồn công ty thì nên đọc script trước hoặc tải file từ Releases.
Cách bắt đầu của tôi: cài trên một máy, chạy rtk init cho một dự án (chưa dùng --global), làm việc bình thường một tuần rồi xem rtk gain. Số đẹp và agent không hiểu sai kết quả thì mới mở rộng cho cả nhóm.
Một câu để nhớ: Token đắt nhất là token agent đọc mà không dùng tới.
Câu hỏi thường gặp
rtk có miễn phí không?
Có. rtk là mã nguồn mở theo giấy phép MIT, không cần tài khoản hay khóa API. rtk chạy hoàn toàn trên máy anh chị.
rtk có chạy trên Windows không?
Có file chạy sẵn rtk-x86_64-pc-windows-msvc.zip trong trang Releases. Script cài một dòng trong README chỉ dành cho Linux và macOS.
rtk có làm agent hiểu sai kết quả không?
Có thể, vì rtk cố ý bỏ bớt thông tin. Với lỗi phức tạp, nên để agent chạy lại lệnh gốc khi bản rút gọn không đủ để chẩn đoán.
rtk khác gì việc dặn agent đọc ít lại trong CLAUDE.md?
Dặn trong CLAUDE.md chỉ thay đổi việc agent chọn lệnh nào, còn đầu ra vẫn dài như cũ. rtk xử lý chính đầu ra, nên lượng chữ vào ngữ cảnh giảm thật.
Bài này nằm trong chuỗi dòng thời gian AI 2025 tới 2026.
Nguồn: rtk trên GitHub (lúc ra mắt là pszymkowiak/rtk), 23/01/2026.
Nguồn tham khảo: https://github.com/rtk-ai/rtk


