Паттерны рабочего процесса Codex

Codex можно интегрировать в различные рабочие процессы разработки — от повседневного написания кода до сложного рефакторинга, что значительно повышает эффективность.


Ежедневный рабочий процесс разработки

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

Этапы рабочего процесса

ШагиДействиеВзаимодействие с Codex
1Уточнение требованийОпишите функциональность, которую вы хотите реализовать
2Анализ CodexCodex понимает структуру проекта и соглашения
3Обсуждение решенияСогласуйте подход к реализации с Codex
4Генерация кодаCodex пишет код и изменяет файлы
5Проверочное тестированиеЗапустите тесты, чтобы убедиться в корректности функциональности
6Итеративная оптимизацияСкорректируйте код на основе обратной связи

Пример: добавление нового эндпоинта API

Ежедневный процесс разработки

# Шаг 1: Опишите требования
"Добавьте GET-эндпоинт по пути /api/users, который возвращает список пользователей,
Поддерживает параметры пагинации page и limit


# Шаги 2-3: Codex анализирует и подтверждает план
Codex проанализирует существующую структуру API и подтвердит:
- Места определения маршрутов
- Методы запросов к базе данных
- Спецификации формата ответа

# Шаг 4: Генерация кода
Codex автоматически создаёт:
- Определения маршрутов
- Логика запросов к данным
- Обработка ошибок
- Форматирование ответа

# Шаг 5: Проверочное тестирование
"Запустите тесты и проверьте новую конечную точку"

# Шаг 6: Итеративная оптимизация
"Добавьте поддержку кэша; время отклика должно быть меньше 100ms"

Рабочий процесс понимания кода

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

Исследовательский рабочий процесс

  1. Начните с точки входа и позвольте Codex объяснить общую архитектуру
  2. Постепенно погружайтесь в ключевые модули, чтобы понять основную логику
  3. Отслеживайте поток данных и цепочки вызовов
  4. Обобщите ключевые моменты и важные соображения

Понимание устаревших проектов

# Общая архитектура
"Проанализируйте общую архитектуру этого проекта, объясните основные модули и их взаимосвязи"

# Основные модули
"Объясните, как работает модуль src/auth, включая процесс аутентификации и проверки прав доступа"

# Трассировка потока данных
"Проследите полный поток от запроса до ответа после входа пользователя"

# Ключевое резюме
"Обобщите основные паттерны проектирования этого проекта и области, требующие внимания"

Быстрое освоение новых проектов

Руководство по началу работы с новыми проектами

# Обзор проекта
"Что это за проект? Каковы его основные возможности и технологический стек?"

# Руководство по разработке
"Как запустить локальную среду разработки? Как запускать тесты?"

# Стандарты кода
"Каковы стандарты кода для этого проекта? Какие есть соглашения?"

# Навигация по модулям
Какие файлы следует изменить, чтобы добавить функцию X?

Рабочий процесс рефакторинга

Рефакторинг требует осторожного обращения; Codex может помочь вам систематически улучшать структуру кода.

Принципы рефакторинга

  • Сначала поймите существующую структуру кода
  • Рефакторите небольшими шагами, улучшайте постепенно
  • Проверяйте на каждом шаге, чтобы убедиться, что функциональность остаётся неизменной
  • Поддержание покрытия тестами

Этапы процесса рефакторинга

ШагиОписание
Выявление проблемCodex анализирует код и выявляет области, требующие улучшения
Разработка планаОбсуждение плана рефакторинга, подтверждение направления улучшений
Пошаговое выполнениеВнесение небольших изменений, проверка после каждого изменения
Тестирование и проверкаЗапуск всех тестов для проверки корректности функциональности
Очистка и оптимизацияУдаление избыточного кода, оптимизация именования

Пример рефакторинга

# Выявление проблем
Проанализируйте модуль src/utils, выявите дублирование кода и нерациональные проектные решения

# Составление плана
Обсудите, как рефакторить этот модуль, сохраняя обратную совместимость

# Пошаговое выполнение
Шаг 1: Выделите общие функции в utils/common.py

# Тестирование и проверка
Запустите все тесты, чтобы убедиться, что рефакторинг не нарушил функциональность

# Переход к следующему шагу
Шаг 2: Упростите сложные функции, разделив их на более мелкие единицы

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


Процесс исправления ошибок

Codex поможет быстро найти и исправить ошибки.

Процесс исправления

ШагиДействие
Опишите проблемуОпишите симптомы ошибки и условия её возникновения
Предоставьте информациюПоделитесь сообщениями об ошибках, логами и скриншотами
Найдите первопричинуCodex анализирует и находит первопричину
Сгенерируйте исправлениеCodex предлагает исправление
Проверьте исправлениеЗапустите тесты, чтобы убедиться, что проблемы устранены
Предотвращение повторенияДобавьте тесты, покрывающие этот сценарий

Пример исправления ошибки

# Опишите проблему
Пользователи иногда сталкиваются с ошибками 500 при входе в систему, и журнал ошибок показывает:
TypeError: Cannot read property 'id' of undefined"


# Предоставьте информацию
Вот полный стек ошибки: [вставьте информацию о стеке]

# Найдите первопричину
После анализа Codex обнаружил проблему: объект user в некоторых случаях равен null

# Сгенерируйте исправление
Исправьте эту проблему и убедитесь, что она не влияет на обычный процесс входа

# Проверка исправления
Запустите все тесты, связанные со входом в систему

# Предотвращение повторения
"Добавьте тест, покрывающий сценарий, в котором объект пользователя равен null"

Отладка с помощью скриншотов

Используйте скриншоты, чтобы помочь Codex понять проблему:

Ввод изображений

# Прикрепить скриншот в CLI
codex -i error-screenshot.png "Объясните эту ошибку и исправьте её"

# Вставить скриншот в IDE
Вставьте скриншот прямо в диалог и опишите проблему

Рабочий процесс проверки кода

Codex может проверять изменения кода, выявлять проблемы и предлагать улучшения.

Режим проверки

ModeСпособ запускаПрименимые сценарии
Режим проверкиВключить в приложенииПроверить незакоммиченные локальные изменения
команда /reviewИспользовать в CLI/IDEПроверить изменения в указанной области
Интеграция с GitHub@codex review в PRПроверить Pull Request

Локальная проверка

Режим проверки

# Включить режим проверки в приложении
Нажмите на значок глаза на панели инструментов

# Или используйте это в CLI
/ревью

# Укажите область проверки
/review src/auth/

# Проверка конкретных коммитов
/review HEAD~3..HEAD

Настройте фокус проверки

Укажите фокус проверки

# Проверка безопасности
/review на предмет проблем безопасности

# Проверка производительности
/review на предмет регрессий производительности

# Стиль кода
/review на предмет согласованности стиля кода

# Комплексная проверка
/review --detailed

Рабочий процесс написания тестов

Codex может помочь вам писать и поддерживать тестовый код.

Тестирование новой функции

Написание тестов

# Напишите тесты для новой функции
"Напишите модульные тесты для GET-эндпоинта src/api/users.py,
покрывающие нормальные ответы, пустой список, границы пагинации и другие сценарии"


# Проверка тестов
"Запустите только что написанные тесты"

# Дополните покрытие
"Проверить покрытие тестами и дополнить непокрытые граничные случаи"

Исправить тесты

Исправить падающие тесты

# Анализ падающих тестов
"Тест test_user_login не прошёл; проанализируйте причину и исправьте его"

# Пакетное исправление
"Запустите все тесты и исправьте падающие тесты"

Рабочий процесс генерации документации

Codex может помочь генерировать и обновлять документацию.

Сгенерировать документацию

Генерация документации

# Документация API
"Сгенерируйте документацию API для модуля src/api, включая форматы запросов и ответов для каждого эндпоинта."

# Обновление README
"Обновите README.md, добавив описания и примеры использования новых функций."

# Встроенные комментарии
"Добавьте комментарии к сложным функциям, поясняющие ключевую логику."

Лучшие практики

Выбор рабочего процесса

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

Советы по эффективности

  • Используйте AGENTS.md для определения соглашений проекта, сокращая повторяющиеся инструкции
  • Используйте Skills для инкапсуляции типовых рабочих процессов
  • Используйте Worktree для изоляции разных задач
  • Настройте разумную политику Approval

ЧАВО

В: Как справляться с крупномасштабным рефакторингом?

Используйте режим /plan, чтобы создать пошаговый план и проверять после каждого шага.

В: Как предотвратить повторное появление ошибок после исправления?

Добавьте отдельные тесты для покрытия этого сценария и добавьте соответствующие правила проверки в AGENTS.md.

В: Как помочь Codex понять соглашения проекта?

Создайте файл AGENTS.md, чтобы определить технологический стек проекта, соглашения о коде, требования к тестированию и т. д.

В: Как результаты ревью передаются команде?

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

Другие расширения