3,512
stars
+0+11
327
forks
8
watchers
–
prs
–
issues
37
releases
–
discussions
README
tuicr A code review TUI with vim keybindings. Export to GitHub, GitLab, Gitea, Bitbucket, Azure DevOps, Gerrit, or clipboard. !demo [!TIP] Pronounced "tweaker". What it does - GitHub-style continuous diff in the terminal. Scroll through every changed file in one stream. - PR-style comments at the line, range, file, and review level. - Review tracking at file or hunk granularity, persisted across sessions. - Three export targets: push a real review to GitHub, GitLab, Gitea, Bitbucket, Azure DevOps, or Gerrit, copy structured markdown to your clipboard, or pipe to stdout. - Works with git, jj, and mercurial. Reviews uncommitted changes, commit ranges, or any GitHub PR, GitLab MR, Gitea PR, Bitbucket PR, Azure DevOps PR, or Gerrit change. Install bash curl -fsSL tuicr.dev/install.sh | sh or brew install tuicr or sudo pacman -S tuicr Other install methods (cargo, mise, nix, binaries, source) bash Cargo cargo install tuicr Mise mise use github:agavra/tuicr Nix nix run github:agavra/tuicr Pre-built binaries: GitHub Releases. Linux releases include dynamically linked GNU and static musl variants. From source: bash git clone https://github.com/agavra/tuicr.git cd tuicr cargo install --path . Update the active installation with one command: bash tuicr update tuicr update 0.18.0 Install a known-good version tuicr update uses Homebrew, Cargo, Mise, or a Nix profile when that manager owns the executable. Install-script and manually downloaded binaries update in place from the matching GitHub release asset after SHA-256 verification. Exact-version installs support Cargo and direct binaries; use the package manager's pinning workflow for Homebrew, Mise, or Nix. A nix run invocation is temporary rather than installed; rerun it to use the current flake, or use nix profile install github:agavra/tuicr for an installation that tuicr update can upgrade. Quick start bash tuicr Pick from a commit selector tuicr tui Same TUI, explicit subcommand tuicr -w Uncommitted changes (skip selector) tuicr -r main..HEAD Commit range tuicr --file f.md --line 42 Annotate a file, starting at line 42 tuicr pr 125 GitHub, Gitea, Bitbucket, or Azure DevOps PR, or Gerrit change tuicr pr 125 --remote up Use a named Git remote's fetch URL tuicr mr 125 GitLab MR tuicr tui pr 125 GitHub PR via explicit TUI subcommand tuicr tui mr 125 GitLab MR via explicit TUI subcommand tuicr --stdout Pipe the review to stdout tuicr review list List saved local review sessions tuicr update Update the active installation tuicr update 0.18.0 Install a known-good version Every flag, environment variable, and exit code in docs/CLI.md. The default Git backend detects renames using a 50% similarity threshold and honors Git's diff.renames and diff.renameLimit settings. Working-tree revi