agentsclimarketplace

Skill builder

Skill wrsmith108/skill-builder-claude-skill/skills/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".From its SKILL.md

Install
npx -y skills add wrsmith108/skill-builder-claude-skill --skill skill-builder

Assembled from the repository path, not quoted from the project. Check it against their README if it does not work.

One thing to look at

  • 7 stars7 stars. Stars are a popularity signal and not a quality one, but at this level it is likely that nobody has read this closely except its author, and you would be relying on your own review.

SKILL.md

9.3 KB, as published. Nobody here has run it

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 templates/* /path/to/new-skill/

3. Customize Files

Guide user through customizing:

  1. skills/<name>/SKILL.md — Core skill definition
  2. CHANGELOG.md — Version history
  3. README.md — Installation and usage
  4. package.json — Plugin metadata and topics

4. Publish to GitHub

Run the automation script:

node 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/.claude-plugin
mkdir -p <skill-name>-claude-skill/templates  # Optional

Step 2: Copy Core Templates

TemplateCopy toPurposeCustomize
SKILL-template.mdskills/<name>/SKILL.mdCore skill definitionName, description, triggers, content
CHANGELOG-template.mdCHANGELOG.mdVersion historyAdd initial features, lessons learned
README-template.mdREADME.mdUser documentationInstallation, usage, examples
package-template.jsonpackage.jsonnpm metadataName (kebab-case), topics
plugin-template.json.claude-plugin/plugin.jsonPlugin manifest (source of truth)Name (kebab-case), description, version
marketplace-template.json.claude-plugin/marketplace.jsonMarketplace manifest (enables install)Marketplace name, plugin name (kebab-case)
setup-template.mjsskills/<name>/scripts/setup.mjsOptional setup-verification scriptAdd checks for your skill's prerequisites

Step 3: Fill In Placeholders

All templates use these placeholders:

PlaceholderReplace WithExample
{{SKILL_NAME}}Skill name (lowercase)governance
{{SKILL_TITLE}}Skill title (Title Case)Governance
{{DESCRIPTION}}One-sentence descriptionEngineering standards enforcement
{{TRIGGER_PHRASES}}Comma-separated triggers"code review", "commit", "standards"
{{TOPICS}}GitHub topicsgovernance,code-quality,standards
{{AUTHOR}}GitHub usernamewrsmith108
{{DATE}}Today's date2025-12-27

Curated Best Practices

From Linear Skill (Most Mature)

PatternWhy It Works
CHANGELOG with "Lesson Learned"Captures why changes were made, not just what
Quick Start at topGets new users productive immediately
allowed-tools frontmatterExplicit tool dependencies
MCP Reliability MatrixShows which tools work reliably
Anti-pattern tablesShows what NOT to do alongside correct patterns
Setup verification scriptImmediate feedback on configuration
Helper scriptsEncapsulate complex operations

From Governance Skill

PatternWhy It Works
Two-document modelSeparates operational (CLAUDE.md) from policy (standards.md)
Pre-commit/PR checklistsActionable reminders at key moments
Section references (§1.3)Precise cross-referencing
Compliance audit scriptAutomated enforcement

Universal Patterns

PatternImplementation
Explicit triggersList all phrases in description frontmatter
No project-specific referencesUse generic examples, placeholders
Templates over hardcodingConfigurable via CONFIG object or placeholders
Version with semverCHANGELOG follows Keep a Changelog format
MIT licenseStandard 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

package.json is for npm metadata only. Do not put a claude-plugin block here — the Claude Code plugin manifest lives in .claude-plugin/plugin.json (see below), which is the single source of truth.

{
  "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"]
}

Plugin & Marketplace Manifests (.claude-plugin/)

For the skill to be installable via claude plugin install, the repo needs two manifests. Copy plugin-template.json and marketplace-template.json into .claude-plugin/.

CRITICAL: plugin and marketplace name fields must be kebab-case with no spaces (use <skill-name>, never the Title-Case <Skill Title>). A space here means /<skill-name> will not invoke the skill.

.claude-plugin/plugin.json:

{
  "name": "<skill-name>",
  "description": "<One sentence>",
  "version": "1.0.0",
  "author": { "name": "<author>", "url": "https://github.com/<user>" },
  "license": "MIT"
}

.claude-plugin/marketplace.json (skills auto-discover from skills/ under source):

{
  "name": "<user>-skills",
  "owner": { "name": "<author>" },
  "plugins": [
    {
      "name": "<skill-name>",
      "source": ".",
      "description": "<One sentence>"
    }
  ]
}

Users then install with:

claude plugin marketplace add <user>/<skill-name>-claude-skill
claude plugin install <skill-name>@<user>-skills

GitHub Topics for Discoverability

Required Topics (all skills)

  • claude
  • claude-code
  • claude-plugin

Domain Topics (choose relevant)

  • governance, code-quality, standards
  • project-management, issue-tracking
  • testing, automation
  • security, authentication
  • database, api
  • documentation, 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 (the claude plugin marketplace add + install flow)
  • .claude-plugin/plugin.json exists with a kebab-case name (no spaces)
  • .claude-plugin/marketplace.json exists so the plugin is installable
  • 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 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 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

Keep looking

Skills are one crate of 628,853. Ordering is by how many stacks a row turns up in, so the top of any crate is what has actually been picked rather than what has the most stars.