add-plugin

star 207

Install a Claude Code plugin and register it in settings.json so the full team can replicate the install. Use this whenever adding a new plugin to the project — it keeps settings.json in sync with what is actually installed.

bdfinst By bdfinst schedule Updated 6/6/2026

name: add-plugin description: >- Install a Claude Code plugin and register it in settings.json so the full team can replicate the install. Use this whenever adding a new plugin to the project — it keeps settings.json in sync with what is actually installed. argument-hint: >- <name@marketplace> [--repo <owner/repo>] user-invocable: true allowed-tools: Read, Edit, Bash

Add Plugin

Role: implementation. This skill installs a Claude Code plugin and adds it to .claude/settings.json so the project's plugin set is reproducible.

You have been invoked with the /add-plugin skill.

Implementation constraints

  1. Always update settings.json. Installing without registering defeats the purpose — the whole point is reproducibility.
  2. Derive marketplace from the identifier. The name@marketplace format encodes both; never ask the user to repeat information already in the argument.
  3. Do not duplicate entries. Check settings.json before adding; if the plugin is already registered, report it and stop.
  4. Be concise. Report only the outcome — no narration of each step.

Parse Arguments

Arguments: $ARGUMENTS

Required: plugin identifier ($0) in name@marketplace format — e.g. skill-creator@claude-plugins-official or refactoring@refactoring.

Optional:

  • --repo <owner/repo>: GitHub repository to register as the marketplace source before installing (e.g. elifiner/refactoring). Required for plugins not on an official marketplace.

Steps

1. Parse arguments

Extract:

  • NAME — the part before @ in $0
  • MARKETPLACE — the part after @ in $0
  • REPO — value of --repo, or empty string if not provided

2. Check for existing registration

Read .claude/settings.json. If enabledPlugins already contains "<NAME>@<MARKETPLACE>": true, report:

<NAME>@<MARKETPLACE> is already registered in settings.json. Nothing to do.

and stop.

3. Register marketplace (if --repo provided)

If REPO is non-empty, run:

claude plugin marketplace add <REPO>

If this fails, report the error and stop.

4. Install the plugin

Run:

claude plugin install <NAME>@<MARKETPLACE>

If this fails, report the error and stop — do not update settings.json for a plugin that did not install successfully.

5. Add to settings.json

Add to the enabledPlugins object in .claude/settings.json:

"<NAME>@<MARKETPLACE>": true

If a --repo was provided, also add to extraKnownMarketplaces:

"<MARKETPLACE>": {
  "source": {
    "source": "github",
    "repo": "<REPO>"
  }
}

6. Report

Installed:  <NAME>@<MARKETPLACE>
Repo:       <REPO or "official marketplace">
settings.json: updated
Install via CLI
npx skills add https://github.com/bdfinst/agentic-dev-team --skill add-plugin
Repository Details
star Stars 207
call_split Forks 27
navigation Branch main
article Path SKILL.md
More from Creator