CLI arclip
arclip переносит проект в терминал. Агент, которым вы уже пользуетесь, — Claude Code, Codex,
Cursor — собирает сцену теми же инструментами, что и ассистент редактора, и проверяет свою работу,
прежде чем сказать, что всё готово. Скрипты и CI пользуются теми же командами.
Каждая команда — это один вызов MCP-сервера, поэтому CLI не умеет ничего сверх инструментов редактора и никогда от них не расходится.
Установка
npm i -g arclip
Нужен Node 18 или новее. Для arclip render --real также нужны Node 22 и Google Chrome или
Chromium на машине.
Быстрый старт
arclip login # sign in once, in the browser
arclip link <project-id> # in your folder: set it up for agents
arclip dev # a QR code — the live draft on your phone
claude # or codex, or Cursor — ask for the scene
arclip verify && arclip render -o shot.png
arclip publish # when you are happy
arclip projects показывает проекты, которые вы можете открыть. Id — это ещё и последняя часть
адреса редактора: editor.arclip.design/project/<project-id>.
Вход
arclip login открывает в браузере ту же страницу разрешений, которую видит MCP-клиент. Снимите
галочки с того, что не хотите выдавать, нажмите Allow — и CLI получит токен. arclip login --token arclip_… вместо этого сохраняет токен, который вы создали сами; --no-browser только
печатает адрес, чтобы вы открыли его в браузере на той же машине.
Токен хранится в пользовательском конфиге (~/.config/arclip), прочитать его можете только вы, и
отправляется он только на тот сервер, который его выдал. arclip whoami показывает аккаунт, сервер
и разрешения, которые сейчас используются; arclip logout забывает токен. Отозвать его можно в
любой момент в аккаунте, в разделе API & MCP.
Что настраивает arclip link
Запустите его в любой папке — новой или в уже существующем репозитории:
| Файл | Для чего |
|---|---|
.arclip/project.json | к какому проекту относится эта папка — его можно спокойно коммитить |
CLAUDE.md | распорядок агента: собрать, проверить, отрендерить, прогнать плейтест, отчитаться — и никогда не публиковать без просьбы |
.mcp.json | MCP-сервер AR Clip, запускаемый через CLI и закреплённый за этим проектом; токена внутри нет |
.claude/settings.json | разрешает агенту читать эту документацию и запускать проверки, которые ничего не меняют, без подтверждения; на публикацию он спросит |
Уже существующие файлы дополняются, а не перезаписываются; имеющийся CLAUDE.md сохраняется, если
не передать --force.
arclip clone <project-id> [folder] делает то же самое в новой папке и вдобавок выгружает скрипты и
UI-карточки проекта в виде файлов.
Скрипты и UI-карточки как файлы
arclip pull # server → folder: scripts/**/*.ts and ui/**/*.json
arclip diff # what you changed, line by line
arclip push # folder → server
push сначала компилирует каждый скрипт и ничего не отправляет, если проект на сервере изменился
после вашего последнего pull: сделайте pull, посмотрите на разницу и снова push (--force
перезаписывает). Новые файлы создаются на сервере; если удалить файл локально, там он не удалится.
pull не трогает файл, изменённый с обеих сторон, и сообщает о нём.
Сама сцена — объекты, компоненты, события — остаётся на платформе, где её правят вместе; в виде файлов она не выгружается.
Сцена на вашем телефоне
arclip dev
печатает ссылку и QR-код. Отсканируйте его — и черновик откроется в браузере телефона, без входа и без публикации. Терминал продолжает работать: о каждой правке — от агента или от коллеги в редакторе — появляется сообщение, сцена перепроверяется, а телефон предлагает новую версию. Запущенная AR-сессия предлагает перезагрузиться, а не подменяет сцену прямо у вас на глазах.
arclip dev --watch вдобавок отправляет scripts/ и ui/ на сервер при каждом сохранении.
Ссылка перестаёт работать через --hours часов (по умолчанию 12, максимум 72).
Черновик открывается в браузере телефона, а не в приложении AR Clip.
Проверка работы
| Команда | Что она сообщает |
|---|---|
arclip verify | то, что нормально сохраняется, но молча не работает в плеере, — отсутствующие файлы, неизвестные события, тёмная сцена |
arclip render | PNG, отрисованный на сервере: расстановка, масштаб, цвета, текстуры |
arclip render --real | опубликованный рантайм в headless Chrome на вашей машине — ровно то, что видит посетитель |
arclip playtest | запускает скрипты и физику и нажимает все элементы управления, какие найдёт |
arclip test | прогоняет ваши сценарии, tests/*.flow.json |
Каждая из них завершается с кодом 1, если что-то не прошло, так что агент — или CI — может на этом остановиться.
render принимает --view front|side|back|top|three-quarter, --entity <id>, чтобы взять в кадр
один объект, --size 960x720 и -o file.png. Серверный рендер не рисует скрипты, UI-карточки и
эффекты; --real рисует — для 3D-сцен и сцен на поверхности. Сценам, которые начинаются с камеры, —
маркеры, лица, VPS — нужно устройство.
playtest и test проигрывают сцену в редакторе, поэтому проект должен быть открыт во вкладке
браузера.
Сценарные тесты (flows)
Сценарий — это последовательность действий с ожидаемыми результатами, по одному на файл в
tests/. arclip link добавляет стартовый.
{
"name": "door opens",
"steps": [
{ "frames": 30 },
{ "tap": "Door button" },
{ "wait": 500 },
{ "expect": { "target": "Door", "position": { "x": 1.2, "tolerance": 0.05 } } },
{ "key": "KeyW", "ms": 400 },
{ "expect": { "target": "Player", "moved": true } },
{ "ui": "HUD", "action": "restart" },
{ "expect": { "noCrashes": true } }
]
}
| Шаг | Что делает |
|---|---|
frames | проматывает указанное число тиков |
wait | проматывает указанное число миллисекунд |
key + ms | зажимает клавишу, потом отпускает |
tap | нажимает на объект |
ui + action | запускает действие на UI-карточке |
input + target, payload | отправляет любой триггер скрипта |
expect | проверяет exists, visible, position, moved, поле component или noCrashes |
Цели — это имена объектов в том виде, в каком их показывает редактор, или id. Каждый сценарий выполняется на свежей копии сцены, а время идёт только фиксированными шагами по 1/60 с — сценарий, который прошёл один раз, будет проходить всегда.
arclip test прогоняет их все; arclip test "door opens" — один.
Публикация и собственный хостинг
arclip publish публикует проект и печатает ссылку и QR-код; перед этим он спрашивает
подтверждение (--yes в CI). arclip status показывает сцены и состояние публикации;
arclip open открывает опубликованную ссылку.
arclip export site && arclip serve site
export записывает одну папку — index.html, сцену в виде project.json, все файлы, которые она
использует, шрифты и плеер, — и она запускается с любого статического хостинга: вашего сервера, S3,
интранета. С CDN AR Clip по-прежнему загружаются только запасные глифы для письменностей, которых
нет в шрифтах (CJK, арабская, …). Ассеты из общей библиотеки сохраняют свои лицензионные условия.
Агенты и другие MCP-клиенты
arclip mcp serve — локальный мост к MCP-серверу, закреплённый за привязанным проектом; именно его
запускает .mcp.json. arclip mcp config печатает эту запись — для клиента, который ведёт
собственный список серверов.
Любой инструмент доступен одной командой:
arclip tools # what this account can call
arclip call get_entity '{"entityId":"…"}' # arguments as JSON, or "-" for stdin
Скрипты и CI
- Результат идёт в stdout, диагностика — в stderr;
--jsonделает любой результат машиночитаемым. - Код выхода
0— успех,1— не прошла проверка или инструмент,2— ошибка в использовании или со входом. - В CI входить не нужно — задайте токен и проект в переменных окружения:
export ARCLIP_TOKEN=arclip_…
export ARCLIP_PROJECT=<project-id>
arclip verify --json
arclip render --view top -o top.png
ARCLIP_API направляет CLI на другой сервер, как и --api. -p, --project и --space выбирают
проект и сцену для одной команды.
Ограничения
- Сцена живёт на платформе; скрипты и UI-карточки — единственное, с чем вы работаете как с файлами.
playtestиtestтребуют, чтобы проект был открыт во вкладке редактора, в том числе в CI.arclip render— это предпросмотр; когда важен точный вид, используйте--realили устройство.- Что может делать агент, определяют разрешения вашего токена и ваш тариф. AI-генерация тратит кредиты вашей команды, как и в редакторе.
Дальше: Для чего здесь годятся агенты