skill-gen

Generates properly structured Claude Code skills from user requirements.

Safety Notice

This listing is imported from skills.sh public index metadata. Review upstream SKILL.md and repository scripts before running.

Copy this and send it to your AI assistant to learn

Install skill "skill-gen" with this command: npx skills add htlin222/dotfiles/htlin222-dotfiles-skill-gen

Skill Generator

Generates properly structured Claude Code skills from user requirements.

Quick Start

To create a new skill, gather from the user:

  • What should this skill do?

  • A short name (e.g., processing-pdfs , testing-code )

  • When should Claude use it?

  • Does it need scripts or just instructions?

Workflow

Step 1: Gather Requirements

  • Purpose: What does the skill do?

  • Triggers: When should it activate? (keywords, scenarios)

  • Complexity: Instructions-only, or needs scripts/references?

  • Freedom level: Rigid (exact steps) vs flexible (general guidance)?

Step 2: Generate Skill Structure

Create directory: ~/.claude/skills/{skill-name}/

{skill-name}/ ├── SKILL.md # Required: Main instructions (<500 lines) ├── scripts/ # Optional: Executable code │ └── main.py └── references/ # Optional: Detailed docs (one level deep) └── examples.md

Step 3: Write SKILL.md


name: {skill-name} description: {What it does in third person}. Use when {trigger conditions}.

{Skill Title}

{Brief overview - assume Claude is smart, only add context it doesn't already have}

Quick Start

{Minimal working example or first step}

Instructions

{Step-by-step guidance with appropriate freedom level}

Advanced Features

Feature A: See references/feature-a.md Feature B: See references/feature-b.md

Step 4: Check Line Count & Apply Progressive Disclosure

After drafting SKILL.md, count its lines. If approaching or exceeding 500 lines:

  • Inform the user: "The SKILL.md is {N} lines — exceeding the recommended 500-line limit for optimal performance."

  • Identify splittable sections: detailed references, long examples, advanced features, API docs

  • Move to reference files: references/{topic}.md — keep links one level deep

  • Replace in SKILL.md with a short summary + link: Advanced feature X: See references/feature-x.md

  • Add table of contents to any reference file over 100 lines

Even under 500 lines, prefer splitting if a section is self-contained and only needed in specific scenarios.

Step 5: Validate

Run through the validation checklist before finalizing.

Naming Rules

  • Length: 1-64 characters

  • Format: lowercase letters, numbers, hyphens only

  • Prefer gerund form: processing-pdfs , testing-code , writing-documentation

  • Acceptable alternatives: pdf-processing , process-pdfs

  • Not allowed: start/end with - , consecutive -- , reserved words (anthropic , claude ), XML tags

  • Avoid: vague names (helper , utils , tools ), overly generic (documents , data )

  • Must match: folder name

Description Rules

  • Maximum: 1024 characters, non-empty, no XML tags

  • Always third person: "Processes Excel files" not "I can help you" or "You can use this"

  • Include both: what it does AND when to use it

  • Be specific with key terms: Claude uses descriptions to choose from 100+ skills

Good examples:

description: Extracts text and tables from PDF files, fills forms, merges documents. Use when working with PDF files or when the user mentions PDFs, forms, or document extraction.

description: Generates descriptive commit messages by analyzing git diffs. Use when the user asks for help writing commit messages or reviewing staged changes.

Avoid: "Helps with documents", "Processes data", "Does stuff with files"

Core Principles

Conciseness

The context window is shared. Challenge each piece of information:

  • "Does Claude really need this explanation?"

  • "Can I assume Claude knows this?"

  • "Does this paragraph justify its token cost?"

Only add context Claude doesn't already have.

Degrees of Freedom

Match specificity to the task's fragility:

Freedom Use When Example

High (text instructions) Multiple valid approaches, context-dependent Code review guidelines

Medium (pseudocode/params) Preferred pattern exists, some variation ok Report generation template

Low (exact scripts) Fragile operations, consistency critical Database migrations

Progressive Disclosure

  • SKILL.md = overview + navigation (table of contents)

  • Reference files = detailed content (loaded on-demand)

  • Keep SKILL.md body under 500 lines

  • Keep references one level deep from SKILL.md (no nested references)

  • Structure long reference files (100+ lines) with a table of contents

Consistent Terminology

Pick one term and use it throughout. Don't mix "API endpoint" / "URL" / "API route" / "path".

Patterns

Workflow with Checklist

For complex multi-step operations:

Workflow

Copy this checklist and track progress:

- [ ] Step 1: Analyze input
- [ ] Step 2: Generate plan
- [ ] Step 3: Validate plan
- [ ] Step 4: Execute
- [ ] Step 5: Verify output

Feedback Loop

Run validator → fix errors → repeat:

  1. Make changes
  2. Validate: python scripts/validate.py
  3. If validation fails: fix issues, return to step 2
  4. Only proceed when validation passes

Template Pattern

Provide output format templates, matching strictness to requirements.

Examples Pattern

Provide input/output pairs for output-quality-dependent skills.

Conditional Workflow

Guide through decision points:

Creating new? → Follow "Creation workflow" Editing existing? → Follow "Editing workflow"

Scripts Best Practices

  • Handle errors explicitly — don't punt to Claude

  • No voodoo constants — justify and document all values

  • List dependencies — specify packages to install

  • Make execution intent clear:

  • "Run script.py to extract fields" (execute)

  • "See script.py for the algorithm" (read as reference)

  • Use forward slashes in all file paths (scripts/helper.py not scripts\helper.py )

  • MCP tool references — use fully qualified names: ServerName:tool_name

Anti-Patterns

  • Explaining things Claude already knows (what PDFs are, how libraries work)

  • Offering too many tool/library options — provide a default with escape hatch

  • Time-sensitive information — use "old patterns" section with <details> tag

  • Deeply nested references (file → file → file)

  • Windows-style paths

  • Assuming packages are installed without explicit install instructions

Validation Checklist

Core Quality

  • Name: lowercase, numbers, hyphens only, 1-64 chars, no reserved words

  • Description: third person, specific, includes what + when, under 1024 chars

  • SKILL.md body under 500 lines

  • Additional details in separate files (one level deep)

  • No time-sensitive information

  • Consistent terminology throughout

  • Concrete examples (not abstract)

  • Progressive disclosure used appropriately

  • Workflows have clear steps

Scripts (if applicable)

  • Scripts handle errors explicitly

  • No voodoo constants (all values justified)

  • Required packages listed with install instructions

  • Forward slashes in all paths

  • Validation/verification steps for critical operations

  • Feedback loops for quality-critical tasks

Testing

  • Tested with real usage scenarios

  • Works across target models (Haiku needs more guidance, Opus needs less)

Further Reading

Eval-driven development: See references/eval-driven-development.md for the build → test → observe → iterate cycle, two-Claude iterative development, and observation patterns for refining skills after initial creation.

Source Transparency

This detail page is rendered from real SKILL.md content. Trust labels are metadata-based hints, not a safety guarantee.

Related Skills

Related by shared tags or category signals.

Coding

devops

No summary provided by upstream source.

Repository SourceNeeds Review
Coding

python

No summary provided by upstream source.

Repository SourceNeeds Review
Coding

code-review

No summary provided by upstream source.

Repository SourceNeeds Review