Agent skill

sketch

Stars 74
Forks 17

Install this agent skill to your Project

npx add-skill https://github.com/glebis/claude-skills/tree/main/sketch

SKILL.md

Sketch - Collaborative SVG Canvas

Description

Opens a Fabric.js-based SVG editor in the browser for collaborative visual prototyping. Claude can write and read SVG through MCP tools while the user edits interactively. Changes sync in real-time via WebSocket.

Tools Available (via sketch-mcp-server)

  • sketch_open_canvas - Open a named canvas (creates if new), launches browser editor
  • sketch_get_svg - Read current SVG from a canvas
  • sketch_set_svg - Replace entire canvas with new SVG
  • sketch_add_element - Add SVG elements without clearing existing content
  • sketch_add_textbox - Add a fixed-width text area (Textbox) with word wrapping
  • sketch_lock_objects - Lock all current objects (non-selectable, non-movable)
  • sketch_unlock_objects - Unlock all objects
  • sketch_save_template - Save canvas as reusable JSON template (preserves Textbox widths + lock state)
  • sketch_load_template - Load a saved JSON template into a canvas
  • sketch_list_templates - List all saved templates
  • sketch_clear_canvas - Clear canvas to blank state (use before streaming)
  • sketch_focus_canvas - Bring canvas window to foreground
  • sketch_list_canvases - List all active canvases
  • sketch_close_canvas - Close a canvas and its browser tab

Usage Patterns

Quick sketch

  1. sketch_open_canvas with a name
  2. sketch_set_svg or sketch_add_element to draw
  3. User edits in browser
  4. sketch_get_svg to see changes

Streaming (real-time build-up)

  1. sketch_open_canvas with a name
  2. sketch_focus_canvas to bring window to front
  3. sketch_clear_canvas to start fresh
  4. Call sketch_add_element multiple times -- each fragment appears instantly
  5. User watches the UI build up in real-time

Multiple canvases

Each canvas opens in its own browser tab. Use different names for different drawings.

SVG tips

  • Use standard SVG elements: <rect>, <circle>, <ellipse>, <line>, <path>, <text>, <polygon>, <polyline>
  • Include xmlns="http://www.w3.org/2000/svg" on the root <svg> element
  • Set width and height on the root SVG (default: 1200x800)
  • Colors: use hex colors (#ff0000) -- avoid rgba() as Fabric.js SVG parser may not handle it
  • Text: <text x="100" y="100" font-size="24">Hello</text>
  • Images: <image href="data:image/png;base64,..." width="200" height="200"/>
  • Avoid <defs>, <linearGradient>, <filter> -- Fabric.js has limited support for these

Expand your agent's capabilities with these related and highly-rated skills.

glebis/claude-skills

tdd

This skill should be used when the user wants to implement features or fix bugs using test-driven development. Enforces the RED-GREEN-REFACTOR cycle with vertical slicing, context isolation between test writing and implementation, human checkpoints, and auto-test feedback loops. Uses multi-agent orchestration with the Task tool for architecturally enforced context isolation. Supports Jest, Vitest, pytest, Go test, cargo test, PHPUnit, and RSpec.

74 17
Explore
glebis/claude-skills

brand-agency

Applies Agency brand colors and typography to artifacts including presentations, SVG graphics, documents, and web interfaces. This skill should be used when brand colors, visual formatting, neobrutalism style, or Agency design standards apply. Keywords - branding, corporate identity, visual identity, styling, brand colors, typography, visual formatting, visual design, neobrutalism.

74 17
Explore
glebis/claude-skills

github-gist

Publish files or Obsidian notes as GitHub Gists. Use when user wants to share code/notes publicly, create quick shareable snippets, or publish markdown to GitHub. Triggers include "publish as gist", "create gist", "share on github", "make a gist from this".

74 17
Explore
glebis/claude-skills

chrome-history

Query Chrome browsing history with natural language. Filter by date range, article type, keywords, and specific sites.

74 17
Explore
glebis/claude-skills

wispr-analytics

This skill should be used when analyzing Wispr Flow voice dictation history for self-reflection, work patterns, mental health insights, or productivity analytics. Triggered by requests like "/wispr-analytics", "analyze my dictations", "what did I dictate today", "wispr reflection", or any request to review voice dictation patterns. Supports modes - technical (coding/work), soft (communication), trends (volume/frequency), mental (sentiment/energy/rumination).

74 17
Explore
glebis/claude-skills

granola

This skill should be used when importing, listing, or exporting Granola meeting recordings and transcripts. Queries Granola's local cache and API to list meetings, extract transcripts, and export to Obsidian notes in Fathom-compatible format.

74 17
Explore

Didn't find tool you were looking for?

Be as detailed as possible for better results