Awesome-omni-skill skill-creator
Guide for creating effective skills. Use when users want to create a new skill or update an existing skill that extends Claude's capabilities with specialized knowledge, workflows, or tool integrations.
git clone https://github.com/diegosouzapw/awesome-omni-skill
T=$(mktemp -d) && git clone --depth=1 https://github.com/diegosouzapw/awesome-omni-skill "$T" && mkdir -p ~/.claude/skills && cp -r "$T/skills/tools/skill-creator-hsiangjenli" ~/.claude/skills/diegosouzapw-awesome-omni-skill-skill-creator-9ecf68 && rm -rf "$T"
skills/tools/skill-creator-hsiangjenli/SKILL.mdSkill Creator
This skill provides guidance for creating effective skills that extend Claude's capabilities.
About Skills
Skills are self-contained packages providing specialized knowledge, workflows, and tools. They transform Claude from general-purpose to domain-specific agent.
Core Principles
1. Concise is Key: Context window is shared resource. Only add what Claude doesn't already know.
2. Set Appropriate Freedom:
- High freedom: Multiple valid approaches, context-dependent decisions
- Medium freedom: Preferred patterns with some variation
- Low freedom: Fragile operations requiring specific sequences
Skill Structure
skill-name/ ├── SKILL.md (required) │ ├── YAML frontmatter (name, description) │ └── Markdown instructions └── Optional Resources ├── scripts/ - Executable code ├── references/ - Documentation for context └── assets/ - Output templates/files └── templates/ - Template files (for skill-creator only)
Creation Workflow
1. Initialize Skill
# Interactive mode (recommended) uv run scripts/init_skill.py my-skill-name # Non-interactive mode uv run scripts/init_skill.py my-skill-name --non-interactive # Custom path uv run scripts/init_skill.py my-skill-name --path ./custom/location
2. Edit SKILL.md
Frontmatter Requirements:
: skill-name (hyphen-case, lowercase)name
: What it does + when to use it (this triggers skill selection)description
Body Guidelines:
- Keep under 500 lines
- Use imperative form
- Include essential workflows only
- Reference bundled resources clearly
3. Add Resources (Optional)
Scripts (
scripts/): Executable code for deterministic tasks
Each generated skill includes dependency management:
- Defines required packagespyproject.toml
- Checks and installs dependenciesscripts/check_dependencies.py
#!/usr/bin/env python3 def process_file(input_path): # Implementation here pass
Dependency Management Workflow:
# First time or when dependencies change uv run scripts/check_dependencies.py --install # Before using any scripts uv run scripts/check_dependencies.py # Run scripts uv run scripts/helper.py
References (
references/): Detailed documentation loaded on-demand
# API Reference ## Endpoints - GET /users - List users - POST /users - Create user
Assets (
assets/): Templates, images, boilerplate for output
- PowerPoint templates
- HTML boilerplate directories
- Configuration files
(skill-creator only) - Template files for skill generation:templates/
- Main SKILL.md templateskill.md.template
- Python script templatehelper_script.py.template
- Reference documentation templatereference.md.template
- Asset directory templateasset_readme.md.template
- Python project configurationpyproject.toml.template
- Dependency management scriptcheck_dependencies.py.template
4. Package Skill
# Package to current directory uv run scripts/package_skill.py path/to/my-skill # Package to specific output directory uv run scripts/package_skill.py path/to/my-skill ./dist
Best Practices
Progressive Disclosure
- Metadata (name/description) - Always loaded (~100 words)
- SKILL.md body - When skill triggers (<5k words)
- Bundled resources - As needed by Claude
Content Organization
- Keep core workflow in SKILL.md
- Move detailed examples to references/
- Split by domain for multi-domain skills:
bigquery-skill/ ├── SKILL.md (overview + navigation) └── references/ ├── finance.md ├── sales.md └── product.md
What NOT to Include
- README.md files
- Installation guides
- Auxiliary documentation
- Only include files Claude needs to do the job
Note:
- Python skills: Dependency management (pyproject.toml + check_dependencies.py) is automatically included for seamless setup
- Other language skills: Include appropriate config files (package.json, Gemfile, go.mod, etc.) and setup instructions in SKILL.md to guide Claude on dependency management
Using Skills with Dependencies
When Claude encounters a skill with scripts in any programming language:
General Dependency Management Principles
Always check for dependency files first:
(Python with uv/pip)pyproject.toml
(Node.js/JavaScript)package.json
(Ruby)Gemfile
(Go)go.mod
(Rust)Cargo.toml
(Python legacy)requirements.txt
(PHP)composer.json
/pom.xml
(Java/JVM)build.gradle
Common dependency setup patterns:
# Python (modern) uv run scripts/check_dependencies.py --install uv run scripts/script.py # Node.js npm install # or yarn install, pnpm install npm run script # Ruby bundle install bundle exec ruby script.rb # Go go mod tidy go run script.go # Rust cargo build cargo run --bin script
1. Python Skills (Automated)
# Always run this before using Python skill scripts uv run scripts/check_dependencies.py --install
2. Other Language Skills (Manual Check)
For non-Python skills, check the skill directory for:
- Look for dependency files (package.json, Gemfile, go.mod, etc.)
- Check SKILL.md for setup instructions
- Run standard dependency commands for that language
- Follow any custom setup scripts provided
3. Standard Skill Usage Pattern
# Step 1: Navigate to skill directory cd path/to/skill # Step 2: Check for and install dependencies # (Language-specific command based on what files are present) # Step 3: Use skill scripts/tools # (Follow instructions in SKILL.md)
3. Troubleshooting Dependencies
If dependency issues occur:
# Clean and reinstall rm -rf .venv uv sync --reinstall # Check specific package versions uv tree
Validation
# Validate skill structure uv run scripts/quick_validate.py path/to/skill
Validates:
- YAML frontmatter format
- Required fields (name, description)
- Naming conventions
- File structure
Common Patterns
Task-Based: Different operations
## Quick Start ## Merge PDFs ## Split PDFs ## Extract Text
Workflow-Based: Sequential processes
## Overview ## Step 1: Preparation ## Step 2: Processing ## Step 3: Output
Reference-Based: Standards/specifications
## Guidelines ## Color Specifications ## Typography Rules ## Usage Examples
Examples
See existing skills for patterns:
- python: Development workflow with uv
- slidev: Presentation creation
- code-styleguide: Coding standards
Start simple, iterate based on actual usage.