Agent skill

SVG Design

by tryopendata in tryopendata/skills

Generates and edits SVG logos, icons, and graphics. An agent skill from tryopendata/skills.

MITAuto-check passedFrontend & Design

Install SVG Design

skills CLI
$ npx skills add tryopendata/skills --skill svg-design -a claude-code

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

GitHub CLI
$ gh skill install tryopendata/skills svg-design --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/tryopendata/skills.git skills-src && mkdir -p .claude/skills && cp -r skills-src/plugins/opendesign/skills/svg-design .claude/skills/svg-design && 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
svg-design
GitHub stars
142
Token cost
~3.1k tokens
SKILL.md length
1,395 words
Files
10 (incl. references, assets)
Skills in repo
2
Repo updated
First seen
Licence
MIT

At a glance

Generates and edits SVG logos, icons, and graphics. An agent skill from tryopendata/skills.

  • Works in 6 steps: Always clarify design direction before… → Explore multiple metaphors, not multiple… → Guarantee structural variety. Every logo… → …
  • Creating SVG files
  • SKILL.md covers Topic Routing, SVG Skeleton, Canvas Size Conventions and Shape vs Path Decision, plus 7 more sections
  • Reaches w3.org

What it does

SVG Design is an agent skill from tryopendata/skills. Generates and edits SVG logos, icons, and graphics. Use when creating SVG files, designing logos or icons, writing path data, optimizing SVGs, building icon systems, animating SVG elements, or modifying existing vector graphics. Covers path commands, shape primitives, styling, accessibility, gradients, masks, sprites, optimization, and animation (CSS keyframes, GPU acceleration, staggering, easing, SVG-specific techniques).

Its SKILL.md is about 3.1k tokens, which your agent loads only when the skill is triggered. The skill folder holds 11 other files, including reference files and assets (for example `references/accessibility-and-pitfalls.md`, `references/advanced-techniques.md` and `references/animation.md`).

It sits in Frontend & Design, covering Logo and visual identity and Accessibility. The repository describes itself as: Official Agent Skills for the OpenData platform. The licence is MIT.

When your agent uses it

  • Creating SVG files
  • Designing logos
  • Writing path data
  • Optimizing SVGs

Example prompts

  • “Use the svg-design skill to generate and edits SVG logos, icons, and graphics. An agent skill from tryopendata/skills”
  • “/svg-design”

Workflow steps

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

  1. Always clarify design direction before creating logos. Use AskUserQuestion to present curated design direction choices before writing any…
  2. Explore multiple metaphors, not multiple layouts of one metaphor. Conceptual diversity matters more than layout variations. Follow the…
  3. Guarantee structural variety. Every logo set must span multiple categories of approach, not just multiple metaphors within the same style…
  4. Set up the preview immediately, then populate it progressively. Don't design all logos first and then show them. The user should see…
  5. For colored logos, always create a -dark.svg variant. Dark navy edges (#1E3A5F) that look great on white disappear on dark backgrounds…
  6. Plan your vertical budget before drawing. On a 32x32 canvas with 3 stacked elements, you have ~30 usable units. Sketch the vertical…

What it can do on your machine

Read from SKILL.md and the folder at commit f97583e. 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

    No scripts in the folder and no shell commands in SKILL.md (its code samples are xml).

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

  • Network

    Hosts in commands or code, which the agent is likely to contact:

    • w3.org

    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

SVG Design loads about 3.1k tokens when it runs, and up to ~13k if it reads all its reference files. Until then it costs about 110 tokens; SKILL.md has 1,395 words of instructions outside code blocks.

Always · name and description, kept in context so the agent knows when to use it
~110
When it runs · the whole SKILL.md, loaded when a task matches
~3.1k
With references · SKILL.md plus every file in references/, read only if the agent opens them
~13k

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 tryopendata/skills at commit f97583e, republished under its MIT licence (© tryopendata). 1,395 words, ~3,135 tokens.

Download SKILL.mdSave it as .claude/skills/svg-design/SKILL.md (or your agent's skills folder). This skill also uses 9 other files; get the full folder from GitHub.
name
svg-design
description
Generates and edits SVG logos, icons, and graphics. Use when creating SVG files, designing logos or icons, writing path data, optimizing SVGs, building icon systems, animating SVG elements, or modifying existing vector graphics. Covers path commands, shape primitives, styling, accessibility, gradients, masks, sprites, optimization, and animation (CSS keyframes, GPU acceleration, staggering, easing, SVG-specific techniques).

SVG Creation and Editing

Core principle: SVGs are code. Write them by hand like you'd write any markup: clean, minimal, semantically meaningful. Every element and attribute should earn its place.

Topic Routing

TaskLoad reference
Arc flag combinations, common path shapesreferences/path-patterns.md
Logo design, typography, negative spacereferences/logo-techniques.md
Icon design, grid systems, pixel alignmentreferences/icon-design.md
Gradients, masks, clips, filters, transforms (design decisions)references/advanced-techniques.md
Animation (CSS keyframes, stagger, GPU, easing, SVG-specific)references/animation.md
Optimization, sprites, SVGO configreferences/optimization.md
Accessibility, browser pitfallsreferences/accessibility-and-pitfalls.md
Editing workflow, boolean operations, combining SVGsreferences/editing-workflow.md

SVG Skeleton

Always start from this structure:

xml
<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round">
  <!-- content -->
</svg>

Adjust viewBox to match the design canvas. Omit width/height attributes to let the SVG scale with its container (add them only when a fixed size is needed).

Canvas Size Conventions

SizeUse caseNotes
0 0 16 16Micro icons, faviconsHeroicons micro, GitHub Octicons
0 0 20 20Small UI icons, form elementsHeroicons mini
0 0 24 24Standard icons (most common)Lucide, Heroicons outline, Material
0 0 32 32Medium icons, navigationPhosphor uses 256x256 internally
0 0 48 48Large display iconsApp icons, illustrations
CustomLogos, illustrationsMatch the natural aspect ratio

Default to 24x24 unless there's a reason not to. It's the industry standard.

Shape vs Path Decision

Use shape primitive when...Use <path> when...
The shape is a basic geometric formThe shape has curves, complex outlines
Readability matters (a circle should look like <circle>)You need to minimize element count
You need to animate individual properties (r, cx, cy)Combining multiple shapes into one element
The shape will be programmatically modifiedExporting from design tools (paths are universal)

Styling Defaults

Set these on the root <svg> element to avoid repetition on children:

AttributeIcon defaultLogo defaultWhy
fillnonevariesIcons are typically stroked, logos are filled
strokecurrentColornone or currentColorInherits text color from parent
stroke-width2 (on 24x24)variesConsistent weight across icons
stroke-linecaproundround or buttRounded ends look cleaner at small sizes
stroke-linejoinroundround or miterPrevents sharp spikes at joins

currentColor is your friend. It lets the SVG inherit whatever color the parent element has, making icons themeable with zero extra CSS.

Stroke-Width Relative to ViewBox

stroke-width is in viewBox units, not pixels. Always set relative to your canvas dimensions:

viewBoxTypical stroke-widthVisual result
16x161.5~9.4% of canvas
24x242~8.3% of canvas
32x322-2.5~6.3-7.8% of canvas
48x483~6.3% of canvas
256x25616~6.3% of canvas

When to Convert Shapes to Paths

Convert when:

  • Combining multiple shapes into a single compound path (boolean operations)
  • You need the shape as part of a larger path composition
  • Distributing to environments that only support <path>
  • Optimizing for minimal DOM elements

Keep as shapes when:

  • Code readability matters (a <circle> is self-documenting)
  • You need to animate specific properties (animating r on a circle is cleaner than animating path data)
  • The SVG will be programmatically modified
Rounded rect-to-path template

The arc parameters here are error-prone to derive. Use this as a reference:

xml
<!-- <rect x="2" y="2" width="20" height="20" rx="3" /> becomes: -->
<path d="M 5 2 h 14 a 3 3 0 0 1 3 3 v 14 a 3 3 0 0 1 -3 3 h -14 a 3 3 0 0 1 -3 -3 v -14 a 3 3 0 0 1 3 -3 Z" />

fill-rule: evenodd vs nonzero

Use evenodd when you have compound shapes with holes. It's simpler because you don't need to worry about winding direction:

xml
<!-- Donut using evenodd (direction doesn't matter) -->
<path fill-rule="evenodd" d="
  M 12 2 A 10 10 0 1 1 12 22 A 10 10 0 1 1 12 2 Z
  M 12 7 A 5 5 0 1 1 12 17 A 5 5 0 1 1 12 7 Z
" fill="black" />

With nonzero (default), the inner circle must wind in the opposite direction to create the hole.

Logo Design Process

When creating logos (not icons), follow this process:

  1. Always clarify design direction before creating logos. Use AskUserQuestion to present curated design direction choices before writing any SVG code. This step is mandatory for all logo projects. Even when the user provides some direction (like "modern" or "YC style"), those are vibes, not design briefs. A designer would still present options to narrow the direction before investing in 5-15 concepts.

    Present choices like a designer showing mood boards. Don't ask open-ended questions. Tailor options to the user's domain:

    AskUserQuestion({
      questions: [
        {
          question: "What visual personality fits your brand?",
          header: "Mood",
          multiSelect: false,
          options: [
            { label: "Bold & geometric", description: "Clean shapes, strong lines, confident. Think Stripe, Figma." },
            { label: "Organic & crafted", description: "Hand-drawn feel, natural curves, warmth. Think Mailchimp, Basecamp." },
            { label: "Minimal & typographic", description: "Wordmark-driven, restrained, sophisticated. Think Glossier, Everlane." },
            { label: "Playful & dynamic", description: "Energetic, colorful, movement. Think Slack, Discord." }
          ]
        },
        {
          question: "What should the logo emphasize?",
          header: "Focus",
          multiSelect: false,
          options: [
            { label: "What we do", description: "Visual metaphor tied to your product's core function" },
            { label: "How it feels", description: "Abstract mark that conveys emotion or energy" },
            { label: "Who we are", description: "Letterform or wordmark built from the brand name" }
          ]
        },
        {
          question: "Which of these logos in your space resonates most?",
          header: "Inspiration",
          multiSelect: false,
          options: [
            // IMPORTANT: populate these with 3-4 real, well-known brands
            // in or adjacent to the user's specific industry/domain.
            // Examples below are for an AI startup - replace entirely
            // for other domains.
            { label: "Linear", description: "Precise geometric icon, purple gradient, premium feel" },
            { label: "Stripe", description: "Simple bold wordmark, single accent color, confident restraint" },
            { label: "Notion", description: "Friendly icon with personality, approachable, slightly playful" },
            { label: "Vercel", description: "Abstract minimal triangle, stark black/white, developer-focused" }
          ]
        }
      ]
    })

    Tailoring the questions to the domain is critical. The mood options, focus options, and especially the inspiration logos must be specific to the user's industry. A coffee brand gets Blue Bottle, Stumptown, Intelligentsia, Counter Culture as inspiration options. A fintech startup gets Stripe, Plaid, Mercury, Ramp. A fitness app gets Peloton, Strava, Nike Run Club, Whoop. Pick brands the user will immediately recognize and have an opinion about. The inspiration question does the most work here because it anchors the entire aesthetic direction to something concrete.

    The only exception: skip if the user has specified both a concrete visual style AND specific imagery (e.g., "minimalist geometric logo using a mountain silhouette in navy blue").

  2. Explore multiple metaphors, not multiple layouts of one metaphor. Conceptual diversity matters more than layout variations. Follow the full ideation process in references/logo-techniques.md, which covers domain-specific brainstorming, category diversity requirements, and cliche avoidance.

  3. Guarantee structural variety. Every logo set must span multiple categories of approach, not just multiple metaphors within the same style. Include at least one from each column when presenting 5+ options: a typographic/wordmark approach, a symbolic icon, an abstract geometric mark, and a letterform-meets-metaphor hybrid. See the category diversity table in references/logo-techniques.md.

  4. Set up the preview immediately, then populate it progressively. Don't design all logos first and then show them. The user should see results as they're created:

    1. Copy this skill's assets/preview.html to the project directory using cp with the absolute path from where this skill was loaded (do not read or modify the file).
    2. Design the first logo and write its SVG file.
    3. Write variants.js with just that first variant (format in references/editing-workflow.md).
    4. Open the preview with open preview.html (macOS) or xdg-open preview.html (Linux). The user now sees the first logo while you keep working.
    5. For each subsequent logo: write the SVG file, then update variants.js to add it. The preview auto-reloads both every 3 seconds, so new logos appear in the browser as they're completed.

    This gives the user visual feedback within seconds of the first logo being ready, rather than waiting for all logos to be designed before seeing anything.

  5. For colored logos, always create a -dark.svg variant. Dark navy edges (#1E3A5F) that look great on white disappear on dark backgrounds. Dark variants need lighter edges (#4B8BBE), lighter rings (#3B6B8A), and off-white centers (#E2E8F0).

  6. Plan your vertical budget before drawing. On a 32x32 canvas with 3 stacked elements, you have ~30 usable units. Sketch the vertical distribution first (e.g., box=12, gap=2, layer=5, gap=2, layer=5) to avoid clipping at viewBox edges.

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

Anti-Patterns

Don'tDo instead
Hardcode width="24" height="24" without viewBoxUse viewBox always; add width/height only if needed
Set fill="none" on a <g> groupSet fill on individual elements or the root <svg>
Use px units inside SVGSVG coordinates are unitless; they map to viewBox
Include editor metadata (<sodipodi:*>, <inkscape:*>)Strip all editor cruft
Use <text> for logo wordmarks in distributed SVGsConvert text to paths for portability
Nest transforms three levels deepFlatten transforms into path coordinates
Use xlink:hrefUse href (xlink is deprecated)
Forget xmlns on standalone SVG filesAlways include xmlns="http://www.w3.org/2000/svg"
Use decimal precision beyond 2-3 places for iconsRound to 2 decimals for icons, 3 max for complex art

Cross-References

  • Design aesthetics: If the ce plugin is installed, Skill(ce:design) covers broader visual design decisions
  • Mermaid diagrams: If the ce plugin is installed, Skill(ce:visualizing-with-mermaid) covers diagram-specific visualizations (not SVG)

© tryopendata, MIT. 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 9 other files (references, assets) in plugins/opendesign/skills/svg-design of tryopendata/skills.

  • SKILL.md
  • assets/preview.html
  • references/accessibility-and-pitfalls.md
  • references/advanced-techniques.md
  • references/animation.md
  • references/editing-workflow.md
  • references/icon-design.md
  • references/logo-techniques.md
  • references/optimization.md
  • references/path-patterns.md

Open the folder on GitHubat commit f97583e

Compare with similar skills

SVG Design 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.

SVG Design compared with similar skills
SkillStarsUsed inTokensAuto-checkLicenceRepo updated
SVG Design this skilltryopendata/skills142—~3.1kAutomated safety check: PassMIT
Replica DesignJakeschincariol/replica-skill908—~994Automated safety check: PassMIT
Domodomo Design Accessibilitydarknecrocities/DomoDomo---All-in-one-Tool239—~17kAutomated safety check: PassNone
Better Colorsboraoztunc/skills395—~2.1kAutomated safety check: PassApache-2.0
Designjeremylongshore/tons-of-skills-marketplace2.8k—~1.9kAutomated safety check: PassMIT
DesignOhh-889/skyroc7959 repos~3.1kAutomated safety check: PassMIT

Similar skills

  • Replica Design

    Jakeschincariol/replica-skill

    Rebuilds an app's design system for a clone: colour roles, type scale, spacing, radius, shadows and every component with its states, as design tokens plus component specs, with original assets…

    908 GitHub stars~994 tokensUpdated 5 days ago
    Frontend & DesignAuto-check passed
  • Domodomo Design Accessibility

    darknecrocities/DomoDomo---All-in-one-Tool

    Maintain DomoDomo’s dark visual system, responsive layouts, accessible interactions, brand consistency, and component ergonomics.

    239 GitHub stars~17k tokensUpdated 2 days ago
    Frontend & DesignAuto-check passed
  • Better Colors

    boraoztunc/skills

    Color systems for digital products, from building and naming a palette to applying it with meaning and verifying contrast.

    395 GitHub stars~2.1k tokensUpdated 1 mo ago
    Frontend & DesignAuto-check passed
  • Design

    jeremylongshore/tons-of-skills-marketplace

    A skill your agent uses when the user wants the visual/experiential design of a product done systematically — a design system, a screen, a landing page, or a visual identity — grounded in researched…

    2.8k GitHub stars~1.9k tokensUpdated today
    Frontend & DesignAuto-check passed
  • Design

    Ohh-889/skyroc

    Comprehensive design skill: brand identity, design tokens, UI styling, logo generation (55 styles, Gemini AI), corporate identity program (50 deliverables, CIP mockups), HTML presentations…

    795 GitHub starsUsed in 9 repos~3.1k tokens
    Frontend & DesignAuto-check passed
  • Visual Style

    calesthio/OpenMontage

    Create, extract, and apply portable visual design systems via visual-style.md files.

    65k GitHub stars~1.5k tokensUpdated 5 days ago
    Frontend & DesignAuto-check passed

More from tryopendata/skills

  • 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
    Auto-check passed

Questions about SVG Design

What does SVG Design do?

Generates and edits SVG logos, icons, and graphics. An agent skill from tryopendata/skills. SVG Design is an agent skill from tryopendata/skills. Generates and edits SVG logos, icons, and graphics.

When should I use SVG Design?

SVG Design fits situations like: creating SVG files; designing logos; writing path data; optimizing SVGs.

How do I install SVG Design in Claude Code?

Run `npx skills add tryopendata/skills --skill svg-design -a claude-code`. Or copy the skill folder (plugins/opendesign/skills/svg-design in tryopendata/skills) into .claude/skills/svg-design in your project. Claude Code loads it when a task matches its description.

How do I install SVG Design in Codex?

Run `npx skills add tryopendata/skills --skill svg-design -a codex`. Or copy the skill folder (plugins/opendesign/skills/svg-design in tryopendata/skills) into .agents/skills/svg-design in your project. Codex loads it when a task matches its description.

Can I use SVG Design 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 tryopendata/skills --skill svg-design -a cursor` (or -a gemini-cli, github-copilot or opencode for the others). To copy it by hand, put the folder in .cursor/skills/svg-design, .gemini/skills/svg-design, .github/skills/svg-design and .opencode/skills/svg-design in your project.

What does SVG Design need to run?

SKILL.md names no scripts, command-line tools or credentials: SVG Design is instructions for the agent only.

Does SVG Design access the network?

SKILL.md names 1 domain. In commands or code: w3.org; the agent is likely to contact it when it follows the instructions. This is read from the text; nothing was executed.

Is SVG Design 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 SVG Design use?

SVG Design is published under the MIT licence (the repository's licence). It allows redistribution, so the full SKILL.md is shown on this page.

How many tokens does SVG Design use?

About 3.1k tokens (SKILL.md is roughly 13k characters). Agents keep only the skill's name and description in context until a task matches; then they load SKILL.md in full. Its references folder adds about 10k tokens, read only when the agent opens those files.

What are the alternatives to SVG Design?

Skills that share tags, products or a category with SVG Design: Replica Design (Jakeschincariol/replica-skill, 908 stars), Domodomo Design Accessibility (darknecrocities/DomoDomo---All-in-one-Tool, 239 stars), Better Colors (boraoztunc/skills, 395 stars) and Design (jeremylongshore/tons-of-skills-marketplace, 2.8k stars). The comparison table on this page puts their stars, adoption, token cost, safety result and licence side by side.

Who maintains SVG Design?

tryopendata (a GitHub organization) maintains it in tryopendata/skills, which has 142 GitHub stars. The repository holds 2 skills in this directory. The repository was last updated on July 25, 2026.

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