claude-skills/registry/CONTRIBUTING.md
Claude 44e1a5b2d3
feat(registry): add community skills registry (schema, index, validate, site, CI)
Adds a gitagent-style registry under registry/ that catalogs this repo's
own plugins (seeded from .claude-plugin/marketplace.json) alongside
community-submitted skills hosted in external repos. GitHub is the source
of truth — no backend.

- schema/metadata.schema.json: draft-07 submission schema
- scripts/build_index.py: stdlib index builder (deterministic; --github, --check)
- scripts/validate.py: stdlib schema + structural validator with optional repo clone
- skills/: community submissions; includes a working template example
- site/: vanilla HTML/CSS/JS browse + search (no build step)
- .github/workflows/registry.yml: validate PRs + keep index.json in sync
  (no Pages deploy — that stays owned by the MkDocs docs site)

https://claude.ai/code/session_01CYgAb1quXh3XQhYScBZRca
2026-05-27 00:20:49 +00:00

3.2 KiB
Raw Blame History

Contributing to the Claude Skills Registry

Share your skill with the community. This guide walks through submitting a skill hosted in your own public GitHub repository.

Requirements

Your skill must:

  1. Be hosted in a public GitHub repository
  2. Have a SKILL.md at the repo root (or at the path you declare)
  3. Be usable with at least one supported tool (Claude Code, Codex, Gemini CLI, …)

Submission steps

1. Fork this repository

2. Create your submission folder

registry/skills/<your-github-username>__<skill-name>/

The folder name uses a double underscore (__) to separate your GitHub username from the skill name. Both halves must match author and name in your metadata.json.

3. Add the required files

metadata.json

{
  "name": "my-skill",
  "author": "your-github-username",
  "description": "A short description of what your skill does",
  "repository": "https://github.com/your-username/your-repo",
  "path": "",
  "version": "1.0.0",
  "category": "productivity",
  "tags": ["tag1", "tag2"],
  "license": "MIT",
  "adapters": ["claude-code"],
  "icon": false,
  "banner": false
}
Field Required Description
name Yes Skill name (lowercase, hyphens)
author Yes Your GitHub username
description Yes What the skill does (10300 chars)
repository Yes Public GitHub repo URL (https://github.com/...)
path No Subdirectory in the repo where SKILL.md lives (default: root)
version Yes Semver version
category Yes One of the allowed categories (below)
tags Yes 110 lowercase-hyphen tags
license Yes SPDX license identifier
model No Preferred model identifier
adapters No Supported tools (e.g. claude-code, codex, gemini-cli)
icon No true if icon.png (256×256) is included
banner No true if banner.png (1200×630) is included

Categories: development, data-engineering, devops, security, compliance, documentation, testing, research, productivity, finance, leadership, product, marketing, project-management, business-growth, commercial, operations, design, knowledge, customer-support, creative, education, other.

README.md

A markdown description of your skill — what it does, key capabilities, example usage. Shown on the registry.

icon.png / banner.png (optional)

A 256×256 icon and/or 1200×630 banner. Set the matching boolean in metadata.json to true when included.

python registry/scripts/validate.py --clone registry/skills/<author>__<name>/

5. Open a pull request

CI will automatically:

  • Validate metadata.json against the schema
  • Check the folder name matches <author>__<name>
  • Verify README.md exists and is non-empty
  • Clone your repository and verify SKILL.md exists at the declared path
  • Confirm the committed index.json is in sync

Updating your skill

Open a new PR modifying your folder and bump version in metadata.json.

Questions?

Open an issue or discussion in this repository.