Crush,на собственном холсте
Запускайте Crush в скольких угодно карточках — в каждой настоящий TUI `crush` в своём терминале. Crush сам сообщает карточке своё состояние — работает, заблокирован, свободен, — стрелки дают ему браузеры, терминалы и заметки, а после перезапуска каждая карточка продолжает свою сессию.
Официальный сайтgithub.com/charmbracelet/crush- Настоящий TUI
crush, ваши собственные провайдеры - Ваш конфиг Crush не переписывается
- Бесплатно, для Windows 10 и 11
Он знает, когда Crush закончил — и когда спрашивает
У хуков Crush всего одно событие — перед запуском инструмента. Но Crush ещё и сообщает состояние агента терминальному мультиплексору herdr, а NeuroSquad играет роль herdr для каждой карточки Crush.
workingсостояниеworking на первом выводе прогона. Значок карточки крутится, карточка «Команда» считает агента работающим. Учитываются только прогоны координатора — суб-агенты статус не двигают.
blockedсостояниеblocked при запросе разрешения. Карточка читает ожидающий вызов из базы Crush, и уведомление говорит Crush needs your permission: bash — rm -rf dist.
idleсостояниеidle, когда прогон завершился, отменён или упал. Уходит следующий промпт из очереди, ответ попадает в журнал, уведомление сообщает, что готово.
И его вопросы тоже
Инструмент question у Crush — не состояние herdr, поэтому пока идёт ход, карточка раз в секунду заглядывает в базу Crush: открытый вопрос выглядит как Crush is asking: Tabs or spaces?.
Подделать нельзя
Id панели каждой карточки несёт подпись этого запуска приложения; сообщение без неё отбрасывается.
И на Windows тоже
Crush шлёт отчёты через Unix-сокет, а Node под Windows слушать его не умеет — поэтому их принимает маленький слушатель на PowerShell. Без него карточка возвращается к наблюдению за терминалом.
Три вещи, которые Crush делает в NeuroSquad
Копии интерфейса приложения, шаг за шагом. Когда Crush просит разрешения, отвечаете вы.
Crush чинит падающий тест через подключённый терминал, останавливается на своём диалоге разрешения перед удалением папки и заканчивает — журнал заполняется сам.
Всё, что Crush умеет в NeuroSquad
Crush получает почти всё, что и Claude Code. Вот всё целиком — включая то, где Crush работает иначе, и то, чего сделать нельзя.
- 01
Знает своё состояние
О каждом ходе карточке сообщают отчёты самого Crush — ничего не угадывается.
«Закончил» и «ждёт» — разные вещи
С заданным
Документация: «Закончил» и «ждёт» — разные вещиHERDR_ENVCrush сообщаетworking,blockedиidle, каждый раз с id сессии. NeuroSquad слушает каждую карточку — точное начало хода, ожидание разрешения и конец.Уведомление говорит, что нужно
Уведомление называет ожидающий вызов —
Документация: Уведомление говорит, что нужноCrush needs your permission: bash — rm -rf dist— или вопрос, который задаёт Crush. Одно на агента; ждущее висит, пока вы не ответите.Отменённые и упавшие прогоны заканчиваются
Двойной Escape отменяет прогон в Crush; следом приходит
Документация: Отменённые и упавшие прогоны заканчиваютсяidle, и карточка отмечает ход законченным, а Crush продолжает работать. Упавший прогон заканчивается так же.Продолжает с того же места
Crush сам выдаёт id сессий — карточка выбрать свой не может. Каждый отчёт несёт id, поэтому следующий запуск —
Документация: Продолжает с того же местаcrush --session <id>.Карточка «Команда»
Все ИИ-агенты воркспейса на одной карточке, с моделью — а до первого хода с большой моделью из вашего конфига Crush.
Документация: Карточка «Команда»
- 02
Работает через холст
Стрелка от карточки — это набор инструментов через MCP-сервер NeuroSquad.
Стрелки — это инструменты
Стрелка к браузеру, терминалу, заметке или другому агенту даёт Crush
Документация: Стрелки — это инструментыmcp_neurosquad_browser_*,terminal_*,note_*илиagent_*— заранее разрешённые хукомPreToolUse, так что собственные инструменты NeuroSquad никогда не спрашивают.Новые стрелки: список сразу
Crush 0.92 не узнаёт, что список инструментов сервера изменился. Поэтому все встроенные инструменты перечислены с самого начала, а стрелки решают в момент вызова. Новые стрелки к скиллам и установленным серверам действуют со следующего запуска карточки.
Документация: Новые стрелки: список сразуРежим карточек
Документация: Режим карточекbash,job_output,job_kill,download,fetch,agentic_fetchиsourcegraphвообще убираются из инструментов Crush — не запрещены, а отсутствуют, — так что--yoloих не вернёт.MCP-серверы из реестра
Установленные серверы приходят вторым сервером без предварительного разрешения: перед каждым вызовом Crush показывает свой диалог разрешения.
Документация: MCP-серверы из реестраСкиллы со skills.sh
Стрелка к карточке скилла даёт Crush
Документация: Скиллы со skills.shskill_loadсо списком скиллов и тем, когда их применять, — со следующего запуска карточки.
- 03
Для долгих прогонов
Контекст, Summarize Session, лимиты и живой журнал — всё на карточке.
Индикатор контекста
Токены промпта последнего запроса — из базы Crush; размер окна — из конфига карточки, ваших конфигов или списка провайдеров Crush. С 80% кольцо становится жёлтым.
Документация: Индикатор контекста«Сжать» — это Summarize Session
Кнопка «Сжать» открывает палитру команд Crush и запускает за вас Summarize Session.
Документация: «Сжать» — это Summarize SessionПродолжает после лимита
Ход, закончившийся ошибкой квоты или лимита запросов, показывает лимит на карточке; если провайдер называет время сброса, карточка отсчитывает его и отправляет «continue».
Документация: Продолжает после лимитаОчередь промптов
Выстройте следующие сообщения: каждое уходит, когда Crush сообщает
Документация: Очередь промптовidle, — а не в паузе посреди мысли.Журнал и передача
Последний ответ Crush читается из
Документация: Журнал и передачаcrush.dbкарточки: заметка-журнал, передача новому агенту,agent_wait, свои карточки и Telegram получают настоящий ответ Crush.
- 04
Работает в команде
У каждой карточки своя папка данных Crush, так что сколько угодно карточек делят один проект.
Своя папка данных у каждой карточки
Crush блокирует свою папку данных, поэтому две карточки в одном проекте не смогли бы обе работать на
Документация: Своя папка данных у каждой карточки.crush/. У каждой карточки своя папка — с её слоем конфига и её сессиями; ни один ваш файл Crush не переписывается.Изолированные worktree
Дайте агенту свой git worktree — и параллельные агенты никогда не правят одни и те же файлы. Папка данных привязана к карточке, а не к папке проекта.
Документация: Изолированные worktreeДобавить ревьюера
Один клик запускает агента на другом CLI в том же worktree с промптом проверить, ничего не редактируя. Crush тоже может быть таким ревьюером.
Документация: Добавить ревьюераОпасный режим, по карточке
Для прогона, которому вы доверяете, карточка запускает Crush с
Документация: Опасный режим, по карточке--yolo: без диалогов разрешения. По умолчанию выключен; режим карточек при этом сохраняется.Инструкции
Crush сам читает
Документация: ИнструкцииAGENTS.md,CRUSH.mdиCLAUDE.md, а инструкции сессии NeuroSquad приходят в его системный промпт от MCP-сервера.
- 05
Расход, контроль и доступ
Сколько он тратит, сколько ему можно, на какой модели работает и как до него дотянуться.
Стоимость и запросы — без токенов
Стоимость карточки — собственный итог Crush, включая суб-агентов, и каждый запрос к модели учтён. Crush перезаписывает счётчики токенов на каждом запросе, поэтому токены по запросам узнать нельзя — в колонке прочерк, а не догадка.
Документация: Стоимость и запросы — без токеновБюджет-тормоз
Лимит на воркспейс. Сверх него каждый Crush получает двойной Escape — прогон отменён, Crush продолжает работать (Ctrl+C открыл бы его диалог выхода), — и автоматические промпты останавливаются.
Документация: Бюджет-тормозМодели OpenRouter
Встроенный провайдер
Документация: Модели OpenRouteropenrouterCrush в собственном конфиге карточки — с ключом из переменной, которую видит только эта карточка, и заголовками атрибуции NeuroSquad.С телефона
Отсканируйте QR-код, и весь холст откроется в браузере телефона: читайте TUI Crush, отвечайте в его диалоге, отправляйте следующий промпт.
Документация: С телефонаСтавится мастером
Мастер установки может поставить Crush за вас (
Документация: Ставится мастеромnpm install -g @charmland/crush). NeuroSquad запускает егоcrush.exeнапрямую, а не через npm-шим.
Кто ждёт и сколько это стоило
Две карточки, которые отвечают на самые частые вопросы, когда одновременно работают несколько агентов Crush.
Карточка «Команда»
Каждый агент воркспейса со статусом, моделью и временем хода. Ждущие вас — первыми, вместе с тем, о чём спрашивает Crush.
coupon-fixCrushclaude-sonnet-4.5Crush needs your permission: bash — rm -rf distЖдёт вас2:34
api-migrationCrushclaude-sonnet-4.5Перевести маршруты на новый клиентРаботает9:33
lint-setupCrushopenrouter/autoCrush is asking: Tabs or spaces?Ждёт вас1:17
docs-passCrushopenrouter/autoОбновить READMEЗакончил5 мин. назад
Расход и стоимость
Читается из собственного `crush.db` каждой карточки. Стоимость и запросы точны и складываются в итог — токенов нет, потому что Crush не хранит их по запросам.
| Агент | Токены | Стоимость | ||
|---|---|---|---|---|
| coupon-fix | — | 2,33 $ | ||
| api-migration | — | 1,41 $ | ||
| docs-pass | — | 0,18 $ | ||
| Итого | 86 | — | 3,92 $ |
Настоящий Crush и своя папка
NeuroSquad запускает тот же `crush`, что и вы сами, — в настоящем терминале внутри карточки. Вот всё, что он добавляет:
Никаких секретов на диске
Конфиг называет $NEUROSQUAD_MCP_TOKEN; Crush подставляет его из окружения карточки.
Сразу в поле ввода
Свежая папка данных открылась бы на экране Crush «инициализировать проект?» и проглотила бы первый промпт, поэтому ответ дан заранее. AGENTS.md читается в любом случае.
Найдёт, куда бы вы его ни поставили
Сначала релизный crush.exe (winget, scoop, go install), потом бинарник npm-пакета — запускается напрямую.
Crush в NeuroSquad: ответы
Дайте Crush холст
Бесплатно для Windows 10 и 11. Ваш код, ваши провайдеры и ваши расходы остаются на вашем компьютере.