项目文件夹

文件
Laith Weinberger ff049266b1 local Chrome connect: classify state fast, defer marker tab, stay in selected profile
- Classify the connection up front (browser.py): read DevToolsActivePort + Local State and return ok / cdp-disabled / permission-blocked / browser-closed in ~0.01s, without opening a tab. Each blocked state's error carries its own fix, so the agent relays one line and retries instead of hanging or exploring.
- Defer the marker tab until after the websocket connects, so a failed connection doesn't leave a stray tab.
- Reuse stays in the right profile: on daemon reuse, verify the controlled tab still belongs to the selected context and re-anchor if it drifted or closed (verify_profile). On a stale session, re-attach the same tab instead of grabbing an arbitrary page.
- admin.py routing: a 403 is permission-blocked on its own (focus the profile, don't tell the user to re-tick the checkbox); browser-closed opens/focuses the selected profile.
- Drop the BH_CLOUD_ONLY env var and its guard.
2026-06-18 10:00:51 -07:00
..