Repository navigation
Built-in browser does not render or navigate on v0.0.46 nightlies; desktop browser tools report "No desktop browser is connected to this session" #17009
Description
What happened
I use the nightly channel. Since the Orchestrator V2 nightlies (the first was 20261003.2610), the built-in browser in the desktop app stopped working. Opening the Browser surface shows the tab and the local-servers list, but typing a URL and pressing Enter does nothing: the field clears back to "Search or enter URL" and no page ever loads, with no error anywhere in the UI. Agents in the thread cannot use the browser either — the desktop browser tools fail with [browser.disconnected] No desktop browser is connected to this session even though the desktop app is open on the thread. Restarting the app and rebooting the machine did not help. A screen recording shows the pane accepting google.com and then doing nothing.
Diagnosis
Agent-assisted investigation on the machine:
- Reproduced the agent-side failure live:
browser.tabs.listandbrowser.tabs.openboth fail with[browser.disconnected] No desktop browser is connected to this session. Open this session in the desktop app and wait for it to connect.while the desktop app is open on the thread. It persists across an app restart and a full reboot. - Differential: server-hosted preview tabs still work.
preview_open+preview_navigatetohttps://example.comsucceeds and the tab reports the URL and title correctly (the tab was closed afterwards). So the server browser host is fine; the desktop browser host is the one that does not attach. - No
server-child*.log*files exist. Per the triage docs those are written only when a desktop backend crashes or fails to start, so the desktop backend is not crashing. server.trace.ndjsonshowsorchestration-v2.*startup spans; no browser-related error spans were found.- The reporter first hit this after updating to the V2 nightlies; it worked before.
Steps to reproduce
- Desktop app (Windows) connected to a T3 server on WSL2.
- Open a thread, open the Browser surface ("Open a surface" → Browser).
- Type
google.comand press Enter. The field clears back to the placeholder; the pane stays on the "Local servers" list; nothing loads and no error is shown. Clicking a listed local server does nothing either. - In the same thread, have an agent call
browser.tabs.list. It fails with[browser.disconnected] No desktop browser is connected to this session. - Quit and reopen the app, reboot the machine: unchanged.
Version
0.0.46-nightly.20261007.2787
Environment
Windows 11 host + WSL2 (kernel 6.18.33.2-microsoft-standard-WSL2); T3 server on the WSL side (linux x64); the desktop app connects to it. Environment label P7-DESKTOP.
Evidence
agent -> browser.tabs.list
[browser.disconnected] No desktop browser is connected to this session. Open this session
in the desktop app and wait for it to connect.
agent -> preview_open + preview_navigate https://example.com (server-hosted tab)
available: true, url: https://example.com/, title: "Example Domain"
$ ls ~/.t3/userdata/logs/server-child*
none
$ grep -ic browser ~/.t3/userdata/logs/server.trace.ndjson
0Screen recording of the dead pane: will be attached in a comment.
Related issues
- [Bug]: Browser address bar says "Search or enter URL" but cannot search, and search text fails silently #16639 (address bar cannot search; silent failure) and [Bug]: Environment-hosted browser tabs identify as HeadlessChrome with webdriver set, so sites like CNN and Google refuse to serve them #16638 (environment-hosted tabs blocked as HeadlessChrome) — a fix for this batch is in review: fix(server): environment-hosted browser tabs behave like a normal browser #16963.
- [Bug]: target=_blank links and window.open open a background tab in environment-hosted browser tabs #16640, [Bug]: A slow typed navigation blocks all input in an environment-hosted browser tab for 15 seconds #16641 — other environment-hosted tab bugs.
- fix(web): the desktop browser host answers every request that arrives together, not only the last #15965 (closed unmerged) documents the desktop host dropping batched requests and being disconnected by the broker; Built-in browser snapshots fail even after the desktop snapshot handler reports success #11223 (closed) is about desktop snapshots.
- None of these covers a desktop browser host that does not attach, with the pane silently doing nothing on the V2 nightlies.
Fix applied or workaround
None yet — investigation only; nothing was changed on the machine.
Filed by
opencode (deepseek-v4.1-flash) in a T3 Code agent session — agent-assisted triage; structure follows the via-triage template.
Activity
juliusmarminge commentedon Oct 8, 2026
Note
Grok responding on behalf of Julius.
Thanks for the detailed report and the server-tab differential. I traced this in code on
main(ff3a04a) but haven't reproduced it in a running app. I found a specific path that matches every symptom, if your desktop app runs in WSL-only mode, meaning the WSL backend is the app's primary backend rather than a second backend next to the Windows one. Can you confirm which setup you have?Likely mechanism (WSL-only primary)
DesktopBackendConfiguration.tsL574-L575). In WSL-only mode,resolvePrimaryusesbuildWslPrimaryConfiginstead. That reuses the primary's port and identity ("primary-aware code paths … keep working"), but its bootstrap has no browser fds and is delivered over stdin (L773), because "wsl.exe drops additional file descriptors" (DesktopBackendManager.tsL504-L507). On the server, that makesDesktopBrowserChannelavailable: false.desktopRendersthen returns false, and every tab runs on the server's own headless page. That's whypreview_open/preview_navigatework for agents.serverBrowser: true, so new tabs getruntime: "server".rendersServerTabNativelyonly checks Electron,runtime === "server"and environment == primary. It can't tell that this server has no desktop channel. SoElectronBrowserHostmounts a local<webview>markedserverDriven, andPreviewViewtreats the tab as native instead of streaming it.previewBridge.navigateon the desktop webview. ForserverDriventabs the bridge skips reporting status (usePreviewBridge.tsL84), because the server normally sees navigation over the channel. Here there's no channel, so the server's snapshot staysIdle. Then:PreviewChromeRow.tsxL106-L112) and shows the snapshot URL (L183,PreviewView.tsxL194). That URL is"", so you see the placeholder again.Idlekeeps the empty state (Local servers) on screen, and the webview slot isn't rendered.Agents'
preview_*tools and your panel end up on two different pages. That's the same class of split as #16901, except there it happens after a 10s attach timeout, and here it happens on every tab.Not from T3 Code: the
[browser.disconnected] No desktop browser is connected to this sessionstring and thebrowser.tabs.list/browser.tabs.opentool names don't appear anywhere onmain. T3 Code's agent browser tools arepreview_*. That error most likely comes from the agent harness's own browser tooling, so it isn't evidence about the T3 desktop host.Timing: this path came in with #15328 (merged Oct 6). The first nightly that includes it is
0.0.46-nightly.20261006.2735. The V2 nightlies you mention (20261003.2610through20261005.2702) don't have it. If the pane really was dead on those builds, something else is also involved. Please say whether it worked on20261005.2702.Next steps / fix options (unverified)
DesktopBrowserChannel.available, andrendersServerTabNativelycould require it. Without it, a WSL-only primary would stream its headless tabs like any other environment.wsl.exe, such as a loopback socket, so WSL tabs render natively too.To confirm
20261005.2702and stop on20261006.2735or later?Related
google.comalready resolves as a URL. [Bug]: A slow typed navigation blocks all input in an environment-hosted browser tab for 15 seconds #16641 is input blocking in streamed tabs. fix(web): the desktop browser host answers every request that arrives together, not only the last #15965 (closed) was the old preview-automation host batching. Built-in browser snapshots fail even after the desktop snapshot handler reports success #11223 (closed) is desktop snapshots. All of these are distinct.p7gg commentedon Oct 8, 2026
Confirming from the machine — thanks for the trace, it matches what we see:
wsl.exe -d archlinux --exec … t3 --bootstrap-fd 0); there is no Windows-side backend process (only the Electron UI processes), and the app shipswsl-runtime.tar.gzin its resources.20261007.2787, and I can't confirm whether the Browser surface worked on20261005.2702— my impression was that it broke with the V2 nightlies, but I can't pin the build.t3code-preview-*), consistent with your step 2.[browser.disconnected]/browser.tabs.*— that's the agent harness, not T3 Code; I'll disregard it as evidence about the desktop host.Happy to test a build with the capability-gated fix, or report back if the workaround (WSL as a second backend next to Windows) changes anything.
p7gg commentedon Oct 8, 2026
video of the issue:
20261007-2333-47.5836394.mp4
theDanielJLewis commentedon Oct 10, 2026
I'm having I think a similar issue with 0.0.46-nightly.20261010.2908 (3e94afa) on macOS 26. But it seems like the browser URL never updates. But it will navigate to the URL I enter, even though it reverts the displayed URL.
Clipboard-20261010-055421-656.mp4