$ brew install rtk copy
왜 필요한가?
LLM 코딩 어시스턴트는 git log, npm test, pytest, 디렉터리 트리 같은 장황한 명령어 출력을 그대로 컨텍스트에 받아들여 토큰을 빠르게 소진합니다. 한 번의 세션에서도 수만~수십만 토큰이 잡음(boilerplate, 반복, 무관한 진행 상태 등)에 소비됩니다.
RTK는 이러한 출력을 LLM에 도달하기 전에 가로채 60~90% 압축한 뒤 전달합니다. 같은 컨텍스트 윈도우로 더 긴 세션을 유지하고 비용을 낮출 수 있습니다.
주요 기능
- 100여 개 명령어 지원 — git, cargo, npm, pytest, docker, AWS CLI, kubectl 등 개발자가 자주 쓰는 CLI를 도메인 특화 방식으로 압축
- Smart filtering — 잡음·boilerplate 제거
- Grouping — 유사 항목 그룹화로 요약
- Truncation — 핵심 컨텍스트만 보존
- Deduplication — 반복 라인 축약
- Auto-rewrite hook — 명령을 RTK 등가물로 투명하게 변환
rtk gain/rtk discover— 토큰 절감량·명령 커버리지 분석- Tee recovery — 실패한 명령의 전체 출력은 별도 보존하여 LLM이 재차 읽을 수 있음
지원 AI 도구
Claude Code(PreToolUse hook), GitHub Copilot(VS Code/CLI), Cursor, Gemini CLI, Codex, Windsurf, Cline/Roo Code, OpenCode, Kilo Code, Google Antigravity.
Before / After
Before: git log, pytest, npm test 출력이 통째로 LLM 컨텍스트로 전달 → 컨텍스트 윈도우가 빠르게 차며 세션이 짧아지고 비용이 누적
After: rtk init -g 한 번으로 Claude Code에 hook 등록 → 명령 출력이 60~90% 압축된 채 컨텍스트에 도달 → 더 긴 추론, 더 긴 세션, 더 낮은 비용
실제 사용 시나리오
- 장시간 디버깅 세션에서 반복되는 테스트 실행으로 컨텍스트가 빠르게 차는 경우 압축
- 대형 monorepo에서
git log,git status, 디렉터리 트리 등 장황한 명령 출력을 LLM에 자주 보내야 하는 경우 - 5시간 한도·API 토큰 예산·고정 컨텍스트 윈도우를 더 효율적으로 활용하고 싶을 때