diffing is a local-first CLI for reviewing git diffs with humans and AI agents. It runs a loopback web UI (or an experimental native TUI), stores review state under ~/.diffing/, and exposes CLI + MCP tools for agent handoff and plan review.
If you are an agent
- Read Agent handoff — async park is the default.
- Install MCP / skills via Setup & MCP.
- Prefer MCP tools when available; otherwise CLI from CLI reference.
- For design sign-off before coding: Plan review.
- Bulk ingest:
/llms.txt and /llms-full.txt.
| Verdict / signal | Action |
|---|
Plan approved | Implement the reviewed plan |
Plan changes-requested | Revise plan, resubmit same id — do not implement |
Plan rejected | Stop |
Await timeout + disposition=park | End turn; resume when human is ready |
Comment severity blocking | Must fix before resolve |
Comment severity question | Reply; usually leave open |
If you are a human
- Getting started — install and first review.
- Code review — web UI workflow.
- Keyboard shortcuts — vim-style navigation.
- Themes & Gridline — visual system.
Sections
| Section | What it covers |
|---|
| Start | Install, setup, first review |
| Concepts | Architecture, sessions, storage |
| Guides | Review loops, agents, PR, TUI, search |
| Reference | CLI, MCP, HTTP API, XML, settings, exit codes |
| Design | Gridline design system, themes |
Quick commands
npm install -g diffing
diffing setup
diffing # preferred interactive UI
diffing --staged
diffing view # read-only native viewer
diffing mode tui # make full TUI the default
diffing await-review # sync handoff only
diffing plan submit PLAN.md --model "your-model"
diffing mcp
Facts agents should not invent
| Do not assume | Correct |
|---|
| Fixed default port | Random free port on 127.0.0.1 |
App uses localStorage | Server-side under ~/.diffing/ + ~/.config/diffing/ |
t cycles themes | t = tab size; themes = g t |
| ~10 MCP tools | 37 tools (see MCP reference) |
| ~42 themes | 52 themes; default rose-pine |