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 не спрашивают
Каждый инструмент
Документация: Свои инструменты NeuroSquad не спрашиваютmcp__neurosquad__*— вpermission.allowedToolsкарточки, поэтому они выполняются без окна. Всё остальное спрашивает, как ZCode спрашивает всегда.- Невозможно
Список инструментов не обновляется
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
Выбирайте модель для каждой карточки, позвольте ведущему агенту сменить её через
Документация: Смена модели и CLIagent_set_modelили перенесите разговор в Claude Code и обратно — сессия переезжает вместе с ним.
- 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-fix | 1 184 310 | 0,96 $ | ||
| api-migration | 802 554 | 0,64 $ | ||
| docs-pass | 196 402 | 0,11 $ | ||
| Итого | 101 | 2 183 266 | 1,71 $ |
Настоящий ZCode в собственной папке
NeuroSquad запускает тот же zcode, что и вы сами, в настоящем терминале внутри карточки. Вот всё, что он добавляет:
Ваш ~/.zcode только читается
Предзагрузка действует только внутри процессов ZCode: ваш файл настроек читается, пишется копия карточки. Метка в setting.json пользователя пережила все тестовые прогоны байт в байт.
Никаких секретов на диске
Токены и ключи в файлах карточки — подстановки ${NAME}: они заполняются в памяти и убираются из окружения ZCode, так что его команды оболочки их не видят.
Какой ZCode
Исходный код ZCode публикует Z.ai; команда zcode в npm — из zcode-app-cli, который поставляет среду выполнения Z.ai без изменений. Её ставит мастер установки; собственная сборка Z.ai запускается так же.
ZCode в NeuroSquad: ответы
Дайте ZCode холст
Бесплатно для Windows и macOS. Ваш код, ваши провайдеры и ваши расходы остаются у вас.