CLI commands
Узлы
openclaw nodes
Управление сопряжёнными узлами (устройствами) и вызов возможностей узлов.
См. также: Обзор узлов - Присутствие активного компьютера - Узлы камер - Узлы изображений
Общие параметры каждой подкоманды: --url <url>, --token <token>, --timeout <ms> (по умолчанию 10000), --json.
Состояние
openclaw nodes statusopenclaw nodes status --connectedopenclaw nodes status --last-connected 24hopenclaw nodes listopenclaw nodes describe --node <idOrNameOrIp>status и list принимают параметры --connected (только подключённые узлы) и --last-connected <duration> (например, 24h, 7d; только узлы, подключавшиеся в течение указанного периода). list выводит ожидающие и сопряжённые узлы в отдельных таблицах; строки сопряжённых узлов содержат время с момента последнего подключения (Last Connect). status выводит одну объединённую таблицу с возможностями, версией и сведениями о последнем вводе для каждого узла. Подключённый узел macOS сообщает о последнем вводе, только если предоставлено разрешение Accessibility, а самая актуальная строка помечается как active; см. Присутствие активного компьютера. describe выводит возможности, разрешения, активность, а также действующие и ожидающие команды вызова для одного узла.
Сопряжение
openclaw nodes pendingopenclaw nodes approve <requestId>openclaw nodes reject <requestId>openclaw nodes remove --node <id|name|ip>openclaw nodes rename --node <id|name|ip> --name <displayName>Эти команды управляют хранилищем node.pair.*, принадлежащим Gateway и отделённым от сопряжения устройств (openclaw devices approve), которое контролирует рукопожатие connect узла по WS. Связь между ними описана в разделе Узлы.
removeотзывает запись сопряжённой роли узла. Для узла на базе устройства эта команда отзывает рольnodeв хранилище сопряжения устройств и отключает его сеансы с ролью узла: устройство с несколькими ролями сохраняет свою строку и теряет только рольnode, а строка устройства только с ролью узла удаляется. Команда также удаляет все соответствующие устаревшие записи сопряжения узлов, принадлежащие Gateway.pendingтребует только область действияoperator.pairing.gateway.nodes.pairing.autoApproveCidrsможет пропустить этап ожидания для явно доверенного первичного сопряжения устройстваrole: node. По умолчанию отключено; повышение ролей не подтверждается.gateway.nodes.pairing.sshVerify(по умолчанию включено) автоматически подтверждает первичное сопряжение устройстваrole: node, если Gateway может проверить ключ устройства по SSH на хосте узла; первая поверхность возможностей подтверждается на том же этапе. См. Сопряжение узлов.- Требования к области действия
approveзависят от команд, объявленных в ожидающем запросе:- запрос без команд:
operator.pairing - обычные команды узла:
operator.pairing+operator.write - команды, требующие административных прав (
system.run,system.run.prepare,system.which,browser.proxy,fs.listDirиsystem.execApprovals.get/set):operator.pairing+operator.admin
- запрос без команд:
- Область действия
remove:operator.pairingпозволяет удалять строки узлов, не принадлежащих оператору; вызывающей стороне с токеном устройства, отзывающей собственную роль узла на устройстве с несколькими ролями, дополнительно требуетсяoperator.admin.
Вызов
openclaw nodes invoke --node <id> --command system.which --params '{"bins":["uname"]}'Флаги:
--command <command>(обязательно): например,canvas.eval.--params <json>: строка объекта JSON (по умолчанию{}).--invoke-timeout <ms>: время ожидания вызова узла (по умолчанию15000).--idempotency-key <key>: необязательный ключ идемпотентности.
system.run и system.run.prepare здесь заблокированы; для выполнения команд оболочки вместо них используйте инструмент exec с host=node. system.which разрешена через invoke.
Уведомления, push-уведомления, местоположение и экран
openclaw nodes notify --node <id> --title "Build" --body "Done" --priority timeSensitiveopenclaw nodes push --node <id> --title "OpenClaw" --environment sandboxopenclaw nodes location get --node <id> --accuracy preciseopenclaw nodes screen record --node <id> --duration 10s --fps 10 --out ./clip.mp4notifyотправляет локальное уведомление на узел, объявляющийsystem.notify, включая узлы macOS, iOS, Android и прямые узлы watchOS. Для прямой доставки на watchOS приложение OpenClaw должно быть активно. Требуется--titleили--body. Параметры:--sound <name>,--priority <passive|active|timeSensitive>,--delivery <system|overlay|auto>(по умолчаниюsystem),--invoke-timeout <ms>(по умолчанию15000).pushотправляет тестовое push-уведомление APNs на узел iOS. Параметры:--title <text>(по умолчаниюOpenClaw),--body <text>,--environment <sandbox|production>для переопределения обнаруженной среды APNs.location getполучает текущее местоположение узла. Параметры:--max-age <ms>(повторное использование кэшированных координат),--accuracy <coarse|balanced|precise>,--location-timeout <ms>(по умолчанию10000),--invoke-timeout <ms>(по умолчанию20000).screen recordзаписывает короткий клип и выводит путь к сохранённому файлу (либо записывает JSON при использовании--json). Параметры:--screen <index>(по умолчанию0),--duration <ms|10s>(по умолчанию10000),--fps <fps>(по умолчанию10),--no-audio,--out <path>,--invoke-timeout <ms>(по умолчанию120000).
Для команд камеры и Canvas предусмотрена отдельная документация: Узлы камер, Canvas. Canvas реализован встроенным экспериментальным плагином Canvas; ядро сохраняет openclaw nodes canvas как точку монтирования для совместимости.