Public artifact link renders blank page in browser due to invalid postMessage origin 'app://localhost'

Resolved 💬 3 comments Opened Apr 1, 2026 by mirceastrugaru Closed May 23, 2026

Preflight Checklist

  • [x] I have searched existing issues and this hasn't been reported yet
  • [x] This is a single bug report (please file separate reports for different bugs)
  • [x] I am using the latest version of Claude Code

What's Wrong?

A public artifact link that was previously working now renders a completely blank white page in Chrome.

URL: https://claude.ai/public/artifacts/ca05d878-0dca-452a-b7b7-966f91e40fcb

The artifact shell loads (Claude header, view count visible) but the iframe content area is entirely blank. The root cause is the artifact renderer calling postMessage with target origin 'app://localhost' (an Electron origin), which throws a SyntaxError in a browser context and breaks the iframe handshake entirely, so the artifact never initializes.

What Should Happen?

The artifact content should render correctly in a browser, as it previously did. The postMessage origin negotiation should use a valid web origin, not app://localhost which is only valid in the Electron desktop app.

Error Messages/Logs

Uncaught SyntaxError: Failed to execute 'postMessage' on 'Window': Invalid target origin 'app://localhost' in a call to 'postMessage'.
    at 7905-1f7e271de70b4d3c.js:1:6920
    at Array.forEach (<anonymous>)
    at l.requestHandshake (7905-1f7e271de70b4d3c.js:1:6890)
    at new l (7905-1f7e271de70b4d3c.js:1:9710)
    at 7324-2de3d1f6bfa48673.js:1:11221

Failed to execute 'postMessage' on 'DOMWindow': The target origin provided ('https://www.claudeusercontent.com') does not match the recipient window's origin ('https://claude.ai').

[SERVICE_WORKER] Found 1 service worker(s), which are no longer used. Unregistering.

Steps to Reproduce

  1. Open https://claude.ai/public/artifacts/ca05d878-0dca-452a-b7b7-966f91e40fcb in Chrome
  2. Observe the page loads (header visible, view count shows 49) but content area is completely blank
  3. Open DevTools > Console
  4. See: Uncaught SyntaxError: Failed to execute 'postMessage' on 'Window': Invalid target origin 'app://localhost'
  5. Hard refresh (Cmd+Shift+R) does not fix it

Claude Model

None

Is this a regression?

Yes, this worked in a previous version

Last Working Version

_No response_

Claude Code Version

2.1.89 (Claude Code)

Platform

Anthropic API

Operating System

macOS

Terminal/Shell

Terminal.app (macOS)

Additional Information

_No response_

View original on GitHub ↗

This issue has 3 comments on GitHub. Read the full discussion on GitHub ↗