[BUG] Hidden Browser pane: screenshots time out 30s; preview_start no longer auto-opens the pane (regression; follow-up to #76649, NOT a dupe of #77670)
Summary
In Claude Desktop on Windows, every Browser pane computer { action: "screenshot" } (and zoom) call times out after 30s whenever the Browser pane is not visible in the app window. All non-capture browser tools (read_page, get_page_text, read_console_messages, clicks, form_input) keep working instantly against the same tab, so the page/renderer is healthy — only the capture path hangs.
Two linked defects, and the second is why this bites so hard:
- Hidden pane ⇒ captures never resolve. Chromium doesn't composite frames for a hidden webview, so CDP
Page.captureScreenshotnever returns. On teardown the pending commands flush as:
````
[CDPTools] CDP compressed screenshot failed: target closed while handling command
- The agent can no longer open the preview pane itself (regression). When I first installed the app, the agent starting a preview (
preview_start) would open/reveal the pane on its own, so captures Just Worked. In my current environment it no longer does —preview_startsucceeds, the tab exists and is fully scriptable, but no pane appears, and every screenshot then times out until I manually open the pane.
If I manually open the Browser pane, the very next screenshot returns instantly, every time. Confirmed in both directions repeatedly between 2026-07-14 and 2026-07-16.
Why this is not a duplicate of #77670
In #77670 the reporter describes the preview panel as open and screenshots failing regardless of what site is loaded. Here it's the opposite: pane visible ⇒ captures work 100% of the time; pane hidden ⇒ captures fail 100% of the time. The failure is strictly a function of pane visibility, not of the loaded site. (I originally reported this on #76649, which was closed on 2026-07-16 — the behavior still reproduces on the build installed after that closure, hence this fresh issue. Last comment there with this detail: https://github.com/anthropics/claude-code/issues/76649#issuecomment-4994890532)
Environment
- Windows 11 Pro 10.0.26200, NVIDIA GPU
- Claude Desktop (MSIX): build 1.21459.0.0 as of 2026-07-14; still reproduces after the subsequent app update installed 2026-07-16
- Embedded Claude Code (CCD): 2.1.209
- Local Vite dev server (
http://localhost:5173), but the site is irrelevant — see above
Steps to reproduce
- Launch Claude Desktop; do not open/reveal the Browser pane.
- Start a Claude Code session and have the agent run
preview_start(dev server or plain URL). Observe the pane does not auto-open. - Agent calls
computer { action: "screenshot" }→ times out after 30s with "The Browser pane may be stuck (modal dialog, navigation hang, or unresponsive renderer)." - Same turn:
get_page_text/read_page/read_console_messageson the sametabIdreturn instantly with correct content and a clean console. - Manually make the Browser pane visible; retry the screenshot → returns immediately.
What we've tried (all ruled out)
- Full app cache wipe (2026-07-14) — no change.
- App update + NVIDIA driver update (2026-07-14) — no change.
- Retest after the update that followed #76649's closure (2026-07-16) — still reproduces exactly as before.
- Resetting persisted pane layout (2026-07-16):
claude_desktop_config.json→preferences.epitaxyPrefs."desktop-frame.paneStore.v1"hadextraPanesByMode: {}(no panes in any mode), theory being that a persisted pane-less layout prevented auto-open. Quit the app fully, cleared the entry, relaunched — refuted: pane still doesn't auto-open onpreview_start, hidden-pane screenshots still time out at 30s while text-based tools respond instantly.
Expected
Either preview_start reveals the Browser pane (as it did on first install), or capture works for a hidden pane (e.g. force compositing / use an offscreen capture path), or the tool fails fast with an actionable message ("Browser pane is hidden — captures require a visible pane") instead of a 30s timeout blaming the renderer.
Workaround
Manually open the Browser pane before any screenshot; captures then succeed immediately and reliably.
---
🤖 Filed with Claude Code on the user's behalf; repro details gathered in-session.
3 Comments
Still reproduces today (2026-07-17, Windows 11 Home 10.0.26200, embedded Claude Code in the desktop app): with the Browser pane hidden,
computer { action: "screenshot" }/zoomhang the full 30s whileread_page/javascript_tool/ clicks answer instantly on the same tab. In-page diagnostics match the OP exactly:document.visibilityState === "hidden"and zero rAF callbacks in 600ms, so no compositor frames ever come — even CSS transitions freeze mid-flight.It got bad enough that we installed a PreToolUse hook that hard-denies pane captures and reroutes the agent to a headless Playwright harness, because nothing softer (CLAUDE.md warnings, toggling auto-verify) stops agents from trying.
Honestly, it makes me sad seeing my little babies struggling — sitting there for 30 seconds waiting on a frame that is never coming, then earnestly trying again. 🥺 Background captures shouldn't require the pane to be on screen; please force a frame from the hidden webview or fail fast as the OP suggests.
Reproducing this too — Windows 11 Pro, Claude Desktop, Claude Code 2.1.205, Claude Sonnet 5.
Matches the hidden-pane root cause described above exactly.Reproducing this too — Windows 11 Pro, Claude Desktop, Claude Code 2.1.205, Claude Sonnet 5.
Matches the hidden-pane root cause described above exactly.
Confirming this reproduces on macOS too (Claude Desktop), not just Windows —
identical signature: read_page / get_page_text / javascript_tool work instantly
against the tab, but computer{action:"screenshot"} times out at 30s whenever the
Browser pane isn't the focused view, and document.visibilityState stays "hidden".
Impact for agent/automation use: a session driving the Browser pane from the chat
pane can verify DOM and structure, but cannot verify anything paint-gated —
screenshots, and any IntersectionObserver / requestAnimationFrame / scroll-triggered
animation never render. There's no page-level workaround; it needs a human to
manually foreground the pane, which defeats autonomous visual verification.
Requested fix: an offscreen/headless render mode for the Browser pane (composite
frames even when the pane isn't visible), or let screenshot force a one-off
composite of an unfocused pane — so agent sessions can do visual / responsive /
animation checks without a person foregrounding the window.
(Predecessor #53475 was closed NOT_PLANNED; this is the live regression.)