wave_create_widget
Creates and saves a custom Wave Terminal widget to the widgets config; it returns a confirmation first, then executes the write when approved=true is passed.
Instructions
Create a new custom widget in Wave Terminal (writes to ~/.waveterm/widgets.json). First call returns a confirmation; pass approved=true to execute.
Input Schema
| Name | Required | Description | Default |
|---|---|---|---|
| id | Yes | Unique widget identifier (e.g. 'dev-server', 'test-runner') | |
| cwd | No | Working directory for the block | |
| env | No | Environment variables to inject into the block | |
| icon | No | Icon name (e.g. 'terminal', 'code', 'robot') | |
| view | Yes | Block view type: 'term', 'preview', 'web', 'sysinfo', 'launcher' | |
| color | No | Colour hex code (e.g. '#FF6B6B') | |
| label | Yes | Display label shown in the widget bar | |
| command | No | Command to execute when the widget opens (for term blocks) | |
| approved | No | Set to true to confirm and execute the write | |
| shell_path | No | Shell binary path (e.g. '/opt/homebrew/bin/fish') | |
| run_on_start | No | Auto-run command when the widget opens (default: false) | |
| close_on_exit | No | Close the block when the command exits (default: false) |