Grok Build — терминальный AI-кодинг-агент от SpaceXAI

· 2 мин чтения
ai-agents cli terminal rust open-source
📂 Исходный код на GitHub

Терминальный AI-кодинг-агент Grok Build от SpaceXAI: полноэкранный TUI на Rust, headless-режим, ACP, MCP-серверы, скиллы и плагины. Лицензия Apache-2.0.

Grok Build — терминальный AI-кодинг-агент от SpaceXAI

Grok Build (команда grok) — терминальный AI-агент для разработки от SpaceXAI, чей исходный код на Rust выложен в открытый доступ. Это не плагин к IDE и не чат-бот: это полноэкранный TUI, который понимает вашу кодовую базу, редактирует файлы, выполняет shell-команды, ищет в интернете и ведёт долгоживущие задачи. Работать с ним можно тремя способами: интерактивно в терминале, headless-режимом для скриптов и CI, а также встроив агента в редактор по протоколу Agent Client Protocol (ACP).

Проект уже набрал около 26,7 тыс. звёзд на GitHub и распространяется под лицензией Apache-2.0. Репозиторий периодически синхронизируется из внутреннего монорепозитория SpaceXAI, а маленький файл SOURCE_REV в корне фиксирует SHA коммита монорепозитория, которому соответствует код в дереве.

Ключевые возможности

  • Понимание кодовой базы — агент анализирует проект целиком, а не отдельные файлы, и строит план работы с учётом контекста.
  • Правки файлов — полноценные инструменты редактирования: агент сам вносит изменения в код.
  • Выполнение команд — прямой доступ к терминалу: сборка, тесты, git, любые shell-утилиты.
  • Поиск в вебе — агент может гуглить документацию и актуальную информацию, не выходя из сессии.
  • Долгоживущие задачи — управление фоновыми и длительными процессами, а не только быстрые одношаговые запросы.
  • Расширяемость — поддержка MCP-серверов, скиллов, плагинов и хуков.
  • Гибкие режимы работы — интерактивный TUI с поддержкой мыши, headless-запуск для автоматизации, встраивание в редакторы через ACP.

Пользовательский гид, поставляемый вместе с кодом, описывает горячие клавиши, slash-команды, конфигурацию, темы оформления, работу с MCP-серверами, скиллы, плагины, хуки, headless-режим и песочницу — то есть это полноценная платформа, а не минимальная обёртка над API модели.

Три режима работы

Разделение на режимы — не маркетинг, а архитектурное решение: за них отвечают отдельные точки входа в крейте xai-grok-shell (leader, stdio и headless).

Интерактивный TUI. Основной сценарий: полноэкранный интерфейс с прокруткой истории, промптом и модальными окнами, управляемый и с клавиатуры, и мышью. Всё происходит прямо в терминале — SSH-сессия на сервере или локальная машина, разницы нет.

Headless-режим. Агент запускается без интерфейса из скриптов и CI-пайплайнов: можно отдать задачу в автоматизации — например, прогонять рефакторинг или генерировать изменения в пайплайне — и получить результат без человека за терминалом.

ACP-режим. Agent Client Protocol — протокол, позволяющий встраивать агента в редакторы и другие клиентские приложения. Клиент предоставляет интерфейс, а агент работает как бэкенд: тот же рантайм, те же инструменты, но не в терминале, а внутри привычной среды разработки.

Установка готового бинарника

Прекомпилированные сборки публикуются для macOS, Linux и Windows:

curl -fsSL https://x.ai/cli/install.sh | bash   # macOS / Linux / Git Bash
irm https://x.ai/cli/install.ps1 | iex          # Windows PowerShell
grok --version

Список исправлений и новинок каждого релиза ведётся в ченджлоге, а общая информация о продукте — на странице x.ai/cli.

Первый запуск и аутентификация

При первом запуске grok открывает браузер для аутентификации — отдельная страница руководства описывает этот процесс: authentication guide.

Сборка из исходников

Если хочется собрать агент самостоятельно, понадобятся:

  • Rust — версия тулчейна зафиксирована в rust-toolchain.toml; rustup установит нужную автоматически при первой сборке.

  • DotSlash — нужен, чтобы герметичные инструменты из каталога bin/, в первую очередь bin/protoc, могли скачиваться и запускаться. Установить и добавить dotslash в PATH нужно до сборки:

    cargo install dotslash
    # или готовые пакеты — https://dotslash-cli.com/docs/installation/
    /usr/bin/env dotslash --help   # проверка
  • protoc — кодогенерация для proto-файлов берёт бинарник через DotSlash либо использует protoc из PATH / переменной $PROTOC.

  • Хосты сборки — macOS и Linux; сборка под Windows возможна, но best-effort и не тестируется из этого дерева.

Основные команды:

cargo run -p xai-grok-pager-bin              # собрать и запустить TUI
cargo build -p xai-grok-pager-bin --release  # релизный бинарник: target/release/xai-grok-pager
cargo check -p xai-grok-pager-bin            # быстрая проверка

Забавная деталь: артефакт сборки называется xai-grok-pager, и только официальные инсталляторы поставляют его под именем grok. Именно крейт xai-grok-pager реализует интерфейс с прокруткой истории, промптом и модальными окнами.

Архитектура репозитория

Код организован как Cargo-workspace из узкоспециализированных крейтов:

Путь Содержимое
crates/codegen/xai-grok-pager-bin Корневой пакет композиции; собирает бинарник xai-grok-pager
crates/codegen/xai-grok-pager Сам TUI: прокрутка истории, промпт, модальные окна, рендеринг
crates/codegen/xai-grok-shell Рантайм агента + точки входа leader/stdio/headless
crates/codegen/xai-grok-tools Реализации инструментов: терминал, правка файлов, поиск и т. д.
crates/codegen/xai-grok-workspace Файловая система хоста, VCS, выполнение, чекпоинты
crates/codegen/... Остальное замыкание CLI: конфиг, MCP, markdown, sandbox, ...
crates/common/, crates/build/, prod/mc/ Небольшие общие листовые крейты
third_party/ Вендоренный апстрим-код (стек диаграмм Mermaid)

Важный нюанс для тех, кто захочет ковыряться в коде: корневой Cargo.toml (список workspace-членов, версии зависимостей, линты, профили) генерируется автоматически — считать его read-only и править нужно Cargo.toml конкретных крейтов.

Разработка

cargo check -p <crate>        # проверять конкретные крейты; сборка всего workspace медленная
cargo test -p xai-grok-config # тесты по крейтам
cargo clippy -p <crate>       # конфиг линтера: clippy.toml в корне репозитория
cargo fmt --all               # конфиг форматтера: rustfmt.toml в корне

Вклад и лицензия

Внешние контрибуции в проект не принимаются — что неудивительно для зеркала внутреннего монорепозитория. Подробности в CONTRIBUTING.md.

Первоначальный код лицензирован под Apache License 2.0 (LICENSE). Сторонний и вендоренный код живёт под своими лицензиями:- THIRD-PARTY-NOTICES — зависимости с crates.io и из git, UI-темы, а также порты исходников внутри дерева, включая реализации инструментов из openai/codex и sst/opencode;

Последний пункт особенно интересен: Grok Build прямо заимствует реализации инструментов у Codex CLI от OpenAI и OpenCode — двух самых заметных открытых терминальных агентов. Это редкий случай, когда конкурирующие продукты обмениваются кодом в рамках open source.

Полная документация

  • Онлайн-документация: docs.x.ai/build/overview
  • Пользовательский гид в репозитории: crates/codegen/xai-grok-pager/docs/user-guide/ — старт работы, горячие клавиши, slash-команды, конфигурация, темы, MCP-серверы, скиллы, плагины, хуки, headless-режим, песочница и прочее.

Зачем это смотреть

Если вы сравниваете терминальных AI-агентов — Codex CLI, OpenCode, Crush, Aider и компанию — Grok Build теперь полноправный участник этого рынка: открытый код, production-grade архитектура на Rust и неожиданно честная история заимствований. Даже если вы не пользователь моделей xAI, архитектура workspace и организация крейтов заслуживают изучения: это свежий образец того, как устроен серьёзный агентный рантайм изнутри.

Источник: https://github.com/xai-org/grok-build