Open Design embed: AAP-driven navigation в правой панели

## Что это Когда агент эмитит AAP (Agent Artifact Protocol) событие вида `{ type: "design", uri: "design://component/Button" }`, embed должен открыть соответствующий артефакт в правой панели ROX.ONE без перезагрузки сессии. Сейчас навигация ограничена manual-кликом из chat — агент не может перевести фокус автоматически. Решение: `@rox-one/aap-router` подписывается на AAP-stream, резолвит type через `ArtifactViewerRegistry`, открывает viewer в правой панели с deep-link state. Для design-артефактов специально: проксирует через `RoxDesignViewManager.navigate(uri)`. Если артефакт уже открыт — фокус на него, без дублирования tab. Компоненты: `@rox-one/aap-router`, `apps/electron/src/embed/RoxDesignViewManager`. Browser-style история навигации (back/forward) в правой панели через Cmd+[ / Cmd+]. ## Зачем AAP loop — это сердце compounding-experience: агент работает, артефакты появляются автоматически в нужной surface. Без AAP navigation пользователь делает 2-3 лишних клика на каждый артефакт, что ломает flow в длинных миссиях. ## Источники вдохновения - [agisota/meta2d.js](https://github.com/agisota/meta2d.js) — real-time 2D-engine с bidirectional data exchange для AAP wave canvas - [vercel-labs/tersa](https://github.com/vercel-labs/tersa) — open-source canvas для AI workflows с node-routing - [LincZero/obsidian-node-flow](https://github.com/LincZero/obsidian-node-flow) — JSON-described node-graph для AAP-navigation viz ## 🔗 Linear - [PZD-445](https://linear.app/kuhjie/issue/PZD-445) — backing ticket

Please authenticate to join the conversation.

Upvoters
Status

In Review

Board
🌊

Frictionless UX

Date

About 19 hours ago

Author

agi

Subscribe to post

Get notified by email when there are changes.