Core ConceptsAuto-Loading Skills

Auto-Loading Skills

Coding standards that load automatically based on your tech stack.

How It Works

  1. Your project CLAUDE.md declares a tech stack:

    ## Tech Stack
     
    - Python, FastAPI
  2. Claude matches this to available skills:

    Tech Stack: Python, FastAPI
    Skill: standards-python (applies_to: [python, fastapi, django])
    → Match! Loading Python standards.
  3. Standards are applied when writing code.

Available Skills

SkillLoads for
standards-pythonpython, fastapi, django, flask, pytest, pydantic, sqlalchemy, celery, poetry, asyncio, aiohttp, httpx
standards-typescripttypescript, nodejs, express, nestjs, nextjs, react, vue, angular, deno, bun, zod
standards-javascriptjavascript, nodejs, express, fastify, hapi, npm, yarn, pnpm, bun, deno, vitest, jest, mocha
standards-shellbash, sh, shell, zsh, shellcheck, bats

Task-Based Loading

Even if not in your Tech Stack, skills load when needed:

Project Tech Stack: Python

User: Write me a deployment script
Claude: [Loads standards-shell for this .sh file]

Skill Structure

Skills live in ~/.claude/skills/:

~/.claude/skills/
├── standards-python/
│   └── SKILL.md
├── standards-typescript/
│   └── SKILL.md
└── standards-shell/
    └── SKILL.md

Each SKILL.md has frontmatter:

---
name: standards-python
description: Python coding standards
type: context
applies_to: [python, fastapi, django, flask, pytest, pydantic, sqlalchemy, celery, poetry, asyncio, aiohttp, httpx]
---
 
# Python Coding Standards
 
## Naming Conventions
...

Custom Skills Override

Your custom skills in ~/.claude/custom/skills/ override built-in ones:

Built-in: ~/.claude/skills/standards-python/
Custom:   ~/.claude/custom/skills/standards-python/

→ Custom wins

This lets teams enforce their own standards.