smolvm ui to open a local browser dashboard for your sandboxes. You can inspect running sandboxes, view logs, and manage common actions without switching between terminal commands.
Synopsis
Description
Theui command starts a local web server that hosts the SmolVM dashboard interface. The dashboard provides a graphical interface for managing VMs, viewing logs, and monitoring system resources.
The dashboard requires the
dashboard extra to be installed: pip install 'smolvm[dashboard]'smolvm-dashboard-ui-<tag>.tar.gz and are cached under the local SmolVM data directory.
Options
Bind host address. Use
0.0.0.0 to allow external connections.Bind port (must be between 1-65535).
Allow dashboard UI downloads from prerelease/beta tags. Enables access to experimental features.
Examples
Start with default settings
Start the dashboard on localhost:8080:Use a custom port
Start the dashboard on port 3000:Allow external connections
Bind to all interfaces to allow remote access:Enable beta features
Use prerelease dashboard UI assets when you want to test dashboard changes before the next stable release:Combine options
Custom host, port, and beta features:Dashboard Features
The SmolVM dashboard provides:- VM Management: Create, start, stop, and delete VMs
- Real-time Monitoring: View VM status, resource usage, and logs
- Network Configuration: Manage port forwarding and network settings
- Console Access: Web-based terminal access to VMs
- Environment Variables: GUI for managing VM environment variables
Dashboard release assets
The dashboard UI is published separately from the Python server code. At startup,smolvm ui scans recent SmolVM releases, finds the newest dashboard bundle, downloads it, and extracts the dist/ directory for static file serving.
Stable releases are used by default. Pass --allow-beta to include prerelease dashboard bundles.
You can override the static UI directory for local dashboard development:
Environment Variables
The UI command sets the following environment variables during runtime:Set to the dashboard URL (e.g.,
http://localhost:8080). Used by dashboard components.Set to
"1" when --allow-beta is enabled. Triggers beta asset downloads.These environment variables are automatically managed and restored to their previous values when the server stops.
Requirements
The dashboard requires additional dependencies. Install them with:fastapi>=0.115.0- Web frameworkuvicorn[standard]>=0.34.0- ASGI serverwebsockets>=14.0- WebSocket support for real-time updates
Stopping the Server
PressCtrl+C to stop the dashboard server gracefully:
Exit Codes
Common Issues
Missing dashboard dependencies
Port already in use
Invalid port number
Production Deployment
For production deployments, consider:- Reverse Proxy: Use Nginx or Caddy to handle HTTPS
- Authentication: Implement authentication middleware
- Process Management: Use systemd or supervisord for automatic restarts
- Resource Limits: Set appropriate ulimits and container limits
Example systemd service
Related Commands
smolvm doctor- Verify system requirements before starting the UIsmolvm sandbox delete- Delete sandboxes managed through the dashboardsmolvm server start- Start the local HTTP API server
