Перейти к основному содержимому

Частые вопросы о CodeGraph

Практические ответы по настройке, анализу, MCP, безопасности и диагностике. Страница объясняет назначение, порядок применения и проверку результата.

Справочник

Ответы направляют к поддерживаемым инструкциям для типовых задач. Точные флаги, схемы запросов и доступность инструментов проверяйте через help или live-discovery установленной ревизии.

Начало работы

С чего начать?

Пройдите быстрый старт: установка, настройка проекта, первая индексация и запрос. Не переносите пути хранилища и команды сервисов из старой среды без сверки с текущим runbook или CLI help.

Нужны ли все сервисы для локального знакомства?

Нет. Запускайте только интерфейсы, которые нужны вашей задаче. У анализа через CLI и проверки аутентифицированного дашборда разные зависимости. При ошибке запуска используйте актуальное руководство по диагностике, а не старый список процессов.

Проекты и свежесть графа

Зачем обязательно выбирать проект?

Scope проекта определяет контекст репозитория, расположение CPG, авторизацию, память и привязку доказательств. Идентификатор указывает проект, а разрешение сервер получает из аутентифицированного запроса с допустимым проектным контекстом.

Почему результат пуст или не совпадает с исходным кодом?

Проверьте, что проиндексирована ожидаемая ревизия, язык поддерживается, исключения заданы верно, а синхронизация проекта завершена. Пустой результат может означать «не найдено», но также бывает следствием устаревшего контекста, неполного покрытия графа или ошибки scope.

Анализ и доказательства

Какую команду анализа выбрать?

Откройте карту возможностей анализа: review — находки по изменениям, impact — зона влияния, patterns — структурный поиск, hypothesis — гипотезы безопасности по CPG, threat-model — границы доверия, SCA — зависимости. Перед автоматизацией вызовите python -m src.cli --help и --help выбранной подкоманды.

Доказывает ли чистый результат безопасность релиза?

Нет. Анализ — лишь один источник доказательств. Решение о релизе также требует заданных задачей результатов приёмки, ревью, AppSec, QA, документации, трассировки, рантайма и финансового контроля. Привязывайте результат к точной ревизии: пути, снимка экрана или старого статуса недостаточно.

Можно ли автоматически применять исправления CodeGraph?

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

MCP и цифровые сотрудники

Почему MCP-инструмент отсутствует?

Видимость зависит от работающего сервера, активного профиля, политики владельца и подключения клиента. Следуйте MCP_OPERATOR_GUIDE.md и проверяйте live-каталог клиента. Runtime-регистрация подтверждается работающим вызовом в текущем профиле.

Как передавать структурированные аргументы MCP?

Передавайте нативные массивы и объекты, а не JSON внутри строк. Используйте канонические типизированные идентификаторы и явно задавайте проект, namespace, историю и задачу. Не передавайте сырые пути к БД через agent-facing инструменты: хранилище определяется по разрешённому контексту.

Какие полномочия дают цифровые сотрудники?

Они разделяют ответственные контуры доказательств, но не выдают учётные данные и не разрешают неограниченные изменения. Роли, капсулы задач, передачи и закрытие описаны в статье об управляемых цифровых сотрудниках. Человеческое одобрение действует только для точно указанных в подписанном носителе перехода и scope.

Безопасность и работа с данными

Можно ли отправлять код внешней LLM?

Только если это допускают политика развёртывания, настройка провайдера и классификация данных. Перед включением провайдера прочитайте LLM_SECURITY.md. Не помещайте секреты в промпты, логи, аргументы команд, fixtures и публичную документацию.

Поддерживается ли прямая интеграция через DuckDB?

Нет. Это диагностическая граница сопровождающего. Используйте project-scoped CLI, REST, MCP, ACP или интерфейсы GoCPG. Прямая запись способна обойти авторизацию, владение схемой, проверку свежести и трассировку.

Куда сообщить о предполагаемой уязвимости?

Не публикуйте детали эксплуатации и секреты в открытом issue. Используйте приватный канал из политики безопасности репозитория, приложите затронутую ревизию и минимальное безопасное воспроизведение. Сохраняйте нужные логи без учётных данных.

Ошибки и восстановление

Что приложить к обращению в поддержку?

Укажите установленную ревизию, ОС, интерфейс, точную форму команды или запроса, project scope, ожидаемое поведение, ошибку и фрагмент лога без секретов. Напишите, воспроизводится ли проблема и актуален ли проектный контекст.

Стоит ли повторять управляемое действие с другим ID задачи?

Не вслепую. Сначала прочитайте авторитетный статус. Иногда нужно синхронизировать существующий носитель истории или задачи, обновить доказательства либо применить специально одобренный переход восстановления. Соседняя задача может разорвать непрерывность, не устранив причину блокировки.

Где искать дальше?

Известные операционные симптомы собраны в руководстве по диагностике, маршрутизация задач — в карте сценариев. Контракт установленной версии проверяйте через live CLI или MCP. Текущий код и наблюдаемое поведение важнее архивных примеров.