Core repo: logic + index + site.
Main repo (merged artifact): https://github.com/majiayu000/claude-skill-registry
Data repo (skills archive): https://github.com/majiayu000/claude-skill-registry-data
Authority: core workflows are canonical; main is a publish mirror.
The most comprehensive Claude Code skills registry β updated daily with the latest skills
The largest searchable index of Claude Code skills, aggregated from GitHub and community sources.
Three ways to use:
- Web Search - Fast browser-based search
- sk CLI - Terminal package manager
- API - Direct JSON access
Repo layout note: core owns workflows/pipeline logic, data stores skills/**, and main is generated from core + data. See SCHEME2_SPLIT.md.
- Massive Skill Index - Deduplicated, high-quality registry (see badge for live count)
- Rich Categories - Development, Testing, DevOps, Design, and more
- Daily Updates - Automated crawling/validation by core scheduled workflows
- Quality Indexed - Metadata, descriptions, and star counts
- Lightweight Search - Gzip-compressed index for fast client-side search
- Core: source of truth for workflows, crawling, scanning, and index/site generation
- Data: canonical archived skill tree (
skills/**) - Main: publish artifact for merged browsing/compatibility consumers
- Publish contract: core dispatches main publish with pinned
core_sha+data_sha - Non-goal for main: main does not initiate canonical syncs, archive updates, or index generation
Visit https://majiayu000.github.io/claude-skill-registry-core/
For clone/update tips on large repositories, see docs/FAST_CLONE.md.
# Install sk
go install github.com/majiayu000/caude-skill-manager@latest
# Search skills
sk search testing
sk search pdf
sk search --popular
# Install a skill
sk install anthropics/skills/skills/docxThe public JSON surface is versioned in docs/artifact-api-contract.md. Use that contract when integrating with pointer files, manifests, shards, gzip variants, and deprecation markers.
# Startup search index and bounded full-search shards
curl https://majiayu000.github.io/claude-skill-registry-core/search-index.json
curl https://majiayu000.github.io/claude-skill-registry-core/search-index-manifest.json
curl https://majiayu000.github.io/claude-skill-registry-core/search-shards/part-000.json
# Deduplicated catalog index with quality/security/install signals
curl https://majiayu000.github.io/claude-skill-registry-core/search-index-lite.json
curl https://majiayu000.github.io/claude-skill-registry-core/quality-index.json
curl https://majiayu000.github.io/claude-skill-registry-core/quality-index-manifest.json
curl https://majiayu000.github.io/claude-skill-registry-core/quality-shards/part-000.json
curl https://majiayu000.github.io/claude-skill-registry-core/security-index.json
curl https://majiayu000.github.io/claude-skill-registry-core/security-index-manifest.json
curl https://majiayu000.github.io/claude-skill-registry-core/security-shards/part-000.json
curl https://majiayu000.github.io/claude-skill-registry-core/ranking-index.json
curl https://majiayu000.github.io/claude-skill-registry-core/ranking-index-manifest.json
curl https://majiayu000.github.io/claude-skill-registry-core/ranking-shards/part-000.json
# Lightweight registry summary (counts only)
curl https://raw.githubusercontent.com/majiayu000/claude-skill-registry-core/main/registry_summary.json
# Full registry manifest and shards (merged publish artifact)
curl https://raw.githubusercontent.com/majiayu000/claude-skill-registry/main/registry-manifest.json
curl https://raw.githubusercontent.com/majiayu000/claude-skill-registry/main/registry-shards/00.json
# Compatibility registry pointer (merged publish artifact)
curl https://raw.githubusercontent.com/majiayu000/claude-skill-registry/main/registry.json
# Category manifest and bounded parts
curl https://majiayu000.github.io/claude-skill-registry-core/categories/index.json
curl https://majiayu000.github.io/claude-skill-registry-core/categories/development/manifest.json
curl https://majiayu000.github.io/claude-skill-registry-core/categories/development/part-000.json
# Legacy category pointer
curl https://majiayu000.github.io/claude-skill-registry-core/categories/development.jsonβββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββ
β Layer 1: Data Collection β
β ββββββββββββββββ ββββββββββββββββ ββββββββββββββββ β
β β GitHub Crawl ββ β Download ββ β Security β β
β β (discover) β β (sync) β β (scanner) β β
β ββββββββββββββββ ββββββββββββββββ ββββββββββββββββ β
βββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββ
β
βββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββ
β Layer 2: Index Generation β
β ββββββββββββββββββ ββββββββββββββββββ ββββββββββββββββββ β
β β search-index β β categories/ β β featured.json β β
β β .json β β *.json β β (featured set) β β
β ββββββββββββββββββ ββββββββββββββββββ ββββββββββββββββββ β
βββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββ
β
βββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββ
β Layer 3: Consumption β
β ββββββββββββββββββ ββββββββββββββββββ ββββββββββββββββββ β
β β Web UI β β sk CLI β β API β β
β β (GitHub Pages) β β (Go) β β (JSON) β β
β ββββββββββββββββββ ββββββββββββββββββ ββββββββββββββββββ β
βββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββ
// Lightweight index for fast search
interface SearchIndex {
v: string; // Version (date)
t: number; // Indexed skill count (always s.length)
s: SkillMini[]; // Skills array
}
interface SkillMini {
n: string; // name
d: string; // description (truncated 80 chars)
c: string; // category code (dev, ops, sec, etc.)
g: string[]; // tags (max 5)
r: number; // stars
i: string; // install path
}claude-skill-registry-core/
βββ registry.json # Lightweight core registry metadata
βββ docs/ # GitHub Pages
β βββ index.html # Web search UI
β βββ search-index-lite.json
β βββ search-index.json # Compatibility pointer to bounded shards
β βββ search-index-manifest.json
β βββ search-shards/ # Bounded full search index parts
β βββ featured.json # Featured skills snapshot
β βββ categories/ # Category manifests and bounded parts
βββ sources/ # Data sources
β βββ anthropic.json
β βββ community.json
β βββ skillsmp.json
βββ scripts/ # Build scripts
β βββ build_search_index.py
β βββ discover_by_topic.py
β βββ security_scanner.py
β βββ ...
βββ (no committed skills/) # skills/** lives in registry-data; mounted in CI when needed
The merged claude-skill-registry publish artifact additionally contains
registry-manifest.json and registry-shards/**.
Canonical category slugs, aliases, short codes, governance status, and
heuristic keywords live in taxonomy/categories.yaml. Pipeline scripts read
that file instead of keeping their own category lists. Validate the taxonomy
itself with python scripts/check_taxonomy_governance.py. To review category
quality across the archive before moving anything, run
python scripts/audit_category_quality.py --skills-dir skills.
The default audit uses metadata and paths for a fast full-archive pass; add
--include-frontmatter when checking frontmatter/category drift.
The audit also reports non-standard nested skill paths such as
category/category/skill/SKILL.md.
For those layout issues, use
python scripts/normalize_skill_depth.py --skills-dir skills --json to review
the exact move plan before applying it.
For semantic reclassification, generate a review-only migration plan with
python scripts/plan_category_migration.py --skills-dir skills --output category-migration-plan.json.
The plan records action, confidence, source categories, target category, keyword
signals, and reason for every proposed change; it does not move files.
For a bounded second-pass model review, set MIMO_API_KEY and run
python scripts/review_category_plan_with_llm.py --plan category-migration-plan.json --output category-llm-review.json --checkpoint-jsonl category-llm-review.checkpoint.jsonl --resume.
The default endpoint is https://token-plan-sgp.xiaomimimo.com/v1 with
mimo-v2.5-pro. The default request uses --thinking disabled and
--max-completion-tokens 1024 so the model output budget is reserved for the
required JSON; raise the token value for larger reviews, or pass
--thinking default when using a non-MiMo endpoint that does not accept the
provider-specific thinking field. The report remains review-only: it records
model category, confidence, decision, parse status, token/thinking policy, and
evidence without modifying the archive.
The checkpoint file is append-only JSONL, so interrupted long reviews can resume
without re-calling the model for completed candidates.
Category counts are published in categories/index.json; full category payloads
are available through categories/<category>/manifest.json and bounded
part-*.json files. The legacy categories/<category>.json URL is now a small
compatibility pointer. The publish path runs
python scripts/check_category_artifacts.py --categories-dir docs/categories so
legacy category files cannot silently grow back into large full-payload JSON.
Common category codes include:
| Category | Code | Description |
|---|---|---|
development |
dev |
Development tools, frameworks |
data |
dat |
Data processing, analysis |
design |
des |
UI/UX design, frontend |
testing |
tst |
Testing, QA, automation |
devops |
ops |
DevOps, CI/CD, infrastructure |
documents |
doc |
Document creation (docx, pdf) |
productivity |
pro |
Productivity and automation |
product |
prd |
Product management |
security |
sec |
Security, auditing |
marketing |
mkt |
Marketing, content, SEO |
- Index count tracked by the badge (core
registry.json) - Archive size: tracked by badge (raw
SKILL.mdcount fromstats.json) - Daily auto-update via GitHub Actions
- Security scanning for all skills
- sk CLI for installation
- Lightweight search index (gzip-compressed; see stats.json)
- Web search UI (GitHub Pages)
- GitHub Pages deployment (https://majiayu000.github.io/claude-skill-registry-core/)
- AI semantic search (vector similarity)
- Skill recommendations (based on usage)
- Version tracking for skills
- Skill quality scoring
- API rate limiting and caching
Option 1: Submit via Issue
- Open an issue
- Use the "Add Skill" template
- Provide: repo URL, name, description, category
Option 2: Submit via PR
- Fork
majiayu000/claude-skill-registry-core - Add your skill to
sources/community.json:
{
"name": "your-skill-name",
"repo": "your-username/your-repo",
"path": "optional/path/to/skill",
"description": "What your skill does",
"category": "development",
"tags": ["testing", "automation"]
}- Submit a PR to
majiayu000/claude-skill-registry-core(notclaude-skill-registry, which is a generated publish artifact)
We welcome feedback! Please open an issue for:
- Bugs - Search not working, incorrect data
- Feature requests - New categories, better search
- UX improvements - Web UI, CLI enhancements
- Data quality - Duplicate skills, wrong categories
π Open an Issue
# Clone the core repo (authoritative pipeline repo)
git clone --filter=blob:none --sparse https://github.com/majiayu000/claude-skill-registry-core.git
cd claude-skill-registry-core
# Pull only what you need (add more paths later as needed)
git sparse-checkout set --cone docs scripts sources schema
# Install dependencies
uv venv
source .venv/bin/activate
uv pip install -r requirements.txt
# Build search index locally
python scripts/build_search_index.py --registry registry.json --output docs
# Test web UI
cd docs && python -m http.server 8000
# Visit http://localhost:8000See docs/FAST_CLONE.md for more options (existing clones, getting full checkout, Windows notes).
| Project | Description |
|---|---|
| caude-skill-manager | CLI tool for installing skills (sk) |
| anthropics/skills | Official Anthropic skills |
| SkillsMP | Web-based skill marketplace |
| awesome-claude-skills | Curated skill list |
MIT License applies to the registry code/pipeline only - see LICENSE for details.
Third-party skills under skills/** keep their original licenses and copyright ownership.
- Repository-level MIT does not relicense third-party skill content.
- Every imported skill metadata file should include:
authorsource_urllicensecopyrightpermission_notedistribution(compatibleorrestricted)
restrictedentries are not MIT-compatible by default and require explicit upstream permission before redistribution/use.- Notices are generated by compliance checks into
THIRD_PARTY_NOTICES.md. - Metadata compliance runs in advisory mode by default to avoid blocking ingestion; strict blocking can be enabled when needed.
Made with β€οΈ for the Claude Code community