Overview
A plugin is a unit of distribution that bundles extensions for an AI coding agent — custom commands, agent definitions, skills, hooks, and MCP configuration — into a single installable package. Instead of copying individual configuration files between machines, a team member installs the plugin once and gets the same working setup. The mechanism is not specific to one product. This page treats the plugin as a general pattern — packaging and distributing agent extensions — and shows each tool’s concrete directory layout in Core components. The scope of a plugin is packaging and distribution. What each bundled extension does is covered on its own page: Skills for reusable workflow units and MCP for connecting agents to external systems. This page explains why plugins matter, what a plugin consists of, how to roll one out, and what to consider when operating plugins as a team.Why plugins matter
Agent configuration tends to stay personal. Custom commands, skills, and MCP settings accumulate on each developer’s machine, and a workflow that works well for one person is never shared with other developers’ machines. With documentation-based sharing — “copy these files into your settings” — each copy is edited independently, and the versions quietly diverge. A plugin turns that personal setup into a managed artifact with a name, a version, and a distribution channel. The gains show up in three places:- Standardization. Everyone who installs the plugin runs the same commands, the same review procedures, and the same conventions, so the practice itself — not just the code — becomes shared across the team.
- One-step onboarding. A new member installs one plugin instead of assembling settings file by file, and reaches the team’s standard environment on day one.
- Maintainable updates. Improvements are made once, in the plugin repository, and reach every installation through an update — instead of being re-announced and re-copied by hand.
Core components
A plugin is a directory containing a manifest and any combination of five extension types. None of them is mandatory — a plugin can ship a single command — but the value grows when the extensions that make up one workflow travel together.
The concrete layout differs by tool, but the shape is the same everywhere: a
manifest that identifies the plugin, plus files and directories for the
bundled extensions. The repository that hosts the plugins additionally holds
a catalog file (
marketplace.json), whose contents are covered in the
Marketplace section below.
Marketplace
A marketplace is the distribution side of the plugin model: a catalog that lists one or more plugins, so clients can discover and install them by name. In most tools the catalog is a file in an ordinary Git repository, and one repository can host many plugins. The catalog file lists each plugin as an entry: its name, thesource it is
fetched from, and metadata such as a description or version. The exact schema
differs by tool, but the role is the same — clients read this one file to
know what the marketplace offers:
Adoption process
Rolling out a plugin works best as a staged process. The stages move a workflow from one person’s machine to the organization, validating it at each step.1
Prove the workflow individually
Start from commands and skills that already work in daily use. A plugin
multiplies whatever it contains, so package procedures that have earned
repetition — not ideas that have never run.
2
Package it as a plugin
Move the proven pieces into the plugin directory structure and write the
manifest. Remove machine-specific paths and personal assumptions so the
plugin runs on any member’s environment.
3
Publish to a marketplace
Create or reuse a marketplace repository, add the plugin to the catalog,
and have a first group of users install it. Their friction points — unclear
names, missing prerequisites — are the review feedback for this stage.
4
Roll out and iterate
Announce the plugin to the wider team and treat it as a product:
collect feedback through issues and pull requests on the plugin
repository, and ship improvements as versioned updates.
Running plugins from CI
A plugin is not limited to interactive sessions. CI can install the same plugin and invoke its skills, which applies the team’s standard procedures — reviews, checks, report generation — automatically and on schedule, including to code no one is actively touching. For example, a GitHub Actions workflow can fetch the marketplace repository, install the plugin, and invoke its skill on every pull request:.github/workflows/plugin-review.yml
Operational considerations
Once a plugin is shared infrastructure, three concerns dominate its operation: how updates propagate, who contributes improvements, and who reviews what it can do.Versioning and updates
A plugin’s version lives in its manifest, and each release should change it deliberately. Semantic versioning gives installers a signal for how safe an update is, and a short changelog tells them what changed and why. Distribution follows the repository: pushing to the marketplace’s default branch makes a release available, and installations pick it up when they update. Two habits keep this reliable:- Encourage regular updates, so installations do not silently fall behind the team standard the plugin exists to maintain.
- Announce breaking changes — renamed commands, changed output formats — before shipping them, because installed plugins are part of other people’s daily workflow.
Open contribution and ownership
Run the marketplace as a repository every member can contribute to, not just install from. Installation is one command, and because the marketplace is an ordinary repository, adding a new skill or improving an existing one is an ordinary pull request. Open contribution changes who owns the standard. When only its introducer can change a plugin, every improvement waits on one person; when anyone can, improving the shared workflow becomes part of everyone’s work. A marketplace operated this way keeps receiving improvements even in periods when the person who introduced it is not contributing. This is also why plugins work as an enablement mechanism. The role of whoever drives AI adoption in an organization is not to push usage case by case, but to build mechanisms through which usage spreads on its own. A plugin marketplace that every member can install from and contribute to is such a mechanism.Trust and review
Installing a plugin hands it real capability: hooks execute scripts, MCP configuration connects external servers, and commands direct the agent. Treat a plugin like any other dependency with code-execution rights. What that capability can be turned into, and how to bound it, is covered in Security.- Install only from marketplaces the team controls or explicitly trusts.
- Review what a plugin bundles — especially hooks and MCP configuration — before adding it to the catalog, and re-review on updates.
- Keep each bundled skill’s tool permissions minimal, as described in Skills, so the plugin’s total surface stays legible.
A plugin distributes a workflow but does not design it. See
Agentic Workflow for how to structure the delegation
the plugin packages, and Vibe Coding for the
collaboration practices underneath.
Related pages
Skills
Package a single workflow as a reusable unit the agent loads on demand —
the most common content of a plugin.
MCP
Connect agents to external data sources and tools through an open
standard, configured and distributed via plugins.
Agentic Workflow
Design the delegation model — planning, implementation, verification —
that plugins standardize across a team.
Security
What to review before installing a plugin, and how permission settings are
kept consistent once distributed.