CLI commands

Агенты

openclaw agents

Управление изолированными агентами (рабочими пространствами, аутентификацией и маршрутизацией). Запуск openclaw agents без подкоманды эквивалентен openclaw agents list.

См. также:

Примеры

bash
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 и Справочник по конфигурации.

Просмотр привязок:

bash
openclaw agents bindingsopenclaw agents bindings --agent workopenclaw agents bindings --json

Добавление привязок:

bash
openclaw agents bind --agent work --bind telegram:ops --bind discord:guild-a

Привязки также можно добавить при создании агента:

bash
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 обновляет существующую привязку на месте, а не добавляет дубликат.

Примеры:

bash
# соответствует всем учётным записям канала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).

Удаление привязок:

bash
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:

bash
openclaw agents set-identity --workspace ~/.openclaw/workspace --from-identity

Явное переопределение полей:

bash
openclaw agents set-identity --agent main --name "OpenClaw" --emoji "🦞" --avatar avatars/openclaw.png

Пример конфигурации:

json5
{  agents: {    list: [      {        id: "main",        identity: {          name: "OpenClaw",          theme: "space lobster",          emoji: "🦞",          avatar: "avatars/openclaw.png",        },      },    ],  },}

См. также

Was this useful?
On this page

On this page