skill-builder
Create new Claude Code skills with best practices. Use when user wants to create, extract, or build a new skill. Provides templates and GitHub automation. Trigger phrases include "create a skill", "build a skill", "extract a skill", "new skill", "/skill-builder".
When & Why to Use This Skill
The Skill Builder is a powerful meta-utility designed to streamline the development of custom Claude Code skills. It automates the creation process by providing standardized templates, enforcing industry best practices, and facilitating GitHub repository setup. By handling boilerplate tasks like directory scaffolding, metadata configuration (package.json), and documentation (SKILL.md), it ensures that new skills are high-quality, discoverable, and follow proven architectural patterns used by mature integrations.
Use Cases
- Rapid Scaffolding: Use the '/skill-builder' command to instantly generate the required directory structure and mandatory files for a new Claude Code project.
- Best Practice Implementation: Automatically incorporate advanced patterns such as 'Lessons Learned' in changelogs and 'Anti-pattern' tables to improve skill reliability.
- GitHub Automation: Deploy new skills to GitHub with pre-configured topics (claude-code, claude-plugin) and descriptions to maximize community discoverability.
- Template-Driven Development: Utilize standardized placeholders to maintain consistency across multiple developer tools, ensuring all metadata and documentation meet professional standards.
- Skill Extraction: Easily extract specific logic or workflows from existing conversations into a reusable, packaged Claude skill for long-term use.
| name | skill-builder |
|---|---|
| description | Create new Claude Code skills with best practices. Use when user wants to create, extract, or build a new skill. Provides templates and GitHub automation. Trigger phrases include "create a skill", "build a skill", "extract a skill", "new skill", "/skill-builder". |
Skill Builder
Create Claude Code skills following proven patterns from mature skills (Linear, Governance).
Templates: templates/ Best Practices: BEST-PRACTICES.md GitHub Automation: scripts/create-repo.mjs
Quick Start
When user asks to create a skill:
1. Gather Basic Info
Ask the user:
- Skill name: Short, descriptive (e.g., "governance", "linear", "docker")
- Description: One sentence explaining when to use it
- Trigger phrases: What should activate this skill?
- Problem it solves: What does the user gain?
2. Provide Templates
Copy and customize these templates:
# Copy all templates to working directory
cp -r ~/.claude/skills/skill-builder/templates/* /path/to/new-skill/
3. Customize Files
Guide user through customizing:
skills/<name>/SKILL.md— Core skill definitionCHANGELOG.md— Version historyREADME.md— Installation and usagepackage.json— Plugin metadata and topics
4. Publish to GitHub
Run the automation script:
node ~/.claude/skills/skill-builder/skills/skill-builder/scripts/create-repo.mjs \
--name "<skill-name>-claude-skill" \
--description "Claude Code skill for <purpose>" \
--topics "claude,claude-code,claude-plugin,<domain-topics>"
Template-First Workflow
Step 1: Create Directory Structure
mkdir -p <skill-name>-claude-skill/skills/<skill-name>/scripts
mkdir -p <skill-name>-claude-skill/templates # Optional
Step 2: Copy Core Templates
| Template | Purpose | Customize |
|---|---|---|
SKILL-template.md |
Core skill definition | Name, description, triggers, content |
CHANGELOG-template.md |
Version history | Add initial features, lessons learned |
README-template.md |
User documentation | Installation, usage, examples |
package-template.json |
Plugin metadata | Name, topics, scripts |
Step 3: Fill In Placeholders
All templates use these placeholders:
| Placeholder | Replace With | Example |
|---|---|---|
{{SKILL_NAME}} |
Skill name (lowercase) | governance |
{{SKILL_TITLE}} |
Skill title (Title Case) | Governance |
{{DESCRIPTION}} |
One-sentence description | Engineering standards enforcement |
{{TRIGGER_PHRASES}} |
Comma-separated triggers | "code review", "commit", "standards" |
{{TOPICS}} |
GitHub topics | governance,code-quality,standards |
{{AUTHOR}} |
GitHub username | wrsmith108 |
{{DATE}} |
Today's date | 2025-12-27 |
Curated Best Practices
From Linear Skill (Most Mature)
| Pattern | Why It Works |
|---|---|
| CHANGELOG with "Lesson Learned" | Captures why changes were made, not just what |
| Quick Start at top | Gets new users productive immediately |
allowed-tools frontmatter |
Explicit tool dependencies |
| MCP Reliability Matrix | Shows which tools work reliably |
| Anti-pattern tables | Shows what NOT to do alongside correct patterns |
| Setup verification script | Immediate feedback on configuration |
| Helper scripts | Encapsulate complex operations |
From Governance Skill
| Pattern | Why It Works |
|---|---|
| Two-document model | Separates operational (CLAUDE.md) from policy (standards.md) |
| Pre-commit/PR checklists | Actionable reminders at key moments |
| Section references (§1.3) | Precise cross-referencing |
| Compliance audit script | Automated enforcement |
Universal Patterns
| Pattern | Implementation |
|---|---|
| Explicit triggers | List all phrases in description frontmatter |
| No project-specific references | Use generic examples, placeholders |
| Templates over hardcoding | Configurable via CONFIG object or placeholders |
| Version with semver | CHANGELOG follows Keep a Changelog format |
| MIT license | Standard for Claude Code skills |
SKILL.md Structure
Every SKILL.md should have:
---
name: <skill-name>
description: <when to use, trigger phrases>
allowed-tools:
- <tool1>
- <tool2>
---
# <Skill Title>
One-line description.
> **Key Reference**: [link](path)
---
## Quick Start (First-Time Users)
1. Verify setup
2. Common operations
3. Getting help
---
## When This Skill Activates
### Trigger 1
What happens, what to check
### Trigger 2
What happens, what to check
---
## Core Patterns
Tables, examples, code blocks
---
## Anti-Patterns vs Correct Patterns
| Anti-Pattern | Correct Pattern | Why |
|--------------|-----------------|-----|
| ❌ Bad thing | ✅ Good thing | Reason |
---
## [Domain-Specific Sections]
...
---
## Related Documents
- [Link 1](path)
- [Link 2](path)
---
*Last updated: <date>*
package.json Structure
{
"name": "claude-plugin-<skill-name>",
"version": "1.0.0",
"description": "<One sentence>",
"keywords": [
"claude",
"claude-code",
"claude-plugin",
"<domain-specific>",
"<domain-specific>"
],
"author": "<github-username>",
"license": "MIT",
"repository": {
"type": "git",
"url": "https://github.com/<user>/<skill-name>-claude-skill.git"
},
"files": ["skills", "templates", "README.md", "LICENSE"],
"scripts": {
"setup": "node skills/<name>/scripts/setup.mjs",
"check": "node skills/<name>/scripts/check.mjs"
},
"claude-plugin": {
"name": "<Skill Title>",
"description": "<Description for plugin registry>",
"skills": ["skills/<name>"]
}
}
GitHub Topics for Discoverability
Required Topics (all skills)
claudeclaude-codeclaude-plugin
Domain Topics (choose relevant)
governance,code-quality,standardsproject-management,issue-trackingtesting,automationsecurity,authenticationdatabase,apidocumentation,developer-tools
Publishing Checklist
Before publishing:
- SKILL.md has frontmatter (name, description, allowed-tools)
- SKILL.md has Quick Start section
- All placeholders replaced (no
{{...}}remaining) - No project-specific references (generic examples only)
- CHANGELOG.md has initial release with "Lesson Learned"
- README.md has installation instructions
- package.json has
claude-pluginsection - LICENSE file exists (MIT)
- Topics include
claude,claude-code,claude-plugin
Example: Creating a "Docker" Skill
# 1. Create structure
mkdir -p docker-claude-skill/skills/docker/scripts
# 2. Copy templates
cp ~/.claude/skills/skill-builder/templates/* docker-claude-skill/
# 3. Customize (example)
# - Replace {{SKILL_NAME}} with "docker"
# - Replace {{SKILL_TITLE}} with "Docker"
# - Add docker-specific patterns to SKILL.md
# 4. Publish
node ~/.claude/skills/skill-builder/skills/skill-builder/scripts/create-repo.mjs \
--name "docker-claude-skill" \
--description "Claude Code skill for Docker container development" \
--topics "claude,claude-code,claude-plugin,docker,containers,devops"
Related Skills
- Linear Skill — Example of MCP integration, SDK automation
- Governance Skill — Example of documentation patterns, audit scripts
- Varlock Skill — Example of security-focused skill
Last updated: December 2025 Meta-skill for building Claude Code skills