Files
gh-vanman2024-domain-plugin…/skills/build-assistant/templates/plugins
2025-11-30 09:04:17 +08:00
..
2025-11-30 09:04:17 +08:00
2025-11-30 09:04:17 +08:00
2025-11-30 09:04:17 +08:00
2025-11-30 09:04:17 +08:00
2025-11-30 09:04:17 +08:00
2025-11-30 09:04:17 +08:00
2025-11-30 09:04:17 +08:00
2025-11-30 09:04:17 +08:00
2025-11-30 09:04:17 +08:00
2025-11-30 09:04:17 +08:00

Plugin Templates

This directory contains templates for creating Claude Code plugins.

Files

  • plugin.json.template - Plugin manifest template
  • example-plugin/ - Complete working example plugin

Template Variables

Variable Purpose Example
{{PLUGIN_NAME}} Unique identifier (kebab-case) deployment-tools
{{VERSION}} Semantic version 1.0.0
{{DESCRIPTION}} Plugin purpose Deployment automation
{{AUTHOR_NAME}} Author name Dev Team
{{AUTHOR_EMAIL}} Author email dev@company.com
{{HOMEPAGE_URL}} Documentation URL https://docs.example.com
{{REPOSITORY_URL}} Source code URL https://github.com/org/plugin
{{LICENSE}} License identifier MIT, Apache-2.0
{{KEYWORDS}} Discovery tags (array) ["deployment", "ci-cd"]

Plugin Structure

plugin-name/
├── .claude-plugin/           # Metadata directory
│   └── plugin.json          # Required: plugin manifest
├── commands/                 # Slash commands (auto-discovered)
│   ├── deploy.md
│   └── status.md
├── agents/                   # Subagents for multi-step tasks (auto-discovered)
│   ├── deployment-orchestrator.md
│   └── validator.md
├── skills/                   # Background skills (auto-discovered)
│   ├── deployment-skill/
│   │   ├── SKILL.md
│   │   ├── scripts/
│   │   └── templates/
│   └── monitoring-skill/
│       └── SKILL.md
├── hooks/                    # Event hooks (optional)
│   └── pre-deploy.hook.md
├── docs/                     # Documentation (optional)
│   ├── guide.md
│   ├── examples.md
│   └── api.md
├── memory/                   # Persistent state (optional)
│   ├── state.json
│   └── cache/
├── LICENSE                   # License file (optional)
└── README.md                 # Plugin overview (optional)

Critical:

  • All directories at plugin root, NOT inside .claude-plugin/
  • commands/, agents/, skills/ are auto-discovered if present
  • Only list in plugin.json if using custom locations

Usage

Creating from Template

# Create plugin structure
mkdir -p my-plugin/.claude-plugin

# Copy and fill manifest
cp plugin.json.template my-plugin/.claude-plugin/plugin.json
# Edit plugin.json and replace {{VARIABLES}}

# Add components
mkdir my-plugin/commands
mkdir my-plugin/skills

Using Build Command

# Let build system create it for you
/build:plugin my-plugin "Description" --components=cmd,skill

Best Practices

  1. Use ${CLAUDE_PLUGIN_ROOT}:

    • For all paths in hooks and MCP servers
    • Ensures portability across installations
  2. Semantic Versioning:

    • Major: Breaking changes
    • Minor: New features (backwards-compatible)
    • Patch: Bug fixes
  3. Complete Metadata:

    • Author, repository, license
    • Helps users understand plugin origin
  4. Test Locally:

    • Use local marketplace for testing
    • Uninstall/reinstall to test updates

Purpose: Templates for creating plugins Used by: plugin-builder agent