pi-delegate
pi-delegate
Делегируйте реализацию и тесты локальному агенту pi с хуками, которые обеспечивают дисциплину диспетчеризации.
Claude выступает в роли технического лидера: он создаёт пробу, книгу задач, сценарий приёмки и вердикт. pi пишет исходный код.
Claude никогда не говорит напрямую по протоколу RPC — MCP-сервер держит канал, что делает возможными pi_steer и pi_abort во время выполнения.
Установка
/plugin marketplace add LarryStanley/pi-delegate
/plugin install pi-delegate@pi-delegateЗапустите обе команды внутри Claude Code. Первая команда регистрирует этот репозиторий как маркетплейс плагинов; вторая устанавливает плагин из него. Если в сводке установки сказано Run /reload-plugins to activate., выполните и её.
Требуется Node ≥ 22 и уже настроенная установка pi. Зависимости устанавливаются автоматически из зафиксированного lockfile — вам не нужно ничего npm install самостоятельно.
Чтобы обновить позже:
/plugin marketplace update pi-delegateЧтобы запустить рабочую копию вместо опубликованной версии:
claude --plugin-dir /path/to/pi-delegateКопия --plugin-dir имеет приоритет над установленной для этой сессии, так что вы можете тестировать изменения без удаления.
Затем запустите /pi-delegate:setup для пошагового прохождения при первом запуске: он проверяет pi и его провайдера, объясняет режимы дисциплины и спрашивает, какой вы хотите, предлагает исправить всё, что можно исправить, и предлагает проверочную диспетчеризацию перед тем, как вы начнёте использовать инструменты по-настоящему.
Related MCP server: deleg8
Конфигурация: по умолчанию ничего не требуется
pi_dispatch не указывает ни провайдера, ни модель, поэтому pi использует ваши собственные настройки по умолчанию (defaultProvider / defaultModel в ~/.pi/agent/settings.json). Другими словами: какая бы модель ни была у pi по умолчанию, диспетчеризация идёт туда же — anthropic, openai, litellm, ollama, LM Studio или локальный сервер, совместимый с OpenAI (например, omlx), работают одинаково, и для этого плагина ничего настраивать не нужно.
Если вы хотите закрепить другую модель на длительный срок (например, дешёвую локальную модель для диспетчеризации, пока интерактивный pi использует что-то другое), напишите ~/.claude/pi-delegate/config.json:
{
"provider": "ollama",
"model": "qwen3:8b",
"timeout_s": 1500,
"thinking": "off",
"tools": "read,write,edit",
"no_context_files": true,
"drafter_patterns": ["-draft", "_assistant", "-assistant"]
}Каждое поле необязательно. Порядок разрешения: аргументы вызова pi_dispatch → этот файл → собственные настройки pi по умолчанию.
/pi-delegate:doctor сообщает, до какой модели на самом деле дойдёт диспетчеризация, и поднимает проблему только при условиях, которые действительно выполняются.
Приведённые ниже значения по умолчанию были измерены, а не угаданы
Параметр | По умолчанию | Почему |
|
| Небольшие локальные модели тратят весь свой бюджет на размышления и никогда не совершают ни одного вызова инструмента. Мощные размещённые модели выигрывают от размышлений над сложными задачами, поэтому это можно переопределить. |
|
| Предоставление |
|
| Измерено: без него 43 чтения / 0 записей / тайм-аут; с ним завершилось за 93 секунды. |
Чтобы переопределить, укажите это напрямую в вызове pi_dispatch (thinking, tools, no_context_files, append_system_prompt, provider, model, timeout_s).
--mode rpc, --session-id, --no-skills и --no-extensions являются структурными и не переопределяются; --no-session намеренно никогда не передаётся (его отсутствие позволяет сессии сохраняться на диск, что даёт pi_transcript что-то для чтения).
Режимы
Режим | Поведение |
| Никакого вмешательства |
| Подталкивает, когда затрагивается существующий код продукта (по умолчанию) |
| Блокирует правки существующего кода продукта |
Переключайте режимы с помощью /pi-delegate:mode <mode>; состояние хранится в ~/.claude/pi-delegate/modes.json и запоминается для каждого проекта. «Существующий код продукта» означает исходный файл, который уже существует в src/ корня проекта; tasks/, scripts/, docs/, markdown, конфигурационные файлы и совершенно новые файлы пропускаются.
strict — это дисциплинарное ограждение, а не принуждение: хук подключён только к Write|Edit, поэтому редактирование того же файла с помощью Bash (sed -i, heredoc, python - <<EOF, …) никогда не перехватывается. Всегда есть способ обойти это — он блокирует редактирование файла по привычке, а не намеренный обход.
Чтобы сделать одну ручную правку (пробу), сначала запустите /pi-delegate:probe для одноразового обхода.
Инструменты MCP
Инструмент | Назначение |
| Отправить книгу задач. |
| Проверить прогресс |
| Вмешаться во время выполнения, когда оно идёт не туда |
| Прервать. Повторно отправьте прерванную задачу без изменений; переписывайте книгу задач только после реального сбоя |
| Собрать вердикт асинхронной диспетчеризации |
| Углубляться только тогда, когда вердикта недостаточно |
| Проверить использование токенов |
Как работает диспетчеризация
Активация MCP-сервера охватывает всю сессию; именно поэтому он может доставить steer в stdin дочернего процесса pi во время выполнения, и именно он — а не дочерний процесс — решает, когда запуск завершён.
Известные пробелы
pi_stats возвращает только tokens и duration_s, уже присутствующие в вердикте. Проброс get_session_stats из спецификации §5 (включая использование cost / context) ещё не реализован.
Документация
Файл | Содержимое |
| Изменения и заметки о проверке из предрелизного прохода |
| Спецификация дизайна (историческая) |
| План реализации (исторический) |
| Сама дисциплина диспетчеризации: разделение на четыре части, книги задач, приёмка, выбор модели |
Разработка
npm test # node --test, no external dependencies
claude plugin validate .fixtures/fake-pi.mjs заменяет pi --mode rpc. Он намеренно находится вне test/ — node --test обрабатывает любой файл в **/test/**/*.{cjs,mjs,js} как тестовый файл, и размещение его в test/ добавило бы один постоянно проходящий фантомный тест.
This server cannot be deployed
Maintenance
Related MCP Connectors
MCP server for your apps' tools and custom tools, plus hosted AI agents and approval-gated workflows
Your org's AI agents, tasks, runs, search, and brain files as MCP tools and resources.
Start and manage Reason cloud coding agents, projects and sessions from any MCP client.
A paid remote MCP for OpenAI Codex agent coordination MCP, built to return verdicts, receipts, usage
Related MCP Servers
- AlicenseNot gradedqualityDmaintenanceEnables MCP clients to spawn and control Codex CLI and Claude Code sessions on the host machine, with session management and filesystem access.4MIT
- FlicenseNot gradedqualityBmaintenanceEnables Claude Code to delegate work to persistent oh-my-pi (omp) subagents via an MCP server with 7 tools (spawn, send, output, status, list, stop, prune), wrapping omp RPC mode with enforcement hooks for descriptive agent naming, model configuration, denylists, write-scope ownership, and cooperative locking.-
- AlicenseNot gradedqualityBmaintenanceDelegates coding tasks to the local Claude Code CLI via MCP, offering run, review, and status tools for MCP-compatible agents.11 npmMIT
- FlicenseNot gradedqualityBmaintenanceEnables MCP hosts like Claude Code and Codex to spawn, manage, and interact with persistent, reusable Pi coding-agent sessions, supporting task dispatch, status checks, and session lifecycle control.3 npm-