Agent skill

Docs SVG Kit

by gridaco in gridaco/grida

Author SVG figures for Grida docs — diff-able, version-controlled vector diagrams embedded in doc pages instead of screenshots.

Apache-2.0Auto-check passedDevelopment

Install Docs SVG Kit

skills CLI
$ npx skills add gridaco/grida --skill docs-svg-kit -a claude-code

Project install by default; add -g for ~/.claude/skills/.

GitHub CLI
$ gh skill install gridaco/grida docs-svg-kit --agent claude-code

Project scope by default; add --scope user for a personal install. Needs GitHub CLI 2.90.0 or later (public preview).

Manual copy
$ git clone --depth 1 https://github.com/gridaco/grida.git skills-src && mkdir -p .claude/skills && cp -r skills-src/.agents/skills/docs-svg-kit .claude/skills/docs-svg-kit && rm -rf skills-src

Use ~/.claude/skills/ instead of .claude/skills for a personal install. The folder must contain SKILL.md.

Claude Code skills documentation · loads skills from .claude/skills/

Facts

Skill name
docs-svg-kit
GitHub stars
2.7k
Token cost
~5.6k tokens
SKILL.md length
2,305 words
Files
9
Skills in repo
29
Repo updated
First seen
Licence
Apache-2.0

At a glance

Author SVG figures for Grida docs — diff-able, version-controlled vector diagrams embedded in doc pages instead of screenshots.

  • Works in 2 steps: A top-level XML comment immediately… → A element as the first child of…
  • Drawing diagrams that explain UI behaviour — gestures
  • SKILL.md covers Why SVG, not a screenshot, When to draw an SVG figure, Hard constraints and Watermark every kit-produced SVG, plus 7 more sections
  • Calls pnpm

What it does

Docs SVG Kit is an agent skill from gridaco/grida. Author SVG figures for Grida docs — diff-able, version-controlled vector diagrams embedded in doc pages instead of screenshots. Provides reusable primitives (selection chrome, size badges, anchor pins, resize cursors, click ripples), color/typography tokens, a starter template, and finished examples to crib from. Canvas user docs (docs/editor/) are the first consumer; the kit is meant to generalize to any product's docs. Use when drawing diagrams that explain UI behaviour — gestures, alignment, before/after…

Its SKILL.md is about 5.6k tokens, which your agent loads only when the skill is triggered. The skill folder holds 10 other files.

It sits in Development, covering Diagrams, Project scaffolding and Typography. The licence is Apache-2.0.

When your agent uses it

  • Drawing diagrams that explain UI behaviour — gestures
  • Before/after states — that a screenshot alone cant capture
  • Phrases: svg diagram
  • Visual for docs

Example prompts

  • “t capture. Trigger phrases:”
  • “draw a figure”
  • “visual for docs”
  • “/docs-svg-kit”

Workflow steps

2 steps, taken from the first numbered list in SKILL.md.

  1. A top-level XML comment immediately before the root (grep-friendly)
  2. A element as the first child of (SVG-spec-native, survives minification and SVGO passes that strip comments)

What it can do on your machine

Read from SKILL.md and the folder at commit 165496f. It shows what the files ask for, not the result of running them.

  • Tool permissions

    Pre-approves nothing: there is no allowed-tools line, so your agent's usual permission prompts apply.

    From allowed-tools in the SKILL.md frontmatter.

  • Runs code

    Shell commands in SKILL.md call:

    • pnpm

    From the folder's file list and the shell code blocks in SKILL.md.

  • Network

    No URLs in SKILL.md. Its commands use pnpm, which can reach the network depending on how they are called.

    From URLs in SKILL.md, links to its own repository left out.

  • Credentials

    Names no API keys, tokens, secrets or passwords.

    From names ending in _API_KEY, _TOKEN, _SECRET, _KEY or _PASSWORD in SKILL.md.

Context cost

Docs SVG Kit loads about 5.6k tokens when it runs. Until then it costs about 175 tokens; SKILL.md has 2,305 words of instructions outside code blocks.

Always · name and description, kept in context so the agent knows when to use it
~175
When it runs · the whole SKILL.md, loaded when a task matches
~5.6k

Estimates: characters ÷ 4, the usual rule of thumb; real counts depend on the model's tokenizer. Scripts and assets cost tokens only if the agent reads them.

Safety

Auto-check passed

The automated check found no risky patterns in SKILL.md.

Automated static check — not a guarantee. Review scripts before installing. It scans the text of SKILL.md for risky patterns (piping downloads into a shell, reading credential files, hidden Unicode, destructive commands); files beside SKILL.md are not scanned.

SKILL.md

The full file from gridaco/grida at commit 165496f, republished under its Apache-2.0 licence (© gridaco). 2,305 words, ~5,591 tokens.

Download SKILL.mdSave it as .claude/skills/docs-svg-kit/SKILL.md (or your agent's skills folder). This skill also uses 8 other files; get the full folder from GitHub.
name
docs-svg-kit
description
Author SVG figures for Grida docs — diff-able, version-controlled vector diagrams embedded in doc pages instead of screenshots. Provides reusable primitives (selection chrome, size badges, anchor pins, resize cursors, click ripples), color/typography tokens, a starter template, and finished examples to crib from. Canvas user docs (docs/editor/) are the first consumer; the kit is meant to generalize to any product's docs. Use when drawing diagrams that explain UI behaviour — gestures, alignment, before/after states — that a screenshot alone can't capture. Trigger phrases: "svg diagram", "draw a figure", "visual for docs", "explain this gesture visually", "before/after diagram".

Docs SVG Kit

A snippet library for drawing SVG figures embedded in Grida docs. Canvas user docs are the kit's first consumer; the same primitives and conventions are meant to carry over to any product's docs as they adopt SVG figures.

First consumer / companion: docs-canvas. Use that skill for the prose, this one for the visuals embedded inside it.

Why SVG, not a screenshot

Screenshots are easy to capture but expensive over time:

  • Stale by default. UI shifts; the screenshot keeps showing the old state until someone re-captures it. There is no diff, no warning, no test that fails.
  • Repo weight. Every re-capture is a new binary blob in git history. WebP at 960 × 960 is ~30–80 KB each; PNG is multiples of that. Across years of captures it compounds, and old blobs never leave history.
  • Frozen in time. A screenshot shows one moment of one configuration. A diagram explains the rule across configurations.

So: when SVG can carry the meaning, prefer SVG. SVGs are text — diff-able, hand-editable, version-controlled like code. Reserve screenshots for cases where the actual rendered chrome (real fonts, real pixels) is the point.

When to draw an SVG figure

Reach for a custom SVG when a screenshot can't carry the story alone:

  • A gesture (the clickable target isn't visible at rest — double-click, drag, hover).
  • A before / after that needs the two states side-by-side.
  • A rule that hinges on an invisible anchor or pivot (alignment, snapping, hit-testing).

If a single screenshot of the editor would communicate the whole point, use a screenshot. Don't redraw real UI in SVG when you don't have to.

Hard constraints

These are baked into the kit. Don't fight them.

  • Inline <style> only. Never reference an external stylesheet. Docusaurus serves docs SVGs via <img src>, which sandboxes the SVG: external CSS, scripts, and cross-file <use href> are all blocked.
  • No cross-file <use>. Every reused fragment must physically live inside the SVG's own <defs>. Copy from snippets/, don't import.
  • Self-contained = SEO-safe. Inline-styled SVGs are indexed as images. Inline React components in MDX are not — they become HTML.
  • Output size: 960 × 960. The viewport for all figures, matching docs/AGENTS.md screenshot conventions. Use viewBox="0 0 960 960" width="960" height="960".
  • Watermark every kit-produced SVG (see below).
  • No emojis. No marketing voice. Same neutral tone as the prose.

Watermark every kit-produced SVG

So we can enumerate, audit, and migrate kit assets later without reading each file, every SVG produced via this kit must carry two markers:

  1. A top-level XML comment immediately before the root <svg> (grep-friendly):

    xml
    <!-- @generated-by: docs-svg-kit v1 -->
  2. A <metadata> element as the first child of <svg> (SVG-spec-native, survives minification and SVGO passes that strip comments):

    xml
    <metadata>docs-svg-kit/v1</metadata>

Both markers are present in snippets/template.svg, so they propagate automatically when you copy from the template. If you start a figure from scratch, paste both before composing anything else.

Versioning. Bump v1 → v2 only on a breaking change to tokens or primitives (e.g. selection blue changes hex, or anchor pin geometry changes). Same-version figures are guaranteed visually consistent.

Enumerate kit assets:

sh
grep -rl "docs-svg-kit" docs/editor/

When the kit changes, walk the grep output and update each file.

Workflow

  1. Start from the template. Copy snippets/template.svg — it has the canvas, fonts, all <defs>, all class tokens, and shadow filters wired up.
  2. Browse snippets/primitives.svg for the bird's-eye catalog of every primitive. For deeper inspection of a specific family, open the focused chunk file (see Snippet files below).
  3. Compose your figure inside the marked region of the template, using the existing classes. Don't reinvent stroke widths, colors, or fonts — that's how visuals drift.
  4. Crib structure from examples/. Two finished figures live there:
    • text-node-auto-size-edges.svg — two-column before/after with hot edges, ripples, cursors, size badges, and a legend card.
    • text-node-auto-size-alignment.svg — three-column comparison with anchor pins and ghost outlines.
  5. Save to docs/editor/resources/. Name: <feature>-<description>.svg, kebab-case.
  6. Embed via Markdown. ![alt text](../resources/your-figure.svg) from a doc under docs/editor/features/. The alt should describe what the figure shows, not name the file.

Snippet files

snippets/ is structured as one overview catalog plus focused per-family files:

FileRole
template.svgStarter — copy this to begin a new figure. Has every CSS class, def, filter, and symbol pre-wired.
primitives.svgIndex / overview catalog — every primitive in one tall canvas. Skim here first.
cursors.svgCursors — pointer, move, grab, grabbing, rotate, h-resize, v-resize, crosshair, text. With sizes and hotspot offsets.
meters.svgMeters — .badge (size, blue) and .badge-distance (measurement, red) variants side-by-side.
handles.svgHandles & pins — square .handle, #ft-handle (circle), #anchor-pin.
keycap.svgKeycap — modifier-key pill variants (single letter, glyph, multi-char, combos).

When to look in which:

  • Quick scan of "what exists" → primitives.svg.
  • Picking a specific cursor / badge variant / handle / keycap → the per-family file. They show variants, sizes, hotspots, and source references that the index can only hint at.

Note on canvas size. Snippet files exceed the 960 × 960 figure mandate (e.g. cursors.svg is 960 × 720, primitives.svg is 960 × 1400). That mandate applies to doc figures — kit reference catalogs are not embedded in docs and may be tall.

What's in the kit

Primitives (in snippets/template.svg defs)
PrimitiveHow to useWhere it shines
Selection chrome<rect class="sel-outline"> + four <rect class="handle"> corners + class="baseline"Showing a selected node
Size badge<rect class="badge"> + <text class="badge-text"> with filter="url(#badge-shadow)"Live w × h readout under selection
Anchor pin<g transform="translate(cx,cy)"><use href="#anchor-pin"/></g> + filter="url(#pin-shadow)"A point that stays fixed across states
Resize cursor<use href="#cursor-h"> or <use href="#cursor-v">Edges/handles that respond to a drag
Click rippleTwo concentric <circle class="ripple"> / class="ripple-2">Marking a tap or double-click target
Hot edge<line class="edge-hot">The edge a gesture targets
Ghost outline<rect class="ghost">Where the bounds used to be
Arrow (gray)<line class="arrow" marker-end="url(#ah)">Generic flow / step transitions
Arrow (red)<line class="arrow-red" marker-end="url(#ah-red)">Motion or change being highlighted
Legend card<rect class="legend-box"> rounded panelSymbol key at the bottom of a figure
Distance meter<rect class="badge-distance"> + <text class="badge-text"> with filter="url(#badge-shadow)"Measurement readout (red variant of size badge)
Keycap<rect class="kbd-bg"> + <text class="kbd-text"> (h≈20, rx=3, px=8)Modifier-key pill (Alt, Shift, ⌘) in interaction figures
Free-transform handle<g transform="translate(cx,cy)"><use href="#ft-handle"/></g>Circular corner grip — rotate / scale gesture target
Cursor — pointer<use href="#cursor-pointer">Default arrow cursor
Cursor — move<use href="#cursor-move">4-direction translate gesture
Cursor — grab<use href="#cursor-grab"> / <use href="#cursor-grabbing">Drag affordance (open/closed hand)
Cursor — rotate<use href="#cursor-rotate"> (wrap in transform="rotate(θ)" to orient)Rotation drag at a corner
Color tokens
Class / valueHexUse
canvas bg#ECECECPage background (matches editor canvas)
selection#0D99FFSelection outline, handles, baseline, size badge
hot#FF3B30Hot edges, anchor pin, motion arrows
measurement#f44336Distance badge — WorkbenchColors.red, the canonical product red
text#0a0a0aHeadings, node text content
caption#6b7280Subtitles, captions, legend captions
ghost#b5b5b5Dashed outline of original/previous bounds
keycap bg#f1f5f9Keycap pill background (bg-muted from kbd.tsx)
keycap border#cbd5e1Keycap pill border
keycap text#475569Keycap label text (text-muted-foreground)
panel border#e5e5e5Legend card border, cell borders in catalog

Slight drift, intentional. The kit's selection (#0D99FF) is Figma blue; the product's canonical WorkbenchColors.sky is #00a6f4. Same for hot (#FF3B30) vs WorkbenchColors.red (#f44336). The new measurement token uses the canonical product red. A future kit pass may harmonise these — for now, the difference is visually negligible (~3% off) and keeps existing figures stable.

Typography tokens
ClassSpecUse
.doc-heading26px, 600, -0.3px letter-spacingFigure title
.col-title16–18px, 600Column or section heading
.step-label11px, 500, uppercase, 0.6px letter-spacingEyebrow above column titles
.caption13–14px, #6b7280Subtitles and captions
.badge-text10–11px, SF Mono, 600Inside size / distance badges
.kbd-text11px, 500, 0.2px letter-spacingKeycap label
.label-mono12–14px, SF MonoInline code in labels
.node-text22–28px, -0.3px letter-spacingText rendered inside a node

Font stack: -apple-system, BlinkMacSystemFont, 'SF Pro Text', 'Helvetica Neue', Helvetica, Arial, sans-serif for prose; 'SF Mono', Menlo, Consolas, monospace for code/badges.

Ground truth in the editor

The kit's primitives are stylised — close to the product but not pixel-clones. When a primitive is unclear or you need to match the actual UI more carefully, go to source:

PrimitiveSource file (in editor/)What to read for
Selection chrome / handlesgrida-canvas-react/viewport/surface.tsxHandle sizes, hover states, modifier behaviour
Size meter (live readout)grida-canvas-react/viewport/ui/meter.tsxBadge geometry, position relative to selection
Distance meter (measurement)grida-canvas-react/viewport/ui/measurement.tsx, vector-measurement.tsxWhat measurement actually shows (distance, axis-aligned)
Workbench coloursgrida-canvas-react/ui-config.ts → WorkbenchColorsCanonical hex values: sky #00a6f4, red #f44336, etc.
Keycapcomponents/ui/kbd.tsxPill geometry, font, fg/bg tokens
Image-paint editor handlesgrida-canvas-react/viewport/ui/surface-image-editor.tsxTranslate / scale / rotate handle layout, cursors
Cursor PNG asset setpublic/assets/css-cursors-macos/*.png (move, grab, grabbing, *-rotate, pointer, …)Reference look for cursors the kit doesn't ship
Custom rotate cursor SVGcomponents/cursor/cursor-data.ts → template_rotate_svg(angle)The kit's #cursor-rotate symbol is lifted from here

Rule of thumb: if you find yourself inventing a primitive that maps to a real product UI element, check the source first — the names and tokens above are usually nearby.

Show full SKILL.md (879 more words)Show less

Common pitfalls

  • Anchor-pin offset bug. The pin must use <g transform="translate(cx, cy)"><use href="#anchor-pin"/></g> — not <use x y> on a <symbol> with negative viewBox. The latter shifts the visual centre by half the use-box and breaks alignment.
  • Crisp rendering. Use shape-rendering: crispEdges and .5 half-pixel offsets on 1px strokes (e.g. x="0.5" y="0.5" width="279"). Otherwise borders go fuzzy.
  • Badge padding. Badge width = text_width + ~20px. Tight badges look amateur. Recentre <g translate> after resizing badges.
  • Symbol coordinates trap. A <symbol viewBox="-12 -12 24 24"> placed with <use x="0" y="0" width="24" height="24"> puts the symbol's (0,0) at use-box centre (12, 12). Prefer plain <g id="..."> placed with transform="translate" for primitives that need a precise anchor point.
  • Don't tile multiple SVGs into one. One figure per file. Two SVGs side-by-side in the doc beats one giant 1920px figure.
  • Render check. Always render with resvg before committing (see Verify before publishing). Browsers are forgiving; resvg is not.
  • XML strictness traps that resvg catches but browsers ignore. Two real ones the kit has hit:
    • No < characters inside <style> content unless the block is wrapped in <![CDATA[ ... ]]>. So /* foo <kbd> bar */ inside the CSS block will fail with expected 'kbd' tag, not 'style'. Either CDATA-wrap the whole block, or rephrase the comment to drop the <.
    • No -- inside <!-- ... --> comments (XML spec). A "nested comment" like <!-- inside <!-- here --> --> parses as comment contains '--'. If you need to show comment syntax inside a comment, use an alternative marker (:::, ###, etc.).

Verify before publishing

SVG composition is geometry — never ship without verifying it. The kit's most common bugs (anchor pin shifted by 12px, badge text flush against pill edges, baseline missing the right edge) have all been caught only because someone looked at the rendered figure. Type-checking won't help you here.

Tier 1: render with resvg, then look. (Always do this.)

Editing an SVG without rendering it is editing blind. The geometry-by-arithmetic bugs in this kit (anchor pin offset, badge padding, container overflow) repeatedly slip through when you reason about coordinates without seeing the result. resvg is the standard SVG rasteriser used across Grida repos (the engine repo uses it for SVG reftests). It's the right tool here too.

sh
resvg path/to/figure.svg /tmp/check.png

Then open /tmp/check.png and inspect:

  1. Containment. Every text element sits inside its container <rect> with visible breathing room on all four sides. Watch especially for hex/code labels at the bottom of legend or token panels — text baselines plus descenders frequently overshoot the panel by a few pixels. The container <rect> doesn't clip, so overflow looks like "text touches the panel edge" rather than getting cut off.
  2. Anchor pins. Each pin's red dot lands exactly on the intended edge or point. Off-by-12px errors come from <symbol>/<use> viewBox arithmetic.
  3. Badge padding. At least ~10px of background visible to the left and right of badge text glyphs.
  4. Crisp strokes. 1px lines should be sharp, not fuzzy. If they're soft, the shape is missing its .5 half-pixel offset.
  5. Balance. Top vs bottom padding inside containers should be roughly equal. Heavily top-loaded or bottom-loaded panels read as broken.

After every meaningful edit, re-run resvg and re-inspect. Don't skip this step on "small" tweaks — moving a y by a few pixels inside a container is exactly when overflow happens.

Then check the doc page in Docusaurus dev (pnpm --filter docs start) and confirm the figure embeds cleanly with the alt text.

Tier 2: agent-assisted visual review.

For complex figures, render with resvg (Tier 1) and feed the resulting PNG into the vision skill — that sidesteps loading the image into your own context and gets a fresh pair of eyes on it:

sh
resvg figure.svg /tmp/figure.png
# then ask vision:
#   "Do all anchor pins sit exactly on the marked edges? Do badges have
#    visible padding around the text? Any text touching container edges?"

Trust your own eyes over the vision model for final sign-off, but it's good at catching the things you'd otherwise have to scrutinise pixel-by-pixel.

Tier 3: programmatic (write a validator when bugs recur).

When the same kind of bug surfaces in two or three figures, build a small validator script (scripts/svg-kit-lint.mjs). Two complementary approaches:

  • Static lint over the SVG source. Parse each *.svg and assert: watermark comment + <metadata> element present, viewBox="0 0 960 960", no external <link>/<style src>/cross-file <use href>, every <use href="#anchor-pin"> wrapped in a <g transform="translate(...)">. Cheap, no rendering needed.
  • Render-and-diff via resvg. Rasterise each figure and either (a) byte-compare against a checked-in golden PNG, or (b) hand it to vision with a fixed prompt and parse pass/fail. Catches geometry bugs that the static lint can't reason about.

We don't have this validator yet — add it the first time you find yourself fixing the same bug twice.

Pre-publish checklist:

  • Watermark comment present (@generated-by: docs-svg-kit v1)
  • <metadata>docs-svg-kit/v1</metadata> is the first child of <svg>
  • Inline <style> only — no external stylesheet references
  • No <use href="other.svg#…"> — all referenced ids exist in this file
  • Viewport is 960 × 960
  • Colors and fonts come from token classes, not ad-hoc values
  • Strokes are crisp (half-pixel offsets where needed)
  • Badges have ~10px horizontal padding inside the pill
  • Anchor pins land exactly on the intended point (not shifted by viewBox)
  • Tier 1 visual review passed
  • Embedded with descriptive alt text, not the filename

Graduating beyond copy-paste

If this skill's snippets are being copied into 5+ figures across the docs and starting to drift, that's the signal to build a small templating script (pnpm docs:svg) that expands placeholders like <MeterBadge w="280" h="90"/> into inlined SVG. Until then, copy-paste keeps things lean and predictable.

© gridaco, Apache-2.0. Rendered from Markdown: HTML in the file is shown as text, images as links, and headings moved down two levels. Raw file

Files

SKILL.md and 8 other files in .agents/skills/docs-svg-kit of gridaco/grida.

  • SKILL.md
  • examples/text-node-auto-size-alignment.svg
  • examples/text-node-auto-size-edges.svg
  • snippets/cursors.svg
  • snippets/handles.svg
  • snippets/keycap.svg
  • snippets/meters.svg
  • snippets/primitives.svg
  • snippets/template.svg

Open the folder on GitHubat commit 165496f

Compare with similar skills

Docs SVG Kit next to the 5 skills that share the most tags, products or categories with it. Stars are the repository's; “used in” counts other GitHub owners with a copy.

Docs SVG Kit compared with similar skills
SkillStarsUsed inTokensAuto-checkLicenceRepo updated
Docs SVG Kit this skillgridaco/grida2.7k—~5.6kAutomated safety check: PassApache-2.0
Maa Project Initduorua/narutomobile335—~2.2kAutomated safety check: PassAGPL-3.0
Litho Document Skillsopaco/terrain256—~1.4kAutomated safety check: PassMIT
Opencharttryopendata/skills142—~11kAutomated safety check: PassMIT
Concept DiagramsTommy-yw/RunbookHermes5463 repos~4.3kAutomated safety check: PassMIT
Codegen Diagramxstongxue/best-skills3k—~291Automated safety check: PassApache-2.0

Similar skills

  • Maa Project Init

    duorua/narutomobile

    Scan and initialize a MaaFramework game or app automation project for Maa skills and MaaMCP workflows.

    335 GitHub stars~2.2k tokensUpdated today
    DevelopmentAuto-check passed
  • Litho Document Skill

    sopaco/terrain

    This skill should be used when the user asks to "generate project documentation", "analyze codebase architecture", "create C4 architecture diagrams", "document a repository", "generate technical…

    256 GitHub stars~1.4k tokensUpdated 8 days ago
    DevelopmentAuto-check passed
  • Openchart

    tryopendata/skills

    Generates OpenChart (https://github.com/tryopendata/openchart) chart, table, graph, sankey, tilemap, and geo map specs from data, and guides editorial design decisions.

    142 GitHub stars~11k tokensUpdated 2 mo ago
    DevelopmentAuto-check passed
  • Concept Diagrams

    Tommy-yw/RunbookHermes

    Generate flat, minimal light/dark-aware SVG diagrams as standalone HTML files, using a unified educational visual language with 9 semantic color ramps, sentence-case typography, and automatic dark…

    546 GitHub starsUsed in 3 repos~4.3k tokens
    Frontend & DesignAuto-check passed
  • Codegen Diagram

    xstongxue/best-skills

    基于当前项目/代码生成 Draw.io 图表,支持技术栈图、系统架构图、数据结构图、E-R 图四种类型。输出符合 Draw.io 语法的 .drawio 文件(mxGraph XML),可直接导入 Draw.io 编辑。当用户提到技术栈、系统架构、数据结构、E-R 图时使用。

    3k GitHub stars~291 tokensUpdated 25 days ago
    DevelopmentAuto-check passed
  • Architecture Diagram

    smallnest/pigo

    Create professional, dark-themed architecture diagrams as standalone HTML files with SVG graphics.

    475 GitHub starsUsed in 1 repo~1.6k tokens
    DevelopmentAuto-check passed

More from gridaco/grida

All 29 skills in this repo
  • Desktop

    gridaco/grida

    Grida Desktop Electron shell and release-impact work: BrowserWindow, preload, window.grida, menus, protocol/deep links, file associations, Forge, path-scoped bridge security, Electron-only UI bugs…

    2.7k GitHub stars~3.2k tokensUpdated today
    Auto-check: notes
  • Io Figma

    gridaco/grida

    Guides work on the Figma I/O package (@grida/io-figma, packages/grida-canvas-io-figma/).

    2.7k GitHub stars~2.2k tokensUpdated today
    Auto-check: notes
  • Opt Library

    gridaco/grida

    Set up, download, verify, and seed the optional Grida Library developer corpus into local Supabase.

    2.7k GitHub stars~1.4k tokensUpdated today
    Auto-check passed
  • Vision

    gridaco/grida

    Query images with a local Ollama vision model without loading the image into the main agent context.

    2.7k GitHub stars~1.5k tokensUpdated today
    Auto-check passed
  • AI Models

    gridaco/grida

    Research, compare, and update shared AI model JSON for TypeScript, web, and Rust consumers.

    2.7k GitHub stars~5.7k tokensUpdated today
    Auto-check passed
  • Agent System

    gridaco/grida

    Grida AI agent system work: @grida/daemon (DaemonServer, loopback HTTP perimeter, files/workspaces, secrets store, daemon discovery) and @grida/agent (the agent tenant: sessions, providers/BYOK…

    2.7k GitHub stars~3.4k tokensUpdated today
    Auto-check passed

Questions about Docs SVG Kit

What does Docs SVG Kit do?

Author SVG figures for Grida docs — diff-able, version-controlled vector diagrams embedded in doc pages instead of screenshots. Docs SVG Kit is an agent skill from gridaco/grida. Author SVG figures for Grida docs — diff-able, version-controlled vector diagrams embedded in doc pages instead of screenshots.

When should I use Docs SVG Kit?

Docs SVG Kit fits situations like: drawing diagrams that explain UI behaviour — gestures; before/after states — that a screenshot alone cant capture; phrases: svg diagram; visual for docs.

How do I install Docs SVG Kit in Claude Code?

Run `npx skills add gridaco/grida --skill docs-svg-kit -a claude-code`. Or copy the skill folder (.agents/skills/docs-svg-kit in gridaco/grida) into .claude/skills/docs-svg-kit in your project. Claude Code loads it when a task matches its description.

How do I install Docs SVG Kit in Codex?

Run `npx skills add gridaco/grida --skill docs-svg-kit -a codex`. Or copy the skill folder (.agents/skills/docs-svg-kit in gridaco/grida) into .agents/skills/docs-svg-kit in your project. Codex loads it when a task matches its description.

Can I use Docs SVG Kit in Cursor, Gemini CLI or GitHub Copilot?

Cursor, Gemini CLI, GitHub Copilot and OpenCode also load SKILL.md folders. With the skills CLI, run `npx skills add gridaco/grida --skill docs-svg-kit -a cursor` (or -a gemini-cli, github-copilot or opencode for the others). To copy it by hand, put the folder in .cursor/skills/docs-svg-kit, .gemini/skills/docs-svg-kit, .github/skills/docs-svg-kit and .opencode/skills/docs-svg-kit in your project.

What does Docs SVG Kit need to run?

Going by SKILL.md and its folder, Docs SVG Kit needs the command-line tools its instructions call (pnpm).

Does Docs SVG Kit access the network?

SKILL.md contains no URLs. Any network use would come from the scripts or tools the agent runs. This is read from the text; nothing was executed.

Is Docs SVG Kit safe to install?

Our automated static check of SKILL.md found no risky patterns, such as piping downloads into a shell, reading credential files or hidden Unicode. It is not a guarantee. Review the folder before installing.

What licence does Docs SVG Kit use?

Docs SVG Kit is published under the Apache-2.0 licence (the repository's licence). It allows redistribution, so the full SKILL.md is shown on this page.

How many tokens does Docs SVG Kit use?

About 5.6k tokens (SKILL.md is roughly 22k characters). Agents keep only the skill's name and description in context until a task matches; then they load SKILL.md in full.

What are the alternatives to Docs SVG Kit?

Skills that share tags, products or a category with Docs SVG Kit: Maa Project Init (duorua/narutomobile, 335 stars), Litho Document Skill (sopaco/terrain, 256 stars), Openchart (tryopendata/skills, 142 stars) and Concept Diagrams (Tommy-yw/RunbookHermes, 546 stars). The comparison table on this page puts their stars, adoption, token cost, safety result and licence side by side.

Who maintains Docs SVG Kit?

gridaco (a GitHub organization) maintains it in gridaco/grida, which has 2,659 GitHub stars. The repository holds 29 skills in this directory. The repository was last updated on October 7, 2026.

Source: gridaco/grida on GitHub. Facts on this page come from the repository at the commit we read; the author's words are quoted as theirs.