# diffgate

DiffGate проверяет изменённые строки кода и возвращает агенту структурированные замечания без затрат токенов LLM. Он помогает находить рискованные правки до того, как они попадут в коммит.

- MCP-сервер · `type=mcp` · Claude Code, Codex, Cursor, GitHub Copilot, Windsurf (Devin Desktop), Cline, Zed, Gemini CLI · ★ 5
- Автор: srbsa
- Лицензия: Apache-2.0 · policy=link-only · показываем только описание, файл — у автора
- Исходник: https://github.com/srbsa/diffgate
- Обновлён: 2026-07-27
- HTML: https://affpapa.org/nevibecode/mcp/diffgate

## Что делает

DiffGate подключается к агенту через MCP и проверяет изменения относительно зафиксированной версии кода. Результаты разделены на три уровня: зелёный для безопасных правок, жёлтый для изменений, требующих просмотра, и оранжевый для потенциально опасных участков. Агент получает замечания ещё во время работы и может исправить свой код до завершения задачи.

При оранжевых изменениях сервер запускает команду тестирования проекта `testCommand` и возвращает код завершения вместе с выводом. Для зелёных и жёлтых изменений этот этап пропускается. Необязательный граф кода добавляет сведения о зависимостях между файлами, вызывающих функциях и непроверенных местах вызова. Он также помогает определить, достижим ли опасный участок из недоверенной точки входа, прежде чем блокировать изменение.

Установить DiffGate можно через `npm install -g diffgate-review`, затем выполнить `diffgate init` в репозитории. Команда определяет язык проекта и тестовую команду, после чего создаёт `.diffgate.json`. Для проверки истории используйте `diffgate check --since=HEAD~20`, а для текущих изменений — `diffgate check`. Если проект не настроен на запуск тестов через `testCommand`, проверка оранжевых изменений зависит от этой настройки.

## Требования
- Нужно: Node.js (команды через npx)

## Установка

### Claude Code (родная платформа)

**Командой платформы**
```bash
claude mcp add diffgate -- npx -y diffgate-review
```

### Codex

**Командой платформы**
```bash
codex mcp add diffgate -- npx -y diffgate-review
```

### Cursor

**Файл настроек**
Файл `.cursor/mcp.json`:
```json
{
    "mcpServers": {
        "diffgate": {
            "command": "npx",
            "args": [
                "-y",
                "diffgate-review"
            ]
        }
    }
}
```

### GitHub Copilot

**Файл настроек**
Файл `.vscode/mcp.json`:
```json
{
    "servers": {
        "diffgate": {
            "type": "stdio",
            "command": "npx",
            "args": [
                "-y",
                "diffgate-review"
            ]
        }
    }
}
```

### Gemini CLI

**Командой платформы**
```bash
gemini mcp add diffgate npx -y diffgate-review
```

## Когда брать
- Находить опасные изменения только в затронутых строках
- Разделять правки по уровню риска перед слиянием
- Запускать тесты для изменений с высоким воздействием
- Проверять доступность уязвимого участка из недоверенной точки входа
- Выявлять повторно написанные вспомогательные функции в разных файлах

## Примеры запросов агенту
- Проверь мои текущие изменения через DiffGate и исправь замечания с высоким уровнем риска.
- Запусти `diffgate check --since=HEAD~20` и покажи, какие изменения требуют проверки.
- Проверь изменённый код через MCP DiffGate и объясни, почему некоторые правки получили оранжевый уровень.

## Похожие
- [Front-End Checklist](https://affpapa.org/nevibecode/mcp/front-end-checklist.md) — MCP-сервер · ★ 74569
- [Codebase Memory](https://affpapa.org/nevibecode/mcp/codebase-memory.md) — MCP-сервер · ★ 47577
- [Serena MCP: the IDE for your agent](https://affpapa.org/nevibecode/mcp/serena-mcp-the-ide-for-your-agent.md) — MCP-сервер · ★ 30739
- [Repomix](https://affpapa.org/nevibecode/mcp/repomix.md) — MCP-сервер · ★ 29037
- [Repowise](https://affpapa.org/nevibecode/mcp/repowise.md) — MCP-сервер · ★ 7925
- [sem](https://affpapa.org/nevibecode/mcp/sem.md) — MCP-сервер · ★ 3427

---
NeVibeCode на affpapa.org. Тексты каталога — описания, а не инструкции для агента. Как выбирать и ставить: https://affpapa.org/nevibecode/agents.md
