| name | publish-to-skills-registry |
| description | Publish a skill to the skills.sh registry by opening a GitHub indexing request in vercel-labs/skills. Use when you want to list a skill on skills.sh so others can discover and install it via `npx skills add`. Triggers on "publish skill", "register skill", "list on skills.sh", "submit to skills registry", "index my skill". |
| license | MIT |
| user-invocable | true |
| metadata | {"author":"Chris Williams (@voodootikigod)","homepage":"https://github.com/voodootikigod/publish-to-skills-registry"} |
Publish to Skills Registry
Register a skill on skills.sh by filing an indexing request in the
vercel-labs/skills GitHub repository. Once
indexed, anyone can install the skill with npx skills add <owner>/<repo>.
Prerequisites
- The skill must be in a public GitHub repository.
- The repo must contain at least one
SKILL.md with valid name and description frontmatter, discoverable under skills/<name>/SKILL.md (or the repo root).
- The
gh CLI must be authenticated (gh auth status).
Steps
-
Identify the skill to publish. If the user didn't specify, check the current repo:
gh repo view --json nameWithOwner,description,repositoryTopics
gh repo view --json licenseInfo --jq '.licenseInfo.spdxId // "unknown"'
Find all skill names:
find . -name "SKILL.md" | head -20
-
Gather the required fields:
owner/repo — GitHub repo identifier (e.g. voodootikigod/adversarial-review)
skill-name — the name field from the skill's frontmatter
description — a one-paragraph plain-text description of what the skill does and why it's useful
license — the repo's SPDX license identifier (e.g. MIT, Apache-2.0)
topics — 3–6 relevant tags including agent-skills and any supported agents (e.g. claude-code, cursor, codex)
If any field is missing or unclear, ask the user before opening the issue.
-
Check for an existing indexing request to avoid duplicates:
gh issue list -R vercel-labs/skills \
--search "in:title \"Request to index skill: <owner>/<repo>\"" --limit 5
If one exists and is open, report the URL and stop. If it's closed/resolved, proceed.
-
Open the indexing request (write body to a temp file to avoid heredoc indentation issues):
cat > /tmp/skill-issue-body.md <<'EOF'
Skill Information
- Repository: https://github.com//
- Skill name:
- Install:
npx skills add <owner>/<repo> -g -y
- License:
- Topics:
Description
Why index this?
EOF
gh issue create -R vercel-labs/skills
--title "Request to index skill: /"
--body-file /tmp/skill-issue-body.md
5. **Report the issue URL** to the user and confirm that once processed, the skill will be
discoverable at `https://skills.sh/<owner>/<repo>` and installable via:
```bash
npx skills add <owner>/<repo>
Notes