Skip to content
CLI Tools
Command

/canvas

Spawn interactive terminal canvases for calendars, documents, and flight booking

BOOST
From plugin
claude-canvas
1.5k1 skill1 command
Install
> /plugin marketplace add dvdsgl/claude-canvas
> /plugin install canvas@claude-canvas

How it fires

How this command gets triggered: by you, by Claude, or both.

  • Fires itselfClaude auto-loads it when your prompt matches the work.
  • You can call itInvoke it directly when you want it.
  • Slash command/canvas

Context preview

What this command does when you run it.

Spawn interactive terminal canvases for calendars, documents, and flight booking

Command definition

canvas.md
name: canvas
description: Spawn interactive terminal canvases for calendars, documents, and flight booking

Canvas Command

Spawn and control interactive terminal displays (TUIs) in tmux split panes.

Usage

When the user invokes `/canvas`, help them spawn the appropriate canvas type based on their needs.

Workflow

Step 1: Determine Canvas Type

Ask what kind of canvas the user needs:

  • **Calendar** - Display events or pick meeting times
  • **Document** - View or edit markdown content
  • **Flight** - Compare flights and select seats

Step 2: Gather Configuration

Based on the canvas type, collect the necessary configuration:

**Calendar:**

  • Events to display (title, start/end times)
  • For meeting picker: multiple calendars with busy times
  • Slot granularity (15/30/60 minutes)

**Document:**

  • Markdown content to display
  • Document title
  • Edit mode or display-only
  • Optional diff highlighting

**Flight:**

  • Flight options (airline, times, prices)
  • Seatmap configuration
  • Origin/destination airports

Step 3: Spawn Canvas

Use the CLI to spawn the canvas:

cd ${CLAUDE_PLUGIN_ROOT}
bun run src/cli.ts spawn [type] --scenario [scenario] --config '[json]'

**Examples:**

# Calendar display
bun run src/cli.ts spawn calendar --config '{"events": [...]}'

# Meeting picker
bun run src/cli.ts spawn calendar --scenario meeting-picker --config '{"calendars": [...]}'

# Document editor
bun run src/cli.ts spawn document --scenario edit --config '{"content": "# Title", "title": "Doc"}'

# Flight booking
bun run src/cli.ts spawn flight --config '{"flights": [...]}'

Step 4: Handle Results

Wait for user interaction and handle the result:

  • **Selected**: User made a selection (time slot, text, flight+seat)
  • **Cancelled**: User pressed Escape or quit
  • **Error**: Something went wrong

Requirements

  • Must be running inside a tmux session
  • Terminal should support mouse input for interactive scenarios

Skills Reference

Read these skills for detailed configuration options:

  • `canvas` - Overview and IPC communication
  • `calendar` - Calendar events and meeting picker
  • `document` - Markdown rendering and text selection
  • `flight` - Flight comparison and seatmaps
Read more
Ships withclaude-canvas

A TUI toolkit that gives Claude Code its own display. Spawn interactive terminal interfaces for emails, calendars, flight bookings, and more. Note: This is a proof of concept and is unsupported.

Get the whole plugin
Stats
1,515
Stars
138
Forks
Quiet
Maintenance
TypeScript
Language
MIT
License
9mo ago
Last commit
9mo ago
Created
11d ago
Added

Repo: dvdsgl/claude-canvas