name: managing-local-skills description: >- Manages Claude Code skills from plugin marketplaces using the local-skills CLI. Use when the user wants to add, update, remove, list, or inspect skills from a marketplace, or when managing the project's .claude/skills/ directory with version-tracked skills. Triggers on "install a skill", "add skill from marketplace", "update skills", "list available skills", "remove skill", or "local-skills".
Managing Skills with local-skills CLI
local-skills is a CLI tool for extracting and managing Claude Code skills from plugin marketplaces. It installs skills into .claude/skills/ with version tracking, modification detection, and update management.
Prerequisites
The tool must be installed from npm before use:
npm install -g local-skills
Or you can install per-project:
npm install --save-dev local-skills
Verify installation:
local-skills --help
Commands
Add a skill
local-skills add <specifier>
The specifier format is <plugin>@<marketplace>/<skill>[:<version>]:
| Part | Description |
|---|---|
plugin |
Plugin name in the marketplace |
marketplace |
GitHub owner/repo or full git URL |
skill |
Skill name (or * for all) |
version |
Optional git ref (tag, branch) |
Examples:
# Add a single skill from a GitHub marketplace
local-skills add superpowers@anthropics/claude-code/tdd
# Pinned to a specific tag
local-skills add superpowers@anthropics/claude-code/tdd:v2.0
# All skills from a plugin
local-skills add superpowers@anthropics/claude-code/*
# From a full git URL
local-skills add my-plugin@https://gitlab.com/team/repo.git/my-skill
List skills
local-skills ls [source]
Options:
--long, -l— Show descriptions--installed— Only installed skills--not-installed— Only non-installed skills
Examples:
# List all installed skills
local-skills ls --installed
# List skills from a remote marketplace with descriptions
local-skills ls anthropics/claude-code --long
# List skills not yet installed from a marketplace
local-skills ls anthropics/claude-code --not-installed
Show skill details
local-skills info <skill>
Displays source, version, and content information for an installed skill.
Update a skill
local-skills update <skill-name>
Options:
--force, -f— Overwrite locally modified files
Update behavior:
- Skills pinned to a specific commit SHA (40-char hex) are skipped automatically
- If skill files were modified locally, update is refused unless
--forceis passed - If the state file is missing, modification check is skipped
Remove a skill
local-skills remove <skill-name>
Removes the skill directory from .claude/skills/ and cleans up tracking files.
Tracked Files
Both files should be committed to version control:
.claude/local-skills.json— Manifest declaring what skills are installed and from where (source, ref, SHA).claude/local-skills-state.json— Content hashes for installed skill files, used to detect local modifications
How It Works
- Parses the specifier to identify the plugin, marketplace, skill, and optional version
- Shallow-clones the marketplace git repo
- Reads
.claude-plugin/marketplace.jsonto find the plugin - Copies the skill directory to
.claude/skills/<skill-name>/ - Records the source, ref, and commit SHA in the manifest
- Computes a content hash and stores it in the state file
Workflow Guidance
When a user asks to add skills from a marketplace:
- Check if
local-skillsis installed:local-skills --help - If not installed, install it:
npm install -g local-skills - If the user knows the marketplace, use
local-skills ls <marketplace> --longto show available skills - Use
local-skills addwith the appropriate specifier - Verify installation with
local-skills ls --installed
When a user asks to update skills:
- Check current state:
local-skills ls --installed - Run
local-skills update <skill-name>for each skill - If update fails due to local modifications, inform the user and suggest
--forceonly if they confirm
When a user asks about available skills:
- Use
local-skills ls <marketplace> --longto browse a marketplace - Use
local-skills info <skill>for details on an installed skill