pi-diff-review

Local diff review TUI extension for pi

Packages

Package details

extension

Install pi-diff-review from npm and Pi will load the resources declared by the package manifest.

$ pi install npm:pi-diff-review
Package
pi-diff-review
Version
0.1.15
Published
May 20, 2026
Downloads
1,753/mo · 392/wk
Author
colton.padden
License
MIT
Types
extension
Size
76 KB
Dependencies
1 dependency · 3 peers
Pi manifest JSON
{
  "extensions": [
    "./extensions"
  ],
  "image": "https://github.com/user-attachments/assets/3fd00163-5d19-489b-94ed-3d4816c6cad3"
}

Security note

Pi packages can execute code and influence agent behavior. Review the source before installing third-party packages.

README

pi-diff-review

Embedded code reviews and AI summaries directly within pi.

Install

Install from npm:

pi install npm:pi-diff-review

Or install directly from GitHub:

pi install https://github.com/cmpadden/pi-diff-review

For local development, clone the repository and install from the local path:

git clone https://github.com/cmpadden/pi-diff-review
pi install ./pi-diff-review

Usage

Start a review with /diff. By default, this reviews your current unstaged changes:

/diff

Review staged changes with --cached:

/diff --cached

Review 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

  • /diff shows unstaged working-tree changes only.
  • /diff --cached shows 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

  • /diff reviews the current unstaged git diff
  • /diff --cached reviews staged changes
  • /diff main...HEAD reviews changes on the current branch relative to main
  • /diff <git-diff-args> passes arguments through to git diff
  • j/k or arrow keys to move
  • g/G to jump to the top or bottom of the diff
  • ctrl-u / ctrl-d to move up/down by half a page
  • t toggles inline comments/explanations
  • v toggles the diff between unified and side-by-side split rendering
  • ? toggles an AI-generated explanation for the current hunk
  • / searches diff lines; n/N moves between matches while a search is active
  • J/K to extend a highlighted selection into a comment range
  • esc clears the active selection, or exits review when no selection is active
  • n/p to jump hunks
  • c to add or edit a comment for the current line or selected range
  • C to add or edit an overall diff comment
  • x to delete a comment for the current line or selected range
  • Enter to submit comments back to pi
  • Comments are cached per session and restored when reopening the same diff
  • q to exit

Development

Install pre-commit and enable the repository hooks to run typechecking, tests, and formatting checks before each commit:

pre-commit install

Run the same checks manually with either:

pre-commit run --all-files
npm run precommit

Release

See RELEASE.md.