Как запретить ChatGPT доступ к GitHub: репозитории и файлы

В этой статье

Запрос «запрет для ChatGPT GitHub» обычно означает не общий запрет ChatGPT, а ограничение доступа AI-инструмента к коду: нужно убрать из подключённого источника один репозиторий, закрыть все репозитории организации или не отдавать помощнику отдельные файлы.

Здесь важно сначала назвать поверхность, которую вы ограничиваете. Приложение GitHub в ChatGPT, GitHub Copilot и OpenAI Codex — не один и тот же клиент с общей настройкой. Запрет в одной системе не превращается автоматически в запрет в двух других.

Если речь о приложении GitHub в ChatGPT

Подключённое приложение GitHub получает содержимое репозиториев только в рамках разрешённого доступа и по запросу: оно используется для чтения, поиска и анализа кода. Это не постоянная выгрузка всего аккаунта GitHub в чат. Прямое внесение изменений через это приложение не заявлено.

Чтобы запретить ChatGPT видеть конкретный репозиторий, измените список репозиториев, разрешённых подключённому GitHub App. Действия обычно выглядят так:

  1. Откройте настройки GitHub и найдите установленные приложения или OAuth/GitHub App, связанные с ChatGPT.
  2. Откройте конфигурацию приложения.
  3. Выберите режим, в котором доступны только отдельные репозитории, и уберите из списка нужный репозиторий. Если доступ к GitHub больше не нужен, удалите приложение или отзовите его авторизацию.
  4. Проверьте результат отдельным запросом в ChatGPT: репозиторий не должен находиться и анализироваться через подключённое приложение.

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

Если после отзыва доступа понадобится снова подключить репозиторий с минимальными разрешениями, пригодится инструкция по подключению репозитория к ChatGPT.

Если вы не хотите подключать рабочий GitHub к AI-инструменту, но всё же ищете подходящий способ пользоваться AI-сервисами, можно начать с каталога Amber Market: там подбирают сервис или подписку под рабочую задачу. Это отдельный маршрут и он не требует открывать ChatGPT доступ к вашему репозиторию.

Что означает «запретить Copilot»

GitHub Copilot управляется собственными политиками. Для cloud agent GitHub предусматривает три режима доступа к репозиториям — эти варианты перечислены в документации GitHub о политиках Copilot:

  • No repositories — cloud agent не получает доступ к репозиториям;
  • All repositories — доступ разрешён ко всем репозиториям в соответствующей области;
  • Only selected repositories — доступ разрешён только выбранным репозиториям.

Если нужно полностью остановить работу Copilot cloud agent с кодом, выбирайте No repositories. Для точечного ограничения используйте Only selected repositories и оставьте в списке только те репозитории, которые действительно нужны агенту.

Уровень применения зависит от вашей роли и плана: политика может настраиваться для личной учётной записи, организации или enterprise. В организации одного желания владельца репозитория недостаточно, если разрешение задаётся политикой выше уровнем. В таком случае проверяйте настройки организации и enterprise, а не только локальные параметры репозитория.

Как исключить отдельные файлы и пути из Copilot

Когда полный запрет репозитория слишком грубый, администратор может использовать content exclusion. Эта политика позволяет исключать заданные файлы и пути на уровне репозитория, организации или enterprise. Например, в исключения можно поместить каталог с внутренними ключами конфигурации, приватными тестовыми данными или частью кода, которую нельзя отправлять в AI-контекст.

Но content exclusion — не универсальный выключатель Copilot. GitHub отдельно предупреждает, что поддержка зависит от поверхности Copilot: в частности, режим агента в IDE content exclusion не поддерживает. Кроме того, изменение политики может применяться не мгновенно. Поэтому после настройки нужно учитывать конкретный клиент и сценарий, а не считать, что одна запись в исключениях закрывает файл везде.

Практическая проверка выглядит так:

  1. Зафиксируйте точные пути, которые должны быть закрыты.
  2. Настройте исключение на минимально необходимом уровне — репозиторий, организация или enterprise.
  3. Проверьте, какие поверхности Copilot охватывает политика.
  4. Дождитесь применения настройки и отдельно протестируйте нужный сценарий.

Описание ограничений и областей действия приведено в документации GitHub о content exclusion для Copilot.

Почему запрет Copilot не блокирует ChatGPT и Codex

У этих интеграций разные точки авторизации. Настройка GitHub Copilot регулирует Copilot, а приложение GitHub в ChatGPT получает доступ через свою установку и список разрешённых репозиториев. Поэтому состояние No repositories для Copilot нельзя использовать как доказательство того, что приложение ChatGPT больше ничего не видит.

Для Codex действует ещё одна граница. GitHub описывает включение партнёрского агента OpenAI Codex отдельно от политик Copilot. Если Codex подключён к GitHub, проверяйте его собственную установку, выданные разрешения и список доступных репозиториев. Чтобы закрыть доступ, отключите или удалите именно эту интеграцию; изменение политики Copilot само по себе этого не гарантирует.

Иными словами, полезно мыслить не названием «ChatGPT GitHub», а таблицей разрешений:

Инструмент Где ограничивать доступ Что можно ограничить
GitHub в ChatGPT Настройки подключённого GitHub App Разрешённые репозитории или всю авторизацию приложения
Copilot cloud agent Политики GitHub для аккаунта, организации или enterprise Все репозитории, выбранные репозитории или отсутствие доступа
Copilot content exclusion Настройки исключений на уровне репозитория, организации или enterprise Конкретные файлы и пути, с оговорками по поверхностям
OpenAI Codex в GitHub Отдельная установка и авторизация партнёрского агента Доступ, выданный именно Codex-интеграции

Как выбрать надёжный вариант

Если нужно закрыть один репозиторий от ChatGPT, изменяйте разрешённые репозитории GitHub App. Если требуется запретить Copilot cloud agent во всей области, используйте No repositories. Если AI-помощник нужен только для части проекта, выбирайте отдельные репозитории, а не политику для всех.

Если нужно скрыть только файлы, сначала проверьте, поддерживает ли нужная поверхность Copilot content exclusion. Для IDE agent mode эта функция не является достаточной гарантией. Секреты и токены в любом случае не должны лежать в репозитории: исключение из AI-контекста не заменяет ротацию утёкшего секрета и нормальную модель управления доступом.

После изменений проверяйте каждую интеграцию отдельно. Отозвали ChatGPT App — это не отключило Copilot. Выбрали No repositories для Copilot — это не отозвало Codex. Добавили путь в content exclusion — это не означает, что он исключён во всех режимах работы Copilot. Граница запрета проходит там, где находится конкретное разрешение.

Источники

Есть следующая задача?Ещё по теме «Codex» →