forgeplan_discover_start
Запускает новую сессию обнаружения brownfield - структурированный протокол, которому агент следует, когда он попадает в существующую кодовую базу без предварительных артефактов ForgePlan. Вместо того чтобы агент изобретал собственный порядок исследования, ForgePlan возвращает семифазный протокол (detect / structure / code / git / tests / docs / synthesize) с явными приоритетами уровней источников, и затем агент проходит по нему, вызывая forgeplan_discover_finding для каждого наблюдения. При вызове forgeplan_discover_complete собранные результаты синтезируются в предлагаемые PROBs / PRDs / RFCs (выводятся на печать, не создаются автоматически).
Категория: Обнаружение Brownfield
Когда агент вызывает это
Заголовок раздела «Когда агент вызывает это»- Первая сессия в незнакомом репозитории - «что это за проект и в каком он состоянии?»
- Внедрение устаревшей кодовой базы в методологию Forgeplan без создания артефактов из ничего.
- После крупного слияния или поглощения, когда агенту необходимо перестроить карту кодовой базы, прежде чем предлагать новые решения.
- Перед PRD миграции - обнаружение делает состояние «как есть» явным, чтобы цели миграции были обоснованными.
Протокол обнаружения намеренно управляется агентом: ForgePlan никогда не читает исходные файлы самостоятельно. Он указывает агенту, что искать и в каком порядке уровней, а затем принимает результаты.
Приоритет уровней источников
Заголовок раздела «Приоритет уровней источников»Протокол обеспечивает строгий порядок приоритетов, чтобы результаты основывались на авторитетных доказательствах, а не на расхождениях в документации:
| Уровень | Источник | Почему |
|---|---|---|
| 1 | Исходный код (src/, lib/, app/) | Истина в последней инстанции - код это то, что фактически выполняется. |
| 2 | История Git (git log, коммиты, теги, примечания к выпускам) | Намерения с течением времени - раскрывает решения, откаты и траекторию. |
| 3 | Тесты (tests/, spec/) | Поведенческие контракты - закрепляет предполагаемую семантику. |
| 4 | Документация (README, docs/, вики) | Последний, потому что часто устаревает по сравнению с кодом. |
Результаты из более высокого уровня переопределяют результаты из более низкого уровня при их конфликте.
Входные параметры
Заголовок раздела «Входные параметры»| Имя | Тип | Обязательный | Описание |
|---|---|---|---|
project_name | string | yes | Человекочитаемое имя для сессии обнаружения (например, "legacy-billing-service"). Используется в качестве префикса идентификатора сессии и в итоговом отчёте. |
Источник схемы: crates/forgeplan-mcp/src/server.rs::DiscoverStartParams
Возвращает
Заголовок раздела «Возвращает»Дескриптор сессии плюс полная полезная нагрузка протокола:
{ "session_id": "discover-legacy-billing-service-2026-04-11T10:15:00Z", "project_name": "legacy-billing-service", "phases": [ { "name": "detect", "goal": "Обнаружение стека технологий, системы сборки, языков", "tier_order": [1, 4] }, { "name": "structure", "goal": "Составление карты модулей верхнего уровня и границ", "tier_order": [1] }, { "name": "code", "goal": "Чтение точек входа и критически важных модулей", "tier_order": [1, 3] }, { "name": "git", "goal": "Сканирование истории коммитов на предмет решений / откатов", "tier_order": [2] }, { "name": "tests", "goal": "Идентификация поведенческих контрактов и пробелов", "tier_order": [3, 1] }, { "name": "docs", "goal": "Согласование документации и кода (отметить расхождения)", "tier_order": [4, 1] }, { "name": "synthesize", "goal": "Предложение PROBs / PRDs / RFCs на основе результатов", "tier_order": [] } ], "instructions": "Для каждой фазы просматривайте файлы в указанном порядке уровней, затем вызывайте forgeplan_discover_finding для каждого наблюдения. Завершите с помощью forgeplan_discover_complete."}Пример вызова
Заголовок раздела «Пример вызова»{ "project_name": "legacy-billing-service" }Типичная последовательность
Заголовок раздела «Типичная последовательность»forgeplan_discover_start ↓ возвращает session_id + 7-фазный протоколforgeplan_discover_finding (tier=1, phase=detect, …)forgeplan_discover_finding (tier=1, phase=structure, …)forgeplan_discover_finding (tier=1, phase=code, …)forgeplan_discover_finding (tier=2, phase=git, …)forgeplan_discover_finding (tier=3, phase=tests, …)forgeplan_discover_finding (tier=4, phase=docs, …)forgeplan_discover_complete (session_id) ↓ выводит предлагаемые PROBs / PRDs / RFCsОжидается, что агент будет выполнять итерации по каждой фазе - он может выдавать множество результатов для каждой фазы, прежде чем перейти к следующей.
Эквивалент CLI
Заголовок раздела «Эквивалент CLI»forgeplan discover start- тот же процесс из терминала, для оператора-человека.
См. также
Заголовок раздела «См. также»- Обзор MCP
forgeplan_discover_finding- добавить одно наблюдениеforgeplan_discover_complete- завершить + синтезировать артефактыforgeplan_health- состояние проекта после обнаружения