COMRAD404 / HOWTO

Как использовать ChatGPT для отладки кода

Пошаговая инструкция по отладке кода в ChatGPT: когда использовать code blocks, Codex, GitHub connector, Work with Apps на macOS и Data analysis, как запросить патч и как проверить его до применения.

Понадобится

20–40 минут
  • Аккаунт ChatGPT с доступом к нужным функциям в рамках вашего плана
  • Фрагмент кода, файлы проекта или собственный репозиторий для отладки
  • Для GitHub connector: доступ к собственному репозиторию GitHub
  • Для маршрута Work with Apps on macOS: ChatGPT for macOS, совместимый Mac, права Accessibility; для VS Code нужна extension
  • Для Data analysis: логи, CSV или другие данные, если баг проявляется в результатах вычислений

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

Короткий ответ. Для небольшого фрагмента кода используйте code blocks. Для репозитория, запуска тестов, команд и проверки изменений используйте Codex. Если нужно только читать собственный код из GitHub и задавать по нему вопросы, подключайте GitHub connector. Если вы работаете локально в IDE на macOS и хотите просматривать diff перед применением правок, используйте Work with Apps on macOS. Для логов, CSV и Python-анализа полезен Data analysis.

Редакционное ограничение. Доступность ChatGPT Work, Codex, GitHub connector и Work with Apps зависит от плана, платформы, региона и поэтапного rollout. Если вы не видите описанный режим в своём аккаунте, это может быть ограничением доступа, а не пропущенным шагом. Точные лимиты и стоимость нужно сверять на официальной странице pricing.

Сводка

  • Время: 20–40 минут
  • Сложность: средняя
  • Стоимость: зависит от плана ChatGPT и доступных функций; сверяйте на официальной странице pricing
  • Что потребуется: аккаунт ChatGPT; кодовый фрагмент, файлы или репозиторий; для GitHub connector — доступ к собственному репозиторию; для macOS-маршрута — ChatGPT desktop app, совместимый Mac и права Accessibility
  • Актуальность: инструкция сверена по официальной справке OpenAI на 2026-08-17; для macOS функция Work with Apps с редактированием открытых файлов указана для ChatGPT for macOS 1.2025.057 и новее; в release notes от 2026-07-16 зафиксированы глобальный переключатель между ChatGPT и Codex и синхронизация Work между web, mobile и desktop

Какой режим выбрать для вашей задачи

Режим Когда использовать Что важно знать
Code blocks in ChatGPT Нужно быстро разобрать отдельный фрагмент, стек-трейс или функцию Блоки кода можно редактировать, копировать, открывать на весь экран и просить ChatGPT изменить их прямо в чате
Codex Нужна отладка в контексте репозитория, запуск тестов и команд, проверка изменений Codex предназначен для написания и отладки кода, запуска тестов и команд, проверки изменений и работы с репозиториями; лимиты и доступ зависят от плана; отдельный выбор Codex недоступен в web/mobile
GitHub connector Нужно задать вопрос по собственному репозиторию, найти фрагмент и получить ссылку на него Подключение к репозиториям работает только на чтение; доступность зависит от плана и варианта опыта
Work with Apps on macOS Вы редактируете локальные файлы в IDE и хотите увидеть diff перед применением Только macOS; нужны права Accessibility; для VS Code нужна extension; редактирование доступно только в IDE
Data analysis Нужно разбирать логи, таблицы, CSV, результаты тестов или делать Python-анализ Работает в stateful notebook; нужно проверять сгенерированный код, выводы и допущения; внешние web-request и API calls недоступны

Практический вердикт. Начинайте с code blocks только для изолированного куска кода. Как только баг зависит от структуры проекта, тестов, команд или нескольких файлов, переходите в Codex или в локальный маршрут через Work with Apps on macOS. GitHub connector полезен для чтения и навигации по репозиторию, но не для записи изменений.

Пошагово: как использовать ChatGPT для отладки кода

  1. Шаг 1. Выберите один канал отладки под текущую задачу.

    Не смешивайте режимы в начале. Если у вас есть только функция и текст ошибки, начните с code blocks. Если нужно проверить несколько файлов, запустить тесты или команды, используйте Codex. Если нужен только доступ к собственному коду из GitHub без локального окружения, подключите GitHub connector. Если вы уже держите файл открытым в IDE на macOS, используйте Work with Apps. Если проблема видна в логах или табличных данных, отправьте их в Data analysis.

    Ожидаемый результат: вы понимаете, где именно будете отлаживать задачу и не тратите время на неподходящий режим.

  2. Шаг 2. Сократите проблему до минимального воспроизводимого контекста.

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

    Контекст для отладки:
    - Язык и стек: ...
    - Что ожидалось: ...
    - Что происходит сейчас: ...
    - Как воспроизвести: ...
    - Текст ошибки или симптом: ...
    - Последнее изменение перед багом: ...
    - Какие ограничения важны: не менять API, не трогать БД-схему, не делать рефакторинг

    Ожидаемый результат: у вас есть короткий, но проверяемый набор входных данных для модели.

  3. Шаг 3. Передайте контекст в выбранный режим, а не в абстрактный чат.

    Здесь важно использовать режим по назначению.

    • Для code blocks: вставьте фрагмент кода прямо в чат как блок кода. При необходимости откройте его на весь экран, отредактируйте и попросите ChatGPT изменить его прямо в чате.
    • Для Codex: в desktop app откройте приложение, выберите ChatGPT или Codex, затем Chat или Work, добавьте файлы или контекст и только после этого переходите к исправлению. Desktop app объединяет Chat, Work и Codex. Если вы работаете из web/mobile, учитывайте, что отдельный выбор Codex там недоступен.
    • Для GitHub connector: подключите GitHub к ChatGPT и задавайте вопросы по собственному репозиторию. Этот путь подходит для чтения кода, получения фрагментов и ссылок на них, но не для записи правок в репозиторий.
    • Для Work with Apps on macOS: откройте нужный файл в IDE, проверьте, что у приложения есть права Accessibility, и дайте ChatGPT доступ к рабочему контексту приложения. В этом режиме модель может редактировать открытые файлы в IDE напрямую и показать diff для проверки и применения. Для VS Code нужна extension.
    • Для Data analysis: загрузите логи, CSV или другие данные, если баг проявляется в вычислениях, статистике или результатах обработки. Помните, что это Python notebook без внешних web-request и API calls.

    Ожидаемый результат: модель видит ровно тот код, файл, репозиторий или данные, которые относятся к багу.

  4. Шаг 4. Сначала попросите диагностику, а не исправление.

    Это самый полезный приём, если вы хотите использовать ChatGPT как помощника по отладке, а не генератор случайного патча. Попросите модель назвать вероятные причины и указать, что проверить в первую очередь. Такой порядок ближе к code review и critique-подходу. Исследование OpenAI о model critiques поддерживает использование критики как полезного режима для поиска багов.

    Сначала не исправляйте код.
    1) Назовите 3 наиболее вероятные причины бага.
    2) Для каждой причины скажите, какой признак в коде или логах это подтверждает.
    3) Если контекста мало, задайте до 5 уточняющих вопросов.
    4) Не предлагайте рефакторинг, пока не локализуете проблему.

    Если модель сразу начинает переписывать полмодуля, остановите её и верните к диагностике. На этом шаге ваша цель — получить гипотезы, а не красивый ответ.

    Ожидаемый результат: у вас есть короткий список причин, которые можно проверить, и исчезает соблазн чинить не тот слой системы.

  5. Шаг 5. Запросите минимальный патч и объяснение изменений.

    Когда причина локализована, попросите не новый вариант файла, а минимальное исправление. Для code blocks модель может предложить изменённый блок прямо в чате. Для Work with Apps на macOS вы сможете увидеть diff перед применением. Для Codex важно просить проверяемую и узкую правку, а не широкий рефакторинг.

    Дайте минимальное исправление.
    - Не переписывайте модуль целиком.
    - Покажите только изменённые строки или diff.
    - Объясните, почему это исправляет баг.
    - Перечислите, что может сломаться после такой правки.
    - Напишите, какие существующие тесты или команды надо запустить после изменения.

    Если у вас GitHub connector, используйте его только для чтения нужных мест в репозитории и обсуждения патча. Само изменение придётся вносить в IDE, в Codex или другим способом, потому что connector работает read-only.

    Ожидаемый результат: вы получаете точечный патч, который можно осмысленно проверить построчно.

  6. Шаг 6. Проверьте исправление в том же контексте, где возник баг.

    Не считайте задачу решённой после первого правдоподобного ответа. Проверка зависит от режима:

    • В Codex: попросите запустить ваши существующие тесты или нужную команду проекта, затем оцените результат и изменения.
    • В Work with Apps on macOS: просмотрите diff, примите его только после проверки и затем прогоните локальный сценарий воспроизведения или тесты в IDE/терминале.
    • В code blocks: вручную перенесите патч в проект и запустите обычную локальную проверку.
    • В Data analysis: проверьте сгенерированный Python-код, вывод, таблицы и допущения, прежде чем принимать выводы как факт.
    • В GitHub connector: проверьте, что модель сослалась на правильные фрагменты репозитория, и уже после этого перенесите исправление в рабочую среду.
    Проверь исправление.
    1) Выполни существующую проверку проекта или сценарий воспроизведения.
    2) Скажи, прошла ли проверка.
    3) Если нет, предложи следующую минимальную правку, а не полный рефакторинг.
    4) Отдельно перечисли побочные эффекты, которые ещё надо проверить вручную.

    Ожидаемый результат: у вас есть объективный сигнал pass/fail, а не только уверенный текст модели.

  7. Шаг 7. Примите или отклоните патч по результатам проверки.

    Если проверка прошла и diff выглядит узким, примените исправление. Если проверка не прошла, не расширяйте задачу сразу до переписывания архитектуры: вернитесь к шагу диагностики и уточните симптомы, последние изменения или пограничные случаи. После принятия патча сохраните удачный prompt и краткое объяснение причины бага. Это поможет повторно использовать workflow в следующих задачах и затем ускорить документацию изменений, например через инструкцию как использовать AI для генерации документации кода.

    Ожидаемый результат: исправление либо осознанно принято и проверено, либо отклонено без накопления случайных правок.

Как проверить, что всё работает

  • Баг воспроизводился до правки и перестал воспроизводиться после неё тем же способом.
  • Патч минимален: вы видите узкий diff или небольшой набор изменённых строк, а не переписанный модуль без необходимости.
  • Для сценариев с репозиторием пройдена ваша существующая проверка: тест, команда сборки, линтер, сценарий запуска или другой уже принятый в проекте контроль.
  • Если вы использовали Data analysis, вы просмотрели сгенерированный Python-код, результаты вычислений и допущения, а не доверились только текстовому выводу.
  • Если вы использовали GitHub connector, цитаты и ссылки указывают на нужный репозиторий и нужный фрагмент, а не на похожее место.
  • Если вы использовали Work with Apps on macOS, diff просмотрен до применения и соответствует той причине бага, которую вы локализовали на шаге диагностики.

Если хотя бы один из пунктов не выполняется, считайте отладку незавершённой.

Частые ошибки и исправления

  • Ошибка: ChatGPT сразу переписывает большой кусок проекта.
    Исправление: верните задачу к диагностике и попросите только минимальный патч или diff. Явно запретите рефакторинг и полную перезапись модуля.
  • Ошибка: модель предлагает правку без знания проектного контекста.
    Исправление: передайте код через правильный канал: файлы или контекст в Chat/Work/Codex, read-only доступ к репозиторию через GitHub connector, локальный файл в IDE через Work with Apps.
  • Ошибка: исправление выглядит убедительно, но баг остаётся.
    Исправление: вернитесь к минимальному сценарию воспроизведения и проверьте, что вы дали модели точный текст ошибки, ожидаемое поведение и последнее изменение перед регрессией.
  • Ошибка: на macOS ChatGPT не применяет правки к открытому файлу.
    Исправление: проверьте, что у вас ChatGPT for macOS 1.2025.057 или новее, выдали права Accessibility, работаете в поддерживаемой IDE, а для VS Code установлена нужная extension.
  • Ошибка: вывод Data analysis выглядит аккуратно, но ему нельзя доверять.
    Исправление: проверьте сгенерированный Python-код, промежуточные результаты и допущения. Помните, что внешние web-request и API calls в этом режиме недоступны, поэтому модель не проверяет внешние источники автоматически.
  • Ошибка: вы ждёте, что GitHub connector сам изменит репозиторий.
    Исправление: используйте connector для чтения кода, поиска фрагментов и ссылок. Для фактических правок переходите в IDE, Codex или другой режим записи.

Безопасность и ограничения

  • План и лимиты. Доступ к Work, Codex, GitHub connector и связанным возможностям зависит от плана и может меняться. Точные лимиты, shared usage pool и стоимость нужно сверять по официальным страницам OpenAI.
  • Платформа. ChatGPT Work доступен в web и mobile для подходящих платных планов, а в desktop app — если это включено в план. Отдельный выбор Codex в web/mobile недоступен.
  • macOS-маршрут. Локальное редактирование через Work with Apps подтверждено для macOS. Для ChatGPT macOS app в исходниках указаны требования macOS 14 и совместимый Mac на Apple Silicon M1 или новее, либо Intel. В source pack нет достаточного подтверждения аналогичного маршрута для других настольных ОС, поэтому здесь инструкция ограничивается macOS.
  • Права доступа. Для Work with Apps нужны права Accessibility. Не включайте их на неподготовленной рабочей станции без понимания корпоративных правил доступа.
  • Read-only доступ к GitHub. GitHub connector для репозиториев работает только на чтение. Это безопаснее для навигации, но не заменяет среду, где вы реально вносите правки.
  • Проверка кода обязательна. OpenAI прямо предупреждает проверять сгенерированный код, выводы и допущения, особенно в Data analysis. Это практическое правило стоит распространить на любые патчи, полученные от модели.

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

Что делать дальше

Источники

Вопросы и ответы

Можно ли отлаживать код в ChatGPT без доступа к репозиторию?

Да. Для небольших задач достаточно code blocks в чате. Если баг проявляется в логах, CSV или вычислениях, можно использовать Data analysis. Но для проектных проблем, где нужен запуск тестов и несколько файлов, одного фрагмента часто недостаточно.

Что выбрать: code blocks или Codex?

Code blocks подходят для отдельных функций, коротких стек-трейсов и быстрых правок в чате. Codex лучше использовать там, где нужен контекст репозитория, запуск команд и тестов, проверка изменений и более полноценная работа с кодовой базой.

Может ли GitHub connector сам изменить мой репозиторий?

Нет. По официальной справке доступ к репозиториям через GitHub connector работает только на чтение. Он полезен для вопросов по коду, получения фрагментов и ссылок, но не для записи изменений.

Можно ли доверять выводу Data analysis при разборе логов?

Только после проверки. OpenAI прямо указывает, что нужно проверять сгенерированный Python-код, выводы и допущения. Кроме того, в этом режиме недоступны внешние web-request и API calls.

Работает ли локальное редактирование файлов в IDE не только на macOS?

В supplied source pack подтверждён маршрут Work with Apps именно для macOS, включая требования к версии приложения и Accessibility-права. Для других настольных ОС в этом пакете нет достаточного подтверждения, поэтому инструкция не делает более широких выводов.

Шаги

HOW-TO
  1. Выберите подходящий режим отладки

    | Используйте code blocks для небольших фрагментов, Codex для репозитория и запуска тестов или команд, GitHub connector для чтения собственного кода, Work with Apps на macOS для локальной IDE, Data analysis для логов и табличных данных.

  2. Соберите минимальный воспроизводимый контекст

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

  3. Передайте код или данные в выбранный канал

    | Вставьте код как code block, добавьте файлы или контекст в Chat/Work/Codex, подключите GitHub для вопросов по репозиторию, откройте файл в IDE на macOS или загрузите данные в Data analysis.

  4. Сначала запросите диагностику

    | Попросите ChatGPT назвать вероятные причины бага и признаки, которые их подтверждают. Не переходите к исправлению, пока проблема не локализована.

  5. Запросите минимальный патч

    | Попросите показать только изменённые строки или diff, объяснить причину исправления и перечислить риски и проверки после изменения.

  6. Проверьте исправление в том же контексте

    | В Codex запустите существующие тесты или команды, в macOS-маршруте просмотрите diff и затем проверьте сценарий воспроизведения, в Data analysis проверьте Python-код, вывод и допущения.

  7. Примите или отклоните патч по результатам проверки

    | Применяйте только подтверждённые правки. Если проверка не прошла, вернитесь к диагностике и уточните контекст вместо расширения задачи до полного рефакторинга.

Источники

SOURCES

Вопросы и ответы

FAQ
Можно ли отлаживать код в ChatGPT без доступа к репозиторию?

Да. Для небольших задач достаточно code blocks в чате. Если баг проявляется в логах, CSV или вычислениях, можно использовать Data analysis. Но для проектных проблем, где нужен запуск тестов и несколько файлов, одного фрагмента часто недостаточно.

Что выбрать: code blocks или Codex?

Code blocks подходят для отдельных функций, коротких стек-трейсов и быстрых правок в чате. Codex лучше использовать там, где нужен контекст репозитория, запуск команд и тестов, проверка изменений и более полноценная работа с кодовой базой.

Может ли GitHub connector сам изменить мой репозиторий?

Нет. По официальной справке доступ к репозиториям через GitHub connector работает только на чтение. Он полезен для вопросов по коду, получения фрагментов и ссылок, но не для записи изменений.

Можно ли доверять выводу Data analysis при разборе логов?

Только после проверки. OpenAI прямо указывает, что нужно проверять сгенерированный Python-код, выводы и допущения. Кроме того, в этом режиме недоступны внешние web-request и API calls.

Работает ли локальное редактирование файлов в IDE не только на macOS?

В supplied source pack подтверждён маршрут Work with Apps именно для macOS, включая требования к версии приложения и Accessibility-права. Для других настольных ОС в этом пакете нет достаточного подтверждения, поэтому инструкция не делает более широких выводов.

Читайте также

LINKS