Co-authored-by: github-actions[bot] <41898282+github-actions[bot]@users.noreply.github.com>
30 KiB
Changelog
All notable changes to rtk (Rust Token Killer) will be documented in this file.
The format is based on Keep a Changelog, and this project adheres to Semantic Versioning.
0.25.0 (2026-03-05)
Features
Bug Fixes
[Unreleased]
⚠️ Migration Required
Hook must be updated after upgrading (rtk init --global).
The Claude Code hook is now a thin delegator: all rewrite logic lives in the
rtk rewrite command (single source of truth). The old hook embedded the full
if-else mapping inline — it still works after upgrading, but won't pick up new
commands automatically.
Upgrade path:
cargo install rtk # upgrade binary
rtk init --global # replace old hook with thin delegator
Running rtk init without --global updates the project-level hook only.
Users who skip this step keep the old hook working as before — no immediate
breakage, but future rule additions won't take effect until they migrate.
Features
- rewrite: add
rtk rewritecommand — single source of truth for hook rewrites (#241)- New
src/discover/registry.rshandles all command → RTK mapping - Hook reduced to ~50 lines (thin delegator), no duplicate logic
- New commands automatically available in hook without hook file changes
- Supports compound commands (
&&,||,;,|,&) and env prefixes
- New
- discover: extract rules/patterns into
src/discover/rules.rs— adding a command now means editing one file only - fix: add
awsandpsqlto rewrite registry (were missing despite modules existing since 0.24.0)
Tests
- +48 regression tests covering all command categories: aws, psql, Python, Go, JS/TS, compound operators, sudo/env prefixes, registry invariants (607 total, was 559)
0.24.0 (2026-03-04)
Features
- add AWS CLI and psql modules with token-optimized output (#216) (b934466)
- passthrough fallback when Clap parse fails + review fixes (#200) (772b501)
- security: add SHA-256 hook integrity verification (f2caca3)
Bug Fixes
- git: propagate exit codes in push/pull/fetch/stash/worktree (#234) (5cfaecc)
- playwright: fix JSON parser to match real Playwright output format (#193) (4eb6cf4)
- support additional git global options (--no-pager, --no-optional-locks, --bare, --literal-pathspecs) (68ca712)
- support git global options (-C, -c, --git-dir, --work-tree, --no-pager, --no-optional-locks, --bare, --literal-pathspecs) (a6ccefe)
- support git global options (-C, -c, --git-dir, --work-tree) (982084e)
- update version refs to 0.23.0, module count to 51, fmt upstream files (eed0188)
0.23.0 (2026-02-28)
Features
- add mypy command with grouped error output (#109) (e8ef341)
- gain: add per-project token savings with -p flag (#128) (2b550ee)
Bug Fixes
- eliminate duplicate output when grep-ing function names from git show (#248) (a6f65f1)
- filter docker compose hook rewrites to supported subcommands (#245) (dbbf980), closes #244
- registry: "fi" in IGNORED_PREFIXES shadows find commands (#246) (48965c8)
- remove personal preferences from project CLAUDE.md (3a8044e)
- remove personal preferences from project CLAUDE.md (d362ad0)
- remove remaining personal project reference from CLAUDE.md (5b59700)
- remove remaining personal project reference from CLAUDE.md (dc09265)
- surface build failures in go test summary (#274) (b405e48)
0.22.2 (2026-02-20)
Bug Fixes
- grep: accept -n flag for grep/rg compatibility (7d561cc)
- playwright: fix JSON parser and binary resolution (#215) (461856c)
- propagate rg exit code in rtk grep for CLI parity (#227) (f1be885), closes #162
0.22.1 (2026-02-19)
Bug Fixes
- git branch creation silently swallowed by list mode (#194) (88dc752)
- git: support multiple -m flags in git commit (292225f)
- git: support multiple -m flags in git commit (c18553a)
- grep: translate BRE | alternation and strip -r flag for rg (#206) (70d1b04)
- propagate linter exit code in rtk lint (#207) (8e826fc), closes #185
- smart markdown body filter for gh issue/pr view (#188) (#214) (4208015)
0.22.0 (2026-02-18)
Features
0.21.1 (2026-02-17)
Bug Fixes
0.21.0 (2026-02-17)
Features
0.20.1 (2026-02-17)
Bug Fixes
0.20.0 (2026-02-16)
Features
0.19.0 (2026-02-16)
Features
0.18.1 (2026-02-15)
Bug Fixes
- update ARCHITECTURE.md version to 0.18.0 (398cb08)
- update version references to 0.16.0 in README.md and CLAUDE.md (ec54833)
- update version references to 0.18.0 in docs (c73ed47)
0.18.0 (2026-02-15)
Features
0.17.0 (2026-02-15)
Features
- cargo: add cargo nextest support with failures-only output (#107) (68fd570)
- hook: handle global options before subcommands (#99) (7401f10)
0.16.0 (2026-02-14)
Features
0.15.4 (2026-02-14)
Bug Fixes
- git: fix for issue #82 (04e6bb0)
- git: Returns "Not a git repository" when git status is executed in a non-repo folder #82 (d4cb2c0)
0.15.3 (2026-02-13)
Bug Fixes
0.15.2 (2026-02-13)
Bug Fixes
0.15.1 (2026-02-12)
Bug Fixes
- improve CI reliability and hook coverage (#95) (ac80bfa)
- vitest: robust JSON extraction for pnpm/dotenv prefixes (#92) (e5adba8)
0.15.0 (2026-02-12)
Features
- add Python and Go support (#88) (a005bb1)
- cargo: aggregate test output into single line (#83) (#85) (06b1049)
- make install-local.sh self-contained (#89) (b82ad16)
0.14.0 (2026-02-12)
Features
Bug Fixes
- add website URL (rtk-ai.app) across project metadata (#81) (c84fa3c)
- update stale repo URLs from pszymkowiak/rtk to rtk-ai/rtk (#78) (55d010a)
0.13.1 (2026-02-12)
Bug Fixes
- ci: fix release artifacts not uploading (#73) (bb20b1e)
- ci: fix release workflow not uploading artifacts to GitHub releases (bd76b36)
0.13.0 (2026-02-12)
Features
0.12.0 (2026-02-09)
Features
- cargo: add
cargo installfiltering with 80-90% token reduction (645a773), closes #69 - cargo: add cargo install filtering (447002f)
0.11.0 (2026-02-07)
Features
- init: auto-patch settings.json for frictionless hook installation (2db7197)
[Unreleased]
Added
- settings.json auto-patch for frictionless hook installation
- Default
rtk init -gnow prompts to patch settings.json [y/N] --auto-patch: Patch immediately without prompting (CI/CD workflows)--no-patch: Skip patching, print manual instructions instead- Automatic backup: creates
settings.json.bakbefore modification - Idempotent: detects existing hook, skips modification if present
rtk init --shownow displays settings.json status
- Default
- Uninstall command for complete RTK removal
rtk init -g --uninstallremoves hook, RTK.md, CLAUDE.md reference, and settings.json entry- Restores clean state for fresh installation or testing
- Improved error handling with detailed context messages
- All error messages now include file paths and actionable hints
- UTF-8 validation for hook paths
- Disk space hints on write failures
Changed
- Refactored
insert_hook_entry()to use idiomatic Rustentry()API - Simplified
hook_already_present()logic with iterator chains - Improved atomic write error messages for better debugging
0.10.0 (2026-02-07)
Features
- Hook-first installation with 99.5% token reduction (e7f80ad)
- init: refactor to hook-first with slim RTK.md (9620f66)
0.9.4 (2026-02-06)
Bug Fixes
- discover: add cargo check support, wire RtkStatus::Passthrough, enhance rtk init (d5f8a94)
0.9.3 (2026-02-06)
Bug Fixes
- P0 crashes + cargo check + dedup utilities + discover status (05078ff)
- P0 crashes + cargo check + dedup utilities + discover status (60d2d25)
0.9.2 (2026-02-05)
Bug Fixes
- git: accept native git flags in add command (including -A) (2ade8fe)
- git: accept native git flags in add command (including -A) (40e7ead)
0.9.1 (2026-02-04)
Bug Fixes
- tsc: show every TypeScript error instead of collapsing by code (3df8ce5)
- tsc: show every TypeScript error instead of collapsing by code (67e8de8)
0.9.0 (2026-02-03)
Features
- add rtk tree + fix rtk ls + audit phase 1-2 (278cc57)
- audit phase 3 + tracking validation + rtk learn (7975624)
- git: add fallback passthrough for unsupported subcommands (32bbd02)
- grep: add extra args passthrough (-i, -A/-B/-C, etc.) (a240d1a)
- pnpm: add fallback passthrough for unsupported subcommands (614ff5c)
- read: add stdin support via "-" path (060c38b)
- rtk tree + fix rtk ls + full audit (phase 1-2-3) (cb83da1)
Bug Fixes
- docs: escape HTML tags in rustdoc comments (b13d92c)
- find: rewrite with ignore crate + fix json stdin + benchmark pipeline (fcc1462)
- ls: compact output (-72% tokens) + fix discover panic (ea7cdb7)
0.8.1 (2026-02-02)
Bug Fixes
0.8.0 (2026-02-02)
Features
- add comprehensive security review workflow for PRs (1ca6e81)
- add comprehensive security review workflow for PRs (66101eb)
0.7.1 (2026-02-02)
Features
- execution time tracking: Add command execution time metrics to
rtk gainanalytics- Total execution time and average time per command displayed in summary
- Time column in "By Command" breakdown showing average execution duration
- Daily breakdown (
--daily) includes time metrics per day - JSON export includes
total_time_msandavg_time_msfields - CSV export includes execution time columns
- Backward compatible: historical data shows 0ms (pre-tracking)
- Negligible overhead: <0.1ms per command
- New SQLite column:
exec_time_msin commands table
- parser infrastructure: Three-tier fallback system for robust output parsing
- Tier 1: Full JSON parsing with complete structured data
- Tier 2: Degraded parsing with regex fallback and warnings
- Tier 3: Passthrough with truncated raw output and error markers
- Guarantees RTK never returns false data silently
- migrate commands to OutputParser: vitest, playwright, pnpm now use robust parsing
- JSON parsing with safe fallbacks for all modern JS tooling
- Improved error handling and debugging visibility
- local LLM analysis: Add economics analysis and comprehensive test scripts
scripts/rtk-economics.shfor token savings ROI analysisscripts/test-all.shwith 69 assertions covering all commandsscripts/test-aristote.shfor T3 Stack project validation
Bug Fixes
- convert rtk ls from reimplementation to native proxy for better reliability
- trigger release build after release-please creates tag
Documentation
- add execution time tracking test guide (TEST_EXEC_TIME.md)
- comprehensive parser infrastructure documentation (src/parser/README.md)
0.7.0 (2026-02-01)
Features
- add discover command, auto-rewrite hook, and git show support (ff1c759)
- discover command, auto-rewrite hook, git show (c9c64cf)
Bug Fixes
- forward args in rtk git push/pull to support -u, remote, branch (4bb0130)
0.6.0 (2026-02-01)
Features
- cargo build/test/clippy with compact output (bfd5646)
- curl with auto-JSON detection (314accb)
- gh pr create/merge/diff/comment/edit + gh api (517a93d)
- git branch, fetch, stash, worktree commands (bc31da8)
- npm/npx routing, pnpm build/typecheck, --skip-env flag (49b3cf2)
- shared infrastructure for new commands (6c60888)
- shared infrastructure for new commands (9dbc117)
0.5.2 (2026-01-30)
Bug Fixes
- release pipeline trigger and version-agnostic package URLs (108d0b5)
- release pipeline trigger and version-agnostic package URLs (264539c)
0.5.1 (2026-01-30)
Bug Fixes
- 3 issues (latest tag, ccusage fallback, versioning) (d773ec3)
- patrick's 3 issues (latest tag, ccusage fallback, versioning) (9e322e2)
0.5.0 (2026-01-30)
Features
- add comprehensive claude code economics analysis (ec1cf9a)
- comprehensive economics analysis and code quality improvements (8e72e7a)
Bug Fixes
- comprehensive code quality improvements (5b840cc)
- optimize HashMap merge and add safety checks (3b847f8)
0.4.0 (2026-01-30)
Features
- add comprehensive temporal audit system for token savings analytics (76703ca)
- Comprehensive Temporal Audit System for Token Savings Analytics (862047e)
0.3.1 (2026-01-29)
Bug Fixes
- improve command robustness and flag support (c2cd691)
- improve command robustness and flag support (d7d8c65)
0.3.0 (2026-01-29)
Features
- add --quota flag to rtk gain with tier-based analysis (26b314d)
- add CI/CD automation (release management and automated metrics) (22c3017)
- add GitHub CLI integration (depends on #9) (341c485)
- add GitHub CLI integration with token optimizations (0f7418e)
- add modern JavaScript tooling support (b82fa85)
- add modern JavaScript tooling support (lint, tsc, next, prettier, playwright, prisma) (88c0174)
- add Modern JS Stack commands to benchmark script (b868987)
- add quota analysis with multi-tier support (64c0b03)
- add shared utils module for JS stack commands (0fc06f9)
- CI/CD automation (versioning, benchmarks, README auto-update) (b8bbfb8)
Bug Fixes
- ci: correct rust-toolchain action name (9526471)
[Unreleased]
Added
prettiercommand for format checking with package manager auto-detection (pnpm/yarn/npx)- Shows only files needing formatting (~70% token reduction)
- Exit code preservation for CI/CD compatibility
playwrightcommand for E2E test output filtering (~94% token reduction)- Shows only test failures and slow tests
- Summary with pass/fail counts and timing
lintcommand with ESLint/Biome support and pnpm detection- Groups violations by rule and file (~84% token reduction)
- Shows top violators for quick navigation
tsccommand for TypeScript compiler output filtering- Groups errors by file and error code (~83% token reduction)
- Shows top 10 affected files
nextcommand for Next.js build/dev output filtering (87% token reduction)- Extracts route count and bundle sizes
- Highlights warnings and oversized bundles
prismacommand for Prisma CLI output filtering- Removes ASCII art and verbose logs (~88% token reduction)
- Supports generate, migrate (dev/status/deploy), and db push
utilsmodule with common utilities (truncate, strip_ansi, execute_command)- Shared functionality for consistent output formatting
- ANSI escape code stripping for clean parsing
Changed
- Refactored duplicated code patterns into
utils.rsmodule - Improved package manager detection across all modern JS commands
[0.2.1] - 2026-01-29
See upstream: https://github.com/pszymkowiak/rtk
Links
- Repository: https://github.com/rtk-ai/rtk (maintained by pszymkowiak)
- Issues: https://github.com/rtk-ai/rtk/issues