Crush: скачать, установить и применять агент для программирования в терминале

Введение

Crush — это бесплатный открытый агент для программирования от Charm. Как и OpenCode, он живёт в терминале, читает и правит ваши файлы, выполняет команды оболочки и проходит задачи шаг за шагом. Важные отличия: Crush написан на Go (один бинарник, Node.js не нужен), понимает серверы LSP так же, как вы, хранит несколько рабочих сессий на проект, позволяет переключать модели посреди сессии без потери контекста и расширяется через серверы MCP и пакеты Agent Skills. Он работает на macOS, Linux, Windows (PowerShell и WSL), Android, FreeBSD, OpenBSD и NetBSD.

Скачивание и установка

Через Homebrew (macOS и Linux)

brew install charmbracelet/tap/crush

Через npm (любая ОС с Node.js)

npm install -g @charmland/crush

В Arch Linux

yay -S crush-bin

В FreeBSD

pkg install crush

В Windows: Winget

winget install charmbracelet.crush

В Windows: Scoop

scoop bucket add charm https://github.com/charmbracelet/scoop-bucket.git

scoop install crush

Пакеты Debian и RPM, а также бинарники для каждой ОС лежат на странице релизов репозитория проекта.

Через Go (любая ОС с тулчейном Go)

go install github.com/charmbracelet/crush@latest

Проверьте, что всё работает:

crush --version

Подключение модели

Быстрее всего начать с Hyper, официального провайдера Crush: он работает по подписке и имеет бесплатный тариф, а данные он не хранит вовсе — всё ради приватности. Выберите модель Hyper в списке моделей и выполните шаги для аутентификации.

Чтобы подключить любого другого провайдера, нажмите ctrl+l, чтобы открыть список моделей, выберите провайдера и вставьте свой ключ API. Поддерживаются ключи Anthropic, OpenAI, Gemini, OpenRouter и других — тот же ключ OpenRouter из руководства по OpenCode подходит и здесь. Ключи также могут приходить из переменных окружения:

Локальные модели работают через Ollama, llama.cpp, LM Studio и подобные: зарегистрируйте провайдера один раз, и Crush сам найдёт его модели.

Crush каждый день

Перейдите в свой проект и запустите:

cd /path/to/project

crush

Дайте Crush изучить проект: инициализация анализирует кодовую базу и записывает выводы в AGENTS.md — закоммитьте этот файл, чтобы каждая сессия начиналась с контекста. Правила, специфичные для проекта и способные запутать другие инструменты, лучше положить в CRUSH.md.

Основной рабочий процесс:

crush --yolo

Держите секреты вне контекста агента с помощью .crushignore (синтаксис тот же, что у .gitignore). Метрики использования псевдонимны, их можно отключить:

export CRUSH_DISABLE_METRICS=1

Настройка через crushrc

Crush работает без настройки, но crushrc позволяет настроить всё. Это Bash со встроенными командами Crush, одинаковый на всех платформах. Файл проекта ./.crushrc важнее глобального ~/.config/crush/crushrc. Пример:

provider add ollama --type ollama --base-url "http://localhost:11434/v1" permissions allow view edit mcp add github --type http --url "https://api.github.com/mcp/" option notifications disabled

Старый формат JSON ещё работает, но устарел. Учтите, что crushrc — это доверенный код: никогда не запускайте Crush в каталоге, конфиг которого вы не просмотрели.

Что делать при сбоях

crush logs --tail 500

crush --debug

Официальные источники:

Автор статьи: Клавдия Кондакова