Zorox из терминала
Тот же продукт без браузера: загрузить документ, прочитать оформление образца, показать отклонения, дать агенту задачу. Полезно, когда работа повторяется или когда нужно увидеть, что лежит в файле на самом деле.
Установка
Нужен Node 20 или новее. Пакет ставится глобально — дальше команда zorox доступна в любом каталоге.
npm i -g zorox zorox login [email protected] zorox --help
Дальше в примерах команды пишутся коротко — whoami вместо npm run cli -- whoami.
Вход
Сессия сохраняется в ~/.config/zorox-cli/session.json и переживает перезапуск терминала. Пароля нет — только код из письма. В сборке и в кроне письмо получать некому: там задайте ключ ZOROX_API_KEY=zx_… из настроек продукта, раздел «Разработчику». Ключ отзывается по одному, не трогая остальные ваши доступы.
login
Войти по коду из письма.
key
Ключи для сборки и крона: `key list`, `key new "для чего"`, `key revoke <id>`. Выпущенный ключ показывается один раз: в базе хранится только его отпечаток.
zx_9Kd3… сборка не использовался
whoami
Чей это терминал, какой тариф и сколько осталось.
[email protected] · тариф free · баланс 25381 μUSD
Документы
docs
Список документов с идентификаторами и размерами.
new
Завести документ по форме из каталога и сразу заполнить его: `new --template raspiska "Иванов занял у Петрова 50 000 до 1 марта"`. Без рассказа создаётся пустой бланк.
✓ 6f2c… Расписка 02.09.2026.docx
upload
Загрузить .docx в облако.
download
Скачать документ в файл.
delete
Удалить документ.
Что внутри файла
Разбор идёт по распакованному DOCX, а не по тому, как файл выглядит в редакторе: видно то, что увидит нормоконтроль.
inspect
Абзацы, шрифты, поля страницы, таблицы, картинки. И сразу скажет, если файл вообще не DOCX.
абзацев: 19 таблиц: 0 картинок: 0 колонтитулы: 0 верх / 0 низ поля (см): верх 2.54, низ 2.54, лево 2.54, право 2.54 красная строка: нет интервал: не задан ориентация: книжная жирных прогонов: 6
style
Прочитать оформление образца: что распозналось и что распознать не удалось. С флагом `--save "Название"` оформление остаётся у вас и дальше применяется по слагу. Сохранённое приватно: образец чужой, публиковать его молча нельзя.
распознано: шрифт, кегль, выравнивание { "paragraph": { "font": "Arial", "size": 11, "align": "left" } }check
Показать отклонения, ничего не меняя. Проверяется только то, что образец действительно задаёт.
сверка с образцом: 8 абз. основного текста сверялось: шрифт, кегль, выравнивание отклонений нет
templates
Состояние каталога шаблонов: формат по сигнатуре, число полей, замечания.
не открывается: 13 · с полями: 1 · требуют внимания: 29
Агент
Ход агента идёт по-настоящему: он читает документ, предлагает правки и применяет их тем же кодом, что и браузер. Ход стоит денег с баланса.
chat
Один ход агента с применением правок.
применено: 1 · не легло: 0 · подтверждений: 1 ✓ сохранён в облако
apply
Применить готовые команды без агента — бесплатно.
matrix
Прогон сценариев: маленький документ, живой ход агента, проверка по распакованному DOCX — не по ответу агента. С --repeat N считает, как часто один и тот же запрос даёт разное.
replay
Прогон применения по записанным ходам: без сети и без модели.
fixtures
Собрать маленькие документы — по одной возможности на файл.
Флаги хода агента
- --model free | pro | max
- Слот модели. По умолчанию Быстрая; тариф может не пустить. Прежние имена (haiku/sonnet/opus) тоже принимаются.
- --no-save
- Не сохранять в облако. По умолчанию сохраняет.
- --out <файл>
- Записать результат ещё и на диск.
- --diff
- Показать, что именно изменилось в файле.
- --reject
- Отклонять карточки подтверждения — сухой прогон.
- --thread <id>
- Продолжить существующий разговор.
Коды возврата
Их читают скрипты, поэтому это часть договора, а не деталь вывода.
- 0
- сделано
- 1
- не получилось: нет сессии, файл не читается, сеть
- 2
- команда отработала, но ничего не изменилось — агент не применил ни одной правки или проверка нашла отклонения
Если что-то пошло не так
Всё перечисленное встречено вживую, а не придумано для полноты.
- unknown compression type 3332
- старый .doc под именем .docx. С 24.08 CLI говорит это словами, но чужие инструменты — нет: число это байты заголовка OLE2.
- 403 model_not_in_plan
- слот не входит в тариф: pro требует Pro, max — Max.
- 401 на любой команде
- сессия истекла — войдите заново. Токен лежит в ~/.config/zorox-cli/session.json без имени куки: если вписать его руками вместе с zorox_auth=, получится двойной префикс и снова 401.
- правки исчезли после прогона
- документ был открыт в браузере: его автосохранение выкладывает свою копию поверх. Закройте вкладку перед работой из терминала.