skill-creator-uv
Skill 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:
name: skill-name (hyphen-case, lowercase)description: What it does + when to use it (this triggers skill selection)
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:
pyproject.toml- Defines required packagesscripts/check_dependencies.py- Checks and installs dependencies
#!/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
templates/(skill-creator only) - Template files for skill generation:skill.md.template- Main SKILL.md templatehelper_script.py.template- Python script templatereference.md.template- Reference documentation templateasset_readme.md.template- Asset directory templatepyproject.toml.template- Python project configurationcheck_dependencies.py.template- Dependency management script
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:
pyproject.toml(Python with uv/pip)package.json(Node.js/JavaScript)Gemfile(Ruby)go.mod(Go)Cargo.toml(Rust)requirements.txt(Python legacy)composer.json(PHP)pom.xml/build.gradle(Java/JVM)
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.
More from hsiangjenli/skills
tech-slide
Create educational and technical presentation slides with structured layouts including covers, table of contents, section dividers, and key takeaways. Use when building technical tutorials, workshops, or educational content with Slidev.
17code-styleguide
Universal code style guidelines and principles for writing clean, maintainable code in any programming language. Use when writing or reviewing code, refactoring existing code, conducting code reviews, or establishing coding standards. Focuses on abstraction, KISS principles, SOLID principles, and avoiding over-engineering.
12skill-creator
Create new skills, modify and improve existing skills, and measure skill performance. Use when users want to create a skill from scratch, edit, or optimize an existing skill, run evals to test a skill, benchmark skill performance with variance analysis, or optimize a skill's description for better triggering accuracy.
9python
Modern Python development workflow where ALL Python execution goes through uv run — never call python, pip, or pytest directly. Use this skill whenever the user writes, runs, formats, tests, or packages Python code, sets up a Python project, or asks how to execute any Python script or command. Always enforce uv run for execution and uv add/remove for dependency management.
8slidev-theme-neversink
Create and present web-based slides for developers using Markdown, Vue components, code highlighting, animations, and interactive features with the Neversink theme. Use for technical presentations, academic talks, conference presentations, or educational materials when users mention Slidev, Neversink theme, web presentations, or creating slides with code examples and animations.
7slidev
Create and present web-based slides for developers using Markdown, Vue components, code highlighting, animations, and interactive features. Use when building technical presentations, conference talks, or teaching materials.
3