На рынке программных агентов большинство участников стремятся к расширению функциональности — больше возможностей, больший контекст, более сложные инструментальные цепочки. Однако недавно появился проект под названием Zerostack, который движется в противоположном направлении: максимально мало кода — только самое главное.
Этот программный агент, полностью написанный на Rust, получил 220 баллов и вызвал 75 обсуждений на Hacker News. Для нового проекта с всего 51 коммитом и 136 звёздами такая популярность выглядит необычайно высокой.
Уверенность минимализма
В README Zerostack сразу обозначена его позиция: это минималистичный программный агент, вдохновлённый проектами pi и opencode.
Его функциональный список выглядит скромно, но каждая функция решает острую практическую задачу:
- Поддержка множества моделей: OpenRouter, OpenAI, Anthropic, Gemini, Ollama, а также возможность подключения пользовательских провайдеров
- Стандартный набор инструментов: реализованы все необходимые стандартные инструменты для программных агентов согласно документации opencode
- Четыре режима работы: настраиваемые режимы прав доступа, включая режим «по инструменту», белый список сессий и стратегию внешних каталогов
- Управление сессиями: сохранение/загрузка/восстановление сессий с автоматическим сжатием для укладки в окно контекста
- TUI-интерфейс терминала: построен на основе crossterm, поддерживает рендеринг Markdown, выбор мышью, прокрутку истории и переключение видимости рассуждений
- Динамическое переключение системных промптов во время выполнения: возможность мгновенно менять шаблон системного промпта (claude, opencode, pi и др.) прямо в сессии — без необходимости управления «навыками»
По отдельности эти функции не кажутся чем-то революционным, однако их совмещение в одном проекте, полностью написанном на Rust, означает одно: крайне низкое потребление памяти и исключительно быстрый запуск.
Почему именно Rust?
Современные популярные программные агенты — такие как Claude Code, Cursor и Windsurf — в основном построены на Electron или аналогичных технологиях, и их потребление оперативной памяти зачастую достигает сотен мегабайт или даже гигабайта.
Выбор Rust для Zerostack не случаен. Встроенный компилятор, отсутствие зависимостей от среды выполнения и гарантии безопасности памяти делают Rust идеальным выбором для создания высокопроизводительных CLI-инструментов. Для программного агента, ориентированного на частое взаимодействие в терминале, разница в миллисекундах отклика и в мегабайтах потребляемой памяти ощущается на практике.
Представьте, что вы подключаетесь по SSH к удалённому серверу и вам нужно быстро запустить задачу через агент. Вам не нужен Electron-приложение объёмом 500 МБ — вам нужен инструмент, который стартует менее чем за 100 мс и работает в пределах 10 МБ оперативной памяти.
Связь с pi и opencode
Zerostack чётко признаёт своё вдохновение от pi и opencode. Эти три проекта отражают одну и ту же философию: программный агент не должен быть громоздким плагином IDE — он должен быть лёгким, встраиваемым инструментом командной строки.
pi (лёгкая альтернатива Aider) и opencode (открытый помощник для кодирования в терминале) уже продемонстрировали жизнеспособность этого подхода. Инновация Zerostack заключается в том, что он переосмысливает эту концепцию на Rust и добавляет более тонкую настройку прав доступа и переключения моделей.
Особенно выделяются его четыре настраиваемых режима работы — от максимально свободного доступа ко всем инструментам до строгого белого списка сессий. Это позволяет гибко адаптировать Zerostack под различные требования к безопасности — важное преимущество для корпоративных пользователей.
Отзывы сообщества
Обсуждения на Hacker News демонстрируют интересную поляризацию. Одна часть участников считает: «Ещё один программный агент — чем он особенный?». Другая — возражает: «Rust + минимализм + поддержка множества моделей — вот как должен выглядеть настоящий CLI-инструмент».
На наш взгляд, вторая точка зрения ближе к сути. Рынок программных агентов действительно стремительно растёт, но большинство продуктов просто «накапливают» функции. Ценность Zerostack — в обратном подходе: оставить только ядро интерактивного слоя и безупречно реализовать выбор модели, контроль прав и управление сессиями — всё остальное остаётся на усмотрение пользователя.
Перспективные направления
Zerostack пока остаётся ранним проектом (51 коммит), однако его дизайн-философия заслуживает пристального внимания. При условии последовательной доработки в рамках сообщества он может стать «unix-подобным» выбором в категории программных агентов — делать одну вещь, но делать её отлично.
Разработчикам, предпочитающим рабочие процессы в терминале и чувствительным к потреблению памяти и скорости запуска, стоит попробовать Zerostack в своём инструментарии. Ведь в эпоху, когда «всё становится Electron», чистый Rust-агент — это уже само по себе освежающий опыт.
GitHub: gi-dellav/zerostack | Crates: zerostack 1.0.0