Перейти к содержимому

Кейс: 1.7 ГБ в кеше Codex: зачем агенту полный LibreOffice

Simon Willison 1 сентября 2026 года ковырялся в своей папке ~/.cache/ через OmniDiskSweeper и наткнулся на папку codex-primary-runtime — 1.7 ГБ. Внутри: полная установка Python, полная установка Node.js и нативные бинарники Poppler, git и офисного пакета LibreOffice. Десктопное приложение OpenAI Codex (с тех пор перебрендированное в просто ChatGPT) притащило на диск пользователя целый офисный пакет, чтобы агент умел читать docx и xlsx. Разбор — ниже.

Заметка Simon Willison «Codex bundles LibreOffice»
Заметка, с которой начался разбор. Источник: simonwillison.net, 1 сентября 2026.

Что нашли и почему это важно

Обычно про агента думают как про «модель + инструкции». Здесь видно, что под капотом у него ещё и рантайм — изрядный набор исполняемых файлов, который едет к вам на диск целиком. Заметка и стала поводом для разбора: 1.7 ГБ — это не модель (она на серверах), это инструменты, которыми агент работает локально.

Скриншот самой папки из OmniDiskSweeper показывает, из чего складывается число:

Скриншот разбора диска: содержимое ~/.cache/codex-runtimes
Реальная структура папки по размерам. Источник: скриншот из заметки Simon Willison, simonwillison.net.

Что лежит в кеше

По данным из заметки и скриншота, дерево ~/.cache/codex-runtimes/codex-primary-runtime/ выглядит так:

Компонент Размер Зачем агенту
dependencies/ 1.7 ГБ Общий склад зависимостей рантайма
dependencies/node 446.4 МБ Полная установка Node.js — для JS/TS-проектов и MCP-серверов на Node
dependencies/python 440.6 МБ Полная установка Python — скрипты, тулы, работа с документами
.../libreoffice-headless 429.7 МБ Офисный пакет для чтения и конвертации docx / xlsx / pptx
dependencies/native/poppler 187.9 МБ Нативные бинарники Poppler для PDF
dependencies/native/git 148.1 МБ Полный git для работы с репозиториями
dependencies/native/libheif 4.7 МБ Чтение изображений формата HEIF/HEIC
dependencies/native/jxrlib 679.9 кБ Работа с JPEG XR
plugins/ 6.3 МБ Сами скиллы, объясняющие агенту, как этим пользоваться
runtime.json 4.1 кБ Манифест рантайма

Обратите внимание на масштаб: LibreOffice headless (429.7 МБ) и Python (440.6 МБ) — почти одного размера с Node.js. Это не «небольшая библиотека для конвертации»: на диск кладут фактически полный офисный пакет.

Схема: что внутри codex-primary-runtime
Собственная схема дерева рантайма по данным из скриншота. Источник: simonwillison.net.

Как агент читает docx и xlsx локально

Ключевая цитата из заметки: «The ~/.cache/codex-runtimes/codex-primary-runtime/plugins/openai-primary-runtime/plugins/documents folder includes skills which tell Codex how to find and use those binaries» — в этой папке лежат skills, которые объясняют Codex, как найти и использовать те самые бинарники.

То есть механика такая: LibreOffice здесь работает как headless-движок для конвертации форматов. Агент не «читает» бинарный docx напрямую — он запускает soffice в фоне, тот конвертирует документ в текст или PDF, а уже результат агент разбирает. Официальная документация LibreOffice описывает соответствующие команды (File Conversion Filter Names):

soffice --headless --convert-to pdf *.docx
soffice --headless --convert-to txt:"Text (encoded):UTF8" file.docx

А Poppler — это нативные бинарники для PDF: pdftotext, pdftoppm и прочие утилиты, которые превращают PDF в текст и картинки (poppler.freedesktop.org). Документация LibreOffice подчёркивает, что конвертация через --convert-to идёт напрямую, без интерактивного запуска интерфейса, — именно поэтому в кеше лежит libreoffice-headless, а не полное GUI-приложение.

Практический вывод: агент, который умеет открывать офисные документы, не требует ни установленного Microsoft Office, ни интернета. Всё офлайн, всё на вашем диске.

Poppler — библиотека рендеринга PDF на основе xpdf
Главная страница Poppler: релиз poppler-26.09.0 от 3 сентября 2026. Источник: poppler.freedesktop.org.

Как это устроено: рантайм плюс skills

Заметка Willison формулирует простую, но важную архитектурную идею: агент — это не только модель. Это связка «рантайм + skills».

  • Рантайм — реальные исполняемые файлы: Python, Node, git, Poppler, LibreOffice. Они нужны, чтобы у агента вообще была возможность выполнять команды, а не только рассуждать.
  • Skills — markdown-инструкции, которые объясняют агенту, где лежат эти бинарники и как их правильно вызывать. Без skills агент, возможно, и нашёл бы soffice, но не знал бы, как читать docx в этом окружении.

Разделение важное: сам рантайм огромен (1.7 ГБ), а «мозг» для него — маленькие текстовые файлы. Именно skills превращают набор бинарников в инструмент. Это тот же паттерн, что и в других агентах: отдельно то, что исполняет, и отдельно то, что объясняет, как исполнять.

Как посмотреть и почистить у себя

Проверить, что агент положил на ваш диск, можно штатными командами:

# 1. сколько всего занимает рантайм Codex
du -sh ~/.cache/codex-runtimes

# 2. разложить по компонентам (топ по размеру)
du -sh ~/.cache/codex-runtimes/*/* 2>/dev/null | sort -h

# 3. найти сами skills про документы
find ~/.cache/codex-runtimes -iname '*.md' -path '*documents*'

# 4. конвертировать docx в текст без установки Office
soffice --headless --convert-to txt:"Text (encoded):UTF8" file.docx

# 5. понять, какие именно нативные бинарники притащили
find ~/.cache/codex-runtimes -name 'soffice*' -o -name 'pdftotext*'
Терминал: инспекция кеша Codex
Собственная схема с командами du/find для инвентаризации рантайма. Источник данных: структура из заметки Simon Willison.

Про очистку важная оговорка: ~/.cache/codex-runtimes — это кеш, и приложение пересоздаст его при следующем запуске. Удалить папку целиком можно, но приложение скачает рантайм заново, что съест время и трафик. Если цель — освободить место, сначала посмотрите, что реально занимает (du), а не сносите вслепую.

Риски

  • Место на диске. 1.7 ГБ на каждом устройстве, где установлено приложение. На ноутбуке с SSD на 256 ГБ это заметная доля. Отдельно стоит учесть, что кеши обычно не чистятся сами.
  • Приватность и офлайн-ожидания. LibreOffice тут — не только про чтение: раз агент умеет конвертировать документы локально, он может обрабатывать ваши файлы без отправки на сервер. Но это палка о двух концах — вы должны понимать, когда обработка локальная, а когда содержимое файла всё же уходит в модель.
  • Обновления. Рантайм обновляется вместе с приложением. Версии Python, Node, Poppler и LibreOffice внутри кеша могут отличаться от тех, что вы поставили в системе, — это отдельное окружение, которое вы не конфигурировали.
  • Доверие к бинарникам. Вы скачиваете и запускаете исполняемые файлы (Python, Node, LibreOffice, git, Poppler), которые сами не выбирали. Это нормальная практика для десктопных приложений, но стоит понимать, что состав рантайма определяет вендор, а не вы.

Честные ограничения

  • Заметка короткая. Simon Willison написал по сути заметку, а не глубокий разбор: точные пути и список компонентов есть, но деталей запуска и версий бинарников там нет. Всё, что не подтверждено источником, в этой статье не додумано.
  • Скриншот — единственный источник цифр. Размеры (429.7 МБ на LibreOffice, 440.6 МБ на Python и т.д.) взяты из скриншота OmniDiskSweeper. На другой системе они будут отличаться в зависимости от версии приложения и платформы.
  • Рантайм может измениться в любой момент. Состав кеша — не стабильный API: вендор может добавить или убрать компоненты. Всё описанное — «на момент публикации» по состоянию начала сентября 2026 года.
  • Это не про Codex CLI. В заметке речь про десктопное приложение. Насколько набор компонентов схож у других сборок агентов, по этому источнику судить нельзя.

Российские реалии

  • Доступность приложения. Десктопное приложение Codex / ChatGPT доступно из РФ нестабильно: вход через аккаунт OpenAI требует VPN (ограничения по российским IP), а установщик может не отдаваться без обхода блокировок. Open-source агенты (Cline, Aider) в этом смысле проще: ставятся из GitHub и npm без ограничений.
  • Оплата. Подписка ChatGPT Plus/Pro российскими картами не проходит — Visa и Mastercard отключены от процессинга РФ. Рабочие схемы: посредники, виртуальные карты с иностранным BIN, карты банков Казахстана, Грузии, Армении. Само приложение бесплатно в базовом варианте, но модели за ним — по подписке.
  • LibreOffice в РФ — бесплатен и доступен. В отличие от самого агента, его офисный движок проблем не создаёт: LibreOffice — свободный пакет, его можно поставить из репозиториев любого дистрибутива. Примеры внедрения и практика миграции на него в российских организациях хорошо описаны русскоязычными источниками.
  • RU-опыт по LibreOffice. Подробный разбор миграции на свободное ПО с комментариями практиков (главная боль — совместимость документов), опыт Росатома: Astra Linux + LibreOffice, сравнительный тест Р7-Офис, МойОфис, LibreOffice и MS Office (LibreOffice набрал 50/58 баллов, второе место после MS Office) и обзор офисных пакетов, приходящих на смену Microsoft.

Ирония кейса: агент приносит на ваш диск ровно тот офисный пакет, за независимость от которого в России идёт отдельная борьба, — и делает это молча, в фоне, как техническую деталь.

Вывод

Находка Willison — хорошая иллюстрация того, как устроен современный десктопный агент: «модель» — это вершина айсберга, а под водой 1.7 ГБ рантайма, среди которых полный офисный пакет. Практическая польза от этого одна: агент умеет читать docx и xlsx офлайн, без Office и без сети.

Второй вывод — про учёт. Если вы ставите агента, стоит один раз посмотреть, что он кладёт на диск (du), и понять, что из этого вам действительно нужно. 1.7 ГБ сами по себе не проблема, а вот запускать чужие бинарники, не зная, что это, — не лучшая привычка.

Связанные статьи

Читайте также: Кейс: кодинг-агенты на Linux-коробке за €30: что реально тянет · Claude Code vs Codex: что выбрать в сентябре 2026

Насколько публикация полезна?

Нажмите на звезду, чтобы оценить!

Средняя оценка / 5. Количество оценок:

Оценок пока нет. Поставьте оценку первым.

Добавить комментарий

Adblock
detector