Codex Patched
Моя сборка Codex с нативными модулями и управляемыми обновлениями поверх upstream.
Codex Patched — моя сборка Codex с системой нативных модулей. Пересобирать ядро Codex ради каждого изменения в собственных инструментах долго, поэтому их логика вынесена в отдельные библиотеки. Менеджер загружает эти модули и позволяет обновлять их независимо от основного приложения, пока не меняется граница интеграции с ним.
Мне также важно обновлять сам Codex вслед за upstream. Для этого проект берёт официальный prerelease-пакет с готовыми бинарниками и ресурсами, закрепляет исходную ревизию и накладывает патч интеграции модулей. Пересобираются изменённые CLI и code mode host; остальные компоненты остаются из upstream-пакета. При переходе на следующий prerelease патч переносится на новую исходную ревизию и проверяется снова.
Модули и управление ими
Изменённый Codex загружает нативный менеджер. Команда codex modules и раздел /modules в TUI показывают состояние модулей и дают проверить, активировать, отключить или откатить выбранную версию. Установленные библиотеки и выбор активной версии для конкретного профиля — разные шаги: упаковка сама по себе модуль не включает. Запущенный процесс может сохранять уже загруженную версию до нового старта.
Менеджер поставляется вместе с восемью нативными модулями:
| Модуль | Возможность |
|---|---|
| Runway | Оценка запаса контекста и контрольные точки. |
| Session History | Ограниченный доступ к индексу истории Codex. |
| Session State | Снимки и восстановление состояния сессии. |
| Context Hooks | Подсказки на границах контекста. |
| Agent Policy | Проверка запуска агентов по заданной политике. |
| Model Route | Предложение маршрута модели с проверкой host. |
| Approval Guard | Запрет заданных подтверждений инструментов. |
| Statusline | Перенос индикаторов на несколько строк. |
FastCtx подключается отдельно через MCP для работы с локальными файлами; он не является нативным модулем.
Проверяемая поставка
Инструменты сборки связывают CLI и code mode host одной записью сборки с хешами обоих бинарников. Перед упаковкой проверяются хеши подготовленных файлов; выбранные нативные библиотеки тоже сверяются с манифестом. Активация модулей проверяет пакет и каталог возможностей, а при неудачном переключении восстанавливает прежний выбор профиля. Упаковка сама по себе не включает модули в установленных копиях Codex.
Кроме системы модулей, в проекте есть практические исправления: повтор запросов при временной нехватке мощности модели, проверка перезапуска управляемого daemon и доработки desktop bridge. Это отдельные возможности сборки; её основу составляют независимые модули и способ обновлять Codex поверх upstream.