The open-source community surrounding Claude Code has long struggled with the friction of distributing custom skills. Enter scaffold-skill-marketplace, a meta-skill designed to eliminate that boilerplate entirely. Created by developer emalia, this tool generates a fully configured git repository ready to host shareable Claude Code plugins. It requires only a project name to bootstrap, automatically producing the necessary JSON manifests, CI workflows, and validation scripts in a single pass. This approach transforms skill distribution from a manual chore into a standardized, automated pipeline.
The One-Pass Scaffold Architecture
The core mechanism is a plain bash script located at scripts/scaffold.sh. It renders fifteen templates from a references/templates/ directory, substituting six specific placeholders including {{MARKETPLACE_NAME}} and {{OWNER_EMAIL}}. The script writes files and then stops, printing next steps for git initialization and local testing via claude --plugin-dir. Crucially, the skill refuses to overwrite existing directories unless the --force flag is passed, ensuring user control over the repository location. Because the templates are plain files, customization requires editing a single template rather than modifying the script logic itself.
Strict Validation and Auto-Discovery
The generated marketplace.json sets "strict": false, enabling Claude Code to auto-discover contents within skills/, agents/, and hooks/ directories. This removes the need for manual manifest updates when adding new skills. However, this convenience comes with a rigid contract: the folder layout must follow kebab-case conventions, and skills cannot be nested. The included validate-skill.sh enforces these rules, flagging errors such as mismatched folder names, missing SKILL.md files, or descriptions exceeding 1024 characters. It also warns if descriptions lack specific "Use when" trigger phrases, which are critical for Claudeβs auto-invocation logic.
Automated Releases and Smart Hooks
Release management is handled by semantic-release, which parses conventional commits to determine version bumps. Features trigger minor releases, while fixes trigger patches. A companion script, update-plugin-versions.sh, ensures plugin.json and marketplace.json versions never disagree. The system also includes a recommend-skills.sh hook that scans user prompts against skill names, injecting relevant suggestions into the context. Additionally, a PR scope check monitors changes; if a pull request touches more than two skills or mixes skills with agents, it comments suggesting a split to keep changelog entries atomic.
From Personal Skill to Public Marketplace
The skill itself originated in the authorβs ~/.claude/skills/ directory as a personal, unversioned tool. Recognizing that personal skills lack the installability and versioning that the marketplace provides, the author integrated it into the very repo it generated. The some-claude-skills repository now publishes two plugins: skills-core for atomic skills like day-in-review and brainstorm, and feature-builder for complex multi-agent workflows. The separation ensures that users seeking simple tools arenβt burdened with the fifteen enforcement hooks required by the heavier workflow system.
Key Takeaways
- scaffold-skill-marketplace reduces repository setup to a single command, generating all necessary CI and validation files.
- The system enforces strict folder conventions to enable Claude Codeβs auto-discovery feature, eliminating manual manifest edits.
- Automated releases via semantic-release ensure version consistency between plugin and marketplace manifests.
- A custom hook provides context-aware skill recommendations by matching user prompts to skill names.
- The author successfully transitioned the tool from a personal, unversioned skill to a public, installable plugin.
The Bottom Line
Scaffold-skill-marketplace is a masterclass in developer experience, turning the tedious chore of plugin distribution into a one-command affair. By enforcing strict conventions through validation rather than manual documentation, it ensures that the ecosystem remains clean, discoverable, and easy to maintain for both creators and users.