@hasna/terminal 2.3.0 → 2.3.1

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (202) hide show
  1. package/dist/cli.js +64 -16
  2. package/package.json +1 -1
  3. package/src/ai.ts +8 -0
  4. package/src/cli.tsx +57 -18
  5. package/src/output-processor.ts +6 -1
  6. package/src/output-store.ts +58 -12
  7. package/src/tool-profiles.ts +139 -0
  8. package/temp/rtk/.claude/agents/code-reviewer.md +0 -221
  9. package/temp/rtk/.claude/agents/debugger.md +0 -519
  10. package/temp/rtk/.claude/agents/rtk-testing-specialist.md +0 -461
  11. package/temp/rtk/.claude/agents/rust-rtk.md +0 -511
  12. package/temp/rtk/.claude/agents/technical-writer.md +0 -355
  13. package/temp/rtk/.claude/commands/diagnose.md +0 -352
  14. package/temp/rtk/.claude/commands/test-routing.md +0 -362
  15. package/temp/rtk/.claude/hooks/bash/pre-commit-format.sh +0 -16
  16. package/temp/rtk/.claude/hooks/rtk-rewrite.sh +0 -70
  17. package/temp/rtk/.claude/hooks/rtk-suggest.sh +0 -152
  18. package/temp/rtk/.claude/rules/cli-testing.md +0 -526
  19. package/temp/rtk/.claude/skills/issue-triage/SKILL.md +0 -348
  20. package/temp/rtk/.claude/skills/issue-triage/templates/issue-comment.md +0 -134
  21. package/temp/rtk/.claude/skills/performance.md +0 -435
  22. package/temp/rtk/.claude/skills/pr-triage/SKILL.md +0 -315
  23. package/temp/rtk/.claude/skills/pr-triage/templates/review-comment.md +0 -71
  24. package/temp/rtk/.claude/skills/repo-recap.md +0 -206
  25. package/temp/rtk/.claude/skills/rtk-tdd/SKILL.md +0 -78
  26. package/temp/rtk/.claude/skills/rtk-tdd/references/testing-patterns.md +0 -124
  27. package/temp/rtk/.claude/skills/security-guardian.md +0 -503
  28. package/temp/rtk/.claude/skills/ship.md +0 -404
  29. package/temp/rtk/.github/workflows/benchmark.yml +0 -34
  30. package/temp/rtk/.github/workflows/dco-check.yaml +0 -12
  31. package/temp/rtk/.github/workflows/release-please.yml +0 -51
  32. package/temp/rtk/.github/workflows/release.yml +0 -343
  33. package/temp/rtk/.github/workflows/security-check.yml +0 -135
  34. package/temp/rtk/.github/workflows/validate-docs.yml +0 -78
  35. package/temp/rtk/.release-please-manifest.json +0 -3
  36. package/temp/rtk/ARCHITECTURE.md +0 -1491
  37. package/temp/rtk/CHANGELOG.md +0 -640
  38. package/temp/rtk/CLAUDE.md +0 -605
  39. package/temp/rtk/CONTRIBUTING.md +0 -199
  40. package/temp/rtk/Cargo.lock +0 -1668
  41. package/temp/rtk/Cargo.toml +0 -64
  42. package/temp/rtk/Formula/rtk.rb +0 -43
  43. package/temp/rtk/INSTALL.md +0 -390
  44. package/temp/rtk/LICENSE +0 -21
  45. package/temp/rtk/README.md +0 -386
  46. package/temp/rtk/README_es.md +0 -159
  47. package/temp/rtk/README_fr.md +0 -197
  48. package/temp/rtk/README_ja.md +0 -159
  49. package/temp/rtk/README_ko.md +0 -159
  50. package/temp/rtk/README_zh.md +0 -167
  51. package/temp/rtk/ROADMAP.md +0 -15
  52. package/temp/rtk/SECURITY.md +0 -217
  53. package/temp/rtk/TEST_EXEC_TIME.md +0 -102
  54. package/temp/rtk/build.rs +0 -57
  55. package/temp/rtk/docs/AUDIT_GUIDE.md +0 -432
  56. package/temp/rtk/docs/FEATURES.md +0 -1410
  57. package/temp/rtk/docs/TROUBLESHOOTING.md +0 -309
  58. package/temp/rtk/docs/filter-workflow.md +0 -102
  59. package/temp/rtk/docs/images/gain-dashboard.jpg +0 -0
  60. package/temp/rtk/docs/tracking.md +0 -583
  61. package/temp/rtk/hooks/opencode-rtk.ts +0 -39
  62. package/temp/rtk/hooks/rtk-awareness.md +0 -29
  63. package/temp/rtk/hooks/rtk-rewrite.sh +0 -61
  64. package/temp/rtk/hooks/test-rtk-rewrite.sh +0 -442
  65. package/temp/rtk/install.sh +0 -124
  66. package/temp/rtk/release-please-config.json +0 -10
  67. package/temp/rtk/scripts/benchmark.sh +0 -592
  68. package/temp/rtk/scripts/check-installation.sh +0 -162
  69. package/temp/rtk/scripts/install-local.sh +0 -37
  70. package/temp/rtk/scripts/rtk-economics.sh +0 -137
  71. package/temp/rtk/scripts/test-all.sh +0 -561
  72. package/temp/rtk/scripts/test-aristote.sh +0 -227
  73. package/temp/rtk/scripts/test-tracking.sh +0 -79
  74. package/temp/rtk/scripts/update-readme-metrics.sh +0 -32
  75. package/temp/rtk/scripts/validate-docs.sh +0 -73
  76. package/temp/rtk/src/aws_cmd.rs +0 -880
  77. package/temp/rtk/src/binlog.rs +0 -1645
  78. package/temp/rtk/src/cargo_cmd.rs +0 -1727
  79. package/temp/rtk/src/cc_economics.rs +0 -1157
  80. package/temp/rtk/src/ccusage.rs +0 -340
  81. package/temp/rtk/src/config.rs +0 -187
  82. package/temp/rtk/src/container.rs +0 -855
  83. package/temp/rtk/src/curl_cmd.rs +0 -134
  84. package/temp/rtk/src/deps.rs +0 -268
  85. package/temp/rtk/src/diff_cmd.rs +0 -367
  86. package/temp/rtk/src/discover/mod.rs +0 -274
  87. package/temp/rtk/src/discover/provider.rs +0 -388
  88. package/temp/rtk/src/discover/registry.rs +0 -2022
  89. package/temp/rtk/src/discover/report.rs +0 -202
  90. package/temp/rtk/src/discover/rules.rs +0 -667
  91. package/temp/rtk/src/display_helpers.rs +0 -402
  92. package/temp/rtk/src/dotnet_cmd.rs +0 -1771
  93. package/temp/rtk/src/dotnet_format_report.rs +0 -133
  94. package/temp/rtk/src/dotnet_trx.rs +0 -593
  95. package/temp/rtk/src/env_cmd.rs +0 -204
  96. package/temp/rtk/src/filter.rs +0 -462
  97. package/temp/rtk/src/filters/README.md +0 -52
  98. package/temp/rtk/src/filters/ansible-playbook.toml +0 -34
  99. package/temp/rtk/src/filters/basedpyright.toml +0 -47
  100. package/temp/rtk/src/filters/biome.toml +0 -45
  101. package/temp/rtk/src/filters/brew-install.toml +0 -37
  102. package/temp/rtk/src/filters/composer-install.toml +0 -40
  103. package/temp/rtk/src/filters/df.toml +0 -16
  104. package/temp/rtk/src/filters/dotnet-build.toml +0 -64
  105. package/temp/rtk/src/filters/du.toml +0 -16
  106. package/temp/rtk/src/filters/fail2ban-client.toml +0 -15
  107. package/temp/rtk/src/filters/gcc.toml +0 -49
  108. package/temp/rtk/src/filters/gcloud.toml +0 -22
  109. package/temp/rtk/src/filters/hadolint.toml +0 -24
  110. package/temp/rtk/src/filters/helm.toml +0 -29
  111. package/temp/rtk/src/filters/iptables.toml +0 -27
  112. package/temp/rtk/src/filters/jj.toml +0 -28
  113. package/temp/rtk/src/filters/jq.toml +0 -24
  114. package/temp/rtk/src/filters/make.toml +0 -41
  115. package/temp/rtk/src/filters/markdownlint.toml +0 -24
  116. package/temp/rtk/src/filters/mix-compile.toml +0 -27
  117. package/temp/rtk/src/filters/mix-format.toml +0 -15
  118. package/temp/rtk/src/filters/mvn-build.toml +0 -44
  119. package/temp/rtk/src/filters/oxlint.toml +0 -43
  120. package/temp/rtk/src/filters/ping.toml +0 -63
  121. package/temp/rtk/src/filters/pio-run.toml +0 -40
  122. package/temp/rtk/src/filters/poetry-install.toml +0 -50
  123. package/temp/rtk/src/filters/pre-commit.toml +0 -35
  124. package/temp/rtk/src/filters/ps.toml +0 -16
  125. package/temp/rtk/src/filters/quarto-render.toml +0 -41
  126. package/temp/rtk/src/filters/rsync.toml +0 -48
  127. package/temp/rtk/src/filters/shellcheck.toml +0 -27
  128. package/temp/rtk/src/filters/shopify-theme.toml +0 -29
  129. package/temp/rtk/src/filters/skopeo.toml +0 -45
  130. package/temp/rtk/src/filters/sops.toml +0 -16
  131. package/temp/rtk/src/filters/ssh.toml +0 -44
  132. package/temp/rtk/src/filters/stat.toml +0 -34
  133. package/temp/rtk/src/filters/swift-build.toml +0 -41
  134. package/temp/rtk/src/filters/systemctl-status.toml +0 -33
  135. package/temp/rtk/src/filters/terraform-plan.toml +0 -35
  136. package/temp/rtk/src/filters/tofu-fmt.toml +0 -16
  137. package/temp/rtk/src/filters/tofu-init.toml +0 -38
  138. package/temp/rtk/src/filters/tofu-plan.toml +0 -35
  139. package/temp/rtk/src/filters/tofu-validate.toml +0 -17
  140. package/temp/rtk/src/filters/trunk-build.toml +0 -39
  141. package/temp/rtk/src/filters/ty.toml +0 -50
  142. package/temp/rtk/src/filters/uv-sync.toml +0 -37
  143. package/temp/rtk/src/filters/xcodebuild.toml +0 -99
  144. package/temp/rtk/src/filters/yamllint.toml +0 -25
  145. package/temp/rtk/src/find_cmd.rs +0 -598
  146. package/temp/rtk/src/format_cmd.rs +0 -386
  147. package/temp/rtk/src/gain.rs +0 -723
  148. package/temp/rtk/src/gh_cmd.rs +0 -1651
  149. package/temp/rtk/src/git.rs +0 -2012
  150. package/temp/rtk/src/go_cmd.rs +0 -592
  151. package/temp/rtk/src/golangci_cmd.rs +0 -254
  152. package/temp/rtk/src/grep_cmd.rs +0 -288
  153. package/temp/rtk/src/gt_cmd.rs +0 -810
  154. package/temp/rtk/src/hook_audit_cmd.rs +0 -283
  155. package/temp/rtk/src/hook_check.rs +0 -171
  156. package/temp/rtk/src/init.rs +0 -1859
  157. package/temp/rtk/src/integrity.rs +0 -537
  158. package/temp/rtk/src/json_cmd.rs +0 -231
  159. package/temp/rtk/src/learn/detector.rs +0 -628
  160. package/temp/rtk/src/learn/mod.rs +0 -119
  161. package/temp/rtk/src/learn/report.rs +0 -184
  162. package/temp/rtk/src/lint_cmd.rs +0 -694
  163. package/temp/rtk/src/local_llm.rs +0 -316
  164. package/temp/rtk/src/log_cmd.rs +0 -248
  165. package/temp/rtk/src/ls.rs +0 -324
  166. package/temp/rtk/src/main.rs +0 -2482
  167. package/temp/rtk/src/mypy_cmd.rs +0 -389
  168. package/temp/rtk/src/next_cmd.rs +0 -241
  169. package/temp/rtk/src/npm_cmd.rs +0 -236
  170. package/temp/rtk/src/parser/README.md +0 -267
  171. package/temp/rtk/src/parser/error.rs +0 -46
  172. package/temp/rtk/src/parser/formatter.rs +0 -336
  173. package/temp/rtk/src/parser/mod.rs +0 -311
  174. package/temp/rtk/src/parser/types.rs +0 -119
  175. package/temp/rtk/src/pip_cmd.rs +0 -302
  176. package/temp/rtk/src/playwright_cmd.rs +0 -479
  177. package/temp/rtk/src/pnpm_cmd.rs +0 -573
  178. package/temp/rtk/src/prettier_cmd.rs +0 -221
  179. package/temp/rtk/src/prisma_cmd.rs +0 -482
  180. package/temp/rtk/src/psql_cmd.rs +0 -382
  181. package/temp/rtk/src/pytest_cmd.rs +0 -384
  182. package/temp/rtk/src/read.rs +0 -217
  183. package/temp/rtk/src/rewrite_cmd.rs +0 -50
  184. package/temp/rtk/src/ruff_cmd.rs +0 -402
  185. package/temp/rtk/src/runner.rs +0 -271
  186. package/temp/rtk/src/summary.rs +0 -297
  187. package/temp/rtk/src/tee.rs +0 -405
  188. package/temp/rtk/src/telemetry.rs +0 -248
  189. package/temp/rtk/src/toml_filter.rs +0 -1655
  190. package/temp/rtk/src/tracking.rs +0 -1416
  191. package/temp/rtk/src/tree.rs +0 -209
  192. package/temp/rtk/src/tsc_cmd.rs +0 -259
  193. package/temp/rtk/src/utils.rs +0 -432
  194. package/temp/rtk/src/verify_cmd.rs +0 -47
  195. package/temp/rtk/src/vitest_cmd.rs +0 -385
  196. package/temp/rtk/src/wc_cmd.rs +0 -401
  197. package/temp/rtk/src/wget_cmd.rs +0 -260
  198. package/temp/rtk/tests/fixtures/dotnet/build_failed.txt +0 -11
  199. package/temp/rtk/tests/fixtures/dotnet/format_changes.json +0 -31
  200. package/temp/rtk/tests/fixtures/dotnet/format_empty.json +0 -1
  201. package/temp/rtk/tests/fixtures/dotnet/format_success.json +0 -12
  202. package/temp/rtk/tests/fixtures/dotnet/test_failed.txt +0 -18
@@ -1,386 +0,0 @@
1
- <p align="center">
2
- <img src="https://avatars.githubusercontent.com/u/258253854?v=4" alt="RTK - Rust Token Killer" width="500">
3
- </p>
4
-
5
- <p align="center">
6
- <strong>High-performance CLI proxy that reduces LLM token consumption by 60-90%</strong>
7
- </p>
8
-
9
- <p align="center">
10
- <a href="https://github.com/rtk-ai/rtk/actions"><img src="https://github.com/rtk-ai/rtk/workflows/Security%20Check/badge.svg" alt="CI"></a>
11
- <a href="https://github.com/rtk-ai/rtk/releases"><img src="https://img.shields.io/github/v/release/rtk-ai/rtk" alt="Release"></a>
12
- <a href="https://opensource.org/licenses/MIT"><img src="https://img.shields.io/badge/License-MIT-yellow.svg" alt="License: MIT"></a>
13
- <a href="https://discord.gg/pvHdzAec"><img src="https://img.shields.io/discord/1470188214710046894?label=Discord&logo=discord" alt="Discord"></a>
14
- <a href="https://formulae.brew.sh/formula/rtk"><img src="https://img.shields.io/homebrew/v/rtk" alt="Homebrew"></a>
15
- </p>
16
-
17
- <p align="center">
18
- <a href="https://www.rtk-ai.app">Website</a> &bull;
19
- <a href="#installation">Install</a> &bull;
20
- <a href="docs/TROUBLESHOOTING.md">Troubleshooting</a> &bull;
21
- <a href="ARCHITECTURE.md">Architecture</a> &bull;
22
- <a href="https://discord.gg/pvHdzAec">Discord</a>
23
- </p>
24
-
25
- <p align="center">
26
- <a href="README.md">English</a> &bull;
27
- <a href="README_fr.md">Francais</a> &bull;
28
- <a href="README_zh.md">中文</a> &bull;
29
- <a href="README_ja.md">日本語</a> &bull;
30
- <a href="README_ko.md">한국어</a> &bull;
31
- <a href="README_es.md">Espanol</a>
32
- </p>
33
-
34
- ---
35
-
36
- rtk filters and compresses command outputs before they reach your LLM context. Single Rust binary, zero dependencies, <10ms overhead.
37
-
38
- ## Token Savings (30-min Claude Code Session)
39
-
40
- | Operation | Frequency | Standard | rtk | Savings |
41
- |-----------|-----------|----------|-----|---------|
42
- | `ls` / `tree` | 10x | 2,000 | 400 | -80% |
43
- | `cat` / `read` | 20x | 40,000 | 12,000 | -70% |
44
- | `grep` / `rg` | 8x | 16,000 | 3,200 | -80% |
45
- | `git status` | 10x | 3,000 | 600 | -80% |
46
- | `git diff` | 5x | 10,000 | 2,500 | -75% |
47
- | `git log` | 5x | 2,500 | 500 | -80% |
48
- | `git add/commit/push` | 8x | 1,600 | 120 | -92% |
49
- | `cargo test` / `npm test` | 5x | 25,000 | 2,500 | -90% |
50
- | `ruff check` | 3x | 3,000 | 600 | -80% |
51
- | `pytest` | 4x | 8,000 | 800 | -90% |
52
- | `go test` | 3x | 6,000 | 600 | -90% |
53
- | `docker ps` | 3x | 900 | 180 | -80% |
54
- | **Total** | | **~118,000** | **~23,900** | **-80%** |
55
-
56
- > Estimates based on medium-sized TypeScript/Rust projects. Actual savings vary by project size.
57
-
58
- ## Installation
59
-
60
- ### Homebrew (recommended)
61
-
62
- ```bash
63
- brew install rtk
64
- ```
65
-
66
- ### Quick Install (Linux/macOS)
67
-
68
- ```bash
69
- curl -fsSL https://raw.githubusercontent.com/rtk-ai/rtk/refs/heads/master/install.sh | sh
70
- ```
71
-
72
- > Installs to `~/.local/bin`. Add to PATH if needed:
73
- > ```bash
74
- > echo 'export PATH="$HOME/.local/bin:$PATH"' >> ~/.bashrc # or ~/.zshrc
75
- > ```
76
-
77
- ### Cargo
78
-
79
- ```bash
80
- cargo install --git https://github.com/rtk-ai/rtk
81
- ```
82
-
83
- ### Pre-built Binaries
84
-
85
- Download from [releases](https://github.com/rtk-ai/rtk/releases):
86
- - macOS: `rtk-x86_64-apple-darwin.tar.gz` / `rtk-aarch64-apple-darwin.tar.gz`
87
- - Linux: `rtk-x86_64-unknown-linux-musl.tar.gz` / `rtk-aarch64-unknown-linux-gnu.tar.gz`
88
- - Windows: `rtk-x86_64-pc-windows-msvc.zip`
89
-
90
- ### Verify Installation
91
-
92
- ```bash
93
- rtk --version # Should show "rtk 0.28.0"
94
- rtk gain # Should show token savings stats
95
- ```
96
-
97
- > **Name collision warning**: Another project named "rtk" (Rust Type Kit) exists on crates.io. If `rtk gain` fails, you have the wrong package. Use `cargo install --git` above instead.
98
-
99
- ## Quick Start
100
-
101
- ```bash
102
- # 1. Install hook for Claude Code (recommended)
103
- rtk init --global
104
- # Follow instructions to register in ~/.claude/settings.json
105
- # Claude Code only by default (use --opencode for OpenCode)
106
-
107
- # 2. Restart Claude Code, then test
108
- git status # Automatically rewritten to rtk git status
109
- ```
110
-
111
- The hook transparently rewrites commands (e.g., `git status` -> `rtk git status`) before execution. Claude never sees the rewrite, it just gets compressed output.
112
-
113
- ## How It Works
114
-
115
- ```
116
- Without rtk: With rtk:
117
-
118
- Claude --git status--> shell --> git Claude --git status--> RTK --> git
119
- ^ | ^ | |
120
- | ~2,000 tokens (raw) | | ~200 tokens | filter |
121
- +-----------------------------------+ +------- (filtered) ---+----------+
122
- ```
123
-
124
- Four strategies applied per command type:
125
-
126
- 1. **Smart Filtering** - Removes noise (comments, whitespace, boilerplate)
127
- 2. **Grouping** - Aggregates similar items (files by directory, errors by type)
128
- 3. **Truncation** - Keeps relevant context, cuts redundancy
129
- 4. **Deduplication** - Collapses repeated log lines with counts
130
-
131
- ## Commands
132
-
133
- ### Files
134
- ```bash
135
- rtk ls . # Token-optimized directory tree
136
- rtk read file.rs # Smart file reading
137
- rtk read file.rs -l aggressive # Signatures only (strips bodies)
138
- rtk smart file.rs # 2-line heuristic code summary
139
- rtk find "*.rs" . # Compact find results
140
- rtk grep "pattern" . # Grouped search results
141
- rtk diff file1 file2 # Condensed diff
142
- ```
143
-
144
- ### Git
145
- ```bash
146
- rtk git status # Compact status
147
- rtk git log -n 10 # One-line commits
148
- rtk git diff # Condensed diff
149
- rtk git add # -> "ok"
150
- rtk git commit -m "msg" # -> "ok abc1234"
151
- rtk git push # -> "ok main"
152
- rtk git pull # -> "ok 3 files +10 -2"
153
- ```
154
-
155
- ### GitHub CLI
156
- ```bash
157
- rtk gh pr list # Compact PR listing
158
- rtk gh pr view 42 # PR details + checks
159
- rtk gh issue list # Compact issue listing
160
- rtk gh run list # Workflow run status
161
- ```
162
-
163
- ### Test Runners
164
- ```bash
165
- rtk test cargo test # Show failures only (-90%)
166
- rtk err npm run build # Errors/warnings only
167
- rtk vitest run # Vitest compact (failures only)
168
- rtk playwright test # E2E results (failures only)
169
- rtk pytest # Python tests (-90%)
170
- rtk go test # Go tests (NDJSON, -90%)
171
- rtk cargo test # Cargo tests (-90%)
172
- ```
173
-
174
- ### Build & Lint
175
- ```bash
176
- rtk lint # ESLint grouped by rule/file
177
- rtk lint biome # Supports other linters
178
- rtk tsc # TypeScript errors grouped by file
179
- rtk next build # Next.js build compact
180
- rtk prettier --check . # Files needing formatting
181
- rtk cargo build # Cargo build (-80%)
182
- rtk cargo clippy # Cargo clippy (-80%)
183
- rtk ruff check # Python linting (JSON, -80%)
184
- rtk golangci-lint run # Go linting (JSON, -85%)
185
- ```
186
-
187
- ### Package Managers
188
- ```bash
189
- rtk pnpm list # Compact dependency tree
190
- rtk pip list # Python packages (auto-detect uv)
191
- rtk pip outdated # Outdated packages
192
- rtk prisma generate # Schema generation (no ASCII art)
193
- ```
194
-
195
- ### Containers
196
- ```bash
197
- rtk docker ps # Compact container list
198
- rtk docker images # Compact image list
199
- rtk docker logs <container> # Deduplicated logs
200
- rtk docker compose ps # Compose services
201
- rtk kubectl pods # Compact pod list
202
- rtk kubectl logs <pod> # Deduplicated logs
203
- rtk kubectl services # Compact service list
204
- ```
205
-
206
- ### Data & Analytics
207
- ```bash
208
- rtk json config.json # Structure without values
209
- rtk deps # Dependencies summary
210
- rtk env -f AWS # Filtered env vars
211
- rtk log app.log # Deduplicated logs
212
- rtk curl <url> # Auto-detect JSON + schema
213
- rtk wget <url> # Download, strip progress bars
214
- rtk summary <long command> # Heuristic summary
215
- rtk proxy <command> # Raw passthrough + tracking
216
- ```
217
-
218
- ### Token Savings Analytics
219
- ```bash
220
- rtk gain # Summary stats
221
- rtk gain --graph # ASCII graph (last 30 days)
222
- rtk gain --history # Recent command history
223
- rtk gain --daily # Day-by-day breakdown
224
- rtk gain --all --format json # JSON export for dashboards
225
-
226
- rtk discover # Find missed savings opportunities
227
- rtk discover --all --since 7 # All projects, last 7 days
228
- ```
229
-
230
- ## Global Flags
231
-
232
- ```bash
233
- -u, --ultra-compact # ASCII icons, inline format (extra token savings)
234
- -v, --verbose # Increase verbosity (-v, -vv, -vvv)
235
- ```
236
-
237
- ## Examples
238
-
239
- **Directory listing:**
240
- ```
241
- # ls -la (45 lines, ~800 tokens) # rtk ls (12 lines, ~150 tokens)
242
- drwxr-xr-x 15 user staff 480 ... my-project/
243
- -rw-r--r-- 1 user staff 1234 ... +-- src/ (8 files)
244
- ... | +-- main.rs
245
- +-- Cargo.toml
246
- ```
247
-
248
- **Git operations:**
249
- ```
250
- # git push (15 lines, ~200 tokens) # rtk git push (1 line, ~10 tokens)
251
- Enumerating objects: 5, done. ok main
252
- Counting objects: 100% (5/5), done.
253
- Delta compression using up to 8 threads
254
- ...
255
- ```
256
-
257
- **Test output:**
258
- ```
259
- # cargo test (200+ lines on failure) # rtk test cargo test (~20 lines)
260
- running 15 tests FAILED: 2/15 tests
261
- test utils::test_parse ... ok test_edge_case: assertion failed
262
- test utils::test_format ... ok test_overflow: panic at utils.rs:18
263
- ...
264
- ```
265
-
266
- ## Auto-Rewrite Hook
267
-
268
- The most effective way to use rtk. The hook transparently intercepts Bash commands and rewrites them to rtk equivalents before execution.
269
-
270
- **Result**: 100% rtk adoption across all conversations and subagents, zero token overhead.
271
-
272
- ### Setup
273
-
274
- ```bash
275
- rtk init -g # Install hook + RTK.md (recommended)
276
- rtk init -g --opencode # OpenCode plugin (instead of Claude Code)
277
- rtk init -g --auto-patch # Non-interactive (CI/CD)
278
- rtk init -g --hook-only # Hook only, no RTK.md
279
- rtk init --show # Verify installation
280
- ```
281
-
282
- After install, **restart Claude Code**.
283
-
284
- ## OpenCode Plugin (Global)
285
-
286
- OpenCode supports plugins that can intercept tool execution. RTK provides a global plugin that mirrors the Claude auto-rewrite behavior by rewriting Bash tool commands to `rtk ...` before they execute. This plugin is **not** installed by default.
287
-
288
- > **Note**: This plugin uses OpenCode's `tool.execute.before` hook. Known limitation: plugin hooks do not intercept subagent tool calls ([upstream issue](https://github.com/sst/opencode/issues/5894)). See [OpenCode plugin docs](https://open-code.ai/en/docs/plugins) for API details.
289
-
290
- **Install OpenCode plugin:**
291
- ```bash
292
- rtk init -g --opencode
293
- ```
294
-
295
- **What it creates:**
296
- - `~/.config/opencode/plugins/rtk.ts`
297
-
298
- **Restart Required**: Restart OpenCode, then test with `git status` in a session.
299
-
300
- **Manual install (fallback):**
301
- ```bash
302
- mkdir -p ~/.config/opencode/plugins
303
- cp hooks/opencode-rtk.ts ~/.config/opencode/plugins/rtk.ts
304
- ```
305
-
306
- ### Commands Rewritten
307
-
308
- | Raw Command | Rewritten To |
309
- |-------------|-------------|
310
- | `git status/diff/log/add/commit/push/pull` | `rtk git ...` |
311
- | `gh pr/issue/run` | `rtk gh ...` |
312
- | `cargo test/build/clippy` | `rtk cargo ...` |
313
- | `cat/head/tail <file>` | `rtk read <file>` |
314
- | `rg/grep <pattern>` | `rtk grep <pattern>` |
315
- | `ls` | `rtk ls` |
316
- | `vitest/jest` | `rtk vitest run` |
317
- | `tsc` | `rtk tsc` |
318
- | `eslint/biome` | `rtk lint` |
319
- | `prettier` | `rtk prettier` |
320
- | `playwright` | `rtk playwright` |
321
- | `prisma` | `rtk prisma` |
322
- | `ruff check/format` | `rtk ruff ...` |
323
- | `pytest` | `rtk pytest` |
324
- | `pip list/install` | `rtk pip ...` |
325
- | `go test/build/vet` | `rtk go ...` |
326
- | `golangci-lint` | `rtk golangci-lint` |
327
- | `docker ps/images/logs` | `rtk docker ...` |
328
- | `kubectl get/logs` | `rtk kubectl ...` |
329
- | `curl` | `rtk curl` |
330
- | `pnpm list/outdated` | `rtk pnpm ...` |
331
-
332
- Commands already using `rtk`, heredocs (`<<`), and unrecognized commands pass through unchanged.
333
-
334
- ## Configuration
335
-
336
- ### Config File
337
-
338
- `~/.config/rtk/config.toml` (macOS: `~/Library/Application Support/rtk/config.toml`):
339
-
340
- ```toml
341
- [tracking]
342
- database_path = "/path/to/custom.db" # default: ~/.local/share/rtk/history.db
343
-
344
- [hooks]
345
- exclude_commands = ["curl", "playwright"] # skip rewrite for these
346
-
347
- [tee]
348
- enabled = true # save raw output on failure (default: true)
349
- mode = "failures" # "failures", "always", or "never"
350
- max_files = 20 # rotation limit
351
- ```
352
-
353
- ### Tee: Full Output Recovery
354
-
355
- When a command fails, RTK saves the full unfiltered output so the LLM can read it without re-executing:
356
-
357
- ```
358
- FAILED: 2/15 tests
359
- [full output: ~/.local/share/rtk/tee/1707753600_cargo_test.log]
360
- ```
361
-
362
- ### Uninstall
363
-
364
- ```bash
365
- rtk init -g --uninstall # Remove hook, RTK.md, settings.json entry
366
- cargo uninstall rtk # Remove binary
367
- brew uninstall rtk # If installed via Homebrew
368
- ```
369
-
370
- ## Documentation
371
-
372
- - **[TROUBLESHOOTING.md](docs/TROUBLESHOOTING.md)** - Fix common issues
373
- - **[INSTALL.md](INSTALL.md)** - Detailed installation guide
374
- - **[ARCHITECTURE.md](ARCHITECTURE.md)** - Technical architecture
375
- - **[SECURITY.md](SECURITY.md)** - Security policy and PR review process
376
- - **[AUDIT_GUIDE.md](docs/AUDIT_GUIDE.md)** - Token savings analytics guide
377
-
378
- ## Contributing
379
-
380
- Contributions welcome! Please open an issue or PR on [GitHub](https://github.com/rtk-ai/rtk).
381
-
382
- Join the community on [Discord](https://discord.gg/pvHdzAec).
383
-
384
- ## License
385
-
386
- MIT License - see [LICENSE](LICENSE) for details.
@@ -1,159 +0,0 @@
1
- <p align="center">
2
- <img src="https://avatars.githubusercontent.com/u/258253854?v=4" alt="RTK - Rust Token Killer" width="500">
3
- </p>
4
-
5
- <p align="center">
6
- <strong>Proxy CLI de alto rendimiento que reduce el consumo de tokens LLM en un 60-90%</strong>
7
- </p>
8
-
9
- <p align="center">
10
- <a href="https://github.com/rtk-ai/rtk/actions"><img src="https://github.com/rtk-ai/rtk/workflows/Security%20Check/badge.svg" alt="CI"></a>
11
- <a href="https://github.com/rtk-ai/rtk/releases"><img src="https://img.shields.io/github/v/release/rtk-ai/rtk" alt="Release"></a>
12
- <a href="https://opensource.org/licenses/MIT"><img src="https://img.shields.io/badge/License-MIT-yellow.svg" alt="License: MIT"></a>
13
- <a href="https://discord.gg/gFwRPEKq4p"><img src="https://img.shields.io/discord/1478373640461488159?label=Discord&logo=discord" alt="Discord"></a>
14
- <a href="https://formulae.brew.sh/formula/rtk"><img src="https://img.shields.io/homebrew/v/rtk" alt="Homebrew"></a>
15
- </p>
16
-
17
- <p align="center">
18
- <a href="https://www.rtk-ai.app">Sitio web</a> &bull;
19
- <a href="#instalacion">Instalar</a> &bull;
20
- <a href="docs/TROUBLESHOOTING.md">Solucion de problemas</a> &bull;
21
- <a href="ARCHITECTURE.md">Arquitectura</a> &bull;
22
- <a href="https://discord.gg/gFwRPEKq4p">Discord</a>
23
- </p>
24
-
25
- <p align="center">
26
- <a href="README.md">English</a> &bull;
27
- <a href="README_fr.md">Francais</a> &bull;
28
- <a href="README_zh.md">中文</a> &bull;
29
- <a href="README_ja.md">日本語</a> &bull;
30
- <a href="README_ko.md">한국어</a> &bull;
31
- <a href="README_es.md">Espanol</a>
32
- </p>
33
-
34
- ---
35
-
36
- rtk filtra y comprime las salidas de comandos antes de que lleguen al contexto de tu LLM. Binario Rust unico, cero dependencias, <10ms de overhead.
37
-
38
- ## Ahorro de tokens (sesion de 30 min en Claude Code)
39
-
40
- | Operacion | Frecuencia | Estandar | rtk | Ahorro |
41
- |-----------|------------|----------|-----|--------|
42
- | `ls` / `tree` | 10x | 2,000 | 400 | -80% |
43
- | `cat` / `read` | 20x | 40,000 | 12,000 | -70% |
44
- | `grep` / `rg` | 8x | 16,000 | 3,200 | -80% |
45
- | `git status` | 10x | 3,000 | 600 | -80% |
46
- | `cargo test` / `npm test` | 5x | 25,000 | 2,500 | -90% |
47
- | **Total** | | **~118,000** | **~23,900** | **-80%** |
48
-
49
- ## Instalacion
50
-
51
- ### Homebrew (recomendado)
52
-
53
- ```bash
54
- brew install rtk
55
- ```
56
-
57
- ### Instalacion rapida (Linux/macOS)
58
-
59
- ```bash
60
- curl -fsSL https://raw.githubusercontent.com/rtk-ai/rtk/refs/heads/master/install.sh | sh
61
- ```
62
-
63
- ### Cargo
64
-
65
- ```bash
66
- cargo install --git https://github.com/rtk-ai/rtk
67
- ```
68
-
69
- ### Verificacion
70
-
71
- ```bash
72
- rtk --version # Debe mostrar "rtk 0.27.x"
73
- rtk gain # Debe mostrar estadisticas de ahorro
74
- ```
75
-
76
- ## Inicio rapido
77
-
78
- ```bash
79
- # 1. Instalar hook para Claude Code (recomendado)
80
- rtk init --global
81
-
82
- # 2. Reiniciar Claude Code, luego probar
83
- git status # Automaticamente reescrito a rtk git status
84
- ```
85
-
86
- ## Como funciona
87
-
88
- ```
89
- Sin rtk: Con rtk:
90
-
91
- Claude --git status--> shell --> git Claude --git status--> RTK --> git
92
- ^ | ^ | |
93
- | ~2,000 tokens (crudo) | | ~200 tokens | filtro |
94
- +-----------------------------------+ +------- (filtrado) ---+----------+
95
- ```
96
-
97
- Cuatro estrategias:
98
-
99
- 1. **Filtrado inteligente** - Elimina ruido (comentarios, espacios, boilerplate)
100
- 2. **Agrupacion** - Agrega elementos similares (archivos por directorio, errores por tipo)
101
- 3. **Truncamiento** - Mantiene contexto relevante, elimina redundancia
102
- 4. **Deduplicacion** - Colapsa lineas de log repetidas con contadores
103
-
104
- ## Comandos
105
-
106
- ### Archivos
107
- ```bash
108
- rtk ls . # Arbol de directorios optimizado
109
- rtk read file.rs # Lectura inteligente
110
- rtk find "*.rs" . # Resultados compactos
111
- rtk grep "pattern" . # Busqueda agrupada por archivo
112
- ```
113
-
114
- ### Git
115
- ```bash
116
- rtk git status # Estado compacto
117
- rtk git log -n 10 # Commits en una linea
118
- rtk git diff # Diff condensado
119
- rtk git push # -> "ok main"
120
- ```
121
-
122
- ### Tests
123
- ```bash
124
- rtk test cargo test # Solo fallos (-90%)
125
- rtk vitest run # Vitest compacto
126
- rtk pytest # Tests Python (-90%)
127
- rtk go test # Tests Go (-90%)
128
- ```
129
-
130
- ### Build & Lint
131
- ```bash
132
- rtk lint # ESLint agrupado por regla
133
- rtk tsc # Errores TypeScript agrupados
134
- rtk cargo build # Build Cargo (-80%)
135
- rtk ruff check # Lint Python (-80%)
136
- ```
137
-
138
- ### Analiticas
139
- ```bash
140
- rtk gain # Estadisticas de ahorro
141
- rtk gain --graph # Grafico ASCII (30 dias)
142
- rtk discover # Descubrir ahorros perdidos
143
- ```
144
-
145
- ## Documentacion
146
-
147
- - **[TROUBLESHOOTING.md](docs/TROUBLESHOOTING.md)** - Resolver problemas comunes
148
- - **[INSTALL.md](INSTALL.md)** - Guia de instalacion detallada
149
- - **[ARCHITECTURE.md](ARCHITECTURE.md)** - Arquitectura tecnica
150
-
151
- ## Contribuir
152
-
153
- Las contribuciones son bienvenidas. Abre un issue o PR en [GitHub](https://github.com/rtk-ai/rtk).
154
-
155
- Unete a la comunidad en [Discord](https://discord.gg/pvHdzAec).
156
-
157
- ## Licencia
158
-
159
- Licencia MIT - ver [LICENSE](LICENSE) para detalles.