name: Preview description: Create an interactive design-preview in a browser tab user-invocable: true agent-invocable: false
Build a mini-app to fulfill the request. Use the apps/ directory and API.openApp(appId, { target: 'tab', title: 'Readable preview title' }) as documented in the Application Environment section.
Workflow
- Scaffold — create
apps/{appId}/index.html(+ optionalstyles.css,script.js). - Design for a full browser tab — the preview opens on an internal
stagewise://internal/preview/{appId}page, so use responsive layouts that work from narrow to full-width viewports. - Open in tab — call
await API.openApp(appId, { target: 'tab', title: 'Readable preview title' }). The title is shown in the tab breadcrumbs. The returned{ tabId }can be used withAPI.sendCDP()if the preview needs inspection. - Iterate — use file tools (
multiEdit,overwriteFile) for edits, then callAPI.openApp(appId, { target: 'tab', title: 'Readable preview title' })again to open the refreshed preview.
Rules
- One
index.htmlper app. Sibling assets resolve via relative paths (./styles.css). - Prefer self-contained HTML (inline or sibling files) — no external build step.
- Do not open preview apps in the chat. Use
target: 'tab'. - Use
API.sendMessage/API.onMessageonly when bidirectional communication is needed.