# rpg-encoder

Строит семантический граф репозитория через Tree-sitter и отдаёт агенту карту всего проекта одним вызовом. Пригодится, когда поиск по коду тонет в grep и чтении файлов.

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

## Что делает

\`rpg-encoder` разбирает репозиторий парсером Tree-sitter: вытаскивает функции, классы, методы и связи между ними — импорты, вызовы, наследование. Дальше LLM читает каждую сущность и пишет к ней признаки вида «валидирует JWT-токены», «сериализует конфиг на диск». Из этих признаков собирается иерархия в три уровня (область → категория → подкатегория), и она отражает поведение кода, а не структуру папок.

Готовый граф сжимается в снимок примерно на 25K токенов: иерархия, сущности с признаками, скелет зависимостей и десять самых связанных узлов. Агент читает его один раз и дальше отвечает на вопросы вроде «что отвечает за аутентификацию», даже если слова auth в коде нет. Сервер сам следит за изменениями рабочего дерева и пересинхронизирует граф перед следующим запросом, так что вручную ничего обновлять не нужно.

Подъём признаков идёт двумя путями. Агентный режим тратит токены вашей подписки Claude или Cursor. Автономный `auto_lift` дёргает внешнюю модель напрямую и требует ключ API в переменной окружения — например `ANTHROPIC_API_KEY`. Для больших репозиториев сервер через `lifting_status` советует отдать цикл субагенту или дешёвой модели: извлечение признаков — это сопоставление по шаблону, а не рассуждение. Если субагентов в вашей среде нет, запустите `rpg-encoder lift --provider anthropic|openai` из терминала и после завершения вызовите `reload_rpg`. Учтите: CLI поднимает только сущности без признаков, устаревшие он не переподнимает — это делает сессионный поток MCP.

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

## Установка

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

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

### Codex

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

### Cursor

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

### GitHub Copilot

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

### Gemini CLI

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

## Когда брать
- найти код по смыслу, когда имена функций ничего не говорят
- получить карту всего репозитория одним вызовом вместо серии grep
- оценить, что сломается при правке конкретной сущности
- спланировать безопасный рефакторинг участка кода
- сэкономить токены на чтении файлов ради контекста

## Примеры запросов агенту
- Построй и подними RPG для этого репозитория
- Что в проекте отвечает за аутентификацию?
- Покажи всё, что зависит от подключения к базе данных

## Похожие
- [GitHub](https://affpapa.org/nevibecode/mcp/github.md) — MCP-сервер · ★ 33918
- [Netdata](https://affpapa.org/nevibecode/mcp/netdata.md) — MCP-сервер · ★ 81115
- [browser-use](https://affpapa.org/nevibecode/mcp/browser-use.md) — MCP-сервер · ★ 119160
- [Codebase Memory](https://affpapa.org/nevibecode/mcp/codebase-memory.md) — MCP-сервер · ★ 47392
- [mcp-server](https://affpapa.org/nevibecode/mcp/mcp-server.md) — MCP-сервер · ★ 43872
- [AIHawk](https://affpapa.org/nevibecode/mcp/aihawk.md) — MCP-сервер · ★ 32221

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