#ideas en español
1 messages · Page 1 of 1 (latest)
Tenés 2 formas de “conectar el browser” con OpenClaw (la más fácil depende de lo que quieras):
Opción A (recomendada): browser aislado “openclaw-managed”
Sirve para que OpenClaw abra/controlе un Chrome/Brave separado (no toca tu perfil personal).
- Asegurate de que el Gateway está corriendo:
openclaw gateway status
- Ver el estado del browser:
openclaw browser --browser-profile openclaw status
- Iniciarlo y abrir una web:
openclaw browser --browser-profile openclaw start
openclaw browser --browser-profile openclaw open https://example.com
Docs: https://docs.openclaw.ai/tools/browser
Opción B: controlar tu Chrome actual (extensión “Browser Relay”)
Sirve para que OpenClaw controle una pestaña real de tu Chrome (vos elegís cuál).
- Instalar la extensión en un path estable:
openclaw browser extension install
openclaw browser extension path
- En Chrome abrí:
chrome://extensions
- Activá Developer mode
- Load unpacked → elegí la carpeta que te imprimió
openclaw browser extension path - Pineá la extensión
-
Abrí la pestaña que querés controlar y hacé click en el ícono de la extensión → tiene que quedar con badge ON.
-
Probar desde terminal:
openclaw browser --browser-profile chrome tabs
Docs: https://docs.openclaw.ai/tools/chrome-extension
Si te trabás en algún punto, pegá el output de:
openclaw --version
openclaw browser --browser-profile openclaw status
openclaw browser --browser-profile chrome tabs
🦞 OpenClaw 2026.2.15 (3fe22ea) — If it works, it's automation; if it breaks, it's a "learning opportunity."
|
o
profile: openclaw
enabled: true
running: false
cdpPort: 18800
cdpUrl: http://127.0.0.1:18800
browser: unknown
detectedBrowser: chrome
detectedPath: C:\Program Files\Google\Chrome\Application\chrome.exe
profileColor: #FF4500
C:\Users\Usuario>openclaw --version
2026.2.15
C:\Users\Usuario>openclaw browser --browser-profile chrome tabs
🦞 OpenClaw 2026.2.15 (3fe22ea) — Because the right answer is usually a script.
|
o
No tabs (browser closed or no targets).
Ese output está bien: ahora mismo no hay ningún “target” de browser conectado.
Tenés 2 caminos, elegí uno:
1) Usar el browser aislado (openclaw profile) — lo más simple
En tu status se ve running: false, o sea todavía no lo arrancaste.
Ejecutá:
openclaw browser --browser-profile openclaw start
openclaw browser --browser-profile openclaw open https://example.com
openclaw browser --browser-profile openclaw tabs
Ahí ya debería aparecer al menos 1 tab.
2) Controlar tu Chrome actual (chrome profile) — requiere extensión + “attach”
El mensaje:
No tabs (browser closed or no targets).
en --browser-profile chrome casi siempre significa: la extensión no está instalada / o no hiciste click para adjuntar una pestaña.
Hacé esto:
- Instalar y obtener la carpeta:
openclaw browser extension install
openclaw browser extension path
- Chrome →
chrome://extensions
- Developer mode → Load unpacked → elegí esa carpeta
- Pin la extensión
-
Abrí cualquier pestaña y tocá el ícono de la extensión hasta que el badge diga ON.
-
Probá:
openclaw browser --browser-profile chrome tabs
Docs: https://docs.openclaw.ai/tools/chrome-extension
Decime cuál querés (1 o 2). Si estás yendo por la opción 2 y sigue igual, pegá también:
openclaw browser status
openclaw browser profiles
🦞 OpenClaw 2026.2.15 (3fe22ea) — Your .env is showing; don't worry, I'll pretend I didn't see it.
|
o
Error: gateway timeout after 15000ms
Gateway target: ws://127.0.0.1:18789
Source: local loopback
Config: C:\Users\Usuario.openclaw\openclaw.json
Bind: loopback
me dice esto, no funciona no se porque
Ese error no es del browser todavía: significa que el CLI no puede conectarse al Gateway en ws://127.0.0.1:18789 (o el Gateway no está corriendo, o está en otro puerto).
Probá esto en este orden (copiá/pegá el output):
- Ver si el Gateway está vivo:
openclaw gateway status
- Probar conexión directa:
openclaw gateway health --url ws://127.0.0.1:18789
- Si NO está corriendo (o falla), arrancarlo:
openclaw gateway start
- Si sigue fallando, corré el Gateway en primer plano para ver el error real:
openclaw gateway run --verbose
(dejá esa ventana abierta y copiá las primeras líneas de error que aparezcan)
Extra útil (logs/diagnóstico):
openclaw logs --follow
openclaw doctor
Docs (timeout/conectividad): https://docs.openclaw.ai/gateway/troubleshooting
Pasame el output de (1) y (2) y te digo exactamente qué está pasando.
C:\Users\Usuario>openclaw gateway status
🦞 OpenClaw 2026.2.15 (3fe22ea) — If it works, it's automation; if it breaks, it's a "learning opportunity."
|
gateway connect failed: Error: unauthorized: device token mismatch (rotate/reissue device token)
o
Service: Scheduled Task (registered)
File logs: \tmp\openclaw\openclaw-2026-02-17.log
Command: C:\Program Files\nodejs\node.exe C:\Users\Usuario\AppData\Roaming\npm\node_modules\openclaw\dist\index.js gateway --port 18789
Service env: OPENCLAW_GATEWAY_PORT=18789
Config (cli): ~.openclaw\openclaw.json
Config (service): ~.openclaw\openclaw.json
Gateway: bind=loopback (127.0.0.1), port=18789 (service args)
Probe target: ws://127.0.0.1:18789
Dashboard: http://127.0.0.1:18789/
Probe note: Loopback-only gateway; only local clients can connect.
Runtime: unknown
RPC probe: failed
RPC target: ws://127.0.0.1:18789
gateway closed (1008): unauthorized: device token mismatch (rotate/reissue device token)
Gateway target: ws://127.0.0.1:18789
Source: cli --url
Config: C:\Users\Usuario.openclaw\openclaw.json
Port 18789 is already in use.
- pid 17384: "C:\Program Files\nodejs\node.exe" --disable-warning=ExperimentalWarning C:\Users\Usuario\AppData\Roaming\npm\node_modules\openclaw\openclaw.mjs gateway (127.0.0.1:18789)
- Gateway already running locally. Stop it (openclaw gateway stop) or use a different port.
Listening: 127.0.0.1:18789
Troubles: run openclaw status
Troubleshooting: https://docs.openclaw.ai/troubleshooting
C:\Users\Usuario>openclaw gateway health --url ws://127.0.0.1:18789
🦞 OpenClaw 2026.2.15 (3fe22ea) — I'll do the boring stuff while you dramatically stare at the logs like it's cinema.
|
o
Error: gateway url override requires explicit credentials
Fix: pass --token or --password (or gatewayToken in tools).
Config: C:\Users\Usuario.openclaw\openclaw.json
Ese error ya es del Gateway/auth, no del browser:
- El Gateway sí está corriendo (por eso “Port 18789 is already in use”).
- Pero tu CLI está intentando entrar con un device token viejo guardado en tu PC, y el Gateway tiene otro →
unauthorized: device token mismatch.
Arreglo (Windows) — 2 pasos
1) Probá forzar login con el token “global” del gateway (y que se auto-limpie el device token)
Primero mirá si tenés token configurado:
openclaw config get gateway.auth.token
Si te imprime un token (algo largo), probá:
openclaw gateway status --token <PEGAR_TOKEN_AQUI>
Y si querés el health con --url (acá sí o sí tenés que pasar credenciales):
openclaw gateway health --url ws://127.0.0.1:18789 --token <PEGAR_TOKEN_AQUI>
Nota: tu error “gateway url override requires explicit credentials” es justamente por eso: con
--urltenés que pasar--tokeno--password.
2) Si sigue fallando: borrá/renombrá el cache del device token y reiniciá el gateway
openclaw gateway stop
ren "%USERPROFILE%\.openclaw\identity\device-auth.json" "device-auth.json.bak"
openclaw gateway start
openclaw gateway status
Pegame el output de:
openclaw config get gateway.auth.tokenopenclaw gateway status(después de hacer lo de arriba)
y te digo el siguiente paso para ya conectar el browser.
C:\Users\Usuario>openclaw config get gateway.auth.token
🦞 OpenClaw 2026.2.15 (3fe22ea) — Hot reload for config, cold sweat for deploys.
b9fa59a5b75585e02c2db31184957ac08ea0a0dea5fc5407
C:\Users\Usuario>openclaw gateway status
🦞 OpenClaw 2026.2.15 (3fe22ea) — Less middlemen, more messages.
|
gateway connect failed: Error: unauthorized: device token mismatch (rotate/reissue device token)
o
Service: Scheduled Task (registered)
File logs: \tmp\openclaw\openclaw-2026-02-17.log
Command: C:\Program Files\nodejs\node.exe C:\Users\Usuario\AppData\Roaming\npm\node_modules\openclaw\dist\index.js gateway --port 18789
Service env: OPENCLAW_GATEWAY_PORT=18789
Config (cli): ~.openclaw\openclaw.json
Config (service): ~.openclaw\openclaw.json
Gateway: bind=loopback (127.0.0.1), port=18789 (service args)
Probe target: ws://127.0.0.1:18789
Dashboard: http://127.0.0.1:18789/
Probe note: Loopback-only gateway; only local clients can connect.
Runtime: unknown
RPC probe: failed
RPC target: ws://127.0.0.1:18789
gateway closed (1008): unauthorized: device token mismatch (rotate/reissue device token)
Gateway target: ws://127.0.0.1:18789
Source: cli --url
Config: C:\Users\Usuario.openclaw\openclaw.json
Port 18789 is already in use.
- pid 17384: "C:\Program Files\nodejs\node.exe" --disable-warning=ExperimentalWarning C:\Users\Usuario\AppData\Roaming\npm\node_modules\openclaw\openclaw.mjs gateway (127.0.0.1:18789)
- Gateway already running locally. Stop it (openclaw gateway stop) or use a different port.
Listening: 127.0.0.1:18789
Troubles: run openclaw status
Troubleshooting: https://docs.openclaw.ai/troubleshooting
Ese token que pegaste acá es secreto (después te paso cómo rotarlo). Ahora vamos a arreglar el device token mismatch.
Paso 1 (rápido): conectá usando el gateway token
Probá esto (en CMD):
openclaw gateway status --token b9fa59a5b75585e02c2db31184957ac08ea0a0dea5fc5407
Si todavía te da device token mismatch, corré el mismo comando una 2da vez (a veces en el primer intento limpia el token viejo y recién en el segundo entra).
Paso 2 (seguro): borrar el cache local del device token
Si sigue igual, hacé esto:
openclaw gateway stop
ren "%USERPROFILE%\.openclaw\identity\device-auth.json" "device-auth.json.bak"
openclaw gateway start
openclaw gateway status --token b9fa59a5b75585e02c2db31184957ac08ea0a0dea5fc5407
Cuando ya conecte bien, gateway status debería mostrar algo tipo RPC probe: ok.
Después (cuando ya conecte): probar el browser
openclaw browser --browser-profile openclaw start
openclaw browser --browser-profile openclaw tabs
Pegame el output de ese último gateway status --token ... (sin volver a postear tokens si podés) y te digo el siguiente paso.
Importante: rotar el token (porque quedó público)
Cuando terminemos, rotalo y reiniciá el gateway (si querés, te doy el comando exacto en PowerShell para generar uno nuevo).
si ya el browser corre el token si lo intenta usar alguien mas seria invalido o como si no?
No, no se vuelve inválido solo.
Hay 2 “tokens” distintos en juego:
- Gateway token (
gateway.auth.token)
- Es un secreto compartido.
- Si alguien lo conoce y puede llegar a tu Gateway (en tu caso es
loopback, o sea solo desde tu misma PC), puede autenticarse y usar herramientas (incluido browser). - Sigue válido hasta que lo rotes/cambies.
- Device token (
device-auth.json)
- Es un token “por dispositivo” que se guarda localmente.
- El error que te salía era por un device token viejo.
Entonces: si lo posteaste en el chat, ¿qué pasa?
Aunque tu Gateway esté en 127.0.0.1 (eso ayuda mucho contra ataques remotos), igual es buena práctica asumir que el gateway token quedó comprometido y rotarlo.
Cómo rotarlo (Windows)
- Generá un token nuevo (PowerShell):
$bytes = New-Object byte[] 32
[Security.Cryptography.RandomNumberGenerator]::Create().GetBytes($bytes)
$token = ($bytes | ForEach-Object { $_.ToString("x2") }) -join ""
$token
- Pegalo en config y reiniciá:
openclaw config set gateway.auth.token "<TOKEN_NUEVO>"
openclaw gateway restart
Después vas a tener que usar el token nuevo en el Dashboard/Control UI.
Si querés, decime si tu Gateway es solo local (sin Tailscale/SSH/Serve), y te digo el “nivel de riesgo” exacto en tu setup.
tengo el openclaw configurado, tengo la opcion browser trabajando bien, ya q puedo abrir paginas, pero cuando le pido via chat que navege el sistema me dice q no puede controlar el navegador directamente..
Eso pasa mucho: que el browser funcione por CLI no significa que tu “sesión de chat” tenga permiso de usar la herramienta browser.
Cuando te responde “no puedo controlar el navegador directamente”, normalmente es porque en esa sesión:
- está sandboxed (
agents.defaults.sandbox.mode = "non-main"o"all") y en el sandbox la policy bloqueabrowser, o - la tool policy tiene
browserentools.deny, o tiene untools.allowque no incluyebrowser/group:ui, o - estás hablando con otro agent (uno “chat-only” sin herramientas).
Chequeo rápido (pegá el output)
En la máquina donde corre el gateway:
openclaw sandbox explain --json
openclaw config get tools
openclaw config get agents.defaults.sandbox
Arreglos típicos
Opción A: permitir browser en la policy
Asegurate de que browser no esté denegado y que esté permitido (lo más simple suele ser permitir el grupo UI):
tools.allowincluye"group:ui"(o"browser")- si estás sandboxed:
tools.sandbox.tools.allowtambién incluye"group:ui"(o"browser")
(“deny” siempre gana.)
Opción B: desactivar sandbox para que el chat pueda usar el browser del host
Si tu setup está en "non-main" y justo los chats de Discord caen en “non-main”, podés hacer:
openclaw config set agents.defaults.sandbox.mode "off" --json
openclaw gateway restart
Si querés controlar tu Chrome “real” (perfil chrome)
Si tu sesión está sandboxed, puede necesitar:
- usar un agent no-sandboxed, o
agents.defaults.sandbox.browser.allowHostControl=true
Pasame esos 3 outputs y te digo exactamente qué clave te está bloqueando el browser.
openclaw config get agents.defaults.sandbox
{
"docsUrl": "https://docs.openclaw.ai/sandbox",
"agentId": "main",
"sessionKey": "agent:main:main",
"mainSessionKey": "agent:main:main",
"sandbox": {
"mode": "off",
"scope": "agent",
"perSession": false,
"workspaceAccess": "none",
"workspaceRoot": "/Users/luna/.openclaw/sandboxes",
"sessionIsSandboxed": false,
"tools": {
"allow": [
"exec",
"process",
"read",
"write",
"edit",
"apply_patch",
"image",
"sessions_list",
"sessions_history",
"sessions_send",
"sessions_spawn",
"subagents",
"session_status"
],
"deny": [
"browser",
"canvas",
"nodes",
"cron",
"gateway",
"telegram",
"whatsapp",
"discord",
"irc",
"googlechat",
"slack",
"signal",
"imessage"
],
"sources": {
"allow": {
"source": "default",
"key": "tools.sandbox.tools.allow"
},
"deny": {
"source": "default",
"key": "tools.sandbox.tools.deny"
}
}
}
},
"elevated": {
"enabled": true,
"channel": "webchat",
"allowedByConfig": false,
"alwaysAllowedByConfig": false,
"allowFrom": {
"global": []
},
"failures": [
{
"gate": "allowFrom",
"key": "tools.elevated.allowFrom.webchat"
}
]
},
"fixIt": [
"tools.sandbox.tools.allow",
"tools.sandbox.tools.deny",
"agents.list[].tools.sandbox.tools.allow",
"agents.list[].tools.sandbox.tools.deny",
"tools.elevated.enabled",
"tools.elevated.allowFrom.webchat"
]
}
OpenClaw 2026.2.15 (3fe22ea) — End-to-end encrypted, drama-to-drama excluded.
{
"web": {
"search": {
"enabled": false
},
"fetch": {
"enabled": true
}
}
}
🦞 OpenClaw 2026.2.15 (3fe22ea) — The only crab in your contacts you actually want to hear from. 🦞
Config path not found: agents.defaults.sandbox
luna@Wences-Mac-mini .openclaw %
ok?
Sí—hacé esto y pegá el resultado acá (si podés sin tokens/secretos):
openclaw sandbox explain --json
openclaw config get tools
openclaw config get agents.defaults.sandbox
Con eso se ve exactamente si tu chat está en sandbox o si la tool policy está bloqueando browser, y te digo la línea de config precisa para habilitarlo.
{
"docsUrl": "https://docs.openclaw.ai/sandbox",
"agentId": "main",
"sessionKey": "agent:main:main",
"mainSessionKey": "agent:main:main",
"sandbox": {
"mode": "off",
"scope": "agent",
"perSession": false,
"workspaceAccess": "none",
"workspaceRoot": "/Users/luna/.openclaw/sandboxes",
"sessionIsSandboxed": false,
"tools": {
"allow": [
"exec",
"process",
"read",
"write",
"edit",
"apply_patch",
"image",
"sessions_list",
"sessions_history",
"sessions_send",
"sessions_spawn",
"subagents",
"session_status"
],
"deny": [
"browser",
"canvas",
"nodes",
"cron",
"gateway",
"telegram",
"whatsapp",
"discord",
"irc",
"googlechat",
"slack",
"signal",
"imessage"
],
"sources": {
"allow": {
"source": "default",
"key": "tools.sandbox.tools.allow"
},
"deny": {
"source": "default",
"key": "tools.sandbox.tools.deny"
}
}
}
},
"elevated": {
"enabled": true,
"channel": "webchat",
"allowedByConfig": false,
"alwaysAllowedByConfig": false,
"allowFrom": {
"global": []
},
"failures": [
{
"gate": "allowFrom",
"key": "tools.elevated.allowFrom.webchat"
}
]
},
"fixIt": [
"tools.sandbox.tools.allow",
"tools.sandbox.tools.deny",
"agents.list[].tools.sandbox.tools.allow",
"agents.list[].tools.sandbox.tools.deny",
"tools.elevated.enabled",
"tools.elevated.allowFrom.webchat"
Ahí está la causa en el JSON que pegaste:
En tool policy del sandbox tenés:
tools.sandbox.tools.denyincluye "browser"- y además
tools.sandbox.tools.allowno incluye"browser"
Entonces, cualquier sesión que termine usando la política “sandbox tools” va a decirte algo tipo “no puedo controlar el navegador”.
1) Primero confirmá que el chat que falla es esa sesión
Ese sandbox explain es para agent:main:main. Si el chat donde pedís “navegá” es otro, listalos y corré explain para ese:
openclaw sessions --active 120
openclaw sandbox explain --session <PEGA_EL_sessionKey_QUE_FALLA> --json
2) Fix: habilitar browser en la política de sandbox tools
Como en tu output ya aparece la lista efectiva, podés setearla igual pero con browser habilitado:
openclaw config set tools.sandbox.tools.allow '["exec","process","read","write","edit","apply_patch","image","sessions_list","sessions_history","sessions_send","sessions_spawn","subagents","session_status","browser"]' --json
openclaw config set tools.sandbox.tools.deny '["canvas","nodes","cron","gateway","telegram","whatsapp","discord","irc","googlechat","slack","signal","imessage"]' --json
openclaw gateway restart
Después de reiniciar, probá de nuevo por chat.
Si tras eso todavía te dice que no puede, pegá el sandbox explain --json de la sesión que falla (la del chat), porque ahí vamos a ver si lo está bloqueando tools.allow/deny global o si estás hablando con otro agent sin herramientas.
{
"docsUrl": "https://docs.openclaw.ai/sandbox",
"agentId": "main",
"sessionKey": "agent:main:b1b10f57-5f60-4559-9909-84d7aa523027",
"mainSessionKey": "agent:main:main",
"sandbox": {
"mode": "off",
"scope": "agent",
"perSession": false,
"workspaceAccess": "none",
"workspaceRoot": "/Users/luna/.openclaw/sandboxes",
"sessionIsSandboxed": false,
"tools": {
"allow": [
"exec",
"process",
"read",
"write",
"edit",
"apply_patch",
"image",
"sessions_list",
"sessions_history",
"sessions_send",
"sessions_spawn",
"subagents",
"session_status",
"browser"
],
"deny": [
"canvas",
"nodes",
"cron",
"gateway",
"telegram",
"whatsapp",
"discord",
"irc",
"googlechat",
"slack",
"signal",
"imessage"
],
"sources": {
"allow": {
"source": "global",
"key": "tools.sandbox.tools.allow"
},
"deny": {
"source": "global",
"key": "tools.sandbox.tools.deny"
}
}
}
},
"elevated": {
"enabled": true,
"allowedByConfig": false,
"alwaysAllowedByConfig": false,
"allowFrom": {},
"failures": []
},
"fixIt": [
"tools.sandbox.tools.allow",
"tools.sandbox.tools.deny",
"agents.list[].tools.sandbox.tools.allow",
"agents.list[].tools.sandbox.tools.deny",
"tools.elevated.enabled"
]
}
Perfecto: en ese sandbox explain ya aparece browser en tools.allow y ya no está en deny. O sea: esa sesión ahora sí tiene permiso para usar la herramienta Browser.
Lo que falta suele ser una de estas dos cosas:
1) Reiniciar el Gateway y abrir sesión nueva (recomendado)
Después de cambiar tool policy, hacé:
openclaw gateway restart
Y en el chat arrancá una conversación nueva (por ejemplo /new en el Control UI/WebChat, o simplemente volvé a escribir y probá).
2) Probá con una instrucción explícita de browser
En el chat pedile algo bien concreto, por ejemplo:
- “Abrí https://example.com y sacá un screenshot”
- “Listá las tabs del browser y abrí Wikipedia”
Si todavía te responde “no puedo controlar…”
Pegá el texto exacto de ese mensaje, y corré también:
openclaw config get tools.deny
openclaw config get tools.allow
porque a veces browser queda bloqueado por la policy global (no la de tools.sandbox.tools.*).
Lo siento, pero no puedo acceder a sitios web utilizando credenciales de usuario que no me pertenecen. Eso sería una práctica poco ética y podría violar los términos de servicio del sitio web. No puedo tomar screenshots o interactuar con una página web utilizando credenciales ajenas.
Ese mensaje no es un bloqueo de OpenClaw/browser tool (eso ya lo arreglaste con la policy). Es una negativa del modelo por seguridad/ética cuando detecta que la tarea implica usar credenciales / hacer login / operar una cuenta.
Lo normal es que el modelo se niegue si:
- le pedís que ingrese usuario/contraseña/2FA, o
- la acción parece “usar una cuenta” (aunque sea tuya), o
- es una web sensible (banco, correo, etc.).
Cómo usarlo sin chocar con esa negación
A) No le des credenciales (ni se las pidas que las tipeé)
- Abrí el sitio con el browser de OpenClaw:
openclaw browser --browser-profile openclaw start
openclaw browser --browser-profile openclaw open https://sitio.com
- Logueate vos manualmente en esa ventana (contraseña/2FA).
- Volvé al chat y pedile tareas “post-login” sin credenciales, por ejemplo:
- “Ya inicié sesión. Andá a Facturación y descargá la última factura.”
- “Ya inicié sesión. Buscá ‘X’ y sacá un screenshot de la tabla.”
B) Usá un perfil dedicado (recomendado)
openclaw(browser aislado) es mejor que controlar tu Chrome personal con la extensión.- Si usás extensión (
--browser-profile chrome), ideal que sea en un Chrome profile separado (sin contraseñas/sync personal).
Docs:
- Browser: https://docs.openclaw.ai/tools/browser
- Chrome extension: https://docs.openclaw.ai/tools/chrome-extension
Para diagnosticar rápido
Probá en el chat con una página pública:
- “Abrí https://example.com y sacá un screenshot”.
Si eso funciona, el browser tool está OK y el bloqueo es 100% por el tema credenciales/cuenta.