Back to list
Jamie-BitFlight

claude-plugins-reference-2026

by Jamie-BitFlight

Skills plugin for Anthropic's Claude Code

14🍴 2📅 Jan 22, 2026

SKILL.md


name: claude-plugins-reference-2026 description: Reference guide for Claude Code plugins system (January 2026). Use when creating, distributing, or understanding plugins, plugin.json schema, marketplace configuration, bundling skills/commands/agents/hooks/MCP/LSP, or plugin validation.

Claude Code Plugins System - Complete Reference (January 2026)

Plugins bundle multiple Claude Code capabilities (skills, commands, agents, hooks, MCP servers, LSP servers) into distributable packages.


plugin.json Schema

{
  "name": "plugin-name",
  "version": "1.0.0",
  "description": "Plugin description with trigger keywords",
  "author": {
    "name": "Author Name",
    "email": "author@example.com",
    "url": "https://github.com/author"
  },
  "homepage": "https://docs.example.com/plugin",
  "repository": "https://github.com/author/plugin",
  "license": "MIT",
  "keywords": ["keyword1", "keyword2"],
  "commands": "./commands/",
  "agents": "./agents/",
  "skills": ["./skills/skill-one", "./skills/skill-two"],
  "hooks": "./hooks.json",
  "mcpServers": "./.mcp.json",
  "lspServers": "./.lsp.json",
  "outputStyles": "./styles/"
}

Required Fields

FieldTypeConstraints
namestringKebab-case, unique identifier, max 64 chars
FieldTypePurpose
versionstringSemantic versioning (X.Y.Z)
descriptionstringMax 1024 chars, include trigger keywords
authorobject{name, email?, url?}
homepagestringDocumentation URL
repositorystringSource code URL
licensestringSPDX identifier
keywordsarrayMarketplace discoverability

Component Paths

FieldTypeDefault Location
commandsstring/array./commands/
agentsstring/array./agents/
skillsstring/array./skills/
hooksstring/object./hooks.json or inline
mcpServersstring/object./.mcp.json or inline
lspServersstring/object./.lsp.json or inline
outputStylesstring./styles/

Directory Structure

plugin-name/
├── .claude-plugin/           # REQUIRED metadata directory
│   └── plugin.json          # REQUIRED manifest (only file here)
├── commands/                 # Slash command files (.md)
├── agents/                   # Agent definitions (.md)
├── skills/                   # SKILL.md directories
│   ├── skill-one/
│   │   ├── SKILL.md
│   │   └── references/
│   └── skill-two/
│       └── SKILL.md
├── hooks.json               # Hook configurations
├── .mcp.json                # MCP server definitions
├── .lsp.json                # LSP server configurations
├── scripts/                 # Helper scripts for hooks
├── LICENSE
├── CHANGELOG.md
└── README.md

Critical: .claude-plugin/ contains ONLY plugin.json - never put components here.


Distribution Methods

{
  "name": "marketplace-name",
  "owner": {
    "name": "Team Name",
    "email": "team@example.com"
  },
  "metadata": {
    "description": "Marketplace description",
    "version": "1.0.0",
    "pluginRoot": "./plugins"
  },
  "plugins": [
    {
      "name": "plugin-one",
      "source": "./plugins/plugin-one"
    },
    {
      "name": "plugin-two",
      "source": { "source": "github", "repo": "owner/repo" }
    }
  ]
}

Plugin Sources

TypeFormat
Relative path"./plugins/my-plugin"
GitHub{ "source": "github", "repo": "owner/repo" }
Git URL{ "source": "url", "url": "https://..." }

Installation Commands

# Add marketplace
/plugin marketplace add owner/repo
/plugin marketplace add https://gitlab.com/company/plugins.git
/plugin marketplace add ./local-marketplace

# Install plugin
/plugin install plugin-name@marketplace-name
/plugin install plugin-name@marketplace-name --scope project
/plugin install plugin-name@marketplace-name --scope local

# Manage
/plugin enable plugin-name
/plugin disable plugin-name
/plugin update plugin-name
/plugin uninstall plugin-name

Installation Scopes

ScopeSettings FileUse Case
user~/.claude/settings.jsonPersonal, global (default)
project.claude/settings.jsonTeam, shared via git
local.claude/settings.local.jsonProject-specific, gitignored
managedmanaged-settings.jsonEnterprise, admin-controlled

Bundled Capabilities

Commands

  • Location: commands/ directory
  • Format: Markdown with frontmatter
  • Namespace: /plugin-name:command-name

Agents

  • Location: agents/ directory
  • Format: Markdown with frontmatter
  • Auto-delegation by Claude

Skills

  • Location: skills/ with SKILL.md
  • Auto-activation by Claude
  • Progressive disclosure support

Hooks

  • Location: hooks.json or plugin.json inline
  • Events: PreToolUse, PostToolUse, Stop, etc.
  • Use ${CLAUDE_PLUGIN_ROOT} for paths

MCP Servers

  • Location: .mcp.json
  • Types: http, stdio
  • Auto-start when plugin enabled

LSP Servers

  • Location: .lsp.json
  • Requires binary installation
  • Code intelligence features

Environment Variables

VariableDescription
${CLAUDE_PLUGIN_ROOT}Absolute path to plugin directory
${CLAUDE_PROJECT_DIR}Project root directory

Validation

# CLI
claude plugin validate .
claude plugin validate ./my-plugin

# In Claude Code
/plugin validate .

Testing

# Load during development
claude --plugin-dir ./my-plugin
claude --plugin-dir ./plugin-one --plugin-dir ./plugin-two

Enterprise Features

{
  "enabledPlugins": {
    "code-formatter@company-tools": true
  },
  "extraKnownMarketplaces": {
    "company-tools": {
      "source": { "source": "github", "repo": "org/plugins" }
    }
  },
  "strictKnownMarketplaces": [
    { "source": "github", "repo": "acme-corp/approved-plugins" }
  ]
}
SettingEffect
strictKnownMarketplaces: []Complete lockdown
strictKnownMarketplaces: [sources]Allowlist only
strictKnownMarketplaces: undefinedNo restrictions

Constraints

  • Plugins copied to cache, not used in-place
  • Cannot reference files outside plugin directory (../ fails)
  • LSP servers require separate binary installation
  • All paths must be relative, start with ./
  • Path traversal (..) not allowed
  • Scripts must be executable (chmod +x)
  • Reserved marketplace names: claude-code-marketplace, anthropic-plugins

Private Repository Authentication

ServiceEnvironment VariableScope
GitHubGITHUB_TOKEN or GH_TOKENrepo
GitLabGITLAB_TOKEN or GL_TOKENread_repository
BitbucketBITBUCKET_TOKENread access

Sources

Score

Total Score

50/100

Based on repository quality metrics

SKILL.md

SKILL.mdファイルが含まれている

+20
LICENSE

ライセンスが設定されている

0/10
説明文

100文字以上の説明がある

0/10
人気

GitHub Stars 100以上

0/15
最近の活動

3ヶ月以内に更新がある

0/10
フォーク

10回以上フォークされている

0/5
Issue管理

オープンIssueが50未満

+5
言語

プログラミング言語が設定されている

+5
タグ

1つ以上のタグが設定されている

0/5

Reviews

💬

Reviews coming soon