You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
fix(tray): browser control stuck without shared gateway token (#1066)
* fix(tray): explain browser proxy when shared gateway token is missing
Setup-code pairing can connect without a SharedGatewayToken, which silently skipped browser capability declaration and left the UI stuck on Enabled, not active yet. Surface Needs gateway shared token, warn in Command Center, and log the concrete skip reason.
Refs: openclaw/openclaw#115989
* fix(tray): separate browser proxy no-client from missing-token UI
Only show Needs shared token / Command Center guidance when a node client is attached; disconnected gateways should not tell operators to paste a token.
* fix(tray): align browser.proxy missing-token UX across live session surfaces
Use manager NodeState for remediation, and share topology-aware remote/SSH
endpoint guidance across Connection pill tooltips, Command Center, and
app.connection diagnostics so token-only copy does not overpromise.
Copy file name to clipboardExpand all lines: docs/WINDOWS_NODE_TESTING.md
+6Lines changed: 6 additions & 0 deletions
Display the source diff
Display the rich diff
Original file line number
Diff line number
Diff line change
@@ -144,6 +144,12 @@ Local MCP clients also see MCP-only `app.*` commands such as `app.navigate`, `ap
144
144
- Ensure Windows notifications are enabled for the app
145
145
- Check if notification settings in the app are enabled
146
146
147
+
### Browser control stays enabled but never declares `browser`
148
+
- Setup-code / QR pairing can connect with a device token and leave `GatewayRecord.SharedGatewayToken` empty. Browser control will not declare `browser` / `browser.proxy` until a shared gateway token is saved for that gateway.
149
+
- Expect Connection capability pills to say **Needs gateway shared token** (not "Enabled, not active yet") only while the node WebSocket session is live and the shared token is missing. Disconnected or attached-but-disconnected states should ask for reconnect, not a token paste. The pill keeps that short label; its tooltip matches Command Center remediation detail.
150
+
- Command Center, Connection pill tooltips, and `app.connection.status` / `app.connection.gateways` use the same live-session rule for the shared-token caveat. For a remote (non-loopback) gateway without an explicit `BrowserControlPort` or SSH browser-proxy forward — including SSH tunnels whose effective URL is `127.0.0.1` — that caveat also mentions the endpoint/forward requirement; the shared token alone is not enough for usable remote browser.proxy.
151
+
- Enter the gateway shared token in Settings, save, and reconnect node mode. Bootstrap tokens are not the shared gateway token.
152
+
147
153
### `browser.proxy` reports no browser-control host
148
154
- Confirm the Browser proxy bridge toggle is enabled in Settings, then save and reconnect or re-pair if the gateway keeps an older command snapshot.
149
155
- The bridge is local-only: it calls `http://127.0.0.1:<gateway-port+2>` from Windows. For a gateway on `ws://127.0.0.1:18789`, the browser-control host must listen on `127.0.0.1:18791`.
0 commit comments