Как Jason Liu использует Codex

Jason Liu показывает, как Codex превращается из coding agent в рабочую среду для долгих задач, памяти, артефактов и автоматизаций

Jason, сотрудник OpenAI, написал большой пост Codex-maxxing про то, как он сейчас использует Codex. Самое интересное в нем — описание нового рабочего паттерна: агент постепенно становится средой, в которой у задач появляется память, состояние, артефакты и собственный цикл выполнения.

Он использует Codex для knowledge work, презентаций, заметок, мониторинга, коммуникаций, браузерных действий и долгих рабочих потоков, которые можно оставить работать и вернуться к ним позже.

Ниже — краткий разбор по секциям: что именно он делает и почему это меняет способ работы с агентами.

Durable threads

Первая идея — долгоживущие треды. Jason держит закрепленные треды под важные рабочие направления: отдельный тред под Chief of Staff, отдельные под Agents SDK, OpenAI CLI, open source и мониторинг Twitter. Такие диалоги становятся рабочими пространствами, которые месяцами накапливают историю, решения и предпочтения.

Ключевой механизм здесь — compaction. Длинный тред можно продолжать использовать, потому что он не обязан бесконечно раздуваться в сырой переписке. Он пережимается, но остается узнаваемым рабочим контекстом.

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

Voice input

Голосовой ввод для Jason ценен тем, что позволяет передать агенту более сырую версию мышления. Мы часто не печатаем неуверенные, обрывочные, контекстные мысли, потому что это долго и неловко. Но сказать голосом: “там в Slack кто-то что-то писал, кажется Ben, сходи найди” — естественно.

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

Голос увеличивает количество контекста, который попадает в Codex. Агент получает финальный запрос вместе с путем, по которому человек к нему пришел.

Steering

Steering — это возможность добавлять следующие инструкции, пока агент еще работает. Jason описывает это как непрерывное управление задачей: он может смотреть сайт и по ходу говорить, что уменьшить, где неправильный copy, где сломаны отступы, что после этого нужно открыть PR, дождаться preview deploy и отправить ссылку ревьюеру.

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

Единицей работы становится управляемый операционный цикл, в который можно добавлять intent по мере наблюдения.

Memory

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

Его основной паттерн — Obsidian vault с AGENTS.md, папками для людей, проектов, заметок и открытых задач. Репозитории хранят код, а vault хранит контекст работы: кто что предпочитает, какие решения были приняты, какие loop’ы закрыты, что сейчас ждет ответа.

Отдельно важен Git. Если агент обновляет vault, diff становится способом ревью памяти. Можно увидеть, что именно агент решил запомнить, и поправить это, если он неверно понял важность или смысл.

Хорошая память агента в таком подходе живет в проверяемых файлах, которые переживают тред, compaction и смену контекста.

Computer and Browser Use

Он разделяет несколько типов поверхностей, с которыми может работать Codex. Локальный browser нужен для инспекции и аннотирования web UI. Chrome полезен там, где нужен залогиненный браузер и несколько вкладок. Computer use нужен для задач, которые существуют только в GUI.

Если агент должен работать с Twitter в Safari, он может занять весь Safari. Если нужна параллельная работа в авторизованных вкладках, удобнее отдать ему Chrome. Если задача живет в десктопном приложении или в месте, где нет нормального API, приходится идти через computer use.

Сюда же попадают connectors и skills. Slack, Gmail, Calendar — это реальные входящие каналы работы. Skills превращают повторяемые успешные сценарии в переиспользуемые workflow, чтобы не объяснять агенту одно и то же заново.

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

Remote control

Remote control делает долгие циклы переносимыми. Codex может продолжать работать на компьютере, где уже есть файлы, доступы и локальная настройка, а человек может проверять прогресс с телефона: ответить на вопрос, поменять направление, одобрить следующий шаг.

Это особенно полезно для задач, которые уже в работе. Ты начал процесс за рабочим столом, ушел, а потом разблокировал его с телефона в момент, когда агент дошел до развилки.

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

Heartbeats

Pinned threads все еще пассивны: они ждут, пока ты вернешься. Heartbeats добавляют повторяемость. Тред может сам просыпаться по расписанию, проверять состояние внешнего мира и продолжать цикл до достижения условия.

Jason приводит несколько сценариев.

Chief of Staff

Каждые 30 минут агент проверяет Slack и Gmail, ищет сообщения, которые требуют внимания, приоритизирует их и готовит черновики ответов. Он не отправляет сообщения сам, но делает дорогую часть работы: собирает контекст и предлагает готовую реакцию.

Heartbeat превращает inbox triage из ручной проверки в регулярный подготовительный слой. Человек остается финальным decision maker, но приходит уже к подготовленному контексту.

Monitor for feedback

Другой сценарий — мониторинг обратной связи. Агент может проверять комментарии в Google Docs, PR, Slack thread или другом канале, а затем продолжать работу, когда feedback появился.

Самый интересный пример у Jason — анимационный проект: он опубликовал видео в Slack, Codex проверял Slack, находил комментарии, ререндерил новую версию и публиковал ее обратно. Когда Slack MCP не мог загрузить файл, агент использовал computer use и загрузил артефакт через GUI.

Мощь появляется на пересечении инструментов. Heartbeat следит за сигналом, connector читает feedback, локальный инструмент производит новый артефакт, computer use закрывает недостающую операцию.

Get a refund

Еще один пример — возврат денег за украденную посылку. Вместо ожидания оператора Jason дал Codex задачу периодически проверять, подключился ли support agent, а после подключения чаще отвечать и пытаться добиться refund. К моменту, когда Jason вернулся, возврат уже был оформлен.

Heartbeat подходит и для бытовых процессов. Любая задача с ожиданием внешнего участника может стать маленькой автоматизацией.

Goals

/goal — новая область, которую Jason еще осваивает. Его главный тезис: цель должна быть амбициозной, но проверяемой. Слабая формулировка — “реализуй план из Markdown”. Сильная — “перенеси библиотеку Rich из Python в Rust так, чтобы она проходила тесты оригинальной библиотеки”.

Тесты в этом примере становятся oracle: агент двигается к объективной проверке завершенности.

Качество автономной работы зависит от качества цели и верификации. Амбиция без проверяемого критерия превращается в пожелание.

The side panel

Самая интересная часть для Jason — side panel (/side). Он описывает ее как место, где работа реально происходит. Там можно смотреть на артефакт, комментировать его и давать агенту действия относительно того же объекта.

У side panel три роли: инспектировать артефакты, управлять web surfaces и ревьюить изменения.

Inspect artifacts

Markdown, spreadsheets, CSV, PDF и slides могут жить прямо в рабочем контуре. Markdown можно комментировать. Таблицы можно смотреть в табличном виде. PDF можно рендерить. Slides можно создавать и ревьюить без выхода из приложения.

Артефакт становится общей поверхностью между человеком и агентом.

Operate web surfaces

In-app browser позволяет Codex видеть и управлять web UI, а человеку — оставлять комментарии прямо на том, что он видит. Jason часто использует так index.html, Storybook, Remotion Studio, Slidev и Streamlit.

Особенно сильный паттерн — маленький index.html вместо сложного приложения. Агент может быстро создать самодостаточный HTML с CSS и JS, открыть его, дать человеку интерактивную поверхность, а дальше дорабатывать прямо по наблюдениям. Для более тяжелых задач можно поднимать Vite, но простой HTML часто долговечнее, потому что не требует сервера.

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

Главный вывод

Для меня этот пост хорошо формулирует следующий этап AI coding tools. Мы привыкли оценивать их по вопросу “насколько хорошо агент пишет код”. Jason показывает другую сторону: насколько хорошо агент поддерживает продолжающуюся работу.

Codex становится полезнее, когда у него есть:

  • долговечный тред;
  • голосовой и смешанный контекст;
  • возможность steering во время выполнения;
  • память в виде файлов и diff’ов;
  • доступ к браузеру, GUI и рабочим connectors;
  • heartbeat-циклы;
  • проверяемые goals;
  • side panel как общее место артефактов.

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

Back to Top