acp
Ejecuta el puente del Protocolo de Cliente Agente (ACP) que se comunica con una Puerta de enlace OpenClaw. Este comando habla ACP a través de stdio para IDEs y reenvía solicitudes a la Puerta de enlace a través de WebSocket. Mantiene las sesiones ACP mapeadas a claves de sesión de la Puerta de enlace.
Uso
openclaw acp
# Puerta de enlace remota
openclaw acp --url wss://gateway-host:18789 --token <token>
# Puerta de enlace remota (token desde archivo)
openclaw acp --url wss://gateway-host:18789 --token-file ~/.openclaw/gateway.token
# Conectarse a una clave de sesión existente
openclaw acp --session agent:main:main
# Conectarse por etiqueta (debe existir previamente)
openclaw acp --session-label "support inbox"
# Reiniciar la clave de sesión antes de la primera solicitud
openclaw acp --session agent:main:main --reset-session
Cliente ACP (depuración)
Usa el cliente ACP integrado para verificar el funcionamiento del puente sin un IDE. Genera el puente ACP y te permite escribir solicitudes de forma interactiva.
openclaw acp client
# Apuntar el puente generado a una Puerta de enlace remota
openclaw acp client --server-args --url wss://gateway-host:18789 --token-file ~/.openclaw/gateway.token
# Sobrescribir el comando del servidor (predeterminado: openclaw)
openclaw acp client --server "node" --server-args openclaw.mjs acp --url ws://127.0.0.1:19001
Modelo de permisos (modo de depuración del cliente):
- La aprobación automática está basada en una lista de permitidos y solo se aplica a IDs de herramientas principales confiables.
- La aprobación automática de
readestá limitada al directorio de trabajo actual (--cwdcuando se establece). - Los nombres de herramientas desconocidas/no principales, las lecturas fuera de alcance y las herramientas peligrosas siempre requieren aprobación explícita mediante solicitud.
- El
toolCall.kindproporcionado por el servidor se trata como metadatos no confiables (no es una fuente de autorización).
Cómo usar esto
Usa ACP cuando un IDE (u otro cliente) hable el Protocolo de Cliente Agente y quieras que controle una sesión de una Puerta de enlace OpenClaw.
- Asegúrate de que la Puerta de enlace esté en ejecución (local o remota).
- Configura el objetivo de la Puerta de enlace (configuración o banderas).
- Configura tu IDE para ejecutar
openclaw acpa través de stdio.
Ejemplo de configuración (persistente):
openclaw config set gateway.remote.url wss://gateway-host:18789
openclaw config set gateway.remote.token <token>
Ejemplo de ejecución directa (sin escribir configuración):
openclaw acp --url wss://gateway-host:18789 --token <token>
# preferible para seguridad del proceso local
openclaw acp --url wss://gateway-host:18789 --token-file ~/.openclaw/gateway.token
Seleccionar agentes
ACP no selecciona agentes directamente. Enruta mediante la clave de sesión de la Puerta de enlace. Usa claves de sesión con alcance de agente para apuntar a un agente específico:
openclaw acp --session agent:main:main
openclaw acp --session agent:design:main
openclaw acp --session agent:qa:bug-123
Cada sesión ACP se mapea a una única clave de sesión de la Puerta de enlace. Un agente puede tener muchas sesiones; ACP usa por defecto una sesión aislada acp:<uuid> a menos que sobrescribas la clave o la etiqueta.
Configuración del editor Zed
Añade un agente ACP personalizado en ~/.config/zed/settings.json (o usa la IU de Configuración de Zed):
{
"agent_servers": {
"OpenClaw ACP": {
"type": "custom",
"command": "openclaw",
"args": ["acp"],
"env": {}
}
}
}
Para apuntar a una Puerta de enlace o agente específico:
{
"agent_servers": {
"OpenClaw ACP": {
"type": "custom",
"command": "openclaw",
"args": [
"acp",
"--url",
"wss://gateway-host:18789",
"--token",
"<token>",
"--session",
"agent:design:main"
],
"env": {}
}
}
}
En Zed, abre el panel de Agente y selecciona "OpenClaw ACP" para iniciar un hilo.
Mapeo de sesiones
Por defecto, las sesiones ACP obtienen una clave de sesión de Puerta de enlace aislada con el prefijo acp:. Para reutilizar una sesión conocida, pasa una clave o etiqueta de sesión:
--session <key>: usa una clave de sesión de Puerta de enlace específica.--session-label <label>: resuelve una sesión existente por etiqueta.--reset-session: genera un nuevo ID de sesión para esa clave (misma clave, nueva transcripción).
Si tu cliente ACP admite metadatos, puedes sobrescribir por sesión:
{
"_meta": {
"sessionKey": "agent:main:main",
"sessionLabel": "support inbox",
"resetSession": true
}
}
Aprende más sobre las claves de sesión en /concepts/session.
Opciones
--url <url>: URL WebSocket de la Puerta de enlace (por defecto usa gateway.remote.url cuando está configurado).--token <token>: token de autenticación de la Puerta de enlace.--token-file <path>: leer token de autenticación de la Puerta de enlace desde un archivo.--password <password>: contraseña de autenticación de la Puerta de enlace.--password-file <path>: leer contraseña de autenticación de la Puerta de enlace desde un archivo.--session <key>: clave de sesión por defecto.--session-label <label>: etiqueta de sesión por defecto para resolver.--require-existing: fallar si la clave/etiqueta de sesión no existe.--reset-session: reiniciar la clave de sesión antes del primer uso.--no-prefix-cwd: no prefijar las solicitudes con el directorio de trabajo.--verbose, -v: registro detallado a stderr.
Nota de seguridad:
--tokeny--passwordpueden ser visibles en listados de procesos locales en algunos sistemas.- Prefiere
--token-file/--password-fileo variables de entorno (OPENCLAW_GATEWAY_TOKEN,OPENCLAW_GATEWAY_PASSWORD). - Los procesos secundarios del backend de tiempo de ejecución de ACP reciben
OPENCLAW_SHELL=acp, que puede usarse para reglas específicas de shell/perfil. openclaw acp clientestableceOPENCLAW_SHELL=acp-clienten el proceso del puente generado.
Opciones del cliente acp
--cwd <dir>: directorio de trabajo para la sesión ACP.--server <command>: comando del servidor ACP (predeterminado:openclaw).--server-args <args...>: argumentos adicionales pasados al servidor ACP.--server-verbose: habilitar registro detallado en el servidor ACP.--verbose, -v: registro detallado del cliente.