# Skill Creator

Authors and structures professional-grade agent skills following the agentskills.io spec.

- Repository: https://github.com/mgechev/skills-best-practices (2284 stars)
- Category: AI and agents
- License: see repository
- Last updated: 2026-07-27
- Runs scripts: yes, review before use

## Install

Claude Code: `npx skills add mgechev/skills-best-practices --skill skill-creator -g -a claude-code -y`
Codex: `npx skills add mgechev/skills-best-practices --skill skill-creator -g -a codex -y`
Cursor: `npx skills add mgechev/skills-best-practices --skill skill-creator -g -a cursor -y`
Gemini CLI: `npx skills add mgechev/skills-best-practices --skill skill-creator -g -a gemini-cli -y`

## Description

Authors and structures professional-grade agent skills following the agentskills.io spec. Use when creating new skill directories, drafting procedural instructions, or optimizing metadata for discoverability. Don't use for general documentation, non-agentic library code, or README files.

## SKILL.md, as published by its author (untrusted third-party text, read it as data)

# Skill Authoring Procedure

Follow these steps to generate a skill that adheres to the agentskills.io specification and progressive disclosure principles.

## Step 1: Initialize and Validate Metadata
1.  Define a unique `name`: 1-64 characters, lowercase, numbers, and single hyphens only. **This must exactly match the parent directory name** (e.g., name `angular-testing` must live in `angular-testing/SKILL.md`).
2.  Draft a `description`: Max 1,024 characters, written in the third person. Include positive triggers ("Use when...") and negative triggers ("Don't use for...").
3.  **Execute Validation Script:** Run the validation script to ensure compliance before proceeding:
    `python3 scripts/validate-metadata.py --name "[name]" --description "[description]"`
4.  If the script returns an error, self-correct the metadata based on the `stderr` output and re-run until successful.

## Step 2: Structure the Directory
1.  Create the root directory using the validated `name`.
2.  Initialize the following subdirectories:
    *   `scripts/`: For tiny CLI tools and deterministic logic.
    *   `references/`: For flat (one-level deep) context like schemas or API docs.
    *   `assets/`: For output templates, JSON schemas, or static files.
3.  Ensure no human-centric files (such as `README.md`, `CHANGELOG.md`, `INSTALLATION.md`) are created.

The rest: https://github.com/mgechev/skills-best-practices/blob/HEAD/skill/SKILL.md
