Install any skill in seconds. Free to start, no credit card required.
Get Started Free →Control Collaborator's spatial canvas from the terminal using the `collab-canvas` CLI.
| Test case | Without → With | Effect | Δ tokens | Δ turns |
|---|---|---|---|---|
| case-01 | ✗→✓ | ▲ Improved | 20% | 0% |
| case-02 | ✗→✓ | ▲ Improved | 0% | 0% |
| case-03 | ✗→✓ | ▲ Improved | 35% | 0% |
| case-04 | ✗→✓ | ▲ Improved | 3% | 0% |
| case-05 | ✗→✓ | ▲ Improved | -36% | 0% |
Control Collaborator's spatial canvas from the terminal using the collab-canvas CLI. The canvas is a pannable, zoomable surface where tiles display terminals, files, images, and graphs.
All positions and sizes use grid units. One grid unit = 20 pixels. Origin (0,0) is the top-left corner. X increases rightward, Y increases downward.
| Type | Use for | Default size (w x h) | |---------|----------------------------------|-----------------------| | term | Terminal / shell session | 20 x 25 | | note | Markdown files (.md) | 22 x 27 | | code | Source code files | 22 x 27 | | image | Images (.png, .jpg, .gif, .webp) | 14 x 14 | | graph | .graph.json or folder graphs | 30 x 25 |
Type is inferred from the file when --file is used:
.md, .txt -> note.graph.json -> graph.png, .jpg, .gif, .svg, .webp -> imagegraphcodeList all tiles on the canvas. Returns JSON array with id, type, position, size, and file path for each tile.
bashcollab-canvas tile list
Create a new tile on the canvas.
bashcollab-canvas tile create <type> [--file <path>] [--pos x,y] [--size w,h]
<type>: term, note, code, image, or graph--file <path>: file to display (required for note, code, image, graph; omit for term)--pos x,y: position in grid units (default: viewport center)--size w,h: size in grid units (default: per-type default above)Returns the new tile's ID on stdout.
Examples:
bash# Open a terminal at position (5, 5) collab-canvas tile create term --pos 5,5 # Open a markdown file with default placement collab-canvas tile create note --file ./README.md # Open a graph file at a specific position and size collab-canvas tile create graph --file ./entities.graph.json --pos 25,0 --size 35,30
Remove a tile from the canvas.
bashcollab-canvas tile rm <id>
Reposition a tile.
bashcollab-canvas tile move <id> --pos x,y
Resize a tile.
bashcollab-canvas tile resize <id> --size w,h
Pan and zoom the viewport to bring one or more tiles into view, then flash their focus rings.
bashcollab-canvas tile focus <id> [<id>...]
Examples:
bash# Focus a single tile collab-canvas tile focus tile-abc123 # Focus multiple tiles (viewport zooms to fit all) collab-canvas tile focus tile-abc123 tile-def456
Send input to a terminal tile. The tile must be of type term with an active PTY session.
bashcollab-canvas terminal write <id> <input>
Examples:
bash# Run a command in a terminal tile collab-canvas terminal write tile-abc123 $'ls -la\n' # Launch Claude Code in headless JSON mode collab-canvas terminal write tile-abc123 $'claude -p "fix the bug" --output-format json\n'
Read recent output from a terminal tile. Returns raw terminal output from the PTY session's ring buffer.
bashcollab-canvas terminal read <id> [--lines N]
--lines N: number of lines to capture (default: 50)Two files next to each other for comparison.
bashcollab-canvas tile create code --file ./old.ts --pos 0,0 collab-canvas tile create code --file ./new.ts --pos 23,0
Knowledge graph on the left, notes on the right, terminal below.
bashcollab-canvas tile create graph --file ./research.graph.json --pos 0,0 --size 30,25 collab-canvas tile create note --file ./notes.md --pos 31,0 collab-canvas tile create term --pos 0,26
Multiple views arranged in a grid.
bashcollab-canvas tile create graph --file ./entities.graph.json --pos 0,0 --size 30,25 collab-canvas tile create note --file ./log.md --pos 31,0 collab-canvas tile create note --file ./report.md --pos 31,14 collab-canvas tile create term --pos 0,26
Single tile centered with generous size.
bashcollab-canvas tile create code --file ./main.ts --pos 5,2 --size 40,35
Launch a Claude Code instance in a terminal tile for the human to observe.
bash# Create terminal, wait for PTY, then launch agent collab-canvas tile create term --pos 0,0 # (use tile list to get the tile ID, then) collab-canvas terminal write <id> $'claude -p "summarize this project" --output-format json\n' # Read the result when done collab-canvas terminal read <id> --lines 100
tile list first to see what's already on the canvas before creating tiles.tile focus to frame after arranging tiles so the user can see them..graph.json file and the graph tile smoothly incorporates them.tile create term, wait a few seconds before terminal write so the PTY session can start.The collab-canvas CLI is installed to ~/.local/bin/. If the command is not found, the user needs to add it to their PATH:
bashexport PATH="$HOME/.local/bin:$PATH"
Add this to ~/.zshrc (macOS) or ~/.bashrc (Linux) to persist across sessions.
| Code | Meaning | |------|--------------------------------------------| | 0 | Success | | 1 | RPC error (tile not found, invalid params) | | 2 | Connection failure (Collaborator not running) |
Other measured skills in the registry, with their headline benchmark lift.