Contributing Skills
March 19, 2026 · View on GitHub
How to Submit a Skill
- Create
skills/{partner}-{name}/SKILL.mdusing the template intemplate/SKILL.md - Add the skill entry to
.claude-plugin/marketplace.json - Open a PR using the template at
.github/PULL_REQUEST_TEMPLATE.md
Skill Quality Rubric
Every PR is reviewed against this rubric. Only A+ skills are merged. Fix all issues and resubmit — we'd rather have 10 excellent skills than 100 mediocre ones.
A+ (Merge)
- Naming: Follows
skills/{partner}-{name}/convention exactly - Frontmatter:
name,description, andtagspresent. Description is specific about when an agent should trigger this skill — not a generic tagline - marketplace.json: Skill added in the correct plugin block. Partner skills go in a separate plugin block, not inside
moonpay-skills - No code: Skills are instructional guides. No Python scripts, no TypeScript SDK code, no
subprocess.run. All execution happens through CLIs - Real commands only: Every CLI command and API endpoint in the skill must be verifiable and functional. Hallucinated or fabricated commands are an automatic rejection
- Prerequisites section: Lists all setup requirements (CLI installs, auth, funded wallets, API keys)
- Clear workflow: Step-by-step instructions an agent can follow without ambiguity
- Cross-references: Links to related skills where appropriate (e.g.,
moonpay-authfor login,moonpay-check-walletfor balances). Don't duplicate content from existing skills — reference them - No phantom references: Don't reference skills that don't exist in the repo
- Clean diff: No unrelated changes (cosmetic edits to other files, whitespace changes, etc.)
- Security: No raw private key handling without warnings. No instructions that expose secrets to third parties without explicit guidance
B (Close, but not mergeable)
Missing 1-2 items from the A+ list. Typically: naming convention violation, marketplace.json misplacement, or minor missing sections. Fixable in one revision.
C (Needs work)
Structural issues: missing prerequisites, references to nonexistent skills, duplicative content that should cross-reference existing skills, or unverified API endpoints. Needs a focused revision.
D (Significant rework needed)
Fundamental violations: code in a no-code repo, hallucinated CLI commands, or security issues. The concept may be good but the execution doesn't meet the bar. Needs a rewrite.
F (Reject)
Built on fabricated tools or APIs that don't exist. A skill that instructs agents to use nonexistent commands is worse than no skill at all.
marketplace.json Structure
MoonPay first-party skills go in the moonpay-skills plugin block. Partner skills should add a new plugin block:
{
"plugins": [
{
"name": "moonpay-skills",
"description": "...",
"skills": ["./skills/moonpay-auth", "..."]
},
{
"name": "partner-name",
"description": "Description of the partner's skills",
"source": "./",
"strict": false,
"skills": ["./skills/partner-skill-name"]
}
]
}
Common Mistakes
- Bare skill names —
skills/dune/instead ofskills/dune-analytics/. Always use{partner}-{name}. - Dumping partner skills into
moonpay-skills— Partner skills get their own plugin block. - Embedding code — No Python, TypeScript, or any other code. Use CLI commands and API calls only.
- Copying wallet/funding instructions — Each skill should be self-contained, so duplicating wallet setup and funding instructions is fine. Just make sure the duplicated content is accurate.
- Referencing skills that don't exist — Check the repo before adding Related Skills links.
- Unverifiable commands — If you reference a CLI tool, it must be a real, installable package. Include the install command in Prerequisites.