PluginBench
Skill
Review
Audit score 70

difit-review

yoshiko-pg/difit

Review diffs in a local browser viewer with inline comments—explicit opt-in only.

What is difit-review?

difit-review launches a git diff (branch, commit, or PR) in an external browser UI where you can attach code-review findings as inline comments. Use only when the user explicitly requests difit or asks to annotate the review in the difit viewer; for routine code reviews, respond in conversation instead.

  • Launch a git diff in an easy-to-read local browser viewer
  • Attach arbitrary inline comments to specific lines or ranges in the diff
  • Reuse a running difit server across multiple review rounds to avoid spawning new instances
  • Support diffs from local commits, branches, GitHub PRs, uncommitted changes, or stdin
  • Preserve credential-like material by never copying secrets into comment bodies

How to install difit-review

npx skills add https://github.com/yoshiko-pg/difit --skill difit-review
Prerequisites
  • Git repository with the target diff available locally
  • For GitHub PRs: ability to clone or access the PR locally
  • Node.js and npm (to run npx difit if difit is not installed)
Claude Code
Cursor
Windsurf
Cline

How to use difit-review

  1. 1.Inspect the diff contents and prepare your review findings
  2. 2.Determine the target (local commit, branch, working tree, or GitHub PR URL)
  3. 3.Format each finding as a JSON thread comment with filePath, position (side and line/range), and body
  4. 4.Run difit with the target and --comment arguments, or add comments to a running server with comment add
  5. 5.Open the displayed difit URL in your browser to view the annotated diff

Use cases

Good for
  • Review a pull request locally and annotate findings directly in the difit viewer instead of posting to GitHub
  • Explain code changes to a team member by launching the diff with inline clarifications
  • Iterate on code review feedback across multiple rounds without restarting the viewer
  • Review uncommitted or staged changes with inline comments before committing
Who it's for
  • Developers performing detailed code reviews
  • Teams collaborating on code changes locally
  • Agents reviewing diffs when explicitly directed to use difit

difit-review FAQ

When should I use difit-review vs. a normal review?

Use difit-review only when the user explicitly names difit, asks to open the review in the difit viewer, or invokes the skill by name. For routine requests like 'review this code' or 'check this PR', perform a normal review in conversation.

Can I reuse a difit server across multiple reviews?

Yes. Keep at most one live server per Git root and review target. Use `comment add --port <port>` to attach new findings to a running server instead of launching a new one.

How do I review uncommitted or staged changes?

Use `difit .` for uncommitted changes, `difit working` for working-tree changes, or `difit staged` for staged changes. Add `--include-untracked` if untracked files should appear in the diff.

Should I copy secrets or credentials into comment bodies?

No. Never include secrets, tokens, passwords, API keys, or private keys in --comment bodies or command arguments.

What if difit is not installed?

The skill will use `npx difit` to run it. If the environment is sandboxed without network access, request escalated permissions before proceeding.

Full instructions (SKILL.md)

Source of truth, from yoshiko-pg/difit.


name: difit-review description: Review a specific diff (branch, commit, or GitHub PR) and show the findings as comments inside difit, the local diff viewer. Explicit opt-in only — use when the user explicitly names difit, asks to open or annotate the review in the difit viewer, or invokes this skill by name. For ordinary requests to review code, diffs, commits, branches, or pull requests, review normally and respond in the conversation without launching difit.

Difit Review

When to Use This Skill

difit opens an external browser UI and starts a long-running local server, so launching it must be explicit opt-in:

  • Use this skill only when the user explicitly names difit, asks to open, show, or annotate the review in the difit viewer, or invokes this skill by name.
  • Do NOT use it for ordinary review requests such as "review these changes", "use the reviewer agent", "find problems in this diff", or "review this PR/commit/branch". Perform those reviews normally and report the findings in your response.
  • When a request is ambiguous, prefer the non-difit review path.

Overview

This skill launches a requested git diff in a viewer that is easy for humans to read. At the same time, the agent can attach arbitrary comments via the --comment option. This comment mechanism is well suited for code review findings and code explanations. Before running commands, choose <difit-command> using the following rule:

  • If command -v difit succeeds, use difit.
  • Otherwise, use npx difit.
  • If falling back to npx difit would require network access in a sandboxed environment without network permission, request escalated permissions and user approval before running it.

Steps

The final command typically looks like this:

<difit-command> <target> [compare-with] \
  --comment '{"type":"thread","filePath":"src/foobar.ts","position":{"side":"old","line":102},"body":"line 1\nline 2"}' \
  --comment '{"type":"thread","filePath":"src/example.ts","position":{"side":"new","line":{"start":36,"end":39}},"body":"Range comment for L36-L39"}'

The detailed procedure is as follows.

  1. Identify the target diff and review its contents.
  • Inspect the diff specified by the user. This may be a local git revision, a GitHub URL, a patch file, or something similar.
  • Understand the diff normally, inspect surrounding code when needed, and think through the response required by the user's request, whether that is review findings, explanations, or something else.
  • For PR reviews, inspect the PR locally and keep the review result limited to difit output. Do not post comments back to remote GitHub.
  1. Attach the prepared comments and launch difit — or reuse a running server.
  • Reuse before launch
    • Keep at most one live difit server per Git root and review target. If a difit server you started earlier is still running for the same target, do not launch another or reopen its URL; add the new findings to it with <difit-command> comment add --port <port> '<json>' (same JSON shape as --comment) and let the open page pick them up.
    • If review rounds are expected to repeat, launch with --keep-alive or --background (a detached keep-alive server that prints JSON connection info such as {"port":4966,"url":"http://localhost:4966","pid":123} without auto-opening a browser), then use comment add / comment get --port <port> for later rounds.
  • difit launch options
    • Use <difit-command> <target> [compare-with] to specify the target diff.
    • For uncommitted changes use <difit-command> ., for working tree changes use <difit-command> working, and for staged changes use <difit-command> staged.
    • For stdin input, use a form such as diff -u file1.txt file2.txt | <difit-command>.
  • Comment arguments
    • Use type: "thread" for each comment.
    • Write comment bodies in the language the user is using.
    • Use position.side: "new" for lines that exist on the target side of the diff.
    • Use position.side: "old" for lines that exist only on the deleted side.
    • Use range comments for issues that span multiple lines.
    • Never copy secrets, tokens, passwords, API keys, private keys, or other credential-like material from the diff into --comment bodies or any command-line arguments.
  • Additional argument for files not yet added to git
    • For uncommitted changes, if you decide files not yet added to git should also appear in the diff, add --include-untracked.
  1. Share the difit URL and finish the response.
    • If there were no comments to attach, explicitly say so.
    • No manual verification of the launched difit page is required.