Как увеличить контекстное окно в Codex
Нейросети / ИИ

Как увеличить контекстное окно в Codex

Увеличить контекст в Codex можно только в пределах, которые одновременно разрешают выбранная модель, модельный каталог клиента, способ входа и сервис OpenAI.

Анастасия Петрова
Анастасия Петрова
Контент-менеджер AI-раздела20 мин

Увеличить контекст в Codex можно только в пределах, которые одновременно разрешают выбранная модель, модельный каталог клиента, способ входа и сервис OpenAI. Для локальных клиентов существует официальный параметр model_context_window, но число в config.toml не отменяет максимальный лимит модели. Поэтому правильный порядок такой: выбрать доступную long-context модель, попробовать настройку на одной новой сессии, проверить фактическое окно через /status, а затем сократить лишний контекст. Для Codex Cloud пользовательского переключателя размера окна и модели сейчас нет.

Материал актуален на 6 сентября 2026 года; примеры синтаксиса дополнительно сверены с локальным codex-cli 0.153.4. Codex быстро развивается, а Desktop и CLI могут включать разные версии движка. Перед экспериментом зафиксируйте codex --version и проверяйте синтаксис для своей сборки через --strict-config.

Что именно называют контекстным окном

Фразой «контекст Codex» часто обозначают шесть разных вещей. Из-за этого паспорт модели на 1,05 млн токенов сравнивают с меньшим числом в /status и принимают разницу за ошибку.

Понятие Что входит Можно ли увеличить
Паспортное окно модели Вход, служебные инструкции, история, вызовы инструментов, результаты и место под продолжение Только выбором модели с большим пределом; выше её hard limit подняться нельзя
Настроенное окно Codex Значение model_context_window, запрошенное локальным клиентом Да, если каталог и сервис разрешают больше текущего значения
Эффективное, или usable, окно Рабочая часть разрешённого окна после системного резерва Косвенно: выбором модели и уменьшением накладных расходов
Активный контекст задачи То, что реально отправляется модели на очередном ходе Да: можно убрать шум, ограничить файлы и результаты инструментов
История после compaction Краткое представление ранних сообщений и действий Можно освободить место, но исходные детали уже не находятся в активном окне целиком
Доступ к репозиторию и внешним данным Файлы на диске, MCP-серверы, подключённые источники и поиск Доступ можно расширить, но сами найденные фрагменты всё равно занимают токены

Токен — фрагмент текста, а не слово и не символ. Один и тот же файл может занимать разное число токенов в зависимости от языка, кода, JSON, повторов и разметки. Изображения тоже имеют стоимость контекста, хотя она не выражается простым подсчётом слов.

Почему паспортное и видимое окно различаются

Для текущих API-моделей OpenAI публикует общий model context window и отдельный maximum output. Codex поверх этого применяет метаданные своего модельного каталога и резервирует часть окна для инструкций, инструментов и ответа. Удобная модель расчёта выглядит так:

разрешённое окно = минимум(запрошенное окно, максимум каталога модели)
usable context = разрешённое окно × доля эффективного контекста

Точная доля приходит в метаданных модели. Её не следует угадывать или жёстко прописывать в рабочей инструкции. Если в /status видно меньше паспортного значения, это ещё не доказывает неисправность: вы можете смотреть на usable context локального Codex, а паспорт относится к API-модели.

В каких версиях Codex можно управлять контекстом

Поверхность Что доступно пользователю Главное ограничение
Codex CLI /model, -m, одноразовые -c, config.toml, /status, /compact, /new, /clear, resume, fork Клиент не может превысить каталоговый и серверный максимум модели
Codex в ChatGPT desktop app, локальная задача Выбор модели в интерфейсе, общий с CLI и IDE config.toml, новая задача, /status Набор команд и версия движка могут отличаться от отдельно установленного CLI
Codex IDE extension Выбор модели и общий локальный config.toml Автоматический IDE context добавляет полезные данные, но тоже расходует окно
Codex Cloud Облачная задача в выбранном репозитории и environment Default model облачных задач сейчас нельзя менять пользовательской настройкой
Собственное приложение через OpenAI API Выбор API-модели, token counting, Responses state, compaction, file search, MCP Отдельная авторизация, отдельный биллинг и собственная оркестрация контекста

Настройки модели в обычном ChatGPT, локальном Codex, Codex Cloud и API не наследуются автоматически между поверхностями. Наличие модели в ChatGPT-подписке не гарантирует доступ к ней по API. И наоборот, API key с доступом к модели не превращает Codex Cloud в настраиваемый API-клиент.

Какие модели дают большое окно

На 6 сентября 2026 года паспорт API у GPT-6 Astra и семейства GPT-5.6 указывает 1 050 000 токенов общего контекста и до 128 000 токенов вывода. Это характеристики API-моделей. Фактический локальный Codex limit нужно смотреть отдельно.

Модель Идентификатор Окно в API-паспорте Max output в API Практический выбор
GPT-6 Astra gpt-6-astra 1 050 000 128 000 Самые сложные многошаговые задачи; доступ зависит от плана и rollout
GPT-5.6 Sol gpt-5.6-sol, alias gpt-5.6 1 050 000 128 000 Глубокая работа с кодом, исследованием и инструментами
GPT-5.6 Terra gpt-5.6-terra 1 050 000 128 000 Баланс качества, скорости и стоимости
GPT-5.6 Luna gpt-5.6-luna 1 050 000 128 000 Узкие повторяемые задачи и высокая скорость

В текущем списке моделей Codex доступны команды запуска и оговорки по тарифам, клиентам и rollout. Если модель отсутствует в /model или picker, запись её имени в конфиг не выдаст недостающий entitlement.

Большое паспортное окно не означает, что его нужно заполнять. Для рефакторинга одного модуля Terra или Luna с точными путями часто эффективнее огромной сессии на старшей модели, в которой смешаны архитектура, логи, переписка и несколько независимых задач.

Как проверить фактический лимит до изменения

Сначала снимите исходные данные. Эти команды ничего не меняют в модели или размере окна:

codex --version
codex login status

Затем запустите новую локальную задачу, выберите модель через /model, отправьте короткий тестовый запрос и откройте /status. Важен status после первого обращения к модели: стартовый экран может показывать предварительные или локально рассчитанные метаданные, а рабочая сессия — фактические данные каталога сервиса.

Зафиксируйте четыре значения:

  • версия клиента;
  • способ входа: ChatGPT или API key;
  • точный model ID;
  • контекст в /status после первого хода.

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

Расширенная диагностика

В текущем CLI есть codex debug models и codex debug prompt-input. Обе команды помечены Experimental, поэтому их интерфейс может измениться.

codex debug models печатает каталог, который видит клиент. Вариант --bundled намеренно показывает только каталог, встроенный в бинарник, без обновления с удалённого endpoint. Это полезно для сравнения, но не доказывает, какой максимум применился к ChatGPT-auth сессии.

codex debug prompt-input показывает model-visible список элементов: инструкции, prompt и изображения. Команда помогает найти незаметно загруженный AGENTS.md, слишком длинный системный префикс или лишнее вложение. Не публикуйте такой JSON без проверки: там могут оказаться внутренние инструкции, пути и фрагменты файлов.

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

Актуальный справочник конфигурации Codex содержит несколько разных регуляторов. Они решают разные задачи.

Ключ Что регулирует Чего не делает Риск неверного значения
model_context_window Запрашиваемое окно активной модели Не превышает model/catalog/server maximum Слишком большое число будет ограничено или не даст ожидаемого результата; слишком маленькое реально уменьшит окно
model_auto_compact_token_limit Порог автоматической compaction Не добавляет токены модели Слишком поздний порог оставит мало запаса; слишком ранний чаще будет сжимать историю
model_auto_compact_token_limit_scope Считать total или прирост body_after_prefix Не меняет hard cap Неподходящий scope меняет частоту compaction
tool_output_token_limit Сколько токенов одного tool result хранить в истории Не меняет длину ответа модели Высокий лимит быстро заполняет окно, низкий обрезает нужные доказательства
mcp_servers.<id>.tools.<tool>.output_token_limit Лимит результата конкретного MCP tool Не ограничивает все остальные tools Можно потерять строки, нужные для диагностики
project_doc_max_bytes Максимальный объём цепочки AGENTS.md Не делает длинные инструкции качественнее Увеличение добавляет постоянный шум в каждую задачу
skills.max_context_tokens Бюджет стартового каталога skills Не ограничивает полный SKILL.md после выбора Слишком низкое значение может скрыть нужные навыки, слишком высокое съедает prompt

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

Безопасная одноразовая проверка

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

codex --strict-config -m gpt-5.6-sol -c model_context_window=1000000 -c model_auto_compact_token_limit=900000

Это условный тест, а не обещание миллиона. После первого сообщения откройте /status. Если окно осталось меньше, сработал потолок каталога, сервиса, тарифа или клиента. Не пытайтесь «исправить» его ещё большим числом.

Лишь после успешного теста можно перенести подтверждённые значения в пользовательский ~/.codex/config.toml. В Windows это обычно файл config.toml внутри .codex в профиле пользователя. Пример:

model = "gpt-5.6-sol"
model_context_window = 1000000
model_auto_compact_token_limit = 900000
model_auto_compact_token_limit_scope = "total"

Запустите новый чат с --strict-config, отправьте тестовый запрос и снова проверьте /status. Существующая сессия может сохранить старую модель и уже собранный контекст.

Почемуconfig_model_context_window не работает

Ключ config_model_context_window не входит в официальный configuration reference. Правильное имя — model_context_window. Также не документированы отдельный флаг --context-window и пользовательские параметры context_length, max_context_window или context_window.

max_context_window встречается в исходном коде и JSON-каталоге модели. Это ограничитель, с которым клиент сравнивает пользовательский override, а не обычная настройка config.toml. Подмена этого поля в собственном каталоге может изменить показания клиента, но не обязана изменить серверный допуск.

Почему настройка на миллион может не сработать

В августе и начале сентября 2026 года в официальном репозитории Codex оставались открытые пользовательские отчёты, где разные клиенты получали для GPT-5.6 Sol каталоговый максимум 272 000 или 872 000 токенов. Эти issues не задают продуктовый контракт, но показывают реальный риск: локальная строка принимается без синтаксической ошибки, затем runtime ограничивает её меньшим max_context_window.

Проверяйте причины по порядку:

Симптом Вероятная причина Что сделать
Модель отсутствует в picker Нет доступа на этом плане, клиенте или rollout Выбрать доступную модель; не редактировать каталог
/status меньше model_context_window Catalog/server clamp или effective reserve Зафиксировать model/auth/version и считать /status рабочим пределом
Сразу после старта число больше, после запроса меньше Удалённый каталог уточнил метаданные Оценивать только runtime после первого хода
Compaction начинается раньше заданного порога Порог ограничен модельным окном и системным запасом Уменьшить ожидания, вернуть model defaults, проверить scope
CLI принимает ключ, Desktop ведёт себя иначе Разные bundled versions или UI capabilities Сравнить версии клиентов и начать новые задачи
--strict-config падает Текущая сборка не знает ключ либо конфиг содержит опечатку Обновить клиент или удалить неизвестный ключ; не отключать проверку ради запуска

Не используйте обходы с редактированием models_cache.json, подменой model_catalog_json, отключением remote catalog или изменением служебного originator. Они относятся к экспериментам с внутренними метаданными, могут исчезнуть после обновления и не снимают серверный hard limit. Большое число на экране ещё не подтверждает успешную обработку такого входа.

Как увеличить полезный контекст без увеличения окна

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

Давайте одну цель и границы

Хороший стартовый prompt отвечает на пять вопросов:

  • какой результат нужен;
  • какие пути и компоненты входят в scope;
  • что менять нельзя;
  • как проверить готовность;
  • при каком условии остановиться и спросить пользователя.

Вместо «разберись с репозиторием и улучши всё» полезнее написать: «Найди причину 500 в app/api/orders, не меняй схему БД, сначала покажи путь запроса, после исправления запусти тесты этого пакета». Точная задача сокращает количество поисковых команд и случайно прочитанных файлов.

ДержитеAGENTS.md коротким и локальным

Codex собирает цепочку AGENTS.md от глобального уровня к текущей директории. Ближайшие инструкции имеют больший приоритет. Общий объём проектных инструкций по умолчанию ограничен 32 KiB.

Не стоит сразу повышать project_doc_max_bytes. Сначала:

  • оставьте в корне только правила, обязательные для всего репозитория;
  • перенесите команды конкретного сервиса в вложенный AGENTS.md рядом с кодом;
  • замените длинные объяснения ссылкой на версионируемый runbook и поручайте читать его только для нужной задачи;
  • удалите дубли, устаревшие команды и общие советы;
  • перезапустите Codex после изменения цепочки инструкций.

Так инструкции для frontend не будут постоянно занимать контекст backend-задачи.

Используйте scoped skills

Skills применяют progressive disclosure: сначала Codex видит название и короткое описание, а полный SKILL.md, references и scripts загружаются после выбора. Это экономнее единого AGENTS.md на сотни строк.

Один навык должен обслуживать один узнаваемый workflow. Например, команды релиза, чек-лист миграции и шаблон отчёта лучше хранить в release-service, а не добавлять во все задачи. Если установлены десятки похожих skills, сократите описания и отключите неиспользуемые: стартовый каталог тоже имеет token budget.

Указывайте файлы, а не вставляйте всё содержимое

В CLI /mention path/to/file прикрепляет файл к чату. Изображения добавляются через -i. Это повышает вероятность, что Codex сразу посмотрит нужный источник, но вложение не бесплатно: его содержимое попадает в model-visible input.

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

Не рассчитывайте на автоматический repo map

Рабочая папка даёт агенту доступ к файлам, но не подтверждает, что весь репозиторий заранее помещён в семантический индекс и активный prompt. В стабильной документации Codex нет обещания встроенного repo map, автоматически удерживающего весь проект.

Codex обычно строит понимание инструментами: просматривает дерево, ищет символы, читает выбранные файлы и запускает команды. Помогите ему сузить поиск:

  • назовите package, сервис и entry point;
  • перечислите каталоги, которые разрешено читать;
  • исключите node_modules, vendor, dist, .next, coverage, minified bundles, generated code и большие fixtures, если они не относятся к проблеме;
  • попросите сначала составить карту зависимостей из имён файлов и импортов, а содержимое читать по необходимости;
  • разделяйте монорепозиторий на задачи по сервисам.

.gitignore сам по себе не является гарантией, что доступный файл никогда не будет прочитан. Явно задавайте scope и ограничения на чувствительные пути.

Ограничивайте результаты инструментов

Один git diff, stack trace, SQL dump или ответ MCP способен занять десятки тысяч токенов. tool_output_token_limit ограничивает, сколько одного результата хранится в истории. Его увеличение сохраняет больше доказательств, но ускоряет заполнение окна.

Лучше сокращать результат в источнике:

  • фильтровать rg по пути и шаблону;
  • выводить последние релевантные строки лога;
  • запрашивать конкретные поля API;
  • ограничивать число результатов retrieval;
  • сохранять полный артефакт в файл и возвращать в чат краткое резюме с путём;
  • задавать индивидуальный output_token_limit только для шумного MCP tool.

Слишком маленький лимит тоже опасен: Codex может не увидеть строку с причиной ошибки. Начинайте с model defaults и меняйте параметр после наблюдаемой проблемы.

Как работают compact, new, clear, resume и fork

Действие Что происходит с историей Когда использовать
/compact в CLI Ранние ходы заменяются кратким summary Цель та же, критические решения уже зафиксированы, нужен запас
/new Создаётся чистый чат в той же CLI-сессии Началась другая самостоятельная задача
/clear Очищается экран и создаётся чистый чат Нужны новый контекст и чистый терминал
codex resume Сохранённая история продолжается Нужно вернуться к той же задаче и её контексту
codex fork или /fork История копируется в отдельную ветку чата Нужно попробовать альтернативу, сохранив общий прошлый путь
Новый worktree Изолируются checkout и Git-состояние Параллельные изменения не должны конфликтовать

Resume и fork не освобождают окно автоматически: они переносят историю. Worktree изолирует файлы, а не токены. Для действительно новой задачи используйте новый чат и передайте короткий handoff.

Что сохранить перед compaction

Попросите Codex обновить небольшой рабочий файл, например work/handoff.md, со следующими полями:

- Цель и критерий готовности
- Scope и запреты
- Проверенные факты и команды
- Принятые решения с причинами
- Изменённые файлы
- Тесты и их фактический результат
- Открытые риски
- Следующее конкретное действие

Файл не расширяет окно, зато даёт проверяемую точку восстановления. После compaction перечитайте его и попросите назвать цель, ограничения и next action. Если summary и файл расходятся, источником истины должен быть утверждённый артефакт и текущее состояние репозитория.

Экспериментальное управление контекстом Astra

Поддерживаемые Codex-клиенты получили экспериментальный режим, в котором Astra хранит заметки между окнами и может искать ранние сообщения и tool results в пределах той же задачи. Он выключен по умолчанию. На 6 сентября 2026 года страница моделей называла ChatGPT Plus и Pro, а configuration reference дополнительно указывал Pro Lite; Business, Enterprise и API-key sign-in в стартовую доступность не входили.

Точный текущий ключ:

features.context_management.experimental_mode = true

После изменения нужна новая задача. Режим не увеличивает физический model context window: он меняет способ продолжения длинной задачи после заполнения окна. Пометьте эксперимент в командном runbook, сравните качество на контрольной задаче и будьте готовы выключить его при регрессии. Доступность может изменяться вместе с rollout; ориентируйтесь на picker, текущие workspace requirements и документацию своей сборки.

Когда нужен MCP или retrieval

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

Подход Польза Цена контекста Риск
Точный локальный поиск Быстро находит символы и пути В окно попадает только вывод команды Широкий шаблон вернёт слишком много строк
File search/RAG Семантически выбирает фрагменты из большого корпуса Токены тратятся на retrieved chunks Устаревший или дублированный индекс даст неверный контекст
MCP Подключает внешнюю систему и действия Схемы tools и результаты занимают prompt Prompt injection, утечка данных, лишние side effects
Ручной handoff-файл Хранит решения между задачами Небольшой файл читается по необходимости Файл нужно обновлять и версионировать

Отключайте неиспользуемые MCP-серверы и оставляйте только нужные tools. Для чувствительных операций сохраняйте approval. Третьесторонний MCP может запросить фрагменты prompt, кода или документов; проверяйте владельца сервера, его политику данных и фактически отправляемые аргументы.

Если вы управляете контекстом через API

API-сценарий отделён от ChatGPT-подписки. Здесь разработчик сам выбирает модель, собирает input и хранит state.

Полезные параметры и методы:

Параметр или метод Назначение Ошибка интерпретации
max_output_tokens Верхний предел видимых и reasoning tokens ответа Не увеличивает input window
previous_response_id Связывает новый ход с предыдущим Response Не делает предыдущую историю бесплатной
truncation: "auto" При переполнении удаляет ранние items Может незаметно убрать важные решения
truncation: "disabled" Возвращает ошибку при превышении окна Требует собственного recovery path
POST /responses/input_tokens Считает входные токены до выполнения Не предсказывает качество и tool growth
POST /responses/compact Возвращает compacted representation для продолжения Это отдельный API endpoint, не CLI /compact
File search с ограничением результатов Добавляет только несколько релевантных фрагментов Слишком много chunks снова раздувает prompt

Для production agent храните структурированный state вне чата: цель, completed steps, IDs, tool outcomes, блокеры и next action. Выполняйте compaction после логического этапа, а не на каждом ходе. Стабильные инструкции располагайте в начале request, динамический retrieval — ближе к концу; это помогает prompt caching.

API-модели GPT-6 Astra и GPT-5.6 тарифицируют запросы с входом свыше 272K по повышенным коэффициентам для всей заявки: input — вдвое, output — в 1,5 раза. Точная цена зависит от модели и даты. Такая ставка не описывает расход ChatGPT credits один к одному.

Как распределить token budget

Универсального процента нет. Для длинной инженерной задачи можно начать с внутреннего бюджета от фактического usable context, а затем измерить расход:

Категория Стартовый ориентир Что туда входит
Постоянные инструкции до 5% System, AGENTS.md, активные skill instructions
Рабочие файлы и retrieval 35–45% Код, спецификации, выбранные документы
Tool results 15–20% Логи, тесты, diff, API/MCP ответы
История решений 15–20% Обсуждение, промежуточные выводы, corrections
Запас не менее 15% Следующий tool loop, compaction и финальный ответ

Это планирование, а не лимиты OpenAI. Если задача регулярно превышает бюджет, не уменьшайте запас до нуля. Разделите работу по milestone: исследование, реализация одного компонента, тестирование, review. Между этапами обновляйте handoff и начинайте новый чат, когда дальнейшая работа не нуждается во всём transcript.

Качество, задержка и стоимость

Большое окно даёт больше потенциально доступных фактов, но повышает три вида издержек:

  • модель должна отличить важное от шума, поэтому растёт риск опереться на устаревший лог или соседнюю спецификацию;
  • огромный input увеличивает обработку и может замедлить каждый следующий ход;
  • в API длинный request стоит дороже, а в Codex-подписке может быстрее расходовать доступную квоту или credits.

Повышение reasoning effort, режимы Max или Ultra, Fast и prompt caching не расширяют контекст. Reasoning влияет на глубину и расход ответа. Ultra добавляет subagents. Fast меняет tier обслуживания. Prompt caching снижает повторную обработку и стоимость подходящего стабильного префикса, но его токены остаются частью логического контекста запроса.

Измеряйте результат на реальной контрольной задаче: число повторных чтений, количество compaction, latency, usage, долю успешных тестов и сохранение ключевых решений. Если миллион токенов не уменьшил ошибки и повторы, меньший, лучше отобранный контекст выгоднее.

Риски безопасности большого контекста

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

Prompt injection

Инструкция может быть спрятана в README зависимости, issue, веб-странице или результате MCP. Модель способна принять её за продолжение задачи и попытаться отправить данные, вызвать лишний tool или изменить scope.

Снижайте риск:

  • подключайте доверенные MCP-серверы и ограничивайте список tools;
  • оставляйте approval для отправки данных и изменений во внешних системах;
  • разделяйте недоверенный контент и управляющие инструкции;
  • разрешайте сеть только для нужных доменов и методов;
  • проверяйте команды, diff и аргументы внешних tool calls;
  • не превращайте текст из сайта или репозитория в instructions без проверки.

Чувствительные файлы

Не добавляйте в контекст .env, приватные ключи, cookies, session logs, production dumps и customer data. Даже если секрет не показан в финальном ответе, он мог попасть во вход модели или аргумент MCP.

Давайте Codex доступ к минимальной рабочей области. Храните секреты вне репозитория, передавайте их инструментам через предназначенные secret stores и маскируйте логи. Перед публикацией debug prompt-input, session JSONL или handoff-файла проверяйте содержимое вручную.

Что делать, если Codex «потерял контекст»

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

Проверка Что ищем Следующий шаг
/status Модель, usage, размер окна, cwd и rate limits Если изменились model или project, вернуться в правильную сессию
git status и git diff Фактические изменения независимо от памяти агента Зафиксировать состояние в handoff, не повторять сделанное
Активные AGENTS.md Правила нужного scope Перезапустить сессию после правки instructions
Последний summary/handoff Пропавшее решение или ограничение Восстановить из файла, а не пересказывать весь transcript
Tool output Обрезанный лог или search result Повторить узкий запрос с нужным диапазоном
Версия и auth Разные каталоги и функции Сравнивать только одинаковые client/auth/model

Если compaction повторяется, а задача не продвигается, остановите цикл. Сохраните цель, diff, тесты и next action в файл, затем начните чистый чат. Новый prompt должен ссылаться на handoff и конкретные файлы, а не копировать всю старую переписку.

Если Codex помнит код, но забывает требования, сократите AGENTS.md до обязательных правил и перенесите изменяемую спецификацию в отдельный документ. Если помнит требования, но повторно читает весь repo, сузьте пути и задайте следующий проверяемый шаг.

Дерево решений

Вопрос Да Нет
Нужно обработать единый документ или кодовый срез, который не помещается? Выберите доступную модель с большим окном и проведите одноразовый тест model_context_window Не меняйте физическое окно; сначала сократите scope
/status подтвердил рост после первого хода? Сравните качество, latency и usage, затем решайте о постоянном config Примите runtime ceiling; не подменяйте каталог
Задача та же, но история почти заполнена? Зафиксируйте решения и используйте /compact Для новой цели используйте /new или /clear
Нужны данные из огромного корпуса? Подключите scoped retrieval/file search/MCP с малым числом результатов Укажите точные локальные пути и символы
Нужны параллельные независимые изменения? Разделите задачи и worktrees; передайте короткие контракты Оставьте одну цель в текущем чате
История важнее чистого окна? Resume или fork с последующей compaction Начните свежую задачу с handoff
Доступен Astra experimental context management? Включайте только как измеряемый эксперимент в новой задаче Используйте обычные summary, handoff и retrieval
В контексте есть внешние или чувствительные данные? Сузьте доступ, approvals и tools до передачи Всё равно не добавляйте лишние секреты

Вывод

У Codex есть реальный пользовательский регулятор model_context_window, но он работает внутри жёсткой цепочки ограничений: model capability → product entitlement → model catalog → effective reserve. Поэтому фактическим доказательством служит /status в новой рабочей сессии после первого хода, а не строка в конфиге и не паспорт API.

Для большинства задач лучший прирост даёт управление effective context: короткий scoped AGENTS.md, узкие skills, точные file mentions, ограниченные tool outputs, handoff между milestones и retrieval вместо загрузки всего корпуса. Compaction продлевает работу, но не гарантирует сохранение каждой детали. Community hacks с подменой каталога не стоит превращать в production-инструкцию.

Автор статьи

Анастасия Петрова — Контент-менеджер AI-раздела
Анастасия Петрова

Контент-менеджер AI-раздела

Отвечает за каталог нейросетей и AI-инструментов. Следит за обновлениями LLM-моделей, тестирует новые сервисы и ведёт раздел бесплатных инструментов.

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

Официальный параметр называется model_context_window. Он задаёт запрашиваемое окно локального Codex, но не может превысить максимум активной модели, каталога и сервиса.

В актуальном справочнике такого ключа нет. Используйте model_context_window и запускайте CLI с --strict-config, чтобы опечатки и неизвестные поля вызывали явную ошибку.

Codex ограничивает override значением max_context_window из активного каталога и оставляет системный резерв. План, rollout, тип входа и версия клиента тоже могут уменьшить доступный максимум. Смотрите /status после первого запроса.

Записать число можно, но оно не расширит hard limit модели. Клиент ограничит его известным максимумом либо сервис отклонит слишком большой input.

Нет гарантии побайтного сохранения. Codex заменяет ранние ходы кратким summary, стараясь удержать критические детали. Важные решения, IDs, тесты и next action лучше заранее записать в handoff-файл.

Обычно нет. Без запаса сессия может упереться в hard limit. Сначала используйте model defaults; меняйте порог только после измерения и оставляйте место для tool results и ответа.

Нет. Эти настройки меняют глубину рассуждения и способ выполнения. Ultra может задействовать subagents, а более высокий effort расходует больше времени и токенов, но физический context window остаётся прежним.

План влияет на доступные модели, квоты и rollout, но не отменяет лимит модели и каталога. API-доступ и оплата API ведутся отдельно от ChatGPT/Codex-подписки.

Не следует так считать. Codex имеет доступ к рабочей области и ищет нужные файлы инструментами. Стабильного обещания полного автоматического semantic repo index в документации нет.

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

Нет. Resume продолжает историю, а fork копирует её в новый чат. Для чистого контекста в CLI используйте /new или /clear и передайте короткий handoff.

Косвенно. Worktree изолирует checkout и изменения, поэтому проще дать одной задаче узкий scope. Само окно модели он не увеличивает.

В Responses API есть endpoint POST /responses/input_tokens. Он считает input до генерации. Дополнительно отслеживайте usage.input_tokens, output и tool growth на каждом ходе.

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

Смотрите также

Поделиться

Комментарии(0)

Оставьте комментарий

Войдите, чтобы присоединиться к обсуждению