CLI proxy that reduces LLM token consumption by 60-90% on common dev commands. Single Rust binary, zero dependencies
langages détectés par GitHub · % code
chaque PR mergée, classée par type, plus récentes en premier
Ajoute module `src/hook_cmd.rs` traitant hooks BeforeTool de Gemini CLI via stdin JSON, déléguant à `rewrite_command()` de `discover/registry.rs`, plus flag `--gemini` dans `init.rs` patchant `~/.gemini/settings.json`.
Ajoute sous-commande `rtk session` réutilisant `ClaudeProvider` du module `discover` pour lister 10 dernières sessions Claude Code avec barre d'adoption ASCII, et corrige import manquant `truncate` dans `cargo_cmd.rs`.
Resserre les regex `head`/`tail` dans `src/discover/registry.rs` (`\S+$` au lieu de `(.+)$`) ; `rewrite_line_range` renvoie `None` sur multi-fichiers, laissant le binaire natif émettre les bannières `==> name <==`.
Ajoute `normalize_diff_args()` dans `src/cmds/git/git.rs` qui réinsère `--` avant le premier argument path-like (heuristique `looks_like_path`) consommé par `trailing_var_arg` de clap.
Supprime l'alias court `-u` du flag global `--ultra-compact` dans `src/main.rs` pour que `git push -u origin <branch>` écrive bien l'upstream tracking dans `.git/config` au lieu d'être avalé par clap.
Dans `glob_matches`, ajoute un fallback `remaining.ends_with(part.trim_end())` pour le segment du milieu, corrigeant `git -C * diff:*` qui ne matchait pas `git -C /path diff` sans arguments.
Détecte les patterns `-name` commençant par `.` pour passer `WalkBuilder::hidden(false)` au lieu de `hidden(true)`, sinon ignorer .claude.json/.gitignore renvoyait toujours 0 résultat.
Dans `src/cmds/go/go_cmd.rs`, `total_pkg_fail` ne compte plus que les échecs purement package (timeout, panic, signal) en excluant ceux ayant déjà des fails test-level, évitant le double comptage du JSON `go test`.
Réécrit `filter_cargo_clippy` en machine à états collectant jusqu'à 10 blocs de 15 lignes (headline, `-->`, snippet `|`, `note:`/`help:`) au lieu de tronquer à 160 caractères la première ligne.
Ajoute warning stderr dans hook rewrite quand `RTK_DISABLED=1` détecté, pour casser pattern où agents bypass filtre 30% des commandes (243/801) faisant chuter économies de 65% à 48%.
Sépare `compact_ls()` en tuple (entries, summary) et fait `run()` n'imprimer le résumé que si `stdout().is_terminal()` est vrai ; `rtk gain` ne compte plus la ligne 📊 quand piped.
Remplace `.take(2).join(" ")` par itération ligne-par-ligne sur `error_message` dans `format_compact()` de `parser/formatter.rs`, exposant diff Expected/Received et call log Playwright tronqués causant boucle 170 appels/3.6M tokens.
Ajoute variante `Language::Data` sans motifs de commentaire pour JSON/YAML/TOML/XML/CSV/Markdown, évitant que `/*` et `*/` dans `"packages/*"` soient interprétés comme délimiteurs de bloc et suppriment le contenu intermédiaire.
Ajoute garde dans `restore_double_dash()` pour skip réinsertion du `--` quand Clap avec `trailing_var_arg=true` l'a déjà préservé via flags `-p`, évitant `cargo clippy -p crate -- -- -D warnings`.
Supprime double troncature dans `run_log()`/`filter_log_output()` : `--oneline` sans `-N` passe à 50 entrées, `.take(limit)` ne re-coupe plus quand `-N` explicite, lignes étendues 80→120 chars.