0.4.11
02 · Руководство пользователя

02. Установка

AstraCode распространяется как готовые бинарные сборки для Linux и macOS. Windows — только через сборку из исходников.

Системные требования

Платформа Минимум
Linux x86_64 (glibc) Ubuntu 20.04+, Debian 11+, Fedora 35+
macOS arm64 (M1/M2/M3/M4) macOS 12+
macOS Intel macOS 12+ (есть сборки x86_64)

Также пригодится: - Git — большинство возможностей вокруг него. - bwrap (только Linux, опционально) — для песочницы. Если не установлен, AstraCode распакует встроенный. - Доступ в интернет к выбранному провайдеру моделей.

Способ 1: Бинарь напрямую (рекомендуется)

Бандлы лежат в GitLab Package Registry:

text
https://gitlab.prosto.aib.pro/astracode/astra-code-build/-/packages

Linux x86_64

bash
curl -k -L -o /tmp/astracode.tar.gz \
  "https://gitlab.prosto.aib.pro/api/v4/projects/286/packages/generic/astracode-linux-x86_64-gnu/0.4.11/astracode-linux-x86_64-gnu-0.4.11.tar.gz"

tar xzf /tmp/astracode.tar.gz -C /tmp/
sudo mv /tmp/astracode /usr/local/bin/
astracode --version

Флаг -k нужен потому, что у GitLab self-signed сертификат.

macOS (arm64)

bash
curl -L -o /tmp/astracode.zip \
  "https://gitlab.prosto.aib.pro/api/v4/projects/286/packages/generic/astracode-macos/0.4.11/astracode-macos-0.4.11.zip"

unzip /tmp/astracode.zip -d /tmp/
mv /tmp/astracode /usr/local/bin/
astracode --version

При первом запуске macOS может спросить «можно ли запускать программу из неизвестного источника». В Системные настройки → Безопасность разрешите.

Способ 2: npm

Если у вас есть Node.js (≥18):

bash
npm install -g astracode-cli@0.4.11
astracode --version

npm-пакет — это тонкая обёртка, которая при установке скачивает правильный бинарь для вашей платформы.

Способ 3: Из исходников

Нужен Rust toolchain.

bash
# Установить Rust, если нет
curl --proto '=https' --tlsv1.2 -sSf https://sh.rustup.rs | sh

# Получить исходники
git clone <url-репозитория> astracode
cd astracode/astracode-rs

# Собрать
cargo build --release --bin astracode

# Установить
sudo cp target/release/astracode /usr/local/bin/
astracode --version

Зависимости для сборки

Linux (Ubuntu/Debian):

bash
sudo apt install build-essential pkg-config libssl-dev libsqlite3-dev cmake clang bubblewrap git

macOS:

bash
xcode-select --install
brew install cmake llvm

Первый запуск

bash
cd ~/myproject
astracode

При первом запуске:

  1. Создаётся ~/.astracode/ — здесь живёт ваша конфигурация, секреты, сессии.
  2. Генерируется уникальный installation_id.
  3. Если модель не настроена — /model откроется автоматически.

Проверка установки

bash
astracode --version           # должно показать 0.4.11

В самом TUI:

text
/status

покажет текущую модель, провайдера, sandbox, локаль. А /debug-config (slash-команда в TUI) покажет слои конфига.

Обновление

astracode update (рекомендованный путь)

bash
astracode update

CLI сам скачает свежую сборку из Package Registry, проверит SHA-256, заменит бинарь в ~/.astracode/packages/standalone/... и переставит symlink на новую версию. Прогресс печатается на каждом шаге («→ Resolving latest version…», «→ Found vX (~88 MB) — downloading…», «Installed AstraCode X at …») — особенно полезно через VPN, где download 88 MB занимает 1–3 минуты и без сообщений выглядит как зависание.

astracode update работает даже без активной лицензии — это специально, чтобы можно было обновиться до версии, в которой ключ известно работает.

TUI: /update

Если AstraCode уже запущен, можно нажать /update внутри TUI. После установки новый бинарь exec'ается с теми же аргументами — пользователь возвращается в обновлённый TUI без рестарта shell. CLI же (astracode update) после установки просто завершает работу.

Через npm

bash
npm update -g astracode-cli

Установить конкретную версию

Скрипт установки scripts/install/install.sh принимает флаг --release с нужной версией:

bash
bash install.sh --release 0.4.11

(без флага используется latest).

Важно: после обновления ваши секреты в ~/.astracode/secrets/local.age остаются рабочими — формат шифрования не меняется. Если получили ошибку Failed to decrypt secrets file — см. 15-troubleshooting.md.

Удаление

bash
# Бинарь
sudo rm /usr/local/bin/astracode

# npm-пакет
npm uninstall -g astracode-cli

# Вся конфигурация и сессии (ОПАСНО — нет возврата!)
rm -rf ~/.astracode

Перед удалением ~/.astracode сохраните API-ключи отдельно — после rm доступ к зашифрованному local.age восстановить невозможно.

Где что лежит после установки

text
/usr/local/bin/astracode             # сам бинарь
~/.astracode/                        # ваши данные
├── config.toml                      # настройки
├── secrets/local.age                # зашифрованные API-ключи
├── sessions/                        # история ваших сессий (JSONL)
├── memories/                        # долгая память (если включена)
├── skills/                          # скиллы (встроенные и пользовательские)
└── log/                             # текстовые логи

Подробнее о хранилище — техническая документация (dev-вики), но для повседневной работы знать не обязательно.

Несколько инстансов AstraCode

Если хотите разделить рабочие и личные настройки (разные API-ключи, разные модели):

bash
ASTRACODE_HOME=~/.astracode-work astracode
ASTRACODE_HOME=~/.astracode-personal astracode

Каждая директория — полностью изолированная установка.

Если что-то пошло не так при установке

См. 15-troubleshooting.md. Типовые проблемы:

  • bwrap: Permission denied — Linux выключил unprivileged namespaces. sudo sysctl kernel.unprivileged_userns_clone=1.
  • Failed to decrypt secrets file — keyring разъехался с файлом. rm ~/.astracode/secrets/local.age и заново ввести API-ключи.
  • TUI «висит» на старте — наверное, не отвечает MCP-сервер с required = true. Проверьте ~/.astracode/log/astracode-tui.log.
  • Could not find suitable model provider — провайдер не настроен. /model в TUI.