Agent skill

Add Icon

by t4t5 in t4t5/rencal

Turn raw SVG markup into a React icon component in src/icons/.

MITAuto-check passedFrontend & Design

Install Add Icon

skills CLI
$ npx skills add t4t5/rencal --skill add-icon -a claude-code

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

GitHub CLI
$ gh skill install t4t5/rencal add-icon --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/t4t5/rencal.git skills-src && mkdir -p .claude/skills && cp -r skills-src/.agents/skills/add-icon .claude/skills/add-icon && 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
add-icon
GitHub stars
159
Token cost
~671 tokens
SKILL.md length
256 words
Files
1
Skills in repo
6
Repo updated
First seen
Licence
MIT

At a glance

Turn raw SVG markup into a React icon component in src/icons/.

  • Works in 5 steps: Get the SVG: The user will give you raw… → Pick a filename: Use a short kebab-case… → Pick a component name: PascalCase + Icon… → …
  • The user provides SVG markup and wants it added as an icon
  • SKILL.md covers Workflow, Speed rules and Example
  • Reaches w3.org

What it does

Add Icon is an agent skill from t4t5/rencal. Turn raw SVG markup into a React icon component in src/icons/. Use when the user provides SVG markup and wants it added as an icon.

Its SKILL.md is about 670 tokens, which your agent loads only when the skill is triggered. It is a single SKILL.md file with no bundled scripts.

It sits in Frontend & Design. It works with React and Bash. The repository describes itself as: A modern desktop calendar. Built for Omarchy. The licence is MIT.

When your agent uses it

  • The user provides SVG markup and wants it added as an icon

Example prompts

  • “/add-icon”

Workflow steps

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

  1. Get the SVG: The user will give you raw SVG markup (often copy-pasted from Streamline, Figma, etc.).
  2. Pick a filename: Use a short kebab-case name describing the icon (e.g. settings.tsx, arrow-right.tsx). Infer obvious icon names without…
  3. Pick a component name: PascalCase + Icon suffix (e.g. SettingsIcon, ArrowRightIcon, GithubIcon).
  4. Transform the SVG
  5. Write the file to src/icons/.tsx immediately. Use bash with a quoted heredoc instead of the write tool to avoid slow line-by-line UI…

What it can do on your machine

Read from SKILL.md and the folder at commit 4388156. 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 bash and typescript).

    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

Add Icon loads about 671 tokens when it runs. Until then it costs about 35 tokens; SKILL.md has 256 words of instructions outside code blocks.

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

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 t4t5/rencal at commit 4388156, republished under its MIT licence (© t4t5). 256 words, ~671 tokens.

Download SKILL.mdSave it as .claude/skills/add-icon/SKILL.md (or your agent's skills folder).
name
add-icon
description
Turn raw SVG markup into a React icon component in src/icons/. Use when the user provides SVG markup and wants it added as an icon.

You are turning raw SVG markup the user provides into a React icon component in src/icons/.

Workflow

  1. Get the SVG: The user will give you raw SVG markup (often copy-pasted from Streamline, Figma, etc.).

  2. Pick a filename: Use a short kebab-case name describing the icon (e.g. settings.tsx, arrow-right.tsx). Infer obvious icon names without asking. For common brand logos, use the brand name (e.g. GitHub → github.tsx). Ask the user only if the name is truly ambiguous.

  3. Pick a component name: PascalCase + Icon suffix (e.g. SettingsIcon, ArrowRightIcon, GithubIcon).

  4. Transform the SVG:

    • Wrap it in export const <Name>Icon = ({ className }: { className?: string }) => (...)
    • On the <svg> tag: keep xmlns, fill, and viewBox. Add className={className}. Remove hardcoded width and height — size is controlled by Tailwind (size-4, size-6, etc.).
    • Replace every hardcoded stroke color (e.g. stroke="#000000") with stroke="currentColor". Same for fill if it's a color — but leave fill="none" alone.
    • Strip noise: id attributes, <desc> tags, <title> tags, and any other vendor metadata.
    • Keep strokeWidth, strokeLinecap, strokeLinejoin, d, and other geometry-defining attributes.
  5. Write the file to src/icons/<name>.tsx immediately. Use bash with a quoted heredoc instead of the write tool to avoid slow line-by-line UI rendering:

    bash
    cat > src/icons/<name>.tsx <<'EOF'
    ...
    EOF

Speed rules

  • Do not inspect existing icon files unless necessary.
  • Infer obvious icon names without asking.
  • For common brand logos, use the brand name.
  • Immediately write src/icons/<name>.tsx after transforming.
  • Prefer bash with a quoted heredoc for file creation; do not use the write tool unless bash is unavailable.
  • Do not run checks unless the user asks.

Example

Input:

<svg xmlns="http://www.w3.org/2000/svg" fill="none" viewBox="0 0 24 24" id="Foo" height={24} width={24}>
  <desc>Some vendor blurb</desc>
  <g id="group"><path id="p1" stroke="#000000" d="M6 0v14" strokeWidth={2} /></g>
</svg>

Output (src/icons/foo.tsx):

tsx
export const FooIcon = ({ className }: { className?: string }) => (
  <svg xmlns="http://www.w3.org/2000/svg" fill="none" viewBox="0 0 24 24" className={className}>
    <g>
      <path stroke="currentColor" d="M6 0v14" strokeWidth={2} />
    </g>
  </svg>
)

Usage: <FooIcon className="size-4 text-primary" />

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

Files

Just SKILL.md in .agents/skills/add-icon of t4t5/rencal.

Open the folder on GitHubat commit 4388156

Compare with similar skills

Add Icon 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.

Add Icon compared with similar skills
SkillStarsUsed inTokensAuto-checkLicenceRepo updated
Add Icon this skillt4t5/rencal159—~671Automated safety check: PassMIT
Interactive Prototypebluzir/claude-code-design106—~1.2kAutomated safety check: PassNone
Web Artifacts Builderanthropics/skills180k41 repos~769Automated safety check: PassApache-2.0
React Doctormakeplane/plane61k12 repos~657Automated safety check: PassAGPL-3.0
React Router Developmentremix-run/react-router57k1 repos~1.5kAutomated safety check: PassMIT
React UI State PatternsChrisWiles/claude-code-showcase6.1k8 repos~1.6kAutomated safety check: PassNone

Similar skills

  • Interactive Prototype

    bluzir/claude-code-design

    Build a hi-fi clickable React prototype with realistic device chrome.

    106 GitHub stars~1.2k tokensUpdated 5 mo ago
    Frontend & DesignAuto-check passed
  • Web Artifacts Builder

    anthropics/skills

    Official

    Builds multi-component claude.ai HTML artifacts as a small React, TypeScript and Tailwind project, then bundles it into one shareable HTML file.

    180k GitHub starsUsed in 41 repos~769 tokens
    Frontend & DesignAuto-check passed
  • React Doctor

    makeplane/plane

    Scans React code for lint, accessibility, bundle size and architecture issues, reports a health score and checks that changes do not lower it.

    61k GitHub starsUsed in 12 repos~657 tokens
    Frontend & DesignAuto-check passed
  • React Router Development

    remix-run/react-router

    Guides work on React Router apps by first identifying whether the app uses Framework, Data or Declarative mode, then loading the matching reference and the installed package docs.

    57k GitHub starsUsed in 1 repo~1.5k tokens
    Frontend & DesignAuto-check passed
  • React UI State Patterns

    ChrisWiles/claude-code-showcase

    Sets patterns for React interfaces: when to show loading spinners or skeletons, how to surface errors, how to disable buttons during async work and how to handle empty lists.

    6.1k GitHub starsUsed in 8 repos~1.6k tokens
    Frontend & DesignAuto-check passed
  • GSAP Core Animation

    greensock/gsap-skills

    Covers the GSAP core API for tweens, easing, staggers, defaults and matchMedia, and when to choose GSAP over CSS animations or other JavaScript animation libraries.

    16k GitHub starsUsed in 4 repos~3.7k tokens
    Frontend & DesignAuto-check passed

More from t4t5/rencal

  • Add Astro Icon

    t4t5/rencal

    Turn raw SVG markup into an Astro icon component in website/src/icons/.

    159 GitHub stars~752 tokensUpdated today
    Auto-check passed
  • Draft short project release notes from git tag diffs. An agent skill from t4t5/rencal.

    159 GitHub stars~717 tokensUpdated today
    Auto-check passed
  • Local Caldir

    t4t5/rencal

    Develop renCal against a local caldir checkout instead of the pinned release.

    159 GitHub stars~256 tokensUpdated today
    Auto-check passed
  • Analyze frontend performance recordings and propose ranked optimizations.

    159 GitHub stars~461 tokensUpdated today
    Auto-check passed
  • Rencal

    t4t5/rencal

    Create and test renCal plugins that contribute themes or calendar providers.

    159 GitHub stars~327 tokensUpdated today
    Auto-check passed

Works with

Questions about Add Icon

What does Add Icon do?

Turn raw SVG markup into a React icon component in src/icons/. Add Icon is an agent skill from t4t5/rencal. Turn raw SVG markup into a React icon component in src/icons/.

When should I use Add Icon?

Add Icon fits situations like: the user provides SVG markup and wants it added as an icon.

How do I install Add Icon in Claude Code?

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

How do I install Add Icon in Codex?

Run `npx skills add t4t5/rencal --skill add-icon -a codex`. Or copy the skill folder (.agents/skills/add-icon in t4t5/rencal) into .agents/skills/add-icon in your project. Codex loads it when a task matches its description.

Can I use Add Icon 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 t4t5/rencal --skill add-icon -a cursor` (or -a gemini-cli, github-copilot or opencode for the others). To copy it by hand, put the folder in .cursor/skills/add-icon, .gemini/skills/add-icon, .github/skills/add-icon and .opencode/skills/add-icon in your project.

What does Add Icon need to run?

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

Does Add Icon 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 Add Icon 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 Add Icon use?

Add Icon 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 Add Icon use?

About 671 tokens (SKILL.md is roughly 2.7k 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 Add Icon?

Skills that share tags, products or a category with Add Icon: Interactive Prototype (bluzir/claude-code-design, 106 stars), Web Artifacts Builder (anthropics/skills, 180k stars), React Doctor (makeplane/plane, 61k stars) and React Router Development (remix-run/react-router, 57k stars). The comparison table on this page puts their stars, adoption, token cost, safety result and licence side by side.

Who maintains Add Icon?

t4t5 (a GitHub user) maintains it in t4t5/rencal, which has 159 GitHub stars. The repository holds 6 skills in this directory. The repository was last updated on October 9, 2026.

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