Волна конца июля закончилась словами «август уже в движении». Это было мягко сказано. Двадцать два дня спустя счёт таков: сорок девять релизов в восьми репозиториях — плюс четыре запуска продуктов, о которых на момент того поста ещё даже не было объявлено.
Каждый из четырёх запусков получил полноценное представление, так что этот пост не будет запускать их заново: Octoweb — keyboard-first AI-браузер; Synx — синхронизация файлов в реальном времени для удалённой разработки; Pulsora — time-series база данных для рыночных данных; и OctoHub — LLM-прокси, который наконец показывает каждый запрос, который делают ваши агенты. Как обычно, эта волна собирает всё остальное — и прослеживает нити.
Нитью прошлой волны была верификация: стек научился проверять собственную работу. В эту волну стек повернулся наружу. Почти каждый релиз ниже — про то, чтобы встретить вас там, где вы на самом деле работаете: на вашей git-ветке, на вашей удалённой сборочной машине, в вашем браузере, за вашим балансировщиком нагрузки, даже в вашем пакетном менеджере. Меньше «инструменты поумнели», больше «инструменты пришли к вам».
Четыре запуска за три недели
Коротко о каждом — ради связей, которые понадобятся ниже:
Octoweb 0.10.0 — WebKit-браузер, написанный на Rust, без Electron, построенный keyboard-first: командная палитра, слоты быстрого доступа, readline-биндинги повсюду. AI-часть работает в обе стороны: агент на базе Octomind живёт в сайдбаре и видит то же, что и вы, а браузер выставляет токен-экономный MCP-сервер, чтобы им могли управлять ваши агенты. Внутри этого окна он прошёл 0.9.0 → 0.10.0: закрепление и открепление вкладок, лимит на число открытых вкладок, автоматическое обновление квоты аккаунта и два фикса стабильности — осиротевшие процессы агентов и утечки памяти Objective-C, — которые важны, когда браузер — ваш основной инструмент на весь день. Для нас — именно так, уже пять месяцев.
Synx 0.1.2 — двусторонняя синхронизация директорий по SSH для самого старого разрыва в удалённой разработке: редактируете вы на ноутбуке, а работа идёт на машине с шестьюдесятью четырьмя ядрами. Одна команда, никаких демонов, никакого сервиса для установки на сервер — один и тот же бинарник работает на обоих концах, а удалённую сторону клиент сам запускает по SSH. Уже на 0.1.2, где добавилась страховочная проверка git-бейзлайна перед любой операцией очистки — та самая паранойя, которую хочется видеть в инструменте, трогающем две копии вашего исходного дерева.
Pulsora — time-series база данных на Rust, родившаяся потому, что поток рыночных тиков перерос всё, что мы пробовали. Колоночные блоки, типозависимое сжатие в родословной Gorilla и индекс, который растёт с числом записанных блоков, а не строк, — так что стоимость хранения в пересчёте на строку стремится к нулю.
OctoHub 0.7.3 — self-hosted парадная дверь для каждого LLM-вызова: один эндпоинт, алиасы моделей, балансировка нагрузки и строка в базе для каждого запроса: что ушло апстрим, сколько это стоило и кто ответил. Внутри этого окна — вокруг поста о запуске и после него — он выпустил восемь релизов: эмулированный SSE-стриминг для chat completions (0.7.0), проверки совместимости модальностей между тем, что шлёт запрос, и тем, что умеет модель (0.6.4), и доводка health-check-ов. Если вы читали наш разбор наблюдаемости агентов, OctoHub — это его последний раздел, ставший постоянным.
Octocode 0.19.0 → 0.21.0 — граф осваивает доки, ветки и живую структуру
github.com/muvon/octocode · 0.19.0 → 0.21.0 · 17 августа
Три фичевых релиза, одно направление: граф знаний перестал быть снимком и стал картиной проекта, какой тот есть прямо сейчас.
Markdown вошёл в граф (0.20.0) — полный пост здесь. Документы становятся узлами того же GraphRAG-графа знаний, что и код, а ссылки между документами — типизированными связями references, по которым может ходить ассистент. Ваш README объясняет архитектуру — теперь граф это знает. Тот же релиз дедуплицировал связи при загрузке — 575K рёбер стали 288K уникальных на нашем тестовом проекте — и починил пачки связей, молча пропадавшие на больших репозиториях.
Индексация стала branch-aware (0.20.1). Индекс теперь знает, какую git-ветку он отражает, а MCP-сервер сам определяет контекст ветки — и результаты поиска следуют за той веткой, на которой вы на самом деле находитесь. Маленькая строчка в release notes, большое изменение качества жизни, если вы часто переключаете ветки.
Граф стал живым (0.21.0). Главная новость — рантаймовый построитель структурного графа: структурный граф на базе Tree-sitter, доступный всегда, поверх которого накладывается персистентное обогащение, когда вы проиндексировались. Рядом — извлечение узлов на уровне символов с провенансом: узлы графа на уровне функций и типов, каждый знает, откуда он взялся, — и языкоспецифичные виды символов: символы классифицируются в словаре каждого языка, а не одним универсальным набором. Пара фиксов индексатора держит счёт честным: инфляция символов и взрыв путей теперь предотвращаются.
Точка, которую стоит соединить: пост о markdown в 0.20.0 утверждал, что структура проекта — код и доки — это карта, которую инструменты должны уметь читать. Ветки и живой граф — тот же аргумент, применённый ко времени: карта должна быть картой сегодняшнего дня, а не индексации в прошлый вторник.
cargo install octocode --version 0.21.0
# или — новинка этой волны, Rust-тулчейн не нужен:
npm install -g @muvon/octocode
Octofs 0.5.2 → 0.10.0 — вот тебе и скучный
github.com/muvon/octofs · 0.5.2 → 0.10.0 · 15 августа
В прошлую волну мы написали, что Octofs «снова стал скучным, в чём и состоит его работа». На следующее утро он выпустил 0.6.0 и не останавливался ещё шесть релизов. Вот вам и скучный.
Файловая система ушла в remote (0.8.0). Octofs теперь говорит по SSH и SFTP: наведите его на удалённый хост — и ваш агент получает на сервере те же безопасные структурированные файловые инструменты, что и локально: с верификацией SSH host key, поддержкой SSH-агента, включая Windows, и shell-подсказками, настроенными под удалённые сессии. Вот нить этой волны в самом чистом виде: Synx существует потому, что на двух машинах работаете вы. Octofs 0.8.0 — потому, что ваш агент тоже.
Номерам строк перестали доверять (0.9.0) — полный пост здесь. Каждая строка теперь адресуется как N:hh — позиция плюс хеш содержимого, — и каждый инструмент правки сверяет хеш, прежде чем записать хоть байт. Устаревшая цель правки громко падает со свежим содержимым в тексте ошибки, вместо того чтобы приземлиться не на ту строку. str_replace в том же релизе получил replace_all и CRLF-безопасное сопоставление. Если темой прошлой волны была верификация, то это верификация, применённая к самой опасной операции, которую выполняет агент.
Остальная часть забега:
- Защита от устаревшей записи и история (0.6.0) — та же честность в духе «файл мог измениться с тех пор, как вы его читали», но на уровне целого файла, плюс история правок и вычищенный терминальный шум из вывода shell.
- Сессионные рабочие директории и принуждение подсказками (0.7.0) — MCP-сервер держит workdir на каждую сессию, а подталкивания, уводящие агентов от сырого shell к точным инструментам, стали настраиваемыми: от мягких подсказок (умолчание с 0.8.1) до жёсткого отклонения злоупотреблений shell (0.9.0).
- Поиск повзрослел (0.10.0) — glob-сопоставление в стиле ripgrep, контентный поиск по нескольким путям через разделитель-пайп и упрочнённая валидация паттернов по всем фронтам.
cargo install octofs --version 0.10.0
# или:
npm install -g @muvon/octofs
Octobrain 0.9.4 → 0.11.0 — память получает сессионный контекст и просит у веба markdown
github.com/muvon/octobrain · 0.9.4 → 0.11.0 · 17 августа
Три релиза в слое памяти, каждый маленький, каждый — прямо для пользователя:
- Сессионный контекст (0.10.0). MCP-сервер теперь управляет контекстом разговора на каждую сессию, так что операции памяти знают, к какой рабочей сессии они принадлежат, вместо того чтобы встречать каждый вызов как незнакомца.
- Быстрее под капотом (0.10.1). Стратегия компакции базы знаний переработана — лучше производительность и эффективнее работа с памятью на долгоживущих базах знаний.
- Content negotiation (0.11.0). Когда инструмент знаний Octobrain скачивает URL, он теперь шлёт заголовок
Acceptс запросомtext/markdown. Сайты, отдающие markdown-двойника своих страниц, вручают агенту чистый текст вместо DOM, который пришлось бы скрести. И вот точка совсем близко к дому: этот блог начал делать ровно это в этом месяце — запросите любой пост сAccept: text/markdownи получите пререндеренный markdown-исходник. Octobrain спрашивает; muvon.io отвечает. Если вы публикуете доки или блог, подумайте о том, чтобы присоединиться, — это одна middleware-функция.
Конфиг в 0.10.0 тоже переехал на версионированную систему миграций — об этом паттерне ниже, потому что родился он не здесь.
cargo install octobrain --version 0.11.0
# или:
npm install -g @muvon/octobrain
Octolib 0.26.1 → 0.32.1 — четырнадцать релизов, пять новых провайдеров, один честный счётчик
github.com/muvon/octolib · 0.26.1 → 0.32.1 · 17 августа
У LLM-слоя подо всем выдался самый занятой месяц за всю историю — четырнадцать релизов за двадцать два дня. Три сюжетные линии:
Ростер взорвался. Пять новых провайдеров: xAI, Alibaba Model Studio (с vision и видео для моделей Qwen), Hetzner, OpenCode и Google AI Studio — интеграция с Google аккуратно разделилась на Vertex AI и AI Studio, с сохранением thought signatures Gemini между вызовами. Новые модели не отставали: GLM-5.3, inkling-small, поддержка reasoning у Kimi K3 на Moonshot — а reasoning-вывод Kimi теперь выживает, даже когда модель отдаётся через Ollama. Если агентный фреймворк — это ресторан, то в этом месяце меню удвоилось.
Счётчик снова стал честнее. Токены чтения из кеша теперь входят в расчёт стоимости, тарифы DeepSeek поправлены, ошибка биллинга prompt-токенов исправлена, а peak/off-peak цены DeepSeek теперь смоделированы — ваш батч в два часа ночи действительно дешевле, и теперь учёт это знает. Это тот же барабанный бой, что и в каждой волне: если Octolib сообщает число, мы хотим, чтобы это было число из счёта.
Конфиг стал версионированной, мигрируемой сущностью (0.29.0). Версионированная система миграций TOML — имена бэкапов по content-digest конфиг получил в 0.30.3, — и в ту же неделю Octocode 0.20.0 и Octobrain 0.10.0 выбросили собственную обработку конфига и приняли её. Это стек, работающий как задумано: паттерн приземляется один раз в общем слое — и каждый инструмент навсегда наследует автоматические апгрейды конфига.
Ещё в стопке: параллельные вызовы инструментов для OpenAI-провайдеров, условный sampling для OpenAI-совместимых эндпоинтов, мультимодальные изображения и видео на OpenAI и тюнинг keepalive, благодаря которому долгоживущие соединения перестали умирать за сетевыми балансировщиками нагрузки.
Один ход на три репозитория: тулчейн на npm
Octocode, Octobrain и Octofs в эту волну добавили публикацию на npm в свои релизные workflow. Практический смысл: для установки стека больше не нужен Rust-тулчейн.
npm install -g @muvon/octocode @muvon/octobrain @muvon/octofs
Те же инструменты, новая парадная дверь. Если ваша команда живёт в Node и строчка про cargo в онбординг-доке была тем трением, которое не пускало семантический поиск по коду или память агента в ваш сетап, — этого трения больше нет. cargo install и бинарники из GitHub-релизов продолжают работать ровно как раньше.
Octomind 0.39.0 → 0.44.2 — разбор на octomind.run
Агентный рантайм выпустил десять релизов в этом окне, и они заслуживают больше места, чем даёт обзорная волна, — поэтому они получают его на octomind.run. Версия в один абзац: сессии получили заголовки и интерактивный выбор с readline-редактированием, сжатие контекста стало адаптивным, приземлилась поддержка Agent Plugins 1.0.0, а верификационная работа супервизора ушла ещё глубже: персистентный реестр свидетельств, провенанс верификации на ground truth и детекция устаревания планов. Если вы читали нить верификации прошлой волны и гадали, куда она ведёт, — туда.
Держатся, намеренно
Vext держится на 1.3.0 — июльский стеклянный редизайн и диаризация на уровне слов обживаются у пользователей. Timex держится на 1.2.0, а TypeTab — на 1.1.0. После месяца с сорока девятью релизами вокруг три тихих Mac-приложения ощущаются почти как отдых.
Как они стыкуются
Стек, каким он стоит после месяца, когда он повернулся наружу:
- Octolib 0.32.1 — каждый LLM-вызов, ещё пять провайдеров, каждый токен по честной цене
- OctoHub 0.7.3 — одна парадная дверь и один лог для каждой модели, которую вызывают ваши агенты
- Octobrain 0.11.0 — персистентная память с сессионным контекстом, говорящая с вебом на markdown
- Octofs 0.10.0 — безопасный доступ к файловой системе, теперь и на вашей удалённой машине
- Octocode 0.21.0 — поиск по коду с живым графом кода, доков и веток
- Octomind 0.44.2 — рантайм, проверяющий строже, чем когда-либо
- Octoweb 0.10.0 — браузер, где агент — полноправный житель
- Synx 0.1.2 — ваше исходное дерево, на обеих машинах, непрерывно
- Pulsora — тот самый поток тиков, сохранённый и доступный для запросов
Одиночные бинарники, Apache-2.0, все из них — и три из них теперь на расстоянии одного npm install.
В прошлую волну стек научился проверять собственную работу. В эту — вышел из дома: ваша ветка, ваш сервер, ваш браузер, ваш реестр пакетов. Если есть место, где он всё ещё не появляется, а должен, — откройте issue — именно так эти волны и получают свои заголовки.
— Don



