pi-diff-review
v0.1.15
Published
Local diff review TUI extension for pi
Maintainers
Readme
pi-diff-review
Embedded code reviews and AI summaries directly within pi.
Install
Install from npm:
pi install npm:pi-diff-reviewOr install directly from GitHub:
pi install https://github.com/cmpadden/pi-diff-reviewFor local development, clone the repository and install from the local path:
git clone https://github.com/cmpadden/pi-diff-review
pi install ./pi-diff-reviewUsage
Start a review with /diff. By default, this reviews your current unstaged changes:
/diffReview staged changes with --cached:
/diff --cachedReview a branch or commit range by passing any git diff arguments after /diff:
/diff main...HEAD/diff <git-diff-args> is passed through to git diff, so these examples are equivalent to running git diff, git diff --cached, and git diff main...HEAD locally before opening the review UI.
Staged vs. unstaged changes
/diffshows unstaged working-tree changes only./diff --cachedshows staged changes only.- If you have both staged and unstaged edits, run both commands separately to review each set.
- To review everything relative to a base branch, use a range such as
/diff main...HEAD.
Features
/diffreviews the current unstagedgit diff/diff --cachedreviews staged changes/diff main...HEADreviews changes on the current branch relative tomain/diff <git-diff-args>passes arguments through togit diffj/kor arrow keys to moveg/Gto jump to the top or bottom of the diffctrl-u/ctrl-dto move up/down by half a pagettoggles inline comments/explanationsvtoggles the diff between unified and side-by-side split rendering?toggles an AI-generated explanation for the current hunk/searches diff lines;n/Nmoves between matches while a search is activeJ/Kto extend a highlighted selection into a comment rangeescclears the active selection, or exits review when no selection is activen/pto jump hunkscto add or edit a comment for the current line or selected rangeCto add or edit an overall diff commentxto delete a comment for the current line or selected rangeEnterto submit comments back to pi- Comments are cached per session and restored when reopening the same diff
qto exit
Development
Install pre-commit and enable the repository hooks to run typechecking, tests, and formatting checks before each commit:
pre-commit installRun the same checks manually with either:
pre-commit run --all-files
npm run precommitRelease
See RELEASE.md.
