Refactor high-complexity React components in Dify frontend. Use when `pnpm analyze-component...
npx skills add Jaylonnet/agent-skill-collection
Or install specific skill: npx add-skill https://github.com/Jaylonnet/agent-skill-collection
# Description
Create or update Claude Agent Skills. Use this when users want to build a new skill, scaffold a skill folder, improve an existing skill, or validate structure.
# SKILL.md
name: skill-authoring
description: Create or update Claude Agent Skills. Use this when users want to build a new skill, scaffold a skill folder, improve an existing skill, or validate structure.
allowed-tools: "Read,Write,Edit,Bash,Glob,Grep"
About Skills
Skills are modular, self-contained packages that extend Claude's capabilities with specialized knowledge, workflows, and tools. They transform Claude from a general-purpose agent into a specialized agent equipped with procedural knowledge.
What Skills Provide
- Specialized workflows - Multi-step procedures for specific domains
- Tool integrations - Instructions for working with specific file formats or APIs
- Domain expertise - Company-specific knowledge, schemas, business logic
- Bundled resources - Scripts, references, and assets for complex tasks
When to use
- "Build me a new skill for X"
- "Create a skill that does Y"
- "Validate my skill structure"
- "Improve this existing skill"
- "What sections should a skill have?"
When NOT to use
- General coding tasks (use other skills or direct Claude)
- Questions about Claude Code itself (use claude-code-guide)
- Simple file operations that don't need a skill workflow
Core Principles
Concise is Key
The context window is a public good. Challenge each piece of information: "Does Claude really need this?" Prefer concise examples over verbose explanations.
Degrees of Freedom
Match specificity to task fragility:
| Level | Use When |
|---|---|
| High freedom | Multiple valid approaches, context-dependent decisions |
| Medium freedom | Preferred pattern exists, some variation acceptable |
| Low freedom | Fragile operations, consistency critical |
Think of Claude exploring a path: a narrow bridge needs guardrails (low freedom), an open field allows many routes (high freedom).
Anatomy of a Skill
skill-name/
βββ SKILL.md (required)
β βββ YAML frontmatter (name + description)
β βββ Markdown instructions
βββ scripts/ - Executable code (Python/Bash)
βββ references/ - Documentation loaded as needed
βββ assets/ - Templates, binaries for output
SKILL.md Frontmatter
Only two required fields:
name: The skill identifier (lowercase, hyphens)- `description**: Triggers + purpose. Include "Use this when..." with specific conditions.
Do not add license or other fields.
When to Use Each Resource Type
- scripts/: Deterministic operations, repeatedly rewritten code
- references/: Long docs, schemas, APIs, patterns Claude references
- assets/: Templates, icons, boilerplate copied to output
Progressive Disclosure
Keep SKILL.md under 500 lines. Move details to references:
# Quick start
[essential workflow]
# Advanced
- Feature A: See [REFERENCES/A.md](REFERENCES/A.md)
- Feature B: See [REFERENCES/B.md](REFERENCES/B.md)
Skill Creation Workflow
Step 1 β Capture Requirements
See SKILLSPEC.md for the format.
Step 2 β Plan Resources
For each example, determine:
- Does it need a script? (deterministic, repeated)
- Does it need a reference? (long docs, schemas)
- Does it need assets? (templates, boilerplate)
Step 3 β Initialize
python "{baseDir}/scripts/init_skill.py" <skill-name> --path <output-dir>
Step 4 β Fill In
- Replace generated SKILL.md with final version
- Add scripts to
scripts/ - Add docs to
references/ - Add assets to
assets/ - Delete unused sample files
Step 5 β Gap Analysis
Verify all sections exist:
| Section | Required |
|---|---|
| Description | States when to use |
| When to use | 3-8 triggers |
| When NOT to use | Recommended |
| Workflow | Numbered steps |
| Tool usage | Scripts + references documented |
| Failure handling | Explicit table/list |
| Examples | Concrete walkthroughs |
| Acceptance tests | 5+ test cases |
Use CHECKLIST.md for full validation.
Step 6 β Precision Analysis
Check trigger quality:
- Overlap: Do triggers match other common skills?
- Specificity: Are triggers specific enough?
- Differentiation: Document distinctions if overlap exists
Step 7 β Validate
python "{baseDir}/scripts/quick_validate.py" <skill-dir>
Updating Existing Skills
- Run gap analysis against CHECKLIST.md
- Run precision analysis on triggers
- Apply fixes:
- Improve description/triggers
- Add missing failure handling
- Add "When NOT to use"
- Move long content to references/
- Add scripts for repeated steps
- Re-validate
Failure Modes
| Failure | Response |
|---|---|
Missing name or description |
Validation fails; add required fields |
| Invalid skill name format | Use lowercase, 2-64 chars, a-z0-9_- |
| Placeholders (TODO) in SKILL.md | Replace with actual content before validating |
| {baseDir} reference not found | Verify path exists relative to skill folder |
| Validation errors | Fix all ERRORs before validating |
Examples
Creating a New Skill
User: "Build me a skill to rotate PDFs"
Assistant uses this workflow:
1. Captures requirements (rotate PDF, 3 triggers)
2. Plans resources (scripts/rotate_pdf.py)
3. Runs init_skill.py
4. Fills in SKILL.md with PDF-specific workflow
5. Adds rotate_pdf.py script
6. Validates
Updating an Existing Skill
User: "This skill is missing failure handling"
Assistant:
1. Runs gap analysis β finds missing "Failure handling"
2. Adds failure modes table
3. Re-validates
Acceptance Tests
| Prompt | Expected Behavior |
|---|---|
| "Build a new skill called pdf-editor" | Creates skill scaffold, runs init script |
| "Create a skill for image processing" | Follows full workflow, validates skill |
| "Validate my skill at /path/to/skill" | Runs quick_validate.py, reports issues |
| "What sections should a skill have?" | References checklist.md |
| "Help me improve my existing skill" | Runs gap analysis, suggests fixes |
| "Show me the skill spec format" | References skill_spec.md |
| "Why isn't my skill triggering?" | Checks trigger specificity, suggests improvements |
# README.md
skill-authoring
A Claude Agent Skill for creating and validating other skills.
What This Does
Transforms Claude into a specialized agent for skill authoring:
- Create new skills from scratch with proper structure
- Validate existing skills against quality checklists
- Improve existing skills with gap analysis
Installation
-
Copy the
skill-authoringfolder to your Claude Code skills directory:
~/.claude/skills/skill-authoring -
Restart Claude Code - the skill will be automatically loaded
Usage
Trigger this skill with phrases like:
- "Build me a new skill for X"
- "Create a skill that does Y"
- "Validate my skill structure"
- "Improve my existing skill"
Credit
Based on Anthropics' skill-creator, licensed under Apache 2.0.
License
MIT License - see LICENSE.txt
# Supported AI Coding Agents
This skill is compatible with the SKILL.md standard and works with all major AI coding agents:
Learn more about the SKILL.md standard and how to use these skills with your preferred AI coding agent.