Curator
Open-source local dashboard for managing your Claude Code skills and MCP servers, with silhouette-scored clustering to surface overlapping skills.
Ask AI about Curator
Powered by Claude Β· Grounded in docs
I know everything about Curator. Ask me about installation, configuration, usage, or troubleshooting.
0/500
Reviews
Documentation
curator
Open-source local dashboard for your Claude Code skills and MCP servers. Free, no login, no API key. See your library at a glance, find duplicates, decide what to keep.
What it does
curator runs a local web dashboard at http://127.0.0.1:4711 so you can actually see what's in your ~/.claude/.
- At-a-glance overview β total skills, always-loaded vs on-use token cost, grade distribution, top-heaviest descriptions, top-heaviest bodies, MCP servers.
- Cluster overlap analysis β silhouette-scored hierarchical clustering surfaces overlapping skills. Click any cluster to see shared core vocabulary, per-skill unique vocabulary, and pairwise similarity. Members with no unique vocabulary are flagged as likely duplicates.
- Topic browsing β auto-detected tag groupings (
kotlin,testing,frontend, β¦) in the sidebar. A skill can belong to several. - Edit and delete in place β click a user-owned skill, edit the body, save. Or delete it. Plugin-installed skills are read-only.
- Backups before every change β written to
~/.claude/curator/backups/. Every edit and delete is reversible.
Nothing auto-applies. You decide what to keep.
Install
git clone git@github.com:KarimJebara/Curator.git
cd Curator
npm install
npm link # puts `curator` on PATH; one-time setup
npm link is optional β you can also run everything as node bin/curator.js <cmd>.
Optional: install as a clickable Mac app
If you want a Curator.app you can launch from Spotlight or the Dock instead of running curator dashboard from a terminal:
bash scripts/build-app.sh
cp -r dist/Curator.app /Applications/
Clicking the icon opens a Terminal window that runs curator dashboard. Closing the Terminal window stops the server. Requires npm link first so curator is on PATH.
Quickstart
curator scan # deterministic snapshot, ~3 seconds, no API key
curator dashboard # opens http://127.0.0.1:4711 in your browser
That's it. The default scan is fully deterministic and finishes in seconds. There's also a weekly cron option if you want it to re-snapshot on its own:
curator schedule install
How it works
A single curator scan produces two views of your library:
Clusters β Ward-linkage hierarchical clustering on TF-IDF + bigrams, with silhouette confidence scoring. Each cluster gets a high (β₯0.28), medium (0.18β0.28), or low (<0.18) confidence badge so you know how much to trust the grouping. Click into a cluster from the dashboard to see what its members share, what each one uniquely knows, and pairwise cosine similarity. Members with no unique vocabulary stand out β those are your duplicates.
Topics β tag-based groupings detected from skill names, descriptions, and a known-vocabulary scan. A skill can belong to multiple topics. Surfaced in the dashboard sidebar.
Always-loaded vs on-use token cost
Two different cost categories the dashboard separates:
- Always loaded β the
description:line at the top of every SKILL.md is loaded into Claude on every session, so the autorouter can decide which skill to invoke. You pay this whether you ever use the skill or not. Usually 30β100 tokens per skill. - On use β the body of the skill (everything below the frontmatter) loads only when the Skill tool actually fires for that skill. Usually 200β6,000 tokens.
Both are graded separately because the rules are different. A bloated description hurts every session forever β that's the kind to trim aggressively. A bloated body only hurts the sessions where the skill actually fires, so depth there is fine if it pays off when triggered.
Advanced: LLM-driven rewriting (opt-in)
Default scan is deterministic. If you want machine-proposed specializations, pass --rewrite to run a 5-stage LLM pipeline:
curator scan --rewrite # ~2β3 min per cluster
curator review # walk through proposals as y/n flashcards
| Stage | Model | Purpose |
|---|---|---|
| 1. Detect clusters | none | Deterministic clustering |
| 2. Fingerprint | Haiku 4.5 | Extract each skill's unique strengths |
| 3. Specialize | Sonnet 4.6 | Propose renames + tightened prompts |
| 4. Generate router | Sonnet 4.6 | Produce a router SKILL.md |
| 5. Verify | Sonnet 4.6 (fresh instance) | Independent second opinion |
This is a power-user mode, not the headline. The dashboard alone is the headline.
How it compares
curator is not the first tool in this space. Honest comparison in docs/COMPARISON.md. Short version:
claudetoolkit.comβ closed-source desktop GUI, freemium. Closest analog. Pick this if you want a polished commercial product covering every config type. We're the open-source alternative focused on skills + MCPs with clustering on top.claude-config-audit,mcp-optimizer,mcp-tidy,mcp-checkup,claude-code-organizerβ all open-source CLI auditors. None have a web dashboard or clustering. We borrow detection patterns from these (with credit).
Roadmap
v0.1 (now)
- Local web dashboard, cluster overlap analysis, always-loaded vs on-use token grading
- MCP duplicate + token-cost detection, orphan & drift flagging
- Weekly cron snapshot
- Optional
--rewriteLLM pipeline
v0.2 (next)
- MCP server editing through the UI
- Bulk select + delete
- Slash commands and agents in the dashboard
- Side-by-side skill compare
- Effectiveness tracking from
~/.claude/projects/*.jsonl(find skills that should have triggered but didn't) - Cross-tool: Cursor, Codex, OpenCode, Claude Desktop
License & contributing
MIT β see LICENSE. The CLI is and stays MIT.
Contributions go through a CLA (see CONTRIBUTING.md) β required to keep the project permissively licensed long-term. The CLA bot signs you in on your first PR.
