Когда в 2022-м OpenAI выпустили десктопное приложение Codex исключительно под macOS, это вызвало понятное раздражение у линуксоидов. Год спустя энтузиаст Илья Лысенко сделал неофициальный порт, и сейчас его репа собирает звезды на GitHub. Я неделю тестил сборку под Ubuntu и Arch — вот что стоит знать перед установкой.
Что под капотом: от Electron до Wayland
Проект использует оригинальный код macOS-приложения, пересобранный под Linux через ряд костылей:
- Патчинг нативных вызовов — заменяем CoreGraphics и прочие macOS-специфичные API на Linux-аналоги через
dlopen-хуки - Рендер через Ozone — в отличие от стандартного Electron, здесь задействована прослойка для корректной работы под Wayland
- Системная интеграция — уведомления, трей, глобальные хоткеи работают через
libnotifyиdbus
На практике это означает, что приложение выглядит и ведет себя как нативный клиент, а не как обертка над web-версией. Но есть нюансы:
# Установка под Arch (понадобится AUR-хелпер)
paru -S codex-desktop-linux
После первого запуска может потребоваться ручная настройка прокси (приложение не всегда подхватывает системные настройки сети). В моем случае на KDE пришлось явно прописать http_proxy в .desktop-файле.
Где Codex Desktop выигрывает у браузера
-
Работа с кодом — в режиме Codex поддерживается контекст сессии, включая историю запросов. На практике это значит, что можно дорабатывать один и тот же кусок кода в нескольких итерациях без постоянного копипаста.
-
Глобальные хоткеи —
Ctrl+Shift+Cвызывает оверлей поверх любого окна. Удобно, когда нужно быстро спросить что-то по коду в IDE без переключения контекста. -
Оффлайн-буфер — при обрыве соединения введенный текст не пропадает (в отличие от веб-интерфейса, где таймаут приводит к потере сессии).
Но главный козырь — локальное кеширование моделей. Приложение агрессивно кеширует ответы, и если вы часто работаете с похожими запросами (например, генерируете boilerplate-код), то повторные запросы могут выполняться мгновенно.
Глюки и ограничения
-
Проблемы с аутентификацией — иногда приложение “забывает” API-ключ после перезапуска. Баг известный, но фикс пока не слили в main.
-
Тормоза на сложных запросах — при генерации длинного кода (100+ строк) интерфейс может подвисать. Это связано с тем, что рендер Markdown в Electron-приложении работает менее эффективно, чем в браузере.
-
Нет плагинов — в отличие от веб-версии, здесь нельзя подключить Code Interpreter или другие экспериментальные фичи OpenAI.
Лайфхак: если приложение зависло, не спешите убивать процесс. В 80% случаев помогает killall -SIGUSR1 codex-desktop — это триггерит мягкий рестарт рендер-процесса.
Для кого этот инструмент?
Если вы:
- ежедневно работаете с GPT для кодогенерации,
- устали от вкладок браузера,
- хотите минимизировать переключение контекста,
то порт стоит попробовать. Но если вам критичны стабильность и доступ к новым фичам OpenAI — пока лучше остаться на веб-версии.
Что попробовать после установки:
- Настроить кастомные промпты через
~/.config/Codex/presets.json - Привязать хоткей для быстрого доступа из IDE
- Поэкспериментировать с локальным кешем — иногда проще подправить закешированный ответ, чем ждать новый
Проект активно развивается, но пока остается фанатским решением. Главный его плюс — он дает почувствовать, каким могло бы быть нативное AI-приложение для разработчиков, если бы OpenAI всерьез занялись Linux-версией.