Привычка вайб-кодера: Codex Desktop на одном мониторе, Claude Code в соседнем терминале, DeepSeek Harness в браузере, Grok — «потом, если квота сгорит». Клавиатура одна, мозгов несколько, контекст разъезжается по окнам. 30 августа в каналах мелькнул репозиторий BytePioneer-AI/codex-host: один UI, несколько агентов, переключил — продолжил. Это зацепка, не инструкция «поставь и забудь Cursor». Канон — README проекта: CodexHost запускает чужие harness внутри официального Codex Desktop. На 1 сентября 2026 у репозитория порядка полутора тысяч звёзд. Это не релиз-ноут OpenAI и не новая модель.

Ниже — зачем вайб-кодеру один шелл на несколько мозгов, чем Host не является, когда он выгоднее отдельных CLI и где начинается путаница контекста. Соседи по теме, не дубли: DeepSeek Harness и кэш префикса, CopilotKit OpenBot, Ollama в Claude Desktop. Про harness под конкретную задачу, а не под окно — отдельно: JIT-Agent.

Что это, и чем не является

Формулировка README короткая. Codex Desktop — сильный десктопный опыт. Codex как harness — не единственный способ исполнять задачу. Часть людей хочет Claude Code или Pi Agent. codexhost даёт выбрать, какой агент реально исполняет работу внутри Codex Desktop, сохраняя нативный шелл: стрим, thinking, статус тулов, диффы, апрувы, вопросы. Переключать приложение не нужно: Pi, Claude Code, Oh My Pi (OMP), Grok Build и DeepSeek Harness сидят независимыми сессиями в том же окне.

Чего в этом абзаце нет — и не будет:

Это слой UI и проекции. Модель по-прежнему та, которую выбранный harness зовёт своим ключом. Окно одно. Биллинг, квоты и sandbox — у каждого вендора свои. Путать «я в Codex Desktop» и «я на квоте Codex» после переключения на Claude — самая дорогая ошибка этой новости.

Быстрый старт из README: пакет @codexhost/cli глобально, команда codexhost. Платформы: macOS, Windows, Linux x64/ARM64. Либо установщик с релизов. Официальный инсталлятор Codex Desktop Host не модифицирует: усиливает десктоп через CDP / Electron Inspector, шелл чата не переписывает. Это важно для головы: ты не ставь «форк Codex». Ты ставишь хост, который проецирует чужие агенты в уже знакомое окно.

Какие агенты в одном окне

Список из README, не выдуманный «ещё Gemini». В одном Codex Desktop:

Таблица статусов в README широкая: стрим, статус тулов, дифф правок, выбор модели/thinking, апрувы, usage, fork, compaction, slash-команды. Не все клетки одинаковые. Permission modes у нативного Codex есть, у Pi в таблице — прочерк. Вопросы/отмена у части связок помечены иначе, чем у Codex. Читай живую таблицу репозитория перед тем, как обещать команде «в Host всё один в один как в CLI». Хост обещает верность проекции, не выравнивание всех продуктов под один набор кнопок.

Отдельно, чтобы не смешать выдачу. Ollama Claude Desktop — другое окно: Claude Desktop, шлюз на локальные модели. OpenBot — self-host коллега с компьютером и AG-UI, не шелл Codex. Cursor — своя IDE и cloud agents. Codex Host не заявляет, что заменяет эти три контура. Он заявляет узкое: чужой harness в окне Codex Desktop.

Почему один UI вообще нужен

Вайб-кодинг ломается не на «какой модели умнее», а на трении переключения. Дифф смотришь в одном месте, апрув тула — в другом, вопрос агента — в третьем. Пока рука ищет окно, критерий задачи выветривается. Один шелл экономит не токены. Он экономит место, где живёт задача: тред, файлы, апрувы, статус.

Практический смысл узкий.

  1. Ты уже живёшь в Codex Desktop. Не хочешь второй GUI «ради Claude на этом репозитории».
  2. Задача разнородная: ревью лучше отдать Claude Code, флейки тестов — Pi, дешёвый проход по файлам — DeepSeek. Не три окна, три треда в одном списке.
  3. Нужна нативная картинка: стрим и дифф как в Codex, не «ACP свёл всё к общему минимуму и потом нарисовал заново».

README прямо противопоставляет свой путь протоколу ACP. Типичный мультиагентный клиент подключает harness через общий знаменатель: тулы, апрувы, диффы сначала ужимают, потом имитируют в UI. Codex Host хочет, чтобы стрим, статус тула, патч, апрув и вопрос шли из самого harness, а не угадывались хостом. Для вайб-кодера это критерий выбора: если тебе важна кнопка апрува «как в родном агенте», Host осмыслен. Если тебе важен изолированный sandbox и ты не доверяешь проекции — оставайся в родном CLI.

Когда Host, когда отдельные CLI

Не надо делать из репозитория религию «теперь всё только здесь».

Имеет смысл Host. Один репозиторий, один рабочий день, несколько мозгов по типу шага. Ревью — Claude Code. Быстрый поиск по дереву — более дешёвый harness. Документация, пока фича пишется — делегирование на OMP, как в примере README. Ты смотришь прогресс в списке тредов Codex Desktop, не прыгаешь по tmux.

Имеет смысл отдельные CLI. Разные квоты надо видеть раздельно и не путать «я в окне Codex» с «я жгу Claude». Нужен permission mode, которого в проекции нет. Нужен чистый минимальный замер модели — тогда DeepSeek Harness в своём пресете, не «как получится в Desktop». Нужна полная изоляция секретов: разные профили, разные машины. Нужен Cursor с PR-подписками — это другой продукт. Нужен локальный инференс в окне Claude — Ollama gateway, не Host.

Правило на одну строку: Host — про клавиатуру и шелл. CLI — про контракт harness с диском и квотой. Если контракт важнее удобства — не переезжай. Если удобство уже стоит тебе потерянных диффов — переезжай точечно, не «все агенты навсегда».

Кросс-агент: делегирование не равно общий мозг

В README (и в релизе 0.4.0) есть кросс-агент. Текущий агент может отдать независимую задачу другому harness. Примеры из документации, не из головы: попроси @claude-code отдельно просмотреть изменение и назвать риски совместимости; попроси @pi разобрать, почему тест падает через раз; попроси @omp делать фичу, пока ты пишешь доку. Хост создаёт отдельную Native Session целевому harness. Делегированный тред появляется в списке разговоров Codex Desktop: открыть, посмотреть прогресс, продолжить.

Слой оркестрации в README отдельный: своя сессия, обычный writable thread, связь делегирования хранится отдельно. Создание и наблюдение результата разведены. Инициирующий агент явно выбирает: читать, ждать или оставить задачу фоном. Это не «все агенты шарят один контекст». Это несколько тредов с явной связью.

Отсюда главный риск, ради которого статья нужна. Один UI создаёт иллюзию одного мозга. На деле:

Путаница контекста выглядит бытово. Ты набросал критерий в Codex, переключил на Claude «пусть добьёт», Claude не видел твой неявный запрет на рефакторинг соседнего пакета и переписал половину. Или наоборот: делегировал ревью, сам пошёл править те же файлы, словил гонку двух диффов. Host не виноват. Виноват рефлекс «окно одно — память одна».

Как не путать контекст в одном окне

Дисциплина, которую можно писать в памятку без вранья про продукт.

  1. Один тред — один критерий готовности. Сменил агента на ту же цель — сформулируй цель заново в этом треде, не «он же видит чат».
  2. Делегирование — на независимую работу, как в README. Ревью, флейки, параллельная фича. Не «продолжи мысль с середины предложения».
  3. Не правь одни файлы руками в двух тредах сразу. Сначала дождись диффа делегата или явно скажи «не трогай пути X».
  4. Квоту смотри там, где она живёт. Claude weekly — не полоска Codex. Про лимиты Claude: как экономить токены и что будет с 14 сентября. Про Codex у нуля — /goal при 0%, не «Host даёт безлимит».
  5. Секреты и prod-approve не размазывай по всем harness «раз окно одно». Проекция тулов — не общая песочница на всю жизнь.

Удалённый harness из README — отдельная ветка, не «ещё кнопка в том же чате». SSH: ставишь тот же codexhost на удалённый macOS/Linux, локально открываешь SSH workspace Codex Desktop, выбираешь harness в remote composer. Обе стороны — одна версия. Windows как управляемый хост идёт другим, экспериментальным путём через официальный Remote Control. Не путай это с «агент в облаке Cursor». Машина чужая, шелл тот же, креды harness остаются на той стороне, где harness стоит.

Чего не обещать команде

Три фразы, которые уже стоят в чатах и которые лучше не тащить в ТЗ.

Если нужен self-host коллега с настоящим браузером и журналом — это OpenBot, не этот репозиторий. Если нужен официальный runtime DeepSeek из плагинов — ставь Harness как Harness, кэш префикса сам не появится от того, что dsh открыт в Desktop. Если нужен локальный Mac как железо под агентов — это уже другая новость недели: OpenAI и Mac mini под RL, не кнопка в Host.

Коротко

Codex Host (BytePioneer-AI/codex-host) — не модель и не замена Cursor. Это хост, который сажает Pi, Claude Code, Oh My Pi, Grok Build и DeepSeek Harness в официальный Codex Desktop: один шелл, независимые сессии, делегирование отдельным тредом. Ставится через @codexhost/cli, инсталлятор Codex не патчит. Выгоден, когда ты уже живёшь в этом окне и меняешь мозг по типу шага. Вреден, если ты путаешь одно окно с одной памятью и одной квотой. Родные CLI не отменяются. Соседи: DeepSeek Harness, OpenBot, Ollama Desktop, JIT-Agent. Витрина — vibe-studio.uk.