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- 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)
How to use difit-review
- 1.Inspect the diff contents and prepare your review findings
- 2.Determine the target (local commit, branch, working tree, or GitHub PR URL)
- 3.Format each finding as a JSON thread comment with filePath, position (side and line/range), and body
- 4.Run difit with the target and --comment arguments, or add comments to a running server with comment add
- 5.Open the displayed difit URL in your browser to view the annotated diff
Use cases
- 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
- Developers performing detailed code reviews
- Teams collaborating on code changes locally
- Agents reviewing diffs when explicitly directed to use difit
difit-review FAQ
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.
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.
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.
No. Never include secrets, tokens, passwords, API keys, or private keys in --comment bodies or command arguments.
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 difitsucceeds, usedifit. - Otherwise, use
npx difit. - If falling back to
npx difitwould 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.
- 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.
- 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-aliveor--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 usecomment add/comment get --port <port>for later rounds.
- 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 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>.
- Use
- 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
--commentbodies or any command-line arguments.
- Use
- 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.
- For uncommitted changes, if you decide files not yet added to git should also appear in the diff, add
- 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.
Related skills
More from yoshiko-pg/difit and the wider catalog.

difit
Open code changes in difit, a local diff viewer, for explicit user-requested reviews.

nano-banana-pro-prompts-recommend-skill
Recommend AI image generation prompts from 10,000+ Nano Banana Pro prompts with sample images.

youmind
Use this skill when the task is clearly connected to the user's YouMind workspace, YouMind APIs, or the youmind CLI. It helps agents search, inspect, and call YouMind OpenAPI endpoints to work with boards, groups, YouMind files, picks, chats, and YouMind skills.

searxng-search
Enhanced web and package repository search using local SearXNG instance

nature-academic-search
Search literature, verify citations, and build MeSH strategies for academic research.

nature-citation
Find and verify Nature/CNS-family literature supporting manuscript claims with claim-to-source mapping.