hay-kot/dotfiles/hive-canvas
Claude Code and agent skill by hay-kot/dotfiles
- community
Checking that the SKILL.md file is still in the repository.
Show rendered output in the Hive canvas pane beside the chat through the hive-canvas MCP server. Use when a result reads better rendered than as terminal text (tables, comparisons, stat summaries, diagrams, reports), or when the user asks to put something on the canvas.
Install
npx vskill@latest install hay-kot/dotfiles/hive-canvasSKILL.md
Hive Canvas
A canvas is a named, ordered list of blocks that Hive renders in a pane beside the chat. Canvases are saved in the workspace and outlive the conversation.
Session
Every tool takes session:
$HIVE_AGENT_SESSIONwhen it is set (Hive Desktop chats).- Otherwise the absolute path of the working directory (
pwd), which names the hive session.
A not_found on that value means this is not a hive session. Say so and answer in chat. Don't retry with other values.
Workflow
- Name the canvas after the artifact (
perf-report,release-notes), not the conversation. Set
canvasTitle on the first write.
- Run
list_canvasesfirst. If the name already exists,read_canvasit before you overwrite
it -- it may belong to an earlier chat.
- Lay out the first version with
put_blocksin one call. - Revise with
put_blockand the sameid. That updates the block in place instead of adding a
copy.
- Call
open_canvasonce, when something is worth looking at. Writes to a closed pane already
show an unseen dot.
- Still give a one or two line summary in chat.
Blocks
markdown-- prose, lists, simple tables. Raw HTML is escaped. Use this by default.html-- use only when the layout is the point: stat tiles, columns, cards, diagrams.link--titleplus anhttp,https, ormailtoURL.
HTML rules
Hive refuses a block it can't sanitize and names the problem. It doesn't silently drop anything.
- Refused:
script, thestyleelement (thestyleattribute is fine),iframe,object,
embed, form and its controls, on* handlers, and the id attribute.
- Allowed: normal sectioning, text, list, table, and code tags,
details/summary,a, andimg
with an http, https, or base64 data: source.
- SVG:
svg,g,path,rect,circle,ellipse,line,polyline,polygon,text,
tspan. There's no defs, marker, or use, so draw arrowheads as a polygon. Give the svg a viewBox so it scales to the pane.
Use the hv- classes before you write your own colors. They follow the user's light or dark theme.
| Purpose | Classes | |
|---|---|---|
| Layout | hv-stack, hv-row, hv-grid + hv-cols-2/3/4 (collapse to one column when narrow) | |
| Containers | hv-card, hv-panel, hv-callout | |
| Data | hv-stat > hv-stat-value + hv-stat-label; hv-kv on a <dl> | |
| Emphasis | hv-badge, hv-muted, hv-mono | |
| Tones | hv-info, hv-success, hv-warn, hv-error, hv-accent | |
| SVG roles | hv-node, hv-edge, hv-arrow, hv-label, hv-dashed (with hv-edge) |
The hv- classes mean nothing outside Hive. If the canvas is meant to leave the app, use inline style, fill, and stroke instead.
Security
- Security scanPassed, 90 of 100Pattern checks on the skill's files.
- Model reviewPassed
Quality evaluation
- Task evaluationNot runNo evaluation yet. Run one in Skill Studio.
Source
- SKILL.md in the repositoryChecking.ai/skills/hive-canvas/SKILL.md
Popularity
- 7-day trend score
- 0
Not refreshed yet.
Works with
Any agent vskill installs to: 56 targets in all. These 39 have a page on this site.
- Claude Code
- Cursor
- GitHub Copilot
- Windsurf
- Codex
- Gemini CLI
- Cline
- Amp
- Roo Code
- Goose
- Continue
- Kilo Code
- Junie
- Trae
- OpenHands
- Qwen Code
- AI Agent
- Tabnine Chat
- Sourcegraph Cody
- Amazon Q
- Firebase Genkit
- Sweep
- Devin
- Phind
- Mentat
- Claude Desktop
- Aider
- GPT Pilot
- Plandex
- bolt.new
- v0
- Replit Agent
- Anse
- TypingMind
- BetterChatGPT
- LibreChat
- Warp AI
- Pieces
- Fig AI
Embed badge
[](https://verified-skill.com/skills/hay-kot/dotfiles/hive-canvas)