acp
Запустите мост Agent Client Protocol (ACP), который взаимодействует со шлюзом OpenClaw. Эта команда использует ACP через stdio для IDE и пересылает промпты на шлюз через WebSocket. Она поддерживает соответствие сессий ACP ключам сессий шлюза.
Использование
openclaw acp
# Удаленный шлюз
openclaw acp --url wss://gateway-host:18789 --token <token>
# Удаленный шлюз (токен из файла)
openclaw acp --url wss://gateway-host:18789 --token-file ~/.openclaw/gateway.token
# Подключиться к существующему ключу сессии
openclaw acp --session agent:main:main
# Подключиться по метке (должна уже существовать)
openclaw acp --session-label "support inbox"
# Сбросить ключ сессии перед первым промптом
openclaw acp --session agent:main:main --reset-session
ACP клиент (отладка)
Используйте встроенный ACP клиент для проверки работы моста без IDE. Он запускает мост ACP и позволяет вводить промпты интерактивно.
openclaw acp client
# Направить запущенный мост на удаленный шлюз
openclaw acp client --server-args --url wss://gateway-host:18789 --token-file ~/.openclaw/gateway.token
# Переопределить команду сервера (по умолчанию: openclaw)
openclaw acp client --server "node" --server-args openclaw.mjs acp --url ws://127.0.0.1:19001
Модель разрешений (режим отладки клиента):
- Автоматическое одобрение основано на списке разрешений и применяется только к доверенным идентификаторам основных инструментов.
- Автоматическое одобрение
readограничено текущей рабочей директорией (--cwd, если задана). - Неизвестные/неосновные имена инструментов, чтение за пределами области и опасные инструменты всегда требуют явного одобрения через промпт.
- Предоставленный сервером
toolCall.kindрассматривается как непроверенные метаданные (не источник авторизации).
Как использовать
Используйте ACP, когда IDE (или другой клиент) использует протокол Agent Client Protocol и вы хотите, чтобы он управлял сессией шлюза OpenClaw.
- Убедитесь, что шлюз запущен (локально или удаленно).
- Настройте целевой шлюз (через конфигурацию или флаги).
- Настройте вашу IDE на запуск
openclaw acpчерез stdio.
Пример конфигурации (сохраняется):
openclaw config set gateway.remote.url wss://gateway-host:18789
openclaw config set gateway.remote.token <token>
Пример прямого запуска (без записи в конфиг):
openclaw acp --url wss://gateway-host:18789 --token <token>
# предпочтительно для безопасности локальных процессов
openclaw acp --url wss://gateway-host:18789 --token-file ~/.openclaw/gateway.token
Выбор агентов
ACP не выбирает агентов напрямую. Он маршрутизирует по ключу сессии шлюза. Используйте ключи сессий, ограниченные агентом, чтобы нацелиться на конкретного агента:
openclaw acp --session agent:main:main
openclaw acp --session agent:design:main
openclaw acp --session agent:qa:bug-123
Каждая сессия ACP соответствует одному ключу сессии шлюза. Один агент может иметь много сессий; ACP по умолчанию использует изолированную сессию acp:<uuid>, если вы не переопределите ключ или метку.
Настройка редактора Zed
Добавьте пользовательского агента ACP в ~/.config/zed/settings.json (или используйте UI настроек Zed):
{
"agent_servers": {
"OpenClaw ACP": {
"type": "custom",
"command": "openclaw",
"args": ["acp"],
"env": {}
}
}
}
Чтобы нацелиться на конкретный шлюз или агента:
{
"agent_servers": {
"OpenClaw ACP": {
"type": "custom",
"command": "openclaw",
"args": [
"acp",
"--url",
"wss://gateway-host:18789",
"--token",
"<token>",
"--session",
"agent:design:main"
],
"env": {}
}
}
}
В Zed откройте панель Agent и выберите "OpenClaw ACP", чтобы начать тред.
Соответствие сессий
По умолчанию сессиям ACP назначается изолированный ключ сессии шлюза с префиксом acp:. Чтобы повторно использовать известную сессию, передайте ключ сессии или метку:
--session <key>: использовать конкретный ключ сессии шлюза.--session-label <label>: разрешить существующую сессию по метке.--reset-session: создать новый идентификатор сессии для этого ключа (тот же ключ, новая транскрипция).
Если ваш ACP клиент поддерживает метаданные, вы можете переопределить их для каждой сессии:
{
"_meta": {
"sessionKey": "agent:main:main",
"sessionLabel": "support inbox",
"resetSession": true
}
}
Узнайте больше о ключах сессий на странице /concepts/session.
Опции
--url <url>: URL WebSocket шлюза (по умолчанию используется gateway.remote.url, если настроено).--token <token>: Токен аутентификации шлюза.--token-file <path>: прочитать токен аутентификации шлюза из файла.--password <password>: Пароль аутентификации шлюза.--password-file <path>: прочитать пароль аутентификации шлюза из файла.--session <key>: ключ сессии по умолчанию.--session-label <label>: метка сессии по умолчанию для разрешения.--require-existing: завершиться с ошибкой, если ключ/метка сессии не существует.--reset-session: сбросить ключ сессии перед первым использованием.--no-prefix-cwd: не добавлять рабочую директорию в префикс промптов.--verbose, -v: подробное логирование в stderr.
Примечание по безопасности:
--tokenи--passwordмогут быть видны в списках локальных процессов на некоторых системах.- Предпочтительнее использовать
--token-file/--password-fileили переменные окружения (OPENCLAW_GATEWAY_TOKEN,OPENCLAW_GATEWAY_PASSWORD). - Дочерние процессы бэкенда времени выполнения ACP получают
OPENCLAW_SHELL=acp, что можно использовать для правил оболочки/профиля, специфичных для контекста. openclaw acp clientустанавливаетOPENCLAW_SHELL=acp-clientдля запущенного процесса моста.
Опции acp client
--cwd <dir>: рабочая директория для сессии ACP.--server <command>: команда сервера ACP (по умолчанию:openclaw).--server-args <args...>: дополнительные аргументы, передаваемые серверу ACP.--server-verbose: включить подробное логирование на сервере ACP.--verbose, -v: подробное логирование клиента.