Getting it into your agent
It runs from inside its repository, so the clone comes first — what it calls does not travel with the file alone.
git clone --depth 1 https://github.com/mxyhi/ok-skillsnpx agentmods add skills/mxyhi/ok-skills/better-iconsWrote this? Show the measurements
A badge with what this costs and how it scanned, read live from this page, so it follows the numbers instead of freezing them. Markdown for a README, HTML for a documentation site or a project page.
[](https://agentmods.dev/skills/mxyhi/ok-skills/better-icons)<a href="https://agentmods.dev/skills/mxyhi/ok-skills/better-icons"><img src="https://agentmods.dev/badge/skills/mxyhi/ok-skills/better-icons/github.svg" alt="Measured on agentmods" height="20"></a>Or the 80×15 button, for a site that already has a row of RSS and ATOM ones. Only the verdict fits; the numbers stay here.
<a href="https://agentmods.dev/skills/mxyhi/ok-skills/better-icons"><img src="https://agentmods.dev/badge/skills/mxyhi/ok-skills/better-icons.svg" alt="Reviewed on agentmods" width="80" height="20"></a>What it costs to keep this loaded
Counted locally with the o200k_base tokenizer, which is exact for GPT models; Claude uses its own tokenizer and its counts differ. Treat this as one consistent yardstick across the catalogue rather than a bill. Prices are per million input tokens.
| Model | Per session | Once invoked |
|---|---|---|
| Fable 5.1 | $0.00063 | $0.00959 |
| Opus 5.5 | $0.00025 | $0.00384 |
| Sonnet 5.5 | $0.00013 | $0.00192 |
| Haiku 4.5 | $0.00006 | $0.00096 |
Grade A, and why
better-icons scanned grade A with 0 findings against 26 rules in 11 categories — prompt injection, anti-refusal, data exfiltration, privilege escalation, supply chain, agent snooping, system-prompt leakage, SSRF and excessive agency — measured 1mo ago.
A static scan of the body, not an audit. Every finding is printed with the line that produced it so you can judge whether it matters here. A mod is markdown that instructs an agent; that is exactly why what it instructs is worth reading.
Nothing flagged
None of the 26 patterns this scan looks for appear in this file: no shell pipes, no recursive deletes, no credential paths, no hidden text, no instruction-override or anti-refusal phrasing, no agent-config snooping. That is not a guarantee, it is the absence of the things that are checkable.
This is a copy
100% identical to better-icons — 0 lines differ, which has more behind it and is treated as the original. This page carries a canonical link to it rather than competing with it.
How it starts
The opening of the file, as written. The whole thing — 130 lines — stays where its author put it; the contents beside it link to each section on GitHub.
Better Icons
Search and retrieve icons from 200+ libraries via Iconify.
Installation
Before using any better-icons commands, ensure the tool is available in the environment.
Option 1 — Install globally (recommended, matches all examples below):
# Using npm
npm install -g better-icons
# Using Bun (faster)
bun add -g better-icons
Option 2 — Run without installing (prefix every command with npx or bunx):
# Using npx (npm)
npx better-icons search arrow --limit 10
npx better-icons get lucide:home > icon.svg
# Using bunx (Bun — faster)
bunx better-icons search arrow --limit 10
bunx better-icons get lucide:home > icon.svg
For AI agents: Prefer the global install so that
better-iconsis on$PATHand the commands below work as-is. Run the install step once during environment setup, then use the commands withoutnpx/bunx.
CLI
# Search icons
better-icons search <query> [--prefix <prefix>] [--limit <n>] [--json]
# Search and download all found icons as SVG files
better-icons search <query> -d [dir] [--color <color>] [--size <px>]
# Get icon SVG (outputs to stdout)
better-icons get <icon-id> [--color <color>] [--size <px>] [--json]
# Setup MCP server for AI agents
better-icons setup [-a cursor,claude-code] [-s global|project]
Examples
better-icons search arrow --limit 10
better-icons search home --json | jq '.icons[0]'
better-icons get lucide:home > icon.svg
better-icons get mdi:home --color '#333' --json
# Batch download all search results
better-icons search arrow -d # saves to ./icons/
better-icons search check -d ./my-icons # saves to ./my-icons/
better-icons search star -d -c '#000' -s 24 --limit 64
Icon ID Format
prefix:name - e.g., lucide:home, mdi:arrow-right, heroicons:check
Popular Collections
lucide, mdi, heroicons, tabler, ph, ri, solar, iconamoon
MCP Tools (for AI agents)
| Tool | Description |
|---|---|
search_icons |
Search across all libraries |
get_icon |
Get single icon SVG |
get_icons |
Batch retrieve multiple icons |
list_collections |
Browse available icon sets |
recommend_icons |
Smart recommendations for use cases |
find_similar_icons |
Find variations across collections |
sync_icon |
Add icon to project file |
scan_project_icons |
List icons in project |
What this file has done since we first saw it
Hashed on every crawl. A supply-chain change to an agent config is a question of when, not whether, so the history is kept rather than the latest state alone.
- 1mo ago First seen · 130 lines · 63 tokens per session scan A 3d12532000ba
better-icons is a skill published in the GitHub repository mxyhi/ok-skills (507 stars, last pushed 10d ago), licensed Apache-2.0. It adds 63 tokens to every session and 959 once invoked, about $0.0003 per session on Opus 5.5. A static security scan graded it A with 0 findings. It is 100% identical to better-icons, differing in 0 lines, and is treated as a copy.
Other skills, from other repositories
frontend-ui-engineering
Builds production-quality, accessible, responsive user-facing UIs. Use when building or modifying interfaces and pages, creating components, implementing layouts, meeting WCAG accessibility requirements, managing state, or when the output needs to look and feel production-quality rather than AI-generated.
block-kit
Use when a developer wants to build or validate Block Kit layouts for Slack messages, modals, or Home tabs: message layouts, modals/forms/dialogs, Home tab interfaces, interactive buttons or menus, or modifying existing Block Kit JSON. Also trigger on any Slack UI component (sections, actions, inputs, headers, alerts…
awesome-accessibility-audit
Read-only WCAG audit of UI and markup with a concrete fix per finding. Use when asked to check accessibility, a11y, keyboard or screen-reader support, or contrast.
architectural-civil-drafter
Use when a task needs the judgment of an Architectural and Civil Drafter — setting up a CAD sheet at the correct scale and viewport scale factor, applying NCS/AIA layer and sheet-numbering standards, dimensioning a wall assembly or site plan per governing convention, managing xrefs and revision clouds across a sheet…
architecture-teacher-postsecondary
Use when a task needs the judgment of an Architecture Teacher, Postsecondary — running studio desk crits and final jury reviews, grading design work on process and constraint-response rather than rendering polish, separating a personal design-style opinion from an objective functional or code flaw during critique, and…
art-director
Use when a task needs the judgment of an Art Director — commissioning and choosing between divergent creative concepts for a campaign, triaging client feedback into concept vs. execution notes, pressure-testing a concept against a production budget/timeline before it's locked in, or managing a shoot/production budget…