Apps
Dashboards
Agents build interactive web dashboards, from monitoring views to data explorers, accessible anytime from the agent home.
How agents create dashboards
Agents create dashboards through the dashboards MCP server. The primary tool is create_dashboard.
create_dashboard
Creates a new dashboard project in the agent's workspace. Parameters:
- slug: A URL-safe identifier (e.g.
sales-metrics), used in routing and filesystem paths. - name: A display name shown in the sidebar and header bar.
- description: A short description of what the dashboard does.
- framework: Either
plain(static HTML/JS) orreact(a React-based app).
Gamut scaffolds the project in the agent's artifacts/ directory, installs dependencies, and starts a dev server. The dashboard is available immediately.
start_dashboard
Starts (or restarts) a previously created dashboard by its slug. Useful after code changes or a crash.
list_dashboards
Returns all dashboards for the current agent, including status, port, and metadata.
get_dashboard_logs
Retrieves console output from a dashboard's dev server, used to debug build errors and runtime issues. An optional clear parameter resets the log buffer after reading.
What dashboards can contain
A dashboard is a full web application. Agents can build anything that runs in an HTML/JS environment:
- Data visualizations and charts
- Interactive forms and controls
- Real-time monitoring interfaces
- Multi-page applications (with the React framework)
Dashboards run in a sandboxed iframe with allow-scripts, allow-same-origin, allow-forms, and allow-popups permissions, plus microphone and camera access. Gamut injects polyfills that expose browser APIs and an LLM SDK, so dashboards can include AI-powered features of their own.
Accessing dashboards
Sidebar navigation
Expand an agent in the sidebar to see its dashboards at the top of the submenu, marked with a pointer icon. Click one to open it in the main content area; double-click to open it in a new window.
Home page cards
The home page shows dashboard cards alongside agent cards. Each card displays a screenshot thumbnail when available and opens the dashboard on click.
Agent home view
An agent's home view shows its dashboard cards in the right column.
Standalone URL
Every dashboard has a standalone view URL:
/api/agents/{agentSlug}/artifacts/{dashboardSlug}/view
The page is self-contained: it checks the agent's status, auto-starts it if needed, waits for the dashboard to become available, then displays it in a full-viewport iframe. Share or bookmark this URL.
Pop-out window
In the Electron desktop app, the dashboard toolbar's "Open in new window" button launches the dashboard in a dedicated window. On the web, it opens a new browser tab with the standalone view.
macOS Dock shortcut
On macOS, the dashboard toolbar's "Add to Dock" button opens a dialog to pick an icon emoji and background color, then creates a Dock shortcut that launches the dashboard directly.
The dashboard panel
Inside Gamut, a dashboard renders in a panel with a toolbar showing:
- The dashboard name and description
- An "Add to Dock" button (macOS Electron only)
- An "Open in new window" button
- A "Refresh" button to reload the iframe
Pending approval requests from the agent appear below the toolbar as inline review prompts. Approve or deny agent actions directly from the dashboard view, without switching to a chat session.
Dashboard lifecycle
Dashboards follow their agent's container lifecycle:
- Creation: The agent calls
create_dashboard. - Running: While the agent's container runs, the dashboard process serves content on an internal port, and Gamut proxies UI requests to it.
- Stopped: When the agent stops, the dashboard process stops too. Files remain on disk.
- Auto-start: Navigating to a stopped dashboard (from the sidebar, a URL, or a Dock shortcut) automatically starts the agent, with a loading state until the dashboard is ready.
Status values are running, stopped, crashed, and starting. The UI polls every second while any dashboard is starting, then slows to a 60-second interval once all are stable.
Managing dashboards
Renaming
Right-click a dashboard in the sidebar and select "Rename Dashboard" to edit its display name inline. The name is stored in the dashboard's package.json.
Deleting
Right-click a dashboard in the sidebar and select "Delete Dashboard" to remove it permanently. This stops the process if running and deletes all files; it cannot be undone.
Screenshots
Gamut automatically captures a screenshot of each dashboard for its cards. Screenshots are stored as screenshot.png in the dashboard's directory and served from the host filesystem, so they stay available while the agent is stopped.