Awesome-omni-skill skill-manager
Manages Claude Skills lifecycle - creating, updating, maintaining, and versioning project-specific and cross-IDE knowledge bases. Invoke when user wants to create new skills, update existing ones, or sync skill content across tools.
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-manager" ~/.claude/skills/diegosouzapw-awesome-omni-skill-skill-manager-0479f5 && rm -rf "$T"
skills/tools/skill-manager/SKILL.mdSkill Manager - Claude Skills Lifecycle Management
You are an expert in managing Claude Skills, which are project-specific knowledge bases that provide specialized guidance. This skill helps you create, update, maintain, and version skills effectively.
What are Claude Skills?
Claude Skills are markdown-based knowledge modules stored in
.claude/skills/ that:
- Provide domain-specific expertise (frameworks, tools, patterns)
- Are automatically invoked based on trigger descriptions
- Can reference supporting documentation files
- Enable consistent, expert-level guidance across sessions
- Support project-specific best practices and patterns
When to Use This Skill
Invoke this skill when the user:
- Wants to create a new skill from documentation or knowledge
- Needs to update an existing skill with new information
- Asks to maintain or refactor skills for better organization
- Wants to version control skills or track changes
- Needs to validate skill structure and completeness
- Asks about skill best practices or conventions
- Wants to migrate knowledge into skill format
Skill Structure
Required Files
Every skill must have at minimum:
.claude/skills/<skill-name>/ └── SKILL.md # Main skill definition (REQUIRED)
Recommended Files
Well-documented skills should include:
.claude/skills/<skill-name>/ ├── SKILL.md # Main definition with triggers ├── README.md # Documentation about the skill ├── quick-reference.md # Quick lookups and cheat sheets ├── guide.md # Comprehensive deep-dive └── examples.md # Code examples and patterns
SKILL.md Format
The main skill file must follow this structure:
--- name: skill-name description: Clear description that triggers invocation. Mention key terms that should activate this skill. --- # Skill Title - One Line Summary You are an expert in [domain]. This skill provides [purpose]. ## What is [Topic]? Brief introduction to what this skill covers. ## When to Use This Skill Invoke this skill when the user: - Lists specific triggers - Mentions key concepts - Asks about related topics ## Core Concepts ### Main Concept 1 Explanation... ### Main Concept 2 Explanation... ## Common Patterns Practical examples and code templates... ## Best Practices Guidelines and recommendations... ## Instructions for Assistance When helping users with [topic]: 1. Step-by-step guidance approach 2. What to consider 3. How to validate ## Additional Resources References to other skill files or external docs...
Creating a New Skill
Step 1: Identify the Domain
Determine:
- What expertise does this skill provide?
- What triggers should invoke it? (frameworks, tools, patterns, file types)
- What scope - project-specific or general knowledge?
- What audience - beginner, intermediate, or expert?
Step 2: Gather Source Material
Collect:
- Official documentation
- Project conventions and patterns
- Common pitfalls and solutions
- Code examples and templates
- Best practices and anti-patterns
Step 3: Structure the Content
Organize into:
SKILL.md (Main file):
- Clear, concise overview
- Core concepts (2-5 key ideas)
- Common patterns and templates
- Best practices
- When to use guidance
quick-reference.md (Optional):
- Cheat sheets
- Quick lookup tables
- Code templates
- Command references
guide.md (Optional):
- Comprehensive explanations
- Architecture and design
- Advanced topics
- Detailed examples
examples.md (Optional):
- Real-world use cases
- Complete code examples
- Step-by-step tutorials
Step 4: Write Effective Triggers
The
description field is critical - it determines when the skill activates.
Good triggers:
description: Expert in React hooks and state management. Invoke when user asks about useState, useEffect, custom hooks, or React component patterns.
Bad triggers:
description: Helps with React.
Key principles:
- Mention specific terms users will say
- Include framework/tool names
- List key concepts and APIs
- Mention file patterns if relevant
Step 5: Validate and Test
After creating the skill:
- Check structure: Ensure SKILL.md exists with proper frontmatter
- Test triggers: Try sample questions that should invoke it
- Review content: Is it clear, concise, and actionable?
- Check links: Do references to other files work?
- Test examples: Do code snippets run correctly?
Updating Existing Skills
When to Update
Update skills when:
- New versions of tools/frameworks release
- Best practices evolve
- Common issues are discovered
- User feedback reveals gaps
- Project conventions change
Update Process
-
Identify changes:
# Check skill age ls -lah .claude/skills/<skill-name>/ # Review recent framework changes # Check official docs for updates -
Document updates:
- Note what changed (version, features, deprecations)
- Identify affected sections
- Plan content additions/modifications
-
Update content:
- Modify SKILL.md for core changes
- Update examples with new patterns
- Add new best practices
- Deprecate old patterns (but explain why)
-
Validate:
- Test updated code examples
- Verify documentation links
- Check for contradictions
- Test skill invocation
-
Version tracking (optional):
- Add version note to README.md
- Document change history
- Note source documentation versions
Update Template
Add version information to README.md:
## Version History ### v2.0 - 2025-01-09 - Updated for Framework v5.0 - Added new pattern: [pattern name] - Deprecated: [old pattern] (use [new pattern] instead) - Source: Framework v5.0 docs ### v1.0 - 2024-11-08 - Initial skill creation - Source: Framework v4.0 docs
Maintaining Skills
Regular Maintenance Tasks
Monthly:
- Review for outdated information
- Check external documentation links
- Update examples if dependencies changed
Quarterly:
- Compare with official docs for changes
- Review invocation patterns - are they working?
- Gather user feedback
- Consider splitting large skills
Annually:
- Major refactor if needed
- Archive deprecated content
- Consolidate overlapping skills
Skill Quality Checklist
- Clear, specific description with good triggers
- Core concepts are concise (< 5 main topics)
- Examples are tested and working
- Best practices are current
- No contradictions with other skills
- Links to external resources work
- README documents the skill purpose
- Code examples have proper syntax
- Appropriate scope (not too broad/narrow)
Refactoring Large Skills
When a skill grows too large (> 1000 lines), consider:
Option 1: Split by Subtopic
react-hooks/ → react-state-hooks/ SKILL.md SKILL.md (useState, useReducer) (too large) react-effect-hooks/ SKILL.md (useEffect, useLayoutEffect) react-custom-hooks/ SKILL.md (creating custom hooks)
Option 2: Separate by Level
django/ → django-basics/ SKILL.md SKILL.md (getting started) (too comprehensive) django-advanced/ SKILL.md (advanced patterns)
Option 3: Extract Reference Material
api-guide/ → api-guide/ SKILL.md (huge) SKILL.md (concise overview) reference.md (detailed API docs) examples.md (code samples)
Best Practices
Content Guidelines
Do:
- ✅ Use clear, concise language
- ✅ Provide working code examples
- ✅ Include common pitfalls
- ✅ Show both good and bad patterns
- ✅ Link to official documentation
- ✅ Use consistent formatting
- ✅ Test all code examples
- ✅ Keep scope focused
Don't:
- ❌ Copy entire documentation sites
- ❌ Include untested code
- ❌ Make skills too broad
- ❌ Duplicate information across skills
- ❌ Use vague trigger descriptions
- ❌ Include deprecated patterns without context
- ❌ Create overlapping skills
Naming Conventions
Skill directory names:
- Use lowercase with hyphens:
skill-name - Be specific:
nottextualtui-framework - Avoid version numbers:
notdjangodjango-5
File names:
- Always uppercase (required)SKILL.md
- Uppercase (convention)README.md- Other files: lowercase with hyphens
Documentation Standards
Each skill should document:
- Purpose: What expertise does it provide?
- Scope: What's included and excluded?
- Prerequisites: Required knowledge or tools
- Version: What version of tools/frameworks it covers
- Last updated: When was it last reviewed?
- Sources: Where information came from
Converting Documentation to Skills
From Official Docs
Process:
- Identify core concepts (5-10 key topics)
- Extract common patterns and examples
- Note best practices and anti-patterns
- Create concise summaries
- Link to official docs for details
Example:
Official Docs (100 pages) → Skill Structure: ├── Getting Started SKILL.md (core concepts) ├── Core Concepts quick-reference.md (patterns) ├── API Reference guide.md (architecture) ├── Advanced Topics + links to official docs └── Examples
From Internal Knowledge
Process:
- Document team conventions
- Capture tribal knowledge
- Record common solutions
- Include project-specific patterns
- Add context for decisions
Example: Project Patterns Skill
--- name: project-patterns description: Project-specific conventions and patterns for vcr-tui. Invoke when working on this codebase. --- ## Our Conventions ### File Organization [How we structure code...] ### Testing Strategy [Our testing approach...] ### Common Patterns [Patterns we use repeatedly...]
Integration with Other Tools
Skills can be referenced by other tools:
For Documentation
docs/DEVELOPMENT.md:
## Development Guides For detailed guidance, see Claude Skills in `.claude/skills/`: - **Textual Framework**: `.claude/skills/textual/` - TUI development patterns - **Git Hooks**: `.claude/skills/hk/` - Pre-commit hook management - **Project Patterns**: `.claude/skills/project-patterns/` - Our conventions
For Cursor/Copilot
Create
.cursorrules or similar that references skills:
# Project Context This project uses Claude Skills for detailed guidance. See `.claude/skills/` for: - textual: Textual TUI framework patterns - hk: Git hook management When suggesting code, follow patterns documented in these skills.
For CI/CD
Reference skills in CI configuration:
# .github/workflows/validate.yml - name: Validate Skills run: | # Check skill structure python scripts/validate_skills.py
Skill Templates
Minimal Skill Template
--- name: skill-name description: Brief description with trigger keywords --- # Skill Name You are an expert in [topic]. This skill provides [purpose]. ## When to Use This Skill Invoke when the user asks about [triggers]. ## Core Concepts ### Concept 1 [Explanation...] ## Common Patterns [Code examples...] ## Best Practices [Guidelines...]
Comprehensive Skill Template
See
.claude/skills/textual/SKILL.md for a complete example of a well-structured skill with:
- Clear triggers
- Supporting files (quick-reference.md, guide.md)
- Multiple sections with depth
- Code examples and patterns
- Testing guidance
Troubleshooting
Skill Not Invoking
Check:
- Is
in frontmatter lowercase with hyphens?name - Does
include specific trigger words?description - Is the skill in
?.claude/skills/<name>/SKILL.md - Are there typos in the frontmatter YAML?
Fix:
# Verify structure ls -la .claude/skills/<skill-name>/SKILL.md # Check frontmatter format head -10 .claude/skills/<skill-name>/SKILL.md
Overlapping Skills
Problem: Multiple skills trigger for the same query
Solution:
- Make descriptions more specific
- Narrow skill scope
- Split broad skills into focused ones
- Use clear boundaries in descriptions
Outdated Content
Problem: Skill contains deprecated information
Solution:
- Add version tracking to README
- Mark deprecated sections clearly
- Update with current best practices
- Document migration paths
Example: Creating a Skill from Scratch
Scenario: Create a pytest skill for this project
Step 1: Gather information
# Check what testing framework is used grep -r "pytest" . --include="*.toml" --include="*.txt" # Look at existing tests find . -name "test_*.py" | head -5
Step 2: Create structure
mkdir -p .claude/skills/pytest-patterns
Step 3: Write SKILL.md
--- name: pytest-patterns description: Expert in pytest testing patterns and best practices. Invoke when writing tests, using fixtures, or debugging test failures. --- # Pytest Testing Patterns You are an expert in pytest testing for Python applications... [Continue with core concepts, patterns, etc.]
Step 4: Add supporting files
: Common fixture patterns, assertion examplesquick-reference.md
: Real test examples from the projectexamples.md
Step 5: Test
- Ask: "How do I write a pytest fixture?"
- Verify skill is invoked
- Check if guidance is helpful
Instructions for Using This Skill
When helping users manage skills:
- Assess current state: Check existing skills and their quality
- Understand goals: What knowledge needs to be captured?
- Plan structure: Which format best fits the content?
- Create/update systematically: Follow the templates and processes
- Validate thoroughly: Test invocation and content quality
- Document clearly: Explain what was done and why
Always consider:
- Is this the right level of detail?
- Will the triggers work effectively?
- Is the content maintainable long-term?
- Does it integrate with existing skills?
- Is it accessible to the intended audience?
Additional Resources
For examples of well-structured skills, see:
- Comprehensive framework skill.claude/skills/textual/
- Tool-specific skill with detailed reference.claude/skills/hk/
Version Tracking
This skill documents Claude Skills format as of January 2025. The format may evolve with future Claude Code releases.