[Bug] Skills load full content at session start instead of lazy loading

Resolved 💬 3 comments Opened Dec 29, 2025 by byosamah Closed Jan 1, 2026

Bug Description
Title: Skills load full content at session start, not lazily as documented

Expected Behavior:
Per the Skills documentation: "At startup, Claude loads only the name and description of each available Skill" with full SKILL.md content loading only when the skill is activated.

Actual Behavior:
Full skill content appears to load at session start. My 21 skills consume ~38k tokens (19% of 200k context) before any work begins:

pricing-consultant: 4.4k tokens
skill-creator: 4.3k tokens
sora-2: 4.0k tokens
positioning-consultant: 3.7k tokens
veo-video-generator: 2.7k tokens
saas-landing-page-expert: 2.5k tokens
... (21 skills total)

Evidence:
Running /context at fresh session start shows full token counts per skill, not just name/description metadata (~100-200 tokens expected per skill).

Impact:

  • Users with multiple skills lose significant context capacity
  • Encourages deleting useful skills to save context
  • Scales poorly as users add more skills

Suggested Fix:

  1. Implement true lazy loading (only load full SKILL.md when skill is invoked)
  2. Or add config option: disabledSkills: ["skill-name"] in settings.json
  3. Or add per-skill toggle to enable/disable in ~/.claude/skills/*/

Reproduction:

  1. Create 10+ skills in ~/.claude/skills/
  2. Start new Claude Code session
  3. Run /context immediately
  4. Observe full token counts per skill (not just metadata)

Environment Info

  • Platform: darwin
  • Terminal: Apple_Terminal
  • Version: 2.0.76
  • Feedback ID: aa298bd6-35c7-4e0d-b1ff-12b23fadd6ba

Errors

[]

View original on GitHub ↗

This issue has 3 comments on GitHub. Read the full discussion on GitHub ↗