Sharing Skills
TL;DR
- Project skills in
.claude/skillsare shared automatically through Git — anyone who clones the repo gets them - Plugins let you distribute skills across repositories via marketplaces for broader community use
- Enterprise managed settings deploy skills organization-wide with the highest priority, ideal for mandatory standards and compliance
- Subagents don’t automatically see your skills — you must explicitly list skills in a custom agent’s frontmatter
skillsfield - Built-in agents (Explorer, Plan, Verify) can’t access skills at all — only custom subagents defined in
.claude/agentscan
Project Skills: Committing Skills to Your Repository
The simplest sharing method is committing skills directly to your repository.
- Place them in
.claude/skills, and anyone who clones the repo gets those skills automatically — no extra installation needed. - When you push updates, everyone gets them on the next pull.
This approach works well for:
- Team coding standards
- Project-specific workflows
- Skills that reference your codebase structure
The .claude directory contains your agents, hooks, skills, and settings — all version-controlled and shared with the team through normal Git workflows.
Distributing Skills Through Plugins
Plugins are a way to extend Claude Code with custom functionality designed to be shared across teams and projects.
In your plugin project, create a skills directory that follows a similar file structure to the .claude directory — each skill gets its own folder with a SKILL.md file inside. After you distribute your plugin to a marketplace, other users can discover and install it into Claude Code for themselves.
This approach is best when your skills aren’t too project-specific and can be useful to community members.
Enterprise Deployment Through Managed Settings
Administrators can deploy skills organization-wide through managed settings (managed-setting.json).
Enterprise skills take the highest priority — they override personal, project, and plugin skills with the same name.
This is the right choice for mandatory standards, security requirements, compliance workflows, and coding practices that must be consistent across the organization.
Skills and Subagents
Subagents don’t automatically inherit your skills. When you delegate a task to a subagent, it starts with a fresh, clean context.
Important distinctions to understand:
- Built-in agents (like Explorer, Plan, and Verify) can’t access skills at all
- Custom subagents you define can use skills, but only when you explicitly list them
- Skills are loaded when the subagent starts, not on demand like in the main conversation
How to give a subagent skills:
- Make sure the skills exist in your
.claude/skillsdirectory - Create a new subagent or add the
skillsfield to the frontmatter of an existing agent’s markdown file.
You can use the /agents command in Claude Code to create a subagent interactively
Example
Here’s what the frontmatter looks like of a subagent looks like:
---
name: frontend-security-accessibility-reviewer
description: "Use this agent when you need to review frontend code for accessibility..."
tools: Bash, Glob, Grep, Read, WebFetch, WebSearch, Skill...
model: sonnet
color: blue
skills: accessibility-audit, performance-check
---
When you delegate to this subagent, it has both skills loaded and applies them to every review.
This pattern works really well when:
- You want isolated task delegation with specific expertise
- Different subagents need different skills (frontend reviewer vs. backend reviewer)
- You want to enforce standards in delegated work without relying on prompts