evolving-skill-creator
Guide for creating evolving skills - detailed workflow plans that capture what you'll do, what tools you'll create, and learnings from execution. Use this when starting a new task that could benefit from a reusable workflow.
Install
mkdir -p .claude/skills/evolving-skill-creator && curl -L -o skill.zip "https://mcp.directory/api/skills/download/7474" && unzip -o skill.zip -d .claude/skills/evolving-skill-creator && rm skill.zipInstalls to .claude/skills/evolving-skill-creator
About this skill
Evolving Skill Creator
Create evolving skills - detailed workflow plans that become reusable through iteration.
What is an Evolving Skill?
An evolving skill is a workflow plan that:
- Documents specific steps to accomplish a goal
- Lists Python scripts you'll create as reusable tools
- Captures learnings after execution for future improvement
Unlike static skills, evolving skills are refined through use.
Directory Structure
tasks/evolving_skill/
├── SKILL.md # Your workflow plan
└── scripts/ # Python tools you create during execution
├── scrape_data.py
└── generate_output.py
SKILL.md Format
IMPORTANT: YAML Frontmatter is Required
Every evolving skill MUST start with YAML frontmatter containing name and description. These fields are critical for skill discovery - they determine how the skill is identified when loaded in future sessions.
---
name: descriptive-skill-name # REQUIRED - used for identification
description: Clear explanation of what this workflow does and when to use it # REQUIRED - used for discovery
---
# Task Name
## Overview
Brief description of the problem this skill solves.
## Workflow
Detailed numbered steps:
1. First step - be specific
2. Second step - include commands/tools to use
3. ...
## Tools to Create
Python scripts you'll write. Document BEFORE writing them:
### scripts/example_tool.py
- **Purpose**: What it does
- **Inputs**: What it takes (args, files, etc.)
- **Outputs**: What it produces
- **Dependencies**: Required packages
## Tools to Use
(Discover what's available, list ones you'll use)
- servers/name: MCP server tools
- custom_tools/name: Python tool implementations
## Skills
- skill_name: how it will help
## Packages
- package_name (pip install package_name)
## Expected Outputs
- Files this workflow produces
- Formats and locations
## Learnings
(Add after execution)
### What Worked Well
- ...
### What Didn't Work
- ...
### Tips for Future Use
- ...
Tools to Create Section
This is the key differentiator. When your workflow involves writing Python scripts, document them upfront:
## Tools to Create
### scripts/fetch_artist_data.py
- **Purpose**: Crawl Wikipedia and extract artist biographical data
- **Inputs**: artist_name (str), output_path (str)
- **Outputs**: JSON file with structured bio data
- **Dependencies**: crawl4ai, json
### scripts/build_site.py
- **Purpose**: Generate static HTML from artist data
- **Inputs**: data_path (str), theme (str), output_dir (str)
- **Outputs**: Complete website in output_dir/
- **Dependencies**: jinja2
After execution, the actual scripts live in scripts/ and can be reused.
Creating an Evolving Skill
- Create directory:
mkdir -p tasks/evolving_skill - Write SKILL.md with proper YAML frontmatter first:
name: Use a descriptive, reusable name (e.g.,artist-website-builder, notbob-dylan-site)description: Explain what the workflow does and when to use it
- Execute workflow following your plan
- Create scripts as documented in Tools to Create
- Update SKILL.md with Learnings after completion
Naming Guidelines
Choose names that describe the type of task, not the specific instance:
- Good:
artist-website-builder,data-scraper-to-static-site,pdf-report-generator - Bad:
bob-dylan-project,session-12345,my-task
The name should make it clear what the skill does when discovered in future sessions.
Updating After Execution
After completing your work:
- Refine Workflow - Update steps based on what actually worked
- Move scripts - Ensure working scripts are in
scripts/ - Add Learnings - Document what worked, what didn't, tips
Example: Complete Evolving Skill
---
name: artist-website-builder
description: Build static biographical websites for artists by scraping public sources and generating themed HTML.
---
# Artist Website Builder
## Overview
Create professional artist websites by gathering biographical data and generating themed static HTML.
## Workflow
1. Research artist - gather name variations, active years
2. Scrape data using scripts/fetch_artist_data.py
3. Review and clean extracted data
4. Generate site using scripts/build_site.py with "minimalist-dark" theme
5. Review in browser, check mobile responsiveness
6. Iterate on styling if needed
## Tools to Create
### scripts/fetch_artist_data.py
- **Purpose**: Crawl Wikipedia and extract artist biographical data
- **Inputs**: artist_name (str)
- **Outputs**: artist_data.json
- **Dependencies**: crawl4ai
### scripts/build_site.py
- **Purpose**: Generate static HTML from artist data
- **Inputs**: artist_data.json, theme_name
- **Outputs**: Complete website in output/
- **Dependencies**: jinja2
## Tools to Use
- servers/context7: fetching crawl4ai and jinja2 documentation
- servers/browser: capturing site previews for review
- custom_tools/image_optimizer: compressing generated assets
## Skills
- web-scraping-patterns: structuring the crawl4ai approach
## Packages
- crawl4ai (pip install crawl4ai)
- jinja2 (pip install jinja2)
## Expected Outputs
- output/index.html
- output/discography.html
- output/assets/
## Learnings
### What Worked Well
- Wikipedia infoboxes have consistent structure
- crawl4ai async mode is 3x faster than sync
- "minimalist-dark" theme works best for musicians
### What Didn't Work
- AllMusic requires JS rendering - use Discogs API instead
- Initial theme had poor mobile layout
### Tips for Future Use
- Always check robots.txt before scraping
- Cache scraped data - re-running is slow
- Test on mobile early
Key Principles
- Be specific - Workflow steps should be actionable, not vague
- Document tools upfront - Plan scripts before writing them
- Test like a user - Verify artifacts through interaction, not just observation (click buttons, play games, navigate pages, run with edge cases, etc)
- Update with learnings - The skill improves through use
- Keep scripts reusable - Design tools to work in similar future tasks
More by massgen
View all skills by massgen →You might also like
flutter-development
aj-geddes
Build beautiful cross-platform mobile apps with Flutter and Dart. Covers widgets, state management with Provider/BLoC, navigation, API integration, and material design.
drawio-diagrams-enhanced
jgtolentino
Create professional draw.io (diagrams.net) diagrams in XML format (.drawio files) with integrated PMP/PMBOK methodologies, extensive visual asset libraries, and industry-standard professional templates. Use this skill when users ask to create flowcharts, swimlane diagrams, cross-functional flowcharts, org charts, network diagrams, UML diagrams, BPMN, project management diagrams (WBS, Gantt, PERT, RACI), risk matrices, stakeholder maps, or any other visual diagram in draw.io format. This skill includes access to custom shape libraries for icons, clipart, and professional symbols.
ui-ux-pro-max
nextlevelbuilder
"UI/UX design intelligence. 50 styles, 21 palettes, 50 font pairings, 20 charts, 8 stacks (React, Next.js, Vue, Svelte, SwiftUI, React Native, Flutter, Tailwind). Actions: plan, build, create, design, implement, review, fix, improve, optimize, enhance, refactor, check UI/UX code. Projects: website, landing page, dashboard, admin panel, e-commerce, SaaS, portfolio, blog, mobile app, .html, .tsx, .vue, .svelte. Elements: button, modal, navbar, sidebar, card, table, form, chart. Styles: glassmorphism, claymorphism, minimalism, brutalism, neumorphism, bento grid, dark mode, responsive, skeuomorphism, flat design. Topics: color palette, accessibility, animation, layout, typography, font pairing, spacing, hover, shadow, gradient."
godot
bfollington
This skill should be used when working on Godot Engine projects. It provides specialized knowledge of Godot's file formats (.gd, .tscn, .tres), architecture patterns (component-based, signal-driven, resource-based), common pitfalls, validation tools, code templates, and CLI workflows. The `godot` command is available for running the game, validating scripts, importing resources, and exporting builds. Use this skill for tasks involving Godot game development, debugging scene/resource files, implementing game systems, or creating new Godot components.
nano-banana-pro
garg-aayush
Generate and edit images using Google's Nano Banana Pro (Gemini 3 Pro Image) API. Use when the user asks to generate, create, edit, modify, change, alter, or update images. Also use when user references an existing image file and asks to modify it in any way (e.g., "modify this image", "change the background", "replace X with Y"). Supports both text-to-image generation and image-to-image editing with configurable resolution (1K default, 2K, or 4K for high resolution). DO NOT read the image file first - use this skill directly with the --input-image parameter.
fastapi-templates
wshobson
Create production-ready FastAPI projects with async patterns, dependency injection, and comprehensive error handling. Use when building new FastAPI applications or setting up backend API projects.
Related MCP Servers
Browse all serversDebuggAI enables zero-config end to end testing for web applications, offering secure tunnels, easy setup, and detailed
Agile Planner MCP Server — AI project management tool and agile backlog generator offering automated backlog creation an
Uno Platform — Documentation and prompts for building cross-platform .NET apps with a single codebase. Get guides, sampl
Desktop Commander MCP unifies code management with advanced source control, git, and svn support—streamlining developmen
Structured spec-driven development workflow for AI-assisted software development. Creates detailed specifications before
Boost Postgres performance with Postgres MCP Pro—AI-driven index tuning, health checks, and safe, intelligent SQL optimi
Stay ahead of the MCP ecosystem
Get weekly updates on new skills and servers.