diffctx

Registre officiel Outils de développement

Selects the minimum code an LLM needs to review a git diff

Installation

Ajoutez ceci à la configuration MCP de votre client (Claude Desktop : claude_desktop_config.json ; Cursor : .cursor/mcp.json ; VS Code et les autres utilisent la même forme « mcpServers »).

PYPI package diffctx
Claude Code
claude mcp add diffctx -- uvx diffctx==1.20.0
Configuration JSON (Claude Desktop, Cursor, VS Code)
{
    "mcpServers": {
        "diffctx": {
            "command": "uvx",
            "args": [
                "diffctx==1.20.0"
            ]
        }
    }
}

Documentation

Tirée du README du projet sur GitHub, actualisée chaque semaine. Les liens ouvrent GitHub.

Sommaire
  1. diffctx — what a git change reaches, and the code to review it
  2. Install
  3. Usage
  4. How it compares
  5. More

diffctx — what a git change reaches, and the code to review it

diffctx tells an agent or a reviewer what a change reaches outside its diff — the callers, the tests that reach them, the contracts it crosses — and selects the code needed to understand it under a token budget. Local, deterministic, no index, no model calls. Caller resolution is static and per language; where it cannot resolve, the answer says so instead of printing a zero.

Formerly published as treemapper — every command, flag, and API call works unchanged.

Install

diffctx is a command-line tool; the MCP server, the Claude Code plugin and the GitHub Action run the same engine.

CLI
uvx diffctx . --diff HEAD~1             # zero-install, run once via uv
pipx install diffctx                    # isolated CLI
pip install diffctx                     # into an active environment
cargo install diffctx                   # native binary from crates.io, no Python
npx diffctx . --diff HEAD~1             # npm wrapper over the native binary
docker run --rm -v "$PWD:/repo" ghcr.io/nikolay-e/diffctx . --diff HEAD~1
scoop bucket add diffctx https://github.com/nikolay-e/diffctx   # Windows
scoop install diffctx/diffctx

The native binary — cargo, npm, Docker, Scoop and the release archives for Linux, macOS and Windows on x64 and ARM — answers --diff and --symbol in every mode; whole-tree export, Markdown packs, diffctx graph and the MCP server need the Python package.

Any MCP client

Registered as io.github.nikolay-e/diffctx.

claude mcp add diffctx -- uvx --from 'diffctx[mcp]' diffctx-mcp
codex mcp add diffctx -- uvx --from 'diffctx[mcp]' diffctx-mcp
gemini mcp add diffctx uvx -- --from 'diffctx[mcp]' diffctx-mcp

Cursor, VS Code, Claude Desktop, Windsurf, Zed, Continue and the Python API: integrations.

Claude Code plugin

The MCP server plus /diffctx:impact and hooks that run it on each commit and push.

claude plugin marketplace add nikolay-e/diffctx
claude plugin install diffctx@diffctx
CI

The GitHub Action hands a pull request's diff context to any review step.

Usage

diffctx . --diff --mode impact          # uncommitted work: callers outside the diff, their tests, contracts
diffctx . --symbol parse_config         # the same for a name, no change needed
diffctx . --diff main...feature         # the code to review a branch, packed under the auto budget
diffctx . --diff HEAD~1 --budget 12000  # the last commit, capped at 12k o200k tokens
diffctx . --diff 24h --mode locate      # today's work as ranked JSON, no source bodies
diffctx .                               # whole-tree export, Markdown

--diff takes a git range, staged, or a duration window ending now (24h, 90min, 2w). Every flag, default and exit code: command-line reference.

How it compares

Whole-repo packers export everything; code-graph servers answer queries against a maintained index. diffctx is diff-seeded: the input is a change, the output is what it touches and what explains it. Measured results, and when the other two fit better: COMPARISON.md.

More

Apache 2.0

Questions fréquentes

Qu'est-ce que diffctx ?

Selects the minimum code an LLM needs to review a git diff

Comment installer diffctx ?

Il s'exécute sur votre machine. Dans Claude Code : claude mcp add diffctx -- uvx diffctx==1.20.0. Pour les autres clients, collez la configuration JSON de cette page dans leurs réglages MCP.

Faut-il une clé API pour diffctx ?

Son entrée au registre n'indique aucune clé ni secret obligatoire. Certaines fonctions peuvent tout de même demander un compte auprès du service auquel il se connecte.

diffctx est-il open source ?

Oui. Son code est sur GitHub sous licence Apache-2.0.

Qui maintient diffctx ?

Il est publié par nikolay-e. AI.tn le référence sans le maintenir ni le recommander.

Issu du registre MCP officiel. Être listé n'est pas une recommandation : vérifiez le code et les permissions d'un serveur avant de lui donner accès à vos données.