rtk-ai/rtk

feat: Extend git subcommand coverage (ls-files, rm, tag)

Open

#1,526 opened on Apr 25, 2026

View on GitHub
 (3 comments) (0 reactions) (0 assignees)Rust (2,914 forks)batch import
area:clieffort-mediumenhancementgood first issuepriority:medium

Repository metrics

Stars
 (48,085 stars)
PR merge metrics
 (Avg merge 11d 1h) (45 merged PRs in 30d)

Description

The rtk git handler covers diff, status, log, add, stash, show, branch, worktree, fetch, pull, push — but misses several commonly-used subcommands.

Currently not intercepted:

$ rtk hook check "git ls-files"     # → exit 1, no rewrite ✗
$ rtk hook check "git rm"           # → exit 1, no rewrite ✗
$ rtk hook check "git tag"          # → exit 1, no rewrite ✗
$ rtk hook check "git cherry-pick"  # → exit 1, no rewrite ✗
$ rtk hook check "git rebase"       # → exit 1, no rewrite ✗
$ rtk hook check "git merge"        # → exit 1, no rewrite ✗
$ rtk hook check "git checkout"     # → exit 1, no rewrite ✗

Highest value:

  • git ls-files (98 calls/month) — in monorepos this can return hundreds of paths. Compact tree output (like rtk find) would be ideal.
  • git rm (92 calls/month) — bulk deletes produce one rm 'path' line per file. Summary format would help.

Lower priority (write operations where full output matters for confirmation):

  • git cherry-pick, git rebase, git merge, git checkout — these have important status output but could still benefit from ANSI stripping.

Usage context: ~280 calls/month for the missing subcommands, primarily in a 12-service monorepo with Claude Code.

Contributor guide