CLI commands
Aprobaciones
openclaw approvals
Gestiona las aprobaciones de exec para el host local, el host de Gateway o un host de nodo.
De forma predeterminada, los comandos apuntan al archivo local de aprobaciones en disco. Usa --gateway para apuntar al Gateway, o --node para apuntar a un nodo específico.
Alias: openclaw exec-approvals
Relacionado:
- Aprobaciones de exec: Aprobaciones de exec
- Nodos: Nodos
openclaw exec-policy
openclaw exec-policy es el comando local de conveniencia para mantener la configuración
tools.exec.* solicitada y el archivo de aprobaciones del host local alineados en un solo paso.
Úsalo cuando quieras:
- inspeccionar la política local solicitada, el archivo de aprobaciones del host y la fusión efectiva
- aplicar un preajuste local como YOLO o denegar todo
- sincronizar
tools.exec.*local y el archivo de aprobaciones del host local
Ejemplos:
openclaw exec-policy showopenclaw exec-policy show --json openclaw exec-policy preset yoloopenclaw exec-policy preset cautious --json openclaw exec-policy set --host gateway --security full --ask off --ask-fallback fullModos de salida:
- sin
--json: imprime la vista de tabla legible para humanos --json: imprime salida estructurada legible por máquina
Alcance actual:
exec-policyes solo local- actualiza juntos el archivo de configuración local y el archivo de aprobaciones local
- no envía la política al host de Gateway ni a un host de nodo
--host nodese rechaza en este comando porque las aprobaciones de exec de nodo se obtienen del nodo en tiempo de ejecución y, en su lugar, deben administrarse mediante comandos de aprobaciones dirigidos a nodosopenclaw exec-policy showmarca los alcanceshost=nodecomo administrados por el nodo en tiempo de ejecución en lugar de derivar una política efectiva del archivo de aprobaciones local
Si necesitas editar directamente las aprobaciones de un host remoto, sigue usando openclaw approvals set --gateway
o openclaw approvals set --node <id|name|ip>.
Comandos comunes
openclaw approvals getopenclaw approvals get --node <id|name|ip>openclaw approvals get --gatewayopenclaw approvals get ahora muestra la política de exec efectiva para destinos locales, de Gateway y de nodo:
- política
tools.execsolicitada - política del archivo de aprobaciones del host
- resultado efectivo después de aplicar las reglas de precedencia
La precedencia es intencional:
- el archivo de aprobaciones del host es la fuente de verdad exigible
- la política
tools.execsolicitada puede restringir o ampliar la intención, pero el resultado efectivo se sigue derivando de las reglas del host --nodecombina el archivo de aprobaciones del host de nodo con la políticatools.execde Gateway, porque ambas siguen aplicándose en tiempo de ejecución- si la configuración de Gateway no está disponible, la CLI recurre a la instantánea de aprobaciones del nodo e indica que no se pudo calcular la política final de tiempo de ejecución
Reemplazar aprobaciones desde un archivo
openclaw approvals set --file ./exec-approvals.jsonopenclaw approvals set --stdin <<'EOF'{ version: 1, defaults: { security: "full", ask: "off", askFallback: "full" } }EOFopenclaw approvals set --node <id|name|ip> --file ./exec-approvals.jsonopenclaw approvals set --gateway --file ./exec-approvals.jsonset acepta JSON5, no solo JSON estricto. Usa --file o --stdin, no ambos.
Ejemplo de "No preguntar nunca" / YOLO
Para un host que nunca debe detenerse por aprobaciones de exec, establece los valores predeterminados de aprobaciones del host en full + off:
openclaw approvals set --stdin <<'EOF'{ version: 1, defaults: { security: "full", ask: "off", askFallback: "full" }}EOFVariante de nodo:
openclaw approvals set --node <id|name|ip> --stdin <<'EOF'{ version: 1, defaults: { security: "full", ask: "off", askFallback: "full" }}EOFEsto cambia solo el archivo de aprobaciones del host. Para mantener alineada la política solicitada de OpenClaw, establece también:
openclaw config set tools.exec.host gatewayopenclaw config set tools.exec.security fullopenclaw config set tools.exec.ask offPor qué tools.exec.host=gateway en este ejemplo:
host=autotodavía significa "sandbox cuando esté disponible; de lo contrario, Gateway".- YOLO trata de aprobaciones, no de enrutamiento.
- Si quieres exec en host incluso cuando hay un sandbox configurado, haz explícita la elección de host con
gatewayo/exec host=gateway.
askFallback omitido usa deny de forma predeterminada. Establece askFallback: "full"
explícitamente al actualizar un host sin interfaz de usuario que debe mantener el comportamiento de no preguntar nunca.
Atajo local:
openclaw exec-policy preset yoloEse atajo local actualiza juntos tanto la configuración local tools.exec.* solicitada como los
valores predeterminados de aprobaciones locales. Es equivalente en intención a la configuración manual
de dos pasos anterior, pero solo para la máquina local.
Ayudantes de lista de permitidos
openclaw approvals allowlist add "~/Projects/**/bin/rg"openclaw approvals allowlist add --agent main --node <id|name|ip> "/usr/bin/uptime"openclaw approvals allowlist add --agent "*" "/usr/bin/uname" openclaw approvals allowlist remove "~/Projects/**/bin/rg"Opciones comunes
get, set y allowlist add|remove admiten todos:
--node <id|name|ip>--gateway- opciones RPC compartidas de nodo:
--url,--token,--timeout,--json
Notas de destino:
- sin marcas de destino significa el archivo local de aprobaciones en disco
--gatewayapunta al archivo de aprobaciones del host de Gateway--nodeapunta a un host de nodo después de resolver id, nombre, IP o prefijo de id
allowlist add|remove también admite:
--agent <id>(el valor predeterminado es*)
Notas
--nodeusa el mismo resolvedor queopenclaw nodes(id, nombre, ip o prefijo de id).--agentusa"*"de forma predeterminada, lo que se aplica a todos los agentes.- El host de nodo debe anunciar
system.execApprovals.get/set(app de macOS o host de nodo sin interfaz). - Los archivos de aprobaciones se almacenan por host en el directorio de estado de OpenClaw
(
$OPENCLAW_STATE_DIR/exec-approvals.json, o~/.openclaw/exec-approvals.jsoncuando la variable no está establecida).