May 20th, 2026
Integration PR #360 объединил шесть независимо разработанных artifact-viewer адаптеров в единый singleton registry — теперь каждый формат файла, который создаёт ассистент, отображается встроенным просмотрщиком без скачивания.
@rox-one/artifact-viewer-core: адаптеры регистрируют себя при первом импорте, lazy-загружаются по требованию. Один экземпляр на весь жизненный цикл приложения — нет дублирования инстансов между сессиями.sandbox-iframe для интерактивных HTML-артефактов с CSP; скрипты выполняются, но не имеют доступа к родительскому DOM.Напишите ассистенту: «Создай Excel-таблицу с бюджетом» или «Сделай Markdown-документ с планом проекта». Файл откроется прямо в чате. Для Figma — вставьте ссылку.
Архитектурное решение: singleton выбран для предотвращения дублирования тяжёлых парсеров (SheetJS, mammoth.js) в памяти при нескольких открытых артефактах одновременно. Каждый адаптер регистрируется один раз через side-effect при первом импорте. Детектирование формата — цепочка detect() вызовов; первый вернувший true побеждает.
Дорожная карта: Артефакты и Просмотрщики. Следующие адаптеры: JSON viewer, D3 data-viz, video/audio.