Feature Request: Global Skills for Sub-agents
Feature Request: Global Skills for Sub-agents
Summary
Skills should have an option to be automatically inherited by all sub-agents, similar to how CLAUDE.md is inherited. Currently, skills must be explicitly specified in each sub-agent's frontmatter, which doesn't scale for universal best practices.
Problem
When you encode a best practice or coding standard as a skill, you want it applied universally across:
- Main agent ✅ (works today via auto-discovery)
- Built-in sub-agents (Explore, Plan, general-purpose) ❌
- Custom sub-agents ❌ (requires explicit
skills:in each definition) - Plugin sub-agents ❌
Current Workaround
Put everything in CLAUDE.md, which:
- Becomes bloated over time
- Loses modularity of skills
- Can't be versioned/shared as easily
- Mixes project-specific info with universal practices
Real-World Scenario
- Team discovers "always use for-loops over forEach" improves code quality
- They create
skills/coding-standards/SKILL.mdwith this and other practices - Main agent learns it ✅
- Sub-agent spawned for code review doesn't know it ❌
- Team must update every sub-agent definition manually
- Built-in agents (Explore, general-purpose) can never learn it ❌
Proposed Solutions
Option A: Global Skills Setting
// ~/.claude/settings.json or .claude/settings.json
{
"globalSkills": ["coding-standards", "best-practices", "security-rules"]
}
These skills would be injected into ALL agent contexts (main + sub-agents).
Option B: Skill-Level Frontmatter
---
name: coding-standards
global: true
---
# Coding Standards
Always use for-loops over forEach...
Skills marked global: true are auto-inherited by all sub-agents.
Option C: Inheritance Flag in Sub-agent Config
---
name: my-agent
inheritSkills: true # Inherit all skills from parent context
skills:
- additional-skill # Plus any extras
---
Option D: Skill Tiers
# In skill frontmatter
---
name: coding-standards
tier: universal # universal | project | task
---
universal- Always injected into all agentsproject- Injected into main agent, available for sub-agentstask- Only when explicitly requested
Recommendation
Option A (Global Skills Setting) is the simplest and most flexible:
- Doesn't require modifying existing skills
- Works at user-level (
~/.claude/) and project-level (.claude/) - Clear precedence: project settings override user settings
- Easy to understand and implement
Impact
This would make skills significantly more valuable by:
- Enabling universal coding standards across all agents
- Reducing maintenance burden (no manual sub-agent updates)
- Allowing teams to share best practices that apply everywhere
- Making the skills system more practical for real-world use
Current Documentation Reference
From Create custom subagents:
skills | No | Skills to load into the subagent's context at startup. The full skill content is injected, not just made available for invocation. Subagents don't inherit skills from the parent conversation
This explicit statement confirms the current limitation.
---
Tested with: Claude Code 2.1.12
Reproducible: Yes - created canary skill, spawned sub-agent, confirmed skill content not present in sub-agent context.
This issue has 2 comments on GitHub. Read the full discussion on GitHub ↗