Skip to content

Canvas Panel

The Canvas panel goes beyond text output. It renders rich visualizations, interactive forms, charts, images, video, and audio — all driven by CLI tools through a lightweight protocol.

Traditional terminals are limited to text. The Canvas panel breaks that constraint:

  • Charts and graphs — data visualizations rendered inline
  • Images and video — media displayed directly, not just file paths
  • Interactive forms — CLI tools can present GUI-like input forms
  • Tables — formatted data tables with headers and alignment
  • Audio playback — play audio files inline

CLI tools communicate with the Canvas through environment variables and a simple protocol. When a tool runs inside The Terminal, it can detect the Canvas and send rich content to it.

The environment provides:

VariablePurpose
THE_TERMINAL_IDIdentifies the terminal instance
THE_TERMINAL_DEVTOOLS_PORTPort for DevTools communication
THE_TERMINAL_DEVTOOLS_URLFull URL for DevTools API

Tools that support the Canvas protocol can send structured output instead of plain text.

The Canvas supports an immersive mode for full-panel experiences:

  • Video playback — full-panel video with controls
  • AI character animations — animated visual responses
  • Presentations — step-through content

Immersive mode takes over the entire Canvas panel for focused content.

The Canvas isn’t just output — it supports input too. CLI tools can:

  1. Send a form definition to the Canvas
  2. The Canvas renders it as interactive UI elements
  3. User fills in the form
  4. Responses are sent back to the CLI tool

This bridges the gap between CLI and GUI without leaving the terminal workflow.