← Về trang Blog

🗑️ RTK — Công Cụ Giúp AI Hiểu Code Nhanh Hơn, Ít "Đọc Vô Ích"

Ít output hơn, nhiều context hơn — cách RTK lọc thông tin thừa để AI tập trung vào điều quan trọng


Khi bạn dùng AI để hỗ trợ lập trình — như Codex, Cursor, hoặc bất kỳ AI coding assistant nào — một vấn đề ít người nói đến nhưng rất thực tế là:

AI bị "ngợp" bởi thông tin thừa từ terminal.

Mỗi lệnh bạn chạy — git status, pytest, npm install — có thể tạo ra hàng trăm dòng output. Phần lớn là boilerplate, progress bar, thông báo lặp lại. AI đọc hết, tốn context, tốn token — và đôi khi bị lạc giữa đống thông tin không cần thiết.

RTK ra đời để giải quyết đúng vấn đề này.

🤔 RTK là gì?

RTK — Rust Token Killer — là một công cụ CLI nhỏ gọn, viết bằng Rust, có nhiệm vụ đơn giản:

Lọc và nén output của các lệnh phát triển trước khi chúng đi vào context của AI.

Nói cách khác: RTK đứng giữa terminal và AI, loại bỏ những dòng "rác" và chỉ giữ lại những gì AI thực sự cần biết — lỗi, kết quả, dữ kiện quan trọng.

Ví dụ trước và sau

Trước — chạy git status trực tiếp:

On branch main
Your branch is up to date with 'origin/main'.

Changes not staged for commit:
  (use "git add <file>..." to update what will be committed)
  (use "git restore <file>..." to discard changes in working directory)
        modified:   src/main.rs
        modified:   src/utils.rs

Untracked files:
  (use "git add <file>..." to include in what will be committed)
        Cargo.lock

no changes added to commit (use "git add" and/or "git commit -a")

Sau — chạy qua RTK:

M src/main.rs
M src/utils.rs
?? Cargo.lock

Cùng một thông tin. Ít hơn rất nhiều dòng. AI đọc nhanh hơn, hiểu đúng hơn, tốn ít context hơn.

💡 Tại sao nên dùng RTK?

Có bốn lý do chính:

1. Giữ context sạch

RTK loại bỏ boilerplate, progress bar, và các dòng lặp lại — chỉ giữ lại lỗi, kết quả và dữ kiện cần hành động. AI không bị phân tâm bởi thông tin thừa.

2. Tự động qua Codex

RTK tích hợp với Codex thông qua hướng dẫn trong AGENTS.mdRTK.md. Bạn không cần nhớ mỗi lệnh — Codex sẽ tự động ưu tiên dùng rtk trước các lệnh có output dài.

3. Nhanh và gọn

Một binary Rust duy nhất, không cần runtime dependency. Hỗ trợ hơn 100 lệnh với overhead dưới 10ms — nhanh đến mức bạn gần như không cảm thấy sự khác biệt.

4. Không giấu dữ liệu lỗi

Khi lệnh thất bại, RTK có thể lưu output đầy đủ qua cơ chế tee để bạn điều tra sau — không cần phải chạy lại lệnh.

⚠️ Hiểu đúng con số: Mức 60–90% là giảm output shell mà AI đọc, không đồng nghĩa hóa đơn LLM giảm cùng tỷ lệ. Token được ước tính theo bytes / 4.

🔧 Cách cài đặt và sử dụng

Cài đặt RTK rất đơn giản:

# macOS — khuyến nghị
brew install rtk

# Hoặc build trực tiếp từ GitHub
cargo install --git https://github.com/rtk-ai/rtk

# Xác minh đã cài đúng RTK
rtk --version
rtk gain

Sau khi cài, khởi tạo hướng dẫn cho Codex:

rtk init -g --codex

Rồi dùng bình thường — chỉ thêm rtk trước lệnh:

rtk git status
rtk pytest
rtk cargo test
⚠️ Cảnh báo trùng tên: Có một package rtk khác trên crates.io. Nếu rtk gain không hoạt động, bạn có thể đã cài nhầm — dùng Homebrew hoặc cargo install --git https://github.com/rtk-ai/rtk để chắc chắn.

📦 Những lệnh RTK hỗ trợ

RTK tối ưu output của hơn 100 lệnh phát triển. Dưới đây là những nhóm lệnh chính:

NhómVí dụ
Filesrtk ls, rtk read, rtk grep, rtk find, rtk diff
Gitrtk git status, rtk git log, rtk git diff, rtk git commit
GitHub CLIrtk gh pr list, rtk gh issue list, rtk gh run list
Testsrtk pytest, rtk jest, rtk cargo test, rtk vitest
Build & Lintrtk cargo build, rtk cargo clippy, rtk tsc, rtk ruff check
Cloud & Containersrtk docker ps, rtk docker logs, rtk kubectl pods
Data & Utilsrtk json, rtk log, rtk curl, rtk env
💡 Lưu ý: RTK tối ưu các shell command. Những công cụ đọc/tìm file riêng của AI assistant không đi qua shell hook — khi cần output nén, gọi trực tiếp rtk read, rtk grep hoặc rtk find.

🛠️ 12 Skills phát triển của RTK

Bên ngoài công cụ CLI, repository RTK còn bao gồm 12 skills phát triển/duy trì nằm trong .claude/skills/ — giúp AI làm việc hiệu quả hơn với chính dự án RTK.

Dưới đây là danh sách:

SkillMục đích
code-simplifierRà soát Rust code, bỏ over-engineering và pattern dài dòng
design-patternsChọn Rust pattern phù hợp: Newtype, Builder, State Machine, RAII...
issue-triageAudit issues mở, phân loại, tìm duplicate, đánh giá rủi ro
performanceĐo startup time, memory, binary size và tỷ lệ giảm output
pr-reviewReview backlog PR theo kích thước, đọc diff, đưa khuyến nghị
pr-triageAudit PR mở, phát hiện overlap/stale/CI failure
repo-recapTạo recap Markdown về PR, issue, release, contributor
rtk-tddÉp quy trình Red–Green–Refactor cho phát triển Rust
rtk-triageKết hợp issue-triage + pr-triage, phân tích chéo
security-guardianAudit command injection, shell escaping, path traversal
shipĐiều phối release: quality gate, version bump, build, tag, push
tdd-rustTDD chuyên cho filter RTK bằng fixture thật và snapshot

Những skills này không phải là tính năng của RTK CLI — mà là hướng dẫn cho AI biết cách làm việc với repository RTK: khi nào test, khi nào audit security, cách review PR, cách release...

⚙️ Cấu hình và gỡ cài đặt

File config của RTK nằm tại ~/.config/rtk/config.toml (trên macOS là ~/Library/Application Support/rtk/config.toml).

Bạn có thể loại lệnh khỏi auto-rewrite và điều chỉnh chế độ lưu raw output:

[hooks]
exclude_commands = ["curl", "playwright"]

[tee]
enabled = true
mode = "failures"

Gỡ cài đặt:

# Gỡ integration
rtk init -g --uninstall

# Gỡ binary Homebrew
brew uninstall rtk

✅ Tóm lại

RTK là gì: CLI proxy lọc và nén output của các lệnh phát triển trước khi AI đọc.
Lợi ích: Giữ context sạch, giảm token waste, AI tập trung vào thông tin quan trọng.
Hỗ trợ: Hơn 100 lệnh phát triển phổ biến.
Hiệu suất: Under 10ms overhead, dưới 5MB memory, 60–90% output savings.
Cài đặt: brew install rtk hoặc cargo install --git https://github.com/rtk-ai/rtk.

Nếu bạn đang dùng AI coding assistant và thấy AI bị "ngợp" bởi output terminal dài dòng — RTK có thể là công cụ nhỏ gọn giúp giải quyết vấn đề này.

Ít output hơn, nhiều context hơn.