$npx -y skills add thomast1906/github-copilot-agent-skills --skill skill-creatorCreate, update, review, and validate GitHub Copilot agent skills (SKILL.md files). Use this skill whenever someone wants to create a new skill, build a skill from scratch, package domain knowledge into a reusable agent skill, turn a workflow into a skill, or asks "how do I teach
| 1 | # Skill Creator |
| 2 | |
| 3 | Create high-quality GitHub Copilot agent skills (SKILL.md) that transform the general-purpose agent into a specialized expert. |
| 4 | |
| 5 | ## What Is a Skill |
| 6 | |
| 7 | A skill is a modular, self-contained knowledge package stored in `.github/skills/<skill-name>/SKILL.md`. It provides: |
| 8 | |
| 9 | - **Specialized workflows** — Multi-step procedures for a specific domain |
| 10 | - **Domain expertise** — Company-specific schemas, patterns, business logic |
| 11 | - **Tool integrations** — Instructions for APIs, file formats, or services |
| 12 | - **Bundled resources** — Scripts, reference docs, and templates for reuse |
| 13 | |
| 14 | Skills load in three levels (progressive disclosure): |
| 15 | |
| 16 | 1. **Metadata** (`name` + `description`) — Always in context (~100 words). This is the trigger mechanism. |
| 17 | 2. **SKILL.md body** — Loaded when the skill triggers. Keep under 500 lines. |
| 18 | 3. **Bundled resources** — Loaded on demand (scripts/, references/, assets/). |
| 19 | |
| 20 | ## Skill Anatomy |
| 21 | |
| 22 | ``` |
| 23 | skill-name/ |
| 24 | ├── SKILL.md (required) |
| 25 | │ ├── YAML frontmatter name + description (required) |
| 26 | │ └── Markdown instructions |
| 27 | └── Bundled Resources (optional) |
| 28 | ├── scripts/ Executable code for deterministic/repetitive tasks |
| 29 | ├── references/ Docs loaded into context as needed |
| 30 | └── assets/ Output files (templates, icons, boilerplate) |
| 31 | ``` |
| 32 | |
| 33 | **Do NOT include:** setup guides, changelogs, or user-facing documentation — skills are instructions for the agent, not onboarding docs for humans. |
| 34 | |
| 35 | --- |
| 36 | |
| 37 | ## Is a Skill the Right Vehicle? |
| 38 | |
| 39 | Not every workflow needs a skill. Before creating one, choose the right tool: |
| 40 | |
| 41 | | Situation | Use instead | |
| 42 | |---|---| |
| 43 | | A rule that applies to ALL Copilot interactions in this repo | `copilot-instructions.md` entry | |
| 44 | | A rule scoped to specific file types (e.g., always use `kebab-case` for Bicep variable names) | `.github/instructions/*.instructions.md` with `applyTo` glob | |
| 45 | | A one-off prompt you run occasionally | `.github/prompts/*.prompt.md` | |
| 46 | | A multi-step workflow with domain knowledge that benefits from on-demand loading | **Skill** | |
| 47 | | A complex workflow with a dedicated agent persona | `.github/agents/*.agent.md` | |
| 48 | |
| 49 | A skill is the right choice when: the workflow is too detailed for `copilot-instructions.md`, it should only load for relevant requests (not every conversation), and it encapsulates reusable domain knowledge or a repeatable process. |
| 50 | |
| 51 | If the user's need is better served by a simpler vehicle, say so and use that instead. Not everything needs to be a skill. |
| 52 | |
| 53 | --- |
| 54 | |
| 55 | ## Creation Process |
| 56 | |
| 57 | ### Phase 1 — Discovery |
| 58 | |
| 59 | Understand the problem before writing a single line. Ask conversationally: |
| 60 | |
| 61 | - What workflow do you want to make consistent? Walk through the steps you do today. |
| 62 | - What goes wrong without the skill? (Inconsistency, forgotten steps, repeated explanation, wrong outputs) |
| 63 | - Who will use this skill? (Just you, your team, public) |
| 64 | - What tools or services are involved? |
| 65 | |
| 66 | Collect 2–3 concrete use cases. For each, capture: |
| 67 | |
| 68 | ``` |
| 69 | Trigger: What the user says/does |
| 70 | Steps: Sequence of actions |
| 71 | Tools: Built-in or MCP tools needed |
| 72 | Result: What success looks like (specific output) |
| 73 | ``` |
| 74 | |
| 75 | Exit criteria: 2–3 use cases defined, success criteria agreed, tools/dependencies identified. |
| 76 | |
| 77 | ### Phase 2 — Architecture |
| 78 | |
| 79 | Make structural decisions before writing: |
| 80 | |
| 81 | 1. **Choose the primary pattern** — Sequential workflow, iterative refinement, domain-specific intelligence, or multi-tool coordination. Read [references/workflows.md](references/workflows.md) for structure templates and the pattern-selection guide — load it now if you are unsure which pattern fits. |
| 82 | 2. **Plan the folder structure** — Only add `scripts/`, `references/`, or `assets/` when there is a clear reason: |
| 83 | - Same code rewritten repeatedly → `scripts/` |
| 84 | - Reference material > ~100 lines → `references/` |
| 85 | - Output uses templates/images → `assets/` |
| 86 | 3. **Draft the description** — This is the most important piece. See [Writing the Description](#writing-the-description) below. |
| 87 | 4. **Map content to disclosure levels** — What goes in SKILL.md body vs. reference files? |
| 88 | |
| 89 | Exit criteria: Pattern selected, folder structure planned, description drafted, content mapped. |
| 90 | |
| 91 | ### Phase 3 — Craft |
| 92 | |
| 93 | Write SKILL.md with precision. |
| 94 | |
| 95 | **Frontmatter rules:** |
| 96 | |
| 97 | ```yaml |
| 98 | --- |
| 99 | name: kebab-cas |