ucsandman/claude-code-capability-primer/claude-code-plugins
Claude Code and agent skill by ucsandman/claude-code-capability-primer
- community
Checking that the SKILL.md file is still in the repository.
Use when building, debugging, or installing Claude Code plugins—understanding plugin structure, CLI commands, marketplace configuration, or skill/agent packaging.
Install
npx vskill@latest install ucsandman/claude-code-capability-primer/claude-code-pluginsSKILL.md
Claude Code Plugins
A plugin is a self-contained directory containing skills, agents, hooks, MCP servers, or LSP servers that extends Claude Code with custom functionality shareable across projects and teams.
Plugin Structure
Critical: Only plugin.json and optionally marketplace.json go inside .claude-plugin/. Directories like skills/, agents/, hooks.json live at plugin root.
Plugin Manifest (plugin.json)
Fields:
name: unique identifier + skill namespace. Skills use/{name}:{skill-name}format.description: required; shown in plugin manager; max ~1024 chars.version: optional; if omitted, git commit SHA used (every commit = new version). If set, users only receive updates on version bump.author,homepage,repository,license,keywords: optional metadata.
Marketplaces
A marketplace is a directory or git repo containing a .claude-plugin/marketplace.json that lists plugins. Users install plugins from marketplaces.
marketplace.json Schema
source: path relative to marketplace root (./= marketplace root is the plugin,./plugins/name/= subdirectory), or a git URL in known_marketplaces.- Relative paths work for file, git, and directory sources only.
Marketplace Sources (settings.json)
- GitHub: clones to
~/.claude/plugins/marketplaces/{name}/; plugin sources are relative paths into the clone. - Git URL: same as GitHub; use for non-GitHub git hosts.
- Directory: local filesystem path; direct access without cloning.
Skills in Plugins
Skills live in skills/<name>/SKILL.md. Each skill becomes /plugin-name:skill-name.
SKILL.md frontmatter:
Reference files: Store supporting files in references/ subdirectory; include in SKILL.md as ` references/file.md or inline with @./references/file.json `.
Agents in Plugins
Custom agents live in agents/ as markdown files:
Format:
Agents are invoked via the Agent tool using bare name (not namespaced). Plugin agents appear in /agents UI but are addressed by bare name in tool calls.
Hooks
Create hooks.json at plugin root:
Events: PreToolUse (before tool runs), PostToolUse (after tool completes), Stop (session ends). Matcher: regex pattern matching tool names (e.g., Write|Edit|Bash). Command: runs via shell; receives hook input as JSON on stdin. Use ${CLAUDE_PLUGIN_ROOT} to reference plugin directory.
CLI Commands
Skills-Directory Plugins
Plugins in ~/.claude/skills/ auto-load without marketplace install:
MCP Servers in Plugins
Configure MCP servers in .mcp.json at plugin root:
Server starts automatically when plugin is active. Use ${env:VAR} for environment variable substitution.
LSP Servers in Plugins
Configure LSP servers in .lsp.json at plugin root:
Language server binary must be installed on user's machine.
When to Use Plugins vs Standalone Config
| Goal | Use | |
|---|---|---|
| Personal, project-specific skills | Standalone (.claude/skills/) | |
| Share across projects or teams | Plugin + marketplace | |
| Versioned releases and easy updates | Plugin + marketplace | |
| Quick experiments | Standalone or skills-directory plugin |
Publishing to Community Marketplace
- Set
versioninplugin.jsonor rely on git commit SHA. - Host repo with
.claude-plugin/plugin.jsonand components at root. - Submit via claude.ai/settings/plugins/submit or platform.claude.com/plugins/submit.
- Run
claude plugin validatebefore submitting. - Approved plugins pin to commit SHA in `anthropics/claude-plugins-community`.
- Official marketplace (
claude-plugins-official) is curated separately; no application process.
Converting Standalone Config to Plugin
- Create
plugin-name/.claude-plugin/plugin.jsonwith manifest. - Copy
~/.claude/skills/*→plugin-name/skills/; copy~/.claude/commands/*→plugin-name/commands/(legacy). - Convert hooks from
settings.jsontoplugin-name/hooks.json. - Test with
claude --plugin-dir ./plugin-name. - Distribute via marketplace or
.zip.
Security
- Security scanPassed, 100 of 100Pattern checks on the skill's files.
- Model reviewNot runA model review is scheduled for the next rescan.
Quality evaluation
- Task evaluationNot runNo evaluation yet. Run one in Skill Studio.
Source
- SKILL.md in the repositoryCheckingskills/claude-code-plugins/SKILL.md
Popularity
- 7-day trend score
- 0
Not refreshed yet.
Works with
Any agent vskill installs to: 56 targets in all. These 39 have a page on this site.
- Claude Code
- Cursor
- GitHub Copilot
- Windsurf
- Codex
- Gemini CLI
- Cline
- Amp
- Roo Code
- Goose
- Continue
- Kilo Code
- Junie
- Trae
- OpenHands
- Qwen Code
- AI Agent
- Tabnine Chat
- Sourcegraph Cody
- Amazon Q
- Firebase Genkit
- Sweep
- Devin
- Phind
- Mentat
- Claude Desktop
- Aider
- GPT Pilot
- Plandex
- bolt.new
- v0
- Replit Agent
- Anse
- TypingMind
- BetterChatGPT
- LibreChat
- Warp AI
- Pieces
- Fig AI
Embed badge
[](https://verified-skill.com/skills/ucsandman/claude-code-capability-primer/claude-code-plugins)