Getting Started
Dashboard
For Developers
Chat is the primary way users build. The agent streams replies, runs tools, writes files, and can read attached images and PDFs when the selected model supports them.
Unavailable models (no provider key / unmapped) appear muted and disabled in the picker.
Operators manage friendly display names under Dashboard → Chat models (/dashboard/models):
| Field | Purpose |
|---|---|
| Name | Label shown in Lab and Studio (e.g. Mini, Pro, Max) |
| Provider model | Real API model id from API Integration |
| Icon (SVG) | Optional sanitized icon in the picker |
| Sort / default | Order in the list; default Mini when configured |
Keys alone gate availability — map each named model to a provider that has a valid API key.
From Studio or Lab + menus, users can upload a device/project ZIP. Files land in the Lab workspace (with size and path safeguards). Progress uses a spinner and rotating hint copy.
| Element | Meaning |
|---|---|
| Thinking | Collapsible thought block |
| Tool cards | Active / complete labels for each tool |
| Photograph card | Image icon. Looking up photographs / Looked up N photographs. The scene query is not shown in the transcript. |
| Web search card | Globe icon. Searching the web / Found N web results. |
| Fetch card | URL + HTTP status + optional body preview from fetch_from_web. |
| File write cards | Complete files applied to the workspace |
Stream: GET …/chat/stream/{messageId} (SSE).
Cancel: session cancel endpoint.
Schemas are defined in LabToolCatalog. Names used at runtime include:
| Tool | What it does |
|---|---|
list_dir / file_search / grep / read_file | Inspect the working VFS |
write_file | Atomic full-file overwrite. Body must be complete and balanced. There is no per-turn file-count cap. Always overwrite src/App.jsx in the same turn as the first sections so Preview is not the seed canvas. |
lookup_visuals | Fetch licensed stock photographs. Call in its own round before write_file when a page needs real photos. Use each returned src. Never invent Unsplash/Pixabay IDs. |
If the first turn only writes CSS and section files, Lab continues automatically until src/App.jsx imports those sections.
Operators configure Unsplash / Pixabay under Stock Images. Search uses the Unsplash Access Key. Empty lookup results → CSS or illustration, not fake photo URLs.
The first product brief mints a short invented wordmark (see Projects). The chat prompt is never used as the title.
| Env / config | Role |
|---|---|
| Pack credit grants | Metering |
| Model max output | Tokens per Lab turn (executor uses the model ceiling) |
| Credits | Balance; insufficient → upgrade drawer |
search_web |
| Public web search (DuckDuckGo default; Brave when configured). Returns titles, URLs, snippets. Available in discovery and build. |
fetch_from_web | Fetch a public page for research — text plus discovered image/asset URLs. Does not download binaries into the workspace. Available in discovery and build. |
survey_datastore | Inspect Supabase connection and schema before inventing tables |