Booster MCP Workflow
Цель
Безопасно подключить репозиторий к Booster MCP, получить актуальный контекст и убедиться, что артефакты анализа доступны агенту.
Базовый Цикл
- Проверь встроенные навыки через
list_agent_skills(). - Для нового или большого локального репозитория сначала запусти из его корня
booster expand --profile balanced. Это создаёт ограниченный scope и не загружает embedding-модель. - Прочитай
.agents/booster/scan_report.json. Если достигнуты limits, реши осознанно: сохранить быстрый scope или повторитьbooster expand --profile deepперед индексацией. - Добавь проект:
add_repo("<absolute_repo_path>"). MCP использует сохранённыйscan_config.jsonи возвращаетjob_id. - Проверь job через
index_status(job_id="..."); для bounded ожидания используйwait_until_ready(), а не долгий MCP request. - Проверь результаты индексации и пути к артефактам:
repo_stats()иget_repo_artifacts(). - Получи сжатую структуру проекта:
inject_context()илиget_repo_map(). - Для известных символов, API и mixed-запросов используй
hybrid_search(); для чисто смыслового поиска используйsemantic_search(). - При необходимости получи рекомендации по актуальной документации:
fetch_stack_docs(). - Выбери специализированный skill для дальнейшей работы.
- Перед финальным ответом вызови
booster.task_complete(task_id="<task-id>"): Booster поставит финальный reindex и сохранит commit-bound snapshot.
booster expand --profile balanced
add_repo("D:\\workSpace\\project")
index_status(repo_path="D:\\workSpace\\project")
get_repo_artifacts()
inject_context(include_map=True, include_stack=True, include_conventions=True)
repo_stats()
hybrid_search("authenticate_user JWT")
fetch_stack_docs()
booster.task_complete(task_id="task-123")
Проверка Артефактов
get_repo_artifacts() возвращает состояние канонических файлов:
.agents/booster/repo_map.md.agents/booster/repo_map_architecture.md.agents/booster/repo_map_symbols.md.agents/booster/index_health.json.agents/booster/code_city.html.agents/booster/scan_config.json.agents/booster/scan_report.json.agents/booster/latest.json.agents/booster/snapshots/<commit>-<state>-<digest>/
scan_report.json является gate для дальнейшего алгоритма. Если он сообщает о max_files, max_depth, max_total_bytes или max_directories, не запускай reindex_repo() вслепую: сначала выбери подходящий профиль или явные лимиты через booster expand.
Если architecture map отсутствует:
- Вызови
get_repo_map()- инструмент сформирует bounded architecture map и сохранит её в артефактах. - Повтори
get_repo_artifacts(). - Если карта всё ещё пуста, вызови
reindex_repo("<absolute_repo_path>")и повтори проверку.
get_repo_artifacts()
get_repo_map()
get_repo_artifacts()
Маршрутизация Работы
- Новый или незнакомый проект:
booster-onboard. - Инъекция карты, стека и конвенций в контекст:
booster-context-inject. - Архитектурный обзор:
booster-architecture-mapиbooster-deep-dive. - Ошибка, stack trace или нестабильное поведение:
booster-bug-hunt. - Новая возможность:
booster-feature-add. - Рефакторинг без изменения поведения:
booster-refactor. - Code review:
booster-review. - Сложный граф вызовов:
booster-flipchart. - Долгосрочные выводы:
booster-project-memory.
Ограничения
- Передавай абсолютный путь в
add_repo()иreindex_repo(). - Не читай большой репозиторий подряд, пока не получены RepoMap и статистика.
- Не меняй
scan_config.jsonвручную: обновляй scope черезbooster expand, чтобы report и конфигурация оставались согласованными. - Не редактируй файлы в
.agents/boosterвручную: они являются автоматически генерируемыми артефактами. - Для обновления уже добавленного проекта используй
reindex_repo(), а не повторныйadd_repo(). add_repo()idempotent и сохраняет binding между MCP-процессами; не вызывай его повторно только для обновления индекса.- Для изменения состава большого репозитория учитывай
stale=trueи дождись новой generation черезindex_status. - После завершения задачи обязательно вызывай
booster.task_complete(). Предыдущие commit-bound snapshots не удаляй.