Skip to main content

Install

Install asks first: a plugin’s hooks, tool servers and language servers run commands on this machine as you.

What a plugin holds

${CLAUDE_PLUGIN_ROOT} in any of those files is the plugin’s own directory. A plugin’s skill or agent sits under your own: your file wins a name, the project’s wins both. A plugin’s tool server with the same name as one in your config is not mounted.

Where things live

Every enabled plugin is on the session transcript: name, marketplace, version, commit, and what it brought.

A marketplace

A git repository or a directory with .claude-plugin/marketplace.json:
A source is a path inside the marketplace, or a github or git repository with an optional path and ref.

Write one

Put the parts in the layout above and add the directory to [plugins] dirs while you work on it. When it is ready, put it in a marketplace repository and add an entry. See Skills, Sub-agents, Hooks, MCP servers, Language servers.