A curated collection of Claude Code skills that extend Claude with domain knowledge and automated workflows. Skills are SKILL.md files following the Agent Skills open standard.
Skills teach Claude new capabilities through markdown files with YAML frontmatter:
- Domain knowledge: Project conventions, coding standards, patterns
- Automated workflows: Deployments, code reviews, issue fixing
- Interactive tools: /slash commands for specialized operations
Skills can be invoked manually (/skill-name) or automatically loaded by Claude when relevant.
| Skill | Repository | Description | Version |
|---|---|---|---|
| biz-lens | sidtheone/biz-lens | Research-backed business strategy advisor using MBA frameworks | v1.1.0 |
Submit a PR to add your skill to this registry
Install skills to your system:
# Personal (available in all projects)
git clone https://github.com/your-org/skill-name ~/.claude/skills/skill-name
# Project-specific
git clone https://github.com/your-org/skill-name .claude/skills/skill-name
# Test it
/skill-name arguments-
Scaffold a new skill
# Lean directory (just SKILL.md) ./scripts/new-skill.sh your-skill-name # Or copy the full template cp -r template/ your-skill-name/
-
Edit SKILL.md
- Customize frontmatter (name, description, options)
- Write step-by-step instructions
- Add supporting files if needed
-
Test locally
cp -r your-skill-name/ ~/.claude/skills/ /your-skill-name test-arg -
Publish to GitHub
git init git add . git commit -m "Initial release v1.0.0" gh repo create your-org/skill-name --public git push -u origin main git tag v1.0.0 git push --tags
-
Add to registry Submit a PR updating this README
See CLAUDE.md for comprehensive development guide.
The template/ directory provides a complete starter:
template/
├── SKILL.md # Main skill file with frontmatter
├── reference.md # Detailed docs (loaded on-demand)
├── examples.md # Usage examples (loaded on-demand)
├── scripts/
│ └── example.sh # Executable scripts
└── TEMPLATE_GUIDE.md # Complete usage guide
For a minimal start, use the scripts/new-skill.sh script which creates just a directory with a bare SKILL.md:
./scripts/new-skill.sh your-skill-nameKey features:
- Full frontmatter documentation with all options
- String substitutions (
$ARGUMENTS,${CLAUDE_SESSION_ID}) - Dynamic context injection (
!command``) - Supporting file structure
- Script integration
Study the examples/ directory for working patterns:
Explains code with visual diagrams and analogies. Demonstrates:
- Auto-invocation with good description
- Structured output format
- Teaching Claude how to explain concepts
Fixes GitHub issues following a workflow. Demonstrates:
- Side-effect protection (
disable-model-invocation) - Allowed tools configuration
- Multi-step workflow with verification
- Argument handling
Deep codebase analysis without cluttering context. Demonstrates:
- Forked context (
context: fork) - Research agent (
agent: Explore) - Complex investigation workflows
- Comprehensive reporting
Summarizes pull requests with live data. Demonstrates:
- Dynamic context injection (
!command``) - Integration with
ghCLI - Forked context for large diffs
- Structured analysis output
Project coding conventions (auto-loaded). Demonstrates:
- Background knowledge (
user-invocable: false) - Auto-loading when writing/reviewing code
- Supporting file organization
- Pattern documentation
- One skill, one purpose
- Under 500 lines (split large skills)
- Move reference material to supporting files
- Put complex logic in scripts
The description determines when Claude auto-loads your skill:
# Good
description: Explain code with visual diagrams. Use when user asks "how does this work" or "explain this code"
# Bad
description: Code helper| Skill Type | Frontmatter | Example |
|---|---|---|
| Side effects | disable-model-invocation: true |
Deployments, commits |
| Background knowledge | user-invocable: false |
Coding standards |
| Interactive | (defaults) | Code explanations |
complex-skill/
├── SKILL.md # Entry point
├── reference.md # Detailed docs
├── examples.md # Usage examples
└── scripts/ # Executables
Reference files in SKILL.md so Claude knows when to load them.
cd ~/.claude/skills/
git clone https://github.com/your-org/skill-namecd your-project/
mkdir -p .claude/skills/
git clone https://github.com/your-org/skill-name .claude/skills/skill-namecd ~/.claude/skills/skill-name && git pullmonorepo/
├── .claude/skills/global-skill/ # Available in all packages
└── packages/
├── frontend/.claude/skills/ # Frontend-specific
└── backend/.claude/skills/ # Backend-specific
Claude discovers skills in nested .claude/skills/ directories automatically.
To add your skill to this registry:
- Clear, accurate description for auto-invocation
- Comprehensive README with installation instructions
- Working examples demonstrating key features
- No hardcoded secrets or absolute paths
- Follows template structure
- Tagged release (v1.0.0+)
- Tested with manual and auto-invocation
- Ensure your skill meets all requirements
- Create a stable release with git tag
- Fork this repository
- Update the skills table in README.md:
| skill-name | [your-org/skill-name](https://github.com/your-org/skill-name) | Brief description | v1.0.0 |
- Submit a pull request
Your skill's README should include:
# Skill Name
Brief description of what your skill does.
## Installation
### Personal (all projects)
```bash
git clone https://github.com/your-org/skill-name ~/.claude/skills/skill-namegit clone https://github.com/your-org/skill-name .claude/skills/skill-nameExamples of how to use the skill:
/skill-name argument- Feature 1
- Feature 2
- Feature 3
Document frontmatter options and what they do.
Provide comprehensive examples.
MIT
## Skill Frontmatter Reference
| Field | Type | Default | Description |
|-------|------|---------|-------------|
| `name` | string | directory name | Slash command (lowercase, max 64 chars) |
| `description` | string | none | When to use (critical for auto-invocation) |
| `argument-hint` | string | none | Shown in autocomplete menu |
| `disable-model-invocation` | boolean | false | Prevent Claude from auto-invoking |
| `user-invocable` | boolean | true | Show in `/` menu |
| `allowed-tools` | array | [] | Tools Claude can use without permission |
| `model` | string | inherit | Model to use: `sonnet`, `opus`, `haiku` |
| `context` | enum | normal | Set `fork` for isolated subagent |
| `agent` | string | none | Subagent: `Explore`, `Plan`, `general-purpose` |
| `hooks` | object | {} | Lifecycle hooks scoped to skill |
See [template/SKILL.md](./template/SKILL.md) for complete documentation.
## String Substitutions
Skills support dynamic variables:
| Variable | Value |
|----------|-------|
| `$ARGUMENTS` | All arguments passed to skill |
| `$ARGUMENTS[0]` or `$0` | First argument |
| `$ARGUMENTS[1]` or `$1` | Second argument |
| `${CLAUDE_SESSION_ID}` | Current session ID (for logging) |
| `${CLAUDE_SKILL_DIR}` | Skill directory path (for scripts) |
## Dynamic Context Injection
Inject live command output before Claude sees the skill:
```markdown
## Git Status
!`git status --short`
## Test Results
!`npm test 2>&1 | tail -20`
Commands execute first, output replaces placeholders.
- Development Guide: CLAUDE.md - Comprehensive skill development documentation
- Template Guide: template/TEMPLATE_GUIDE.md - How to use the template
- Official Docs: https://code.claude.com/docs/en/skills.md
- Best Practices: https://code.claude.com/docs/en/best-practices.md
- Agent Skills Standard: https://agentskills.io
We welcome skill submissions! Follow the publishing guidelines above and submit a PR.
For questions or discussions:
- Open an issue for bugs or suggestions
- Submit a PR to improve templates or documentation
- Share your skills even if they're experimental
This repository (templates and examples) is MIT licensed. Individual skills may have their own licenses.