// The immortal shell — served by the supervisor at top-level '/' (and document navigations). // It contains ONLY the bubble + chat chrome (widget.js) and a same-origin iframe hosting the // user's workspace app. There is NO Vite client here, NO HMR, no service-worker auto-reload — // nothing that can reload this page. All workspace reloads, rebuilds, and interstitials // (RECOVERING_HTML / backend-down) happen INSIDE the iframe, so the chat — the user's lifeline // to the agent — never dies. The iframe src carries ?__bloby_frame=1 so the supervisor routes // it past the shell branch to the real workspace (Vite proxy / interstitials). // Kill switch: BLOBY_NO_SHELL=1 makes the supervisor skip this entirely (legacy top-level // workspace). Static string by design — no server-side templating. export const SHELL_HTML = ` Bloby
`;