Maa Project Init
duorua/narutomobile
Scan and initialize a MaaFramework game or app automation project for Maa skills and MaaMCP workflows.
Author SVG figures for Grida docs — diff-able, version-controlled vector diagrams embedded in doc pages instead of screenshots.
$ npx skills add gridaco/grida --skill docs-svg-kit -a claude-codeProject install by default; add -g for ~/.claude/skills/.
$ gh skill install gridaco/grida docs-svg-kit --agent claude-codeProject scope by default; add --scope user for a personal install. Needs GitHub CLI 2.90.0 or later (public preview).
$ 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-srcUse ~/.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/
Install the "docs-svg-kit" agent skill from https://github.com/gridaco/grida/tree/main/.agents/skills/docs-svg-kit into .claude/skills/docs-svg-kit/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "docs-svg-kit", then confirm the skill loads.Claude Code copies the folder itself, the same result as the manual copy. Check what it changed before you commit it.
$skill-installer install https://github.com/gridaco/grida/tree/main/.agents/skills/docs-svg-kitType this inside Codex. $skill-installer <name> installs a curated skill from openai/skills. The installer writes to $CODEX_HOME/skills (default ~/.codex/skills). Restart Codex if the skill does not show up.
$ npx skills add gridaco/grida --skill docs-svg-kit -a codexProject install goes to .agents/skills/; add -g for ~/.codex/skills/.
$ gh skill install gridaco/grida docs-svg-kit --agent codexProject scope by default (.agents/skills/); add --scope user for a personal install.
$ git clone --depth 1 https://github.com/gridaco/grida.git skills-src && mkdir -p .agents/skills && cp -r skills-src/.agents/skills/docs-svg-kit .agents/skills/docs-svg-kit && rm -rf skills-srcUse ~/.agents/skills/ instead of .agents/skills for a personal install.
Codex skills documentation · loads skills from .agents/skills/
Install the "docs-svg-kit" agent skill from https://github.com/gridaco/grida/tree/main/.agents/skills/docs-svg-kit into .agents/skills/docs-svg-kit/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "docs-svg-kit", then confirm the skill loads.Codex copies the folder itself, the same result as the manual copy. Check what it changed before you commit it.
$ npx skills add gridaco/grida --skill docs-svg-kit -a cursorProject install goes to .agents/skills/; add -g for ~/.cursor/skills/.
$ gh skill install gridaco/grida docs-svg-kit --agent cursorProject scope by default (.agents/skills/); add --scope user for a personal install.
$ git clone --depth 1 https://github.com/gridaco/grida.git skills-src && mkdir -p .cursor/skills && cp -r skills-src/.agents/skills/docs-svg-kit .cursor/skills/docs-svg-kit && rm -rf skills-srcUse ~/.cursor/skills/ instead of .cursor/skills for a personal install.
Cursor skills documentation · loads skills from .cursor/skills/, .agents/skills/, .claude/skills/, .codex/skills/
Install the "docs-svg-kit" agent skill from https://github.com/gridaco/grida/tree/main/.agents/skills/docs-svg-kit into .cursor/skills/docs-svg-kit/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "docs-svg-kit", then confirm the skill loads.Cursor copies the folder itself, the same result as the manual copy. Check what it changed before you commit it.
$ gemini skills install https://github.com/gridaco/grida.git --path .agents/skills/docs-svg-kit--scope user (default) or --scope workspace; --path is the subfolder of the repo that holds the skill; --consent skips the security confirmation prompt.
$ npx skills add gridaco/grida --skill docs-svg-kit -a gemini-cliProject install goes to .agents/skills/; add -g for ~/.gemini/skills/.
$ gh skill install gridaco/grida docs-svg-kit --agent gemini-cliProject scope by default (.agents/skills/); add --scope user for a personal install.
$ git clone --depth 1 https://github.com/gridaco/grida.git skills-src && mkdir -p .gemini/skills && cp -r skills-src/.agents/skills/docs-svg-kit .gemini/skills/docs-svg-kit && rm -rf skills-srcUse ~/.gemini/skills/ instead of .gemini/skills for a personal install, then run /skills reload.
Gemini CLI skills documentation · loads skills from .gemini/skills/, .agents/skills/
Install the "docs-svg-kit" agent skill from https://github.com/gridaco/grida/tree/main/.agents/skills/docs-svg-kit into .gemini/skills/docs-svg-kit/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "docs-svg-kit", then confirm the skill loads.Gemini CLI copies the folder itself, the same result as the manual copy. Check what it changed before you commit it.
$ gh skill install gridaco/grida docs-svg-kitInstalls for Copilot at project scope by default; add --scope user for a personal install. Preview a skill first with gh skill preview. Needs GitHub CLI 2.90.0 or later (public preview).
$ npx skills add gridaco/grida --skill docs-svg-kit -a github-copilotProject install goes to .agents/skills/; add -g for ~/.copilot/skills/.
$ git clone --depth 1 https://github.com/gridaco/grida.git skills-src && mkdir -p .github/skills && cp -r skills-src/.agents/skills/docs-svg-kit .github/skills/docs-svg-kit && rm -rf skills-srcUse ~/.copilot/skills/ instead of .github/skills for a personal install. Commit .github/skills so cloud agent and code review can use it.
GitHub Copilot skills documentation · loads skills from .github/skills/, .claude/skills/, .agents/skills/
Install the "docs-svg-kit" agent skill from https://github.com/gridaco/grida/tree/main/.agents/skills/docs-svg-kit into .github/skills/docs-svg-kit/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "docs-svg-kit", then confirm the skill loads.GitHub Copilot copies the folder itself, the same result as the manual copy. Check what it changed before you commit it.
$ npx skills add gridaco/grida --skill docs-svg-kit -a opencodeOpenCode documents no install command of its own. Project install goes to .agents/skills/; add -g for ~/.config/opencode/skills/.
$ gh skill install gridaco/grida docs-svg-kit --agent opencodeProject scope by default (.agents/skills/); add --scope user for a personal install.
$ git clone --depth 1 https://github.com/gridaco/grida.git skills-src && mkdir -p .opencode/skills && cp -r skills-src/.agents/skills/docs-svg-kit .opencode/skills/docs-svg-kit && rm -rf skills-srcUse ~/.config/opencode/skills/ instead of .opencode/skills for a personal install.
OpenCode skills documentation · loads skills from .opencode/skills/, .claude/skills/, .agents/skills/
Install the "docs-svg-kit" agent skill from https://github.com/gridaco/grida/tree/main/.agents/skills/docs-svg-kit into .opencode/skills/docs-svg-kit/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "docs-svg-kit", then confirm the skill loads.OpenCode copies the folder itself, the same result as the manual copy. Check what it changed before you commit it.
docs-svg-kitAuthor 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. 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.
2 steps, taken from the first numbered list in SKILL.md.
Read from SKILL.md and the folder at commit 165496f. It shows what the files ask for, not the result of running them.
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.
Shell commands in SKILL.md call:
pnpmFrom the folder's file list and the shell code blocks in SKILL.md.
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.
Names no API keys, tokens, secrets or passwords.
From names ending in _API_KEY, _TOKEN, _SECRET, _KEY or _PASSWORD in SKILL.md.
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.
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.
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.
The full file from gridaco/grida at commit 165496f, republished under its Apache-2.0 licence (© gridaco). 2,305 words, ~5,591 tokens.
.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.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.
Screenshots are easy to capture but expensive over time:
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.
Reach for a custom SVG when a screenshot can't carry the story alone:
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.
These are baked into the kit. Don't fight them.
<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.<use>. Every reused fragment must physically live inside the SVG's own <defs>. Copy from snippets/, don't import.docs/AGENTS.md screenshot conventions. Use viewBox="0 0 960 960" width="960" height="960".So we can enumerate, audit, and migrate kit assets later without reading each file, every SVG produced via this kit must carry two markers:
A top-level XML comment immediately before the root <svg> (grep-friendly):
<!-- @generated-by: docs-svg-kit v1 -->A <metadata> element as the first child of <svg> (SVG-spec-native, survives minification and SVGO passes that strip comments):
<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:
grep -rl "docs-svg-kit" docs/editor/When the kit changes, walk the grep output and update each file.
snippets/template.svg — it has the canvas, fonts, all <defs>, all class tokens, and shadow filters wired up.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).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.docs/editor/resources/. Name: <feature>-<description>.svg, kebab-case. from a doc under docs/editor/features/. The alt should describe what the figure shows, not name the file.snippets/ is structured as one overview catalog plus focused per-family files:
| File | Role |
|---|---|
template.svg | Starter — copy this to begin a new figure. Has every CSS class, def, filter, and symbol pre-wired. |
primitives.svg | Index / overview catalog — every primitive in one tall canvas. Skim here first. |
cursors.svg | Cursors — pointer, move, grab, grabbing, rotate, h-resize, v-resize, crosshair, text. With sizes and hotspot offsets. |
meters.svg | Meters — .badge (size, blue) and .badge-distance (measurement, red) variants side-by-side. |
handles.svg | Handles & pins — square .handle, #ft-handle (circle), #anchor-pin. |
keycap.svg | Keycap — modifier-key pill variants (single letter, glyph, multi-char, combos). |
When to look in which:
primitives.svg.Note on canvas size. Snippet files exceed the 960 × 960 figure mandate (e.g.
cursors.svgis 960 × 720,primitives.svgis 960 × 1400). That mandate applies to doc figures — kit reference catalogs are not embedded in docs and may be tall.
snippets/template.svg defs)| Primitive | How to use | Where 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 ripple | Two 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 panel | Symbol 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 |
| Class / value | Hex | Use |
|---|---|---|
| canvas bg | #ECECEC | Page background (matches editor canvas) |
| selection | #0D99FF | Selection outline, handles, baseline, size badge |
| hot | #FF3B30 | Hot edges, anchor pin, motion arrows |
| measurement | #f44336 | Distance badge — WorkbenchColors.red, the canonical product red |
| text | #0a0a0a | Headings, node text content |
| caption | #6b7280 | Subtitles, captions, legend captions |
| ghost | #b5b5b5 | Dashed outline of original/previous bounds |
| keycap bg | #f1f5f9 | Keycap pill background (bg-muted from kbd.tsx) |
| keycap border | #cbd5e1 | Keycap pill border |
| keycap text | #475569 | Keycap label text (text-muted-foreground) |
| panel border | #e5e5e5 | Legend card border, cell borders in catalog |
Slight drift, intentional. The kit's
selection(#0D99FF) is Figma blue; the product's canonicalWorkbenchColors.skyis#00a6f4. Same forhot(#FF3B30) vsWorkbenchColors.red(#f44336). The newmeasurementtoken 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.
| Class | Spec | Use |
|---|---|---|
.doc-heading | 26px, 600, -0.3px letter-spacing | Figure title |
.col-title | 16–18px, 600 | Column or section heading |
.step-label | 11px, 500, uppercase, 0.6px letter-spacing | Eyebrow above column titles |
.caption | 13–14px, #6b7280 | Subtitles and captions |
.badge-text | 10–11px, SF Mono, 600 | Inside size / distance badges |
.kbd-text | 11px, 500, 0.2px letter-spacing | Keycap label |
.label-mono | 12–14px, SF Mono | Inline code in labels |
.node-text | 22–28px, -0.3px letter-spacing | Text 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.
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:
| Primitive | Source file (in editor/) | What to read for |
|---|---|---|
| Selection chrome / handles | grida-canvas-react/viewport/surface.tsx | Handle sizes, hover states, modifier behaviour |
| Size meter (live readout) | grida-canvas-react/viewport/ui/meter.tsx | Badge geometry, position relative to selection |
| Distance meter (measurement) | grida-canvas-react/viewport/ui/measurement.tsx, vector-measurement.tsx | What measurement actually shows (distance, axis-aligned) |
| Workbench colours | grida-canvas-react/ui-config.ts → WorkbenchColors | Canonical hex values: sky #00a6f4, red #f44336, etc. |
| Keycap | components/ui/kbd.tsx | Pill geometry, font, fg/bg tokens |
| Image-paint editor handles | grida-canvas-react/viewport/ui/surface-image-editor.tsx | Translate / scale / rotate handle layout, cursors |
| Cursor PNG asset set | public/assets/css-cursors-macos/*.png (move, grab, grabbing, *-rotate, pointer, …) | Reference look for cursors the kit doesn't ship |
| Custom rotate cursor SVG | components/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.
<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.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.text_width + ~20px. Tight badges look amateur. Recentre <g translate> after resizing badges.<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.resvg before committing (see Verify before publishing). Browsers are forgiving; resvg is not.< 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 <.-- 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.).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.
resvg path/to/figure.svg /tmp/check.pngThen open /tmp/check.png and inspect:
<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.<symbol>/<use> viewBox arithmetic..5 half-pixel offset.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:
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:
*.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.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:
@generated-by: docs-svg-kit v1)<metadata>docs-svg-kit/v1</metadata> is the first child of <svg><style> only — no external stylesheet references<use href="other.svg#…"> — all referenced ids exist in this file960 × 960alt text, not the filenameIf 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
SKILL.md and 8 other files in .agents/skills/docs-svg-kit of gridaco/grida.
Open the folder on GitHubat commit 165496f
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.
| Skill | Stars | Used in | Tokens | Auto-check | Licence | Repo updated |
|---|---|---|---|---|---|---|
| Docs SVG Kit this skillgridaco/grida | 2.7k | — | ~5.6k | Automated safety check: Pass | Apache-2.0 | |
| Maa Project Initduorua/narutomobile | 335 | — | ~2.2k | Automated safety check: Pass | AGPL-3.0 | |
| Litho Document Skillsopaco/terrain | 256 | — | ~1.4k | Automated safety check: Pass | MIT | |
| Opencharttryopendata/skills | 142 | — | ~11k | Automated safety check: Pass | MIT | |
| Concept DiagramsTommy-yw/RunbookHermes | 546 | 3 repos | ~4.3k | Automated safety check: Pass | MIT | |
| Codegen Diagramxstongxue/best-skills | 3k | — | ~291 | Automated safety check: Pass | Apache-2.0 |
duorua/narutomobile
Scan and initialize a MaaFramework game or app automation project for Maa skills and MaaMCP workflows.
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…
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.
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…
xstongxue/best-skills
基于当前项目/代码生成 Draw.io 图表,支持技术栈图、系统架构图、数据结构图、E-R 图四种类型。输出符合 Draw.io 语法的 .drawio 文件(mxGraph XML),可直接导入 Draw.io 编辑。当用户提到技术栈、系统架构、数据结构、E-R 图时使用。
smallnest/pigo
Create professional, dark-themed architecture diagrams as standalone HTML files with SVG graphics.
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…
gridaco/grida
Guides work on the Figma I/O package (@grida/io-figma, packages/grida-canvas-io-figma/).
gridaco/grida
Set up, download, verify, and seed the optional Grida Library developer corpus into local Supabase.
gridaco/grida
Query images with a local Ollama vision model without loading the image into the main agent context.
gridaco/grida
Research, compare, and update shared AI model JSON for TypeScript, web, and Rust consumers.
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…
Categories
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.
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.
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.
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.
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.
Going by SKILL.md and its folder, Docs SVG Kit needs the command-line tools its instructions call (pnpm).
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.
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.
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.
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.
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.
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.