May 20th, 2026

Просмотрщик: Browser sandbox для интерактивных HTML-артефактов

Что изменилось

Адаптер для просмотра HTML-артефактов в изолированном iframe. Ассистент может сгенерировать интерактивную страницу с JS — она безопасно отрендерится в чате без доступа к остальной системе.

  • MIME-маршрутизация: canRender матчит text/html и application/xhtml+xml.
  • Sandboxed iframe: в продакшен-сборке Electron используется attribute sandbox="allow-scripts" без allow-same-origin — скрипты выполняются, но изолированы от cookies и localStorage хоста.
  • CSP внутри iframe: отдельный CSP без unsafe-inline, nonce генерируется на каждый рендер.
  • Hash-based DOM id: placeholder-div получает стабильный id из хеша содержимого — при перерендере не происходит лишних mount/unmount.
  • IPC bridge: на mount диспатчит artifact:browser:request-attach postMessage — main-процесс прикрепляет BrowserView с настроенной partition.

Где попробовать

Попросите: «сделай интерактивный калькулятор HTML+JS». Артефакт откроется в sandbox-iframe — клики работают, но скрипт не имеет доступа к ROX.ONE окружению.

Связано

PR #344 — Browser adapter renderer-side.