Все агентские CLI
ZCode в NeuroSquad

ZCode,а вокруг — холст

Запускайте сколько угодно агентов ZCode — в каждой карточке настоящий zcode. Собственные хуки ZCode сообщают о каждом ходе и каждом вопросе, стрелки дают ему терминалы, заметки и других агентов, а каждая карточка продолжает свою сессию и учитывает каждый свой запрос.

Официальный сайтzcode.z.ai
  • Настоящий zcode, ваши провайдеры
  • Ваш ~/.zcode только читается
  • Бесплатно, для Windows и macOS
Хуки жизненного цикла

Он знает, когда ZCode закончил — и когда спрашивает

Тихий терминал может значить «готово», а может — «жду вашего разрешения». NeuroSquad не гадает: в настройках каждой карточки — собственные хуки ZCode, и ZCode дожидается каждого из них.

UserPromptSubmitхук
Работает

Вы нажимаете Enter. Значок карточки крутится, карточка «Статус команды» считает агента работающим, а уведомление о прошлом вопросе снимается.

PermissionRequestхук
Ждёт вас

ZCode спрашивает перед вызовом. Уведомление называет его — ZCode needs your permission: Bash rm -rf dist — и держится, пока вы не ответите; PostToolUse этого инструмента возвращает карточку в «работает».

Stopхук
Закончил

Ход завершён. Уходит следующий промпт из очереди, журнал получает ответ, а уведомление сообщает, что готово.

Вопросы и планы тоже

AskUserQuestion и ExitPlanMode ZCode присылает через тот же PermissionRequest, поэтому уведомление гласит ZCode is asking: Tabs or spaces?, а карточка ждёт вас.

Esc — по клавише

Escape отменяет ход («Turn cancelled.») без всякого хука, поэтому карточка понимает это по самой клавише. Ctrl+C в простаивающем ZCode закрывает его — карточка его никогда не отправляет.

Субагенты её не сдвигают

Субагент работает в собственной сессии (sess_subagent_…); его хуки статус карточки не меняют.

Посмотреть в работе

Три вещи, которые вы будете делать с ZCode

Реплики приложения, шаг за шагом. Когда ZCode спрашивает, отвечаете вы.

ZCode чинит упавший тест через карточку терминала, останавливается на своём окне разрешения перед удалением папки и заканчивает — журнал пишется сам.

Всё, что он получает

Всё, что ZCode умеет в NeuroSquad

Измерено на среде выполнения ZCode 0.16.9 через команду zcode из zcode-app-cli. Почти всё здесь — собственное у ZCode: хуки, MCP, сессии, журнал расхода. Где NeuroSquad пришлось что-то достроить или где это невозможно, карточка так и говорит.

  • 01

    Знает своё состояние

    Собственные хуки ZCode сообщают о каждом ходе, разрешении и вопросе — ничего не угадывается.

  • «Закончил» и «ждёт» — разные вещи

    В настройках каждой карточки — process-хуки ZCode: SessionStart, UserPromptSubmit, PermissionRequest, Stop. ZCode дожидается каждого, так что карточка узнаёт о каждом ходе сразу.

    Документация: «Закончил» и «ждёт» — разные вещи
  • Уведомление говорит, что нужно

    Уведомление называет вызов — ZCode needs your permission: Write notes.md — или вопрос ZCode. Одно на агента; ждущее держится, пока вы не ответите.

    Документация: Уведомление говорит, что нужно
  • Достроено NeuroSquad

    Esc, а не Ctrl+C

    Escape отменяет идущий ход; хука на это у ZCode нет, поэтому карточка понимает это по клавише. Ctrl+C в простаивающем ZCode закрывает его, так что ни бюджет-тормоз, ни ряд клавиш телефона его не отправляют.

    Документация: Esc, а не Ctrl+C
  • Сессии переживают перезапуск

    ZCode заводит сессию на первом промпте, флага выбрать id у него нет; SessionStart сообщает id, и следующий запуск — zcode --resume <id>. Удалённая сессия сама сменяется новой.

    Документация: Сессии переживают перезапуск
  • Карточка «Статус команды»

    Все ИИ-агенты воркспейса на одной карточке — со статусом, моделью и временем хода.

    Документация: Карточка «Статус команды»
  • 02

    Работает через холст

    Стрелка от карточки — набор инструментов через собственный MCP-клиент ZCode.

  • Стрелки — это инструменты

    Настройки карточки добавляют MCP-сервер NeuroSquad, токен — подстановкой. Стрелка к терминалу, заметке, браузеру или агенту даёт ZCode их инструменты.

    Документация: Стрелки — это инструменты
  • Свои инструменты NeuroSquad не спрашивают

    Каждый инструмент mcp__neurosquad__* — в permission.allowedTools карточки, поэтому они выполняются без окна. Всё остальное спрашивает, как ZCode спрашивает всегда.

    Документация: Свои инструменты NeuroSquad не спрашивают
  • Невозможно

    Список инструментов не обновляется

    ZCode читает инструменты сервера один раз и больше не перечитывает. Поэтому карточка получает все возможности NeuroSquad сразу, а стрелки решают в момент вызова.

    Документация: Список инструментов не обновляется
  • Режим карточек, который держится

    --disallowedTools убирает Bash, его фоновые оболочки и веб-инструменты из того, что видит модель, — и в yolo тоже, — а хук PreToolUse вдобавок их отклоняет.

    Документация: Режим карточек, который держится
  • MCP-серверы из реестра

    Установленный сервер приходит вторым сервером без предварительного одобрения: ZCode показывает своё окно перед каждым его вызовом.

    Документация: MCP-серверы из реестра
  • 03

    Для долгих прогонов

    Контекст, Compact, очередь промптов и журнал — прямо на карточке.

  • Счётчик контекста

    Токены последнего запроса против окна модели — по собственным правилам ZCode для этой модели. С 80% кольцо становится янтарным.

    Документация: Счётчик контекста
  • Compact

    Кнопка Compact на карточке отправляет собственную команду ZCode /compact; этот вызов тоже виден в расходе.

    Документация: Compact
  • Очередь промптов

    Выстройте следующие сообщения: каждое уходит после Stop, одной вставкой — короткое, многострочное или длинное.

    Документация: Очередь промптов
  • Журнал и передача

    Последний ответ читается из собственной базы сессий карточки: в подключённую заметку, в первый промпт нового агента, ведущему, который ждёт в agent_wait.

    Документация: Журнал и передача
  • Субагенты — отдельно

    Инструмент Agent в ZCode запускает субагента в дочерней сессии. Его запросы записываются на карточку и помечаются как запросы субагента в расходе, Run Stats и Agent Pulse.

    Документация: Субагенты — отдельно
  • 04

    Работает в команде

    У каждой карточки своя папка ZCode, поэтому сколько угодно агентов делят проект, но не список сессий.

  • Достроено NeuroSquad

    Своя папка ZCode у каждой карточки

    ZCode читает настройки из домашней папки, и переключателя для этого у него нет, поэтому небольшая предзагрузка направляет ZCode — и только его — на копию карточки: ваши настройки плюс настройки NeuroSquad. Секреты на диске остаются подстановками.

    Документация: Своя папка ZCode у каждой карточки
  • Достроено NeuroSquad

    Инструкции

    Инструкции MCP-сервера ZCode не читает, поэтому хук SessionStart карточки передаёт их как дополнительный контекст. Ваш AGENTS.md читается как всегда.

    Документация: Инструкции
  • Изолированные worktree

    Дайте агенту собственный git worktree, чтобы параллельные агенты не правили одни и те же файлы. Папка ZCode следует за карточкой.

    Документация: Изолированные worktree
  • Опасный режим, по карточке

    --mode yolo: без окон разрешения. Переключение перезапускает карточку с той же сессией; после выключения она продолжает в вашем обычном режиме. Режим карточек продолжает действовать.

    Документация: Опасный режим, по карточке
  • Смена модели и CLI

    Выбирайте модель для каждой карточки, позвольте ведущему агенту сменить её через agent_set_model или перенесите разговор в Claude Code и обратно — сессия переезжает вместе с ним.

    Документация: Смена модели и CLI
  • 05

    Расход, контроль и доступ

    Сколько он тратит, сколько ему можно, на какой модели работает и как до него добраться.

  • Точный расход, каждый запрос

    Читается из собственного журнала расхода ZCode: строка на каждый запрос, включая заголовки, сжатие и субагентов, с отдельным учётом чтения и записи кэша. У модели без известной цены — «без цены», никогда не $0.

    Документация: Точный расход, каждый запрос
  • Бюджет-тормоз

    При превышении лимита воркспейса каждый ZCode получает Escape — ход останавливается, ZCode продолжает работать, — а автоматические промпты ждут, пока вы не поднимете лимит.

    Документация: Бюджет-тормоз
  • OpenRouter и ваши серверы

    Собственный провайдер карточки для OpenRouter — с заголовками атрибуции NeuroSquad — или для вашего сервера (Chat Completions или Anthropic Messages). Ключ берётся из окружения карточки, никогда с диска.

    Документация: OpenRouter и ваши серверы
  • С телефона

    Отсканируйте QR-код — и весь холст откроется в браузере телефона: читайте терминал ZCode, отвечайте на его окно, отправляйте следующий промпт.

    Документация: С телефона
  • Пока не в WSL и не по SSH

    Предзагрузку и Node-лаунчер пришлось бы размещать внутри цели, поэтому пока карточки ZCode работают только на этом компьютере.

    Документация: Пока не в WSL и не по SSH
С одного взгляда

Кто ждёт и во что это обошлось

Две карточки, которые отвечают на самые частые вопросы, когда работают сразу несколько агентов ZCode.

Карточка «Статус команды»

Все агенты воркспейса со статусом, моделью и временем хода. Ждущие вас — первыми, с вопросом ZCode. Нажмите на статус, чтобы отфильтровать.

  • coupon-fixZCodeGLM-5.3ZCode needs your permission: Bash rm -rf distЖдёт вас2:34
  • api-migrationZCodeGLM-5.3Перевести маршруты на новый клиентРаботает14:58
  • lint-setupZCodeGLM-5.3-FlashZCode is asking: Tabs or spaces?Ждёт вас3:51
  • docs-passZCodez-ai/glm-4.6Обновить READMEЗакончил7 мин. назад

Расход и стоимость

Читается из журнала расхода в собственной базе ZCode каждой карточки, поэтому каждый запрос принадлежит ровно одной карточке. Токены и стоимость точно складываются в итог.

АгентТокеныСтоимость
coupon-fix1 184 3100,96 $
api-migration802 5540,64 $
docs-pass196 4020,11 $
Итого2 183 2661,71 $
Точно до пикодоллара; округляется только на экране.В каждой строке — и побочные вызовы, которые ZCode делает для этой карточки: заголовки, сжатие, субагенты.
Под капотом

Настоящий ZCode в собственной папке

NeuroSquad запускает тот же zcode, что и вы сами, в настоящем терминале внутри карточки. Вот всё, что он добавляет:

Что NeuroSquad добавляет к команде
❯ zcode
node --require <userData>/zcode/neurosquad-zcode-shim.cjs <zcode.js>каждый запусксобственный лаунчер ZCode с предзагрузкой, которая направляет его на настройки карточки
setting.json: yours + hooks, mcp.servers.neurosquad, permission.allowedToolsкаждый запускваши настройки плюс хуки, MCP-сервер и заранее одобренные инструменты NeuroSquad
ZCODE_SESSION_DB_PATH=<userData>/zcode/<card>/db.sqliteкаждый запусксобственные сессии карточки и её журнал расхода
ZCODE_PERSONAL_PROVIDER_CONFIG_FILE=<card>/provider_config.jsonкаждый запускваши провайдеры плюс провайдер карточки для OpenRouter или свой, если он есть
ZCODE_DISABLE_UPDATE_CHECK=1каждый запускбез уведомления об обновлении в карточке
--resume <sess_…>следующие запускисессия, о которой последним сообщил хук SessionStart
--disallowedTools Bash BashOutput KillShell WebFetch WebSearch web_search mcp__node_repl__jsрежим карточекинструменты оболочки и веба убраны из списка модели; вместо них — карточки холста
--mode yoloопасный режимбез окон разрешения

Ваш ~/.zcode только читается

Предзагрузка действует только внутри процессов ZCode: ваш файл настроек читается, пишется копия карточки. Метка в setting.json пользователя пережила все тестовые прогоны байт в байт.

Никаких секретов на диске

Токены и ключи в файлах карточки — подстановки ${NAME}: они заполняются в памяти и убираются из окружения ZCode, так что его команды оболочки их не видят.

Какой ZCode

Исходный код ZCode публикует Z.ai; команда zcode в npm — из zcode-app-cli, который поставляет среду выполнения Z.ai без изменений. Её ставит мастер установки; собственная сборка Z.ai запускается так же.

Вопросы

ZCode в NeuroSquad: ответы

Дайте ZCode холст

Бесплатно для Windows и macOS. Ваш код, ваши провайдеры и ваши расходы остаются у вас.

Windows 10 / 11 · macOS 12 и новее, Apple silicon и IntelВсе 22 агентских CLI