CLI commands
Агенты
openclaw agents
Управление изолированными агентами (рабочими пространствами, аутентификацией и маршрутизацией). Запуск openclaw agents без подкоманды эквивалентен openclaw agents list.
См. также:
- Маршрутизация между несколькими агентами
- Рабочее пространство агента
- Настройка Skills: настройка видимости навыков.
Примеры
openclaw agents listopenclaw agents list --bindingsopenclaw agents add work --workspace ~/.openclaw/workspace-workopenclaw agents add work --workspace ~/.openclaw/workspace-work --bind telegram:*openclaw agents add ops --workspace ~/.openclaw/workspace-ops --bind telegram:ops --non-interactiveopenclaw agents bindingsopenclaw agents bind --agent work --bind telegram:opsopenclaw agents unbind --agent work --bind telegram:opsopenclaw agents set-identity --workspace ~/.openclaw/workspace --from-identityopenclaw agents set-identity --agent main --avatar avatars/openclaw.pngopenclaw agents delete workНабор команд
agents list
Параметры: --json, --bindings (включает полные правила маршрутизации, а не только количество и сводки по каждому агенту).
agents add [name]
Параметры: --workspace <dir>, --model <id>, --agent-dir <dir>, --bind <channel[:accountId]> (можно указывать несколько раз), --non-interactive, --json.
- Передача любого явного флага добавления переводит команду в неинтерактивный режим.
- Для неинтерактивного режима требуются как имя агента, так и
--workspace. mainзарезервирован и не может использоваться как идентификатор нового агента.- В интерактивном режиме данные аутентификации инициализируются копированием только переносимых статических учётных данных (профилей
api_keyи статических профилейtoken), если для учётных данных не отключено копирование с помощьюcopyToAgents: false; профили с токенами обновления OAuth не копируются, если провайдер явно не разрешил это с помощьюcopyToAgents: true. Если копирование не выполняется, OAuth остаётся доступен только посредством сквозного наследования из реального хранилища агентаmain. Если настроенный агент по умолчанию — неmain, отдельно выполните вход для профилей OAuth нового агента.
agents bindings
Параметры: --agent <id>, --json.
agents bind
Параметры: --agent <id> (по умолчанию используется текущий агент по умолчанию), --bind <channel[:accountId]> (можно указывать несколько раз), --json.
agents unbind
Параметры: --agent <id> (по умолчанию используется текущий агент по умолчанию), --bind <channel[:accountId]> (можно указывать несколько раз), --all, --json. Принимает либо --all, либо одно или несколько значений --bind, но не оба варианта одновременно.
agents set-identity
Параметры: --agent <id>, --workspace <dir>, --identity-file <path>, --from-identity, --name <name>, --theme <theme>, --emoji <emoji>, --avatar <value>, --json. См. раздел Настройка идентичности ниже.
agents delete <id>
Параметры: --force, --json.
mainнельзя удалить.- Без
--forceтребуется интерактивное подтверждение (в сеансе без TTY команда завершится ошибкой; запустите её повторно с--force). - Каталоги рабочего пространства, состояния агента и расшифровок сеансов перемещаются в корзину, а не удаляются безвозвратно.
- Когда Gateway доступен, удаление выполняется через Gateway, чтобы очистка конфигурации и хранилища сеансов использовала тот же механизм записи, что и трафик среды выполнения. Если Gateway недоступен, CLI использует резервный автономный локальный путь.
- Если рабочее пространство другого агента совпадает с этим путём, находится внутри этого рабочего пространства или содержит его, рабочее пространство сохраняется, а
--jsonсообщаетworkspaceRetained,workspaceRetainedReasonиworkspaceSharedWith.
Привязки маршрутизации
Используйте привязки маршрутизации, чтобы закрепить входящий трафик канала за определённым агентом.
Если вы также хотите задать разные видимые навыки для каждого агента, настройте agents.defaults.skills и agents.list[].skills в openclaw.json. См. Настройка Skills и Справочник по конфигурации.
Просмотр привязок:
openclaw agents bindingsopenclaw agents bindings --agent workopenclaw agents bindings --jsonДобавление привязок:
openclaw agents bind --agent work --bind telegram:ops --bind discord:guild-aПривязки также можно добавить при создании агента:
openclaw agents add work --workspace ~/.openclaw/workspace-work --bind telegram:* --bind discord:*Если опустить accountId (--bind <channel>), OpenClaw определит его с помощью хуков настройки плагина, принудительной привязки учётной записи или количества настроенных учётных записей канала.
Если опустить --agent для bind или unbind, OpenClaw выберет текущего агента по умолчанию.
Формат --bind
| Формат | Значение |
|---|---|
--bind <channel>:* |
Соответствует всем учётным записям канала. |
--bind <channel>:<account> |
Соответствует одной учётной записи. |
--bind <channel> |
Соответствует только учётной записи по умолчанию, если CLI не может безопасно определить область учётной записи, специфичную для плагина. |
Поведение области привязки
- Сохранённая привязка без
accountIdсоответствует только учётной записи канала по умолчанию. accountId: "*"служит резервным вариантом для всего канала (всех учётных записей) и имеет меньшую специфичность, чем явная привязка учётной записи.- Если у того же агента уже есть соответствующая привязка канала без
accountId, а затем вы создаёте привязку с явным или определённымaccountId, OpenClaw обновляет существующую привязку на месте, а не добавляет дубликат.
Примеры:
# соответствует всем учётным записям каналаopenclaw agents bind --agent work --bind telegram:* # соответствует определённой учётной записиopenclaw agents bind --agent work --bind telegram:ops # начальная привязка только к каналуopenclaw agents bind --agent work --bind telegram # последующее обновление до привязки с областью учётной записиopenclaw agents bind --agent work --bind telegram:alertsПосле обновления маршрутизация для этой привязки ограничивается telegram:alerts. Если вам также нужна маршрутизация для учётной записи по умолчанию, добавьте её явно (например, --bind telegram:default).
Удаление привязок:
openclaw agents unbind --agent work --bind telegram:opsopenclaw agents unbind --agent work --allФайлы идентичности
Каждое рабочее пространство агента может содержать IDENTITY.md в корне рабочего пространства:
- Пример пути:
~/.openclaw/workspace/IDENTITY.md set-identity --from-identityсчитывает данные из корня рабочего пространства (или из явно указанного--identity-file).
Пути к аватарам разрешаются относительно корня рабочего пространства и не могут выходить за его пределы даже через символическую ссылку.
Настройка идентичности
set-identity записывает поля в agents.list[].identity: name, theme, emoji, avatar (путь относительно рабочего пространства, URL-адрес HTTP(S) или URI данных).
--agentили--workspaceвыбирает целевого агента. Если--workspaceсоответствует нескольким агентам, команда завершается ошибкой и предлагает передать--agent.- Размер локальных файлов изображений аватаров с путями относительно рабочего пространства ограничен 2 МБ. URL-адреса HTTP(S) и URI
data:не проверяются на соответствие локальному ограничению размера файла. - Если явные поля идентичности не указаны, команда считывает данные идентичности из
IDENTITY.md.
Загрузка из IDENTITY.md:
openclaw agents set-identity --workspace ~/.openclaw/workspace --from-identityЯвное переопределение полей:
openclaw agents set-identity --agent main --name "OpenClaw" --emoji "🦞" --avatar avatars/openclaw.pngПример конфигурации:
{ agents: { list: [ { id: "main", identity: { name: "OpenClaw", theme: "space lobster", emoji: "🦞", avatar: "avatars/openclaw.png", }, }, ], },}