Make Skill Template

VerifiedSafe

Create new Agent Skills for GitHub Copilot from templates. Generates SKILL.md files with proper structure, directory layout, and bundled resources.

Sby Skills Guide Bot
DevelopmentBeginner
3/4/2026
CopilotClaude Code
#skill-authoring#scaffolding#copilot#templates#meta-skill

Recommended for

Automated summary

A meta-skill that scaffolds the directory and SKILL.md file for a new Agent Skill, with valid YAML frontmatter and optional folders for scripts, references and assets.

Strengths

  • States the exact frontmatter constraints (lowercase hyphenated name, 1-1024 char description, optional fields such as license or allowed-tools)
  • Explains that the description drives automatic skill discovery and shows a good vs. poor example side by side
  • Suggests a markdown section outline for the skill body
  • Also covers duplicating the template itself as a starting point

Limitations

  • Focused on GitHub Copilot and the Agent Skills spec, without detailing how other hosts differ
  • The document is truncated where the optional folders (scripts, references, assets) are described
  • Provides no validation script or automated frontmatter check
When to use it

Use it whenever you need to create, structure or duplicate an Agent Skill instead of hand-writing the SKILL.md.

When not to use it

Skip it if you are debugging or running an existing skill rather than authoring a new one.

Security analysis

Safe
Quality score82/100

This is a documentation-only meta-skill that explains how to scaffold Agent Skills. It declares no allowed-tools, contains no executable code, no shell commands, no network calls, and no instructions to read or transmit secrets. The only command referenced (npm run skill:validate) is advisory and non-destructive, so there is no meaningful execution risk in listing it.

No concerns found

How this analysis is made

Examples

Scaffold a new skill
Create a new skill called api-contract-check that validates our OpenAPI spec and flags breaking changes. Scaffold the folder and SKILL.md with proper frontmatter.
Fix a bad description
My skill's description is just 'db helpers' and Copilot never triggers it. Rewrite it following the skill template's description best practices.
Add bundled resources
I want to add a scripts/ and references/ folder to my existing skill. Show me the directory structure I should use.

name: make-skill-template description: 'Create new Agent Skills for GitHub Copilot from prompts or by duplicating this template. Use when asked to "create a skill", "make a new skill", "scaffold a skill", or when building specialized AI capabilities with bundled resources. Generates SKILL.md files with proper frontmatter, directory structure, and optional scripts/references/assets folders.'

Make Skill Template

A meta-skill for creating new Agent Skills. Use this skill when you need to scaffold a new skill folder, generate a SKILL.md file, or help users understand the Agent Skills specification.

When to Use This Skill

  • User asks to "create a skill", "make a new skill", or "scaffold a skill"
  • User wants to add a specialized capability to their GitHub Copilot setup
  • User needs help structuring a skill with bundled resources
  • User wants to duplicate this template as a starting point

Prerequisites

  • Understanding of what the skill should accomplish
  • A clear, keyword-rich description of capabilities and triggers
  • Knowledge of any bundled resources needed (scripts, references, assets, templates)

Creating a New Skill

Step 1: Create the Skill Directory

Create a new folder with a lowercase, hyphenated name:

skills/<skill-name>/
└── SKILL.md          # Required

Step 2: Generate SKILL.md with Frontmatter

Every skill requires YAML frontmatter with name and description:

---
name: <skill-name>
description:
  "<What it does>. Use when <specific triggers, scenarios, keywords users might
  say>."
---

Frontmatter Field Requirements

| Field | Required | Constraints | | --------------- | -------- | -------------------------------------------------------------------------- | | name | Yes | 1-64 chars, lowercase letters/numbers/hyphens only, must match folder name | | description | Yes | 1-1024 chars, must describe WHAT it does AND WHEN to use it | | license | No | License name or reference to bundled LICENSE.txt | | compatibility | No | 1-500 chars, environment requirements if needed | | metadata | No | Key-value pairs for additional properties | | allowed-tools | No | Space-delimited list of pre-approved tools (experimental) |

Description Best Practices

CRITICAL: The description is the PRIMARY mechanism for automatic skill discovery. Include:

  1. WHAT the skill does (capabilities)
  2. WHEN to use it (triggers, scenarios, file types)
  3. Keywords users might mention in prompts

Good example:

description:
  "Toolkit for testing local web applications using Playwright. Use when asked
  to verify frontend functionality, debug UI behavior, capture browser
  screenshots, or view browser console logs. Supports Chrome, Firefox, and
  WebKit."

Poor example:

description: "Web testing helpers"

Step 3: Write the Skill Body

After the frontmatter, add markdown instructions. Recommended sections:

| Section | Purpose | | --------------------------- | ------------------------------- | | # Title | Brief overview | | ## When to Use This Skill | Reinforces description triggers | | ## Prerequisites | Required tools, dependencies | | ## Step-by-Step Workflows | Numbered steps for tasks | | ## Troubleshooting | Common issues and solutions | | ## References | Links to bundled docs |

Step 4: Add Optional Directories (If Needed)

| Folder | Purpose | When to Use | | ------------- | ---------------------------------- | ----------------------------------- | | scripts/ | Executable code (Python, Bash, JS) | Automation that performs operations | | references/ | Documentation agent reads | API references, schemas, guides | | assets/ | Static files used AS-IS | Images, fonts, templates | | templates/ | Starter code agent modifies | Scaffolds to extend |

Example: Complete Skill Structure

my-awesome-skill/
├── SKILL.md                    # Required instructions
├── LICENSE.txt                 # Optional license file
├── scripts/
│   └── helper.py               # Executable automation
├── references/
│   ├── api-reference.md        # Detailed docs
│   └── examples.md             # Usage examples
├── assets/
│   └── diagram.png             # Static resources
└── templates/
    └── starter.ts              # Code scaffold

Quick Start: Duplicate This Template

  1. Copy the make-skill-template/ folder
  2. Rename to your skill name (lowercase, hyphens)
  3. Update SKILL.md:
    • Change name: to match folder name
    • Write a keyword-rich description:
    • Replace body content with your instructions
  4. Add bundled resources as needed
  5. Validate with npm run skill:validate

Validation Checklist

  • [ ] Folder name is lowercase with hyphens
  • [ ] name field matches folder name exactly
  • [ ] description is 10-1024 characters
  • [ ] description explains WHAT and WHEN
  • [ ] description is wrapped in single quotes
  • [ ] Body content is under 500 lines
  • [ ] Bundled assets are under 5MB each

Troubleshooting

| Issue | Solution | | ------------------------ | -------------------------------------------------------- | | Skill not discovered | Improve description with more keywords and triggers | | Validation fails on name | Ensure lowercase, no consecutive hyphens, matches folder | | Description too short | Add capabilities, triggers, and keywords | | Assets not found | Use relative paths from skill root |

References

From the file to a first result

The download contains exactly the content displayed on this page. This copy may differ from the latest version in the source repository.

View the source and supporting files

This download contains SKILL.md only. Any scripts, references, templates and dependencies are not included. Get the required files from the source, preserving their directory structure, before continuing.

1. Download the file

Download SKILL.md

From the root of a test project, save the file as .skill-downloads/make-skill-template-mmbizjvn/SKILL.md, or use the command below. This folder is for inspecting the skill before installation.

Command for macOS/Linux or WSL: requires a POSIX shell and curl. On Windows without WSL, use the download button and create the folder manually.

mkdir -p '.skill-downloads/make-skill-template-mmbizjvn' && curl --fail --show-error --location 'https://skills-guides.com/api/skills/make-skill-template-mmbizjvn/download' --output '.skill-downloads/make-skill-template-mmbizjvn/SKILL.md.part' && mv '.skill-downloads/make-skill-template-mmbizjvn/SKILL.md.part' '.skill-downloads/make-skill-template-mmbizjvn/SKILL.md'

2. Check prerequisites

Read SKILL.md before using it. If it references scripts or external services, inspect them and prepare the required access in your test environment.

Original excerpt: Prerequisites
  • Understanding of what the skill should accomplish
  • A clear, keyword-rich description of capabilities and triggers
  • Knowledge of any bundled resources needed (scripts, references, assets, templates)

The platforms on this page are catalog indications. The paths below follow tool documentation; they do not prove this skill has been run in those tools. No minimum tool version is confirmed for this listing.

3. Load the skill

After inspection, copy the complete folder into your project using one of the commands below, then open a new tool session. The command stops if a folder with the same name already exists: compare the files before replacing it.

Claude Code
test -f '.skill-downloads/make-skill-template-mmbizjvn/SKILL.md' && test -s '.skill-downloads/make-skill-template-mmbizjvn/SKILL.md' && mkdir -p '.claude/skills' && test ! -e '.claude/skills/make-skill-template' && cp -R '.skill-downloads/make-skill-template-mmbizjvn' '.claude/skills/make-skill-template'

OpenSkills

OpenSkills must already be installed. The local install/read procedure is checked with OpenSkills 1.5.0, which requires Node.js ≥ 20.6.0. Catalog slugs are not resolved automatically.

Official OpenSkills installation
openskills install './.skill-downloads/make-skill-template-mmbizjvn'

openskills read 'make-skill-template-mmbizjvn'

Reading should display the installed file content and its base directory. It does not run the skill or install its dependencies.

For an agent that reads AGENTS.md, then sync the index. This command changes AGENTS.md: review the diff before using it.

openskills sync

Manual method or another tool: attach SKILL.md to a conversation, or open it in an agent that can read files. Include any required supporting resources. No universal folder is recognized by every tool.

4. Try a first task

Use a short, synthetic input: an API endpoint, a small document or an interface brief. In a new conversation, attach the file or give the agent its path, then adapt this request:

Read .skill-downloads/make-skill-template-mmbizjvn/SKILL.md and apply its instructions to this example: [describe a test input]. Identify any missing files, dependencies or access. Produce the result requested by the skill without inventing data or running unreviewed scripts.

Expected result: output matching the skill instructions, or a precise list of missing prerequisites. A read confirmation alone does not validate a first use. If an external resource is unavailable, that path remains untested.

Related skills