agentsclimarketplace

Copilot skill builder

Skill trsdn/github-copilot-cli/.github/skills/copilot-skill-builder

A meta-skill that teaches how to create and maintain Agent Skills for Copilot CLI. Use this skill when the user wants to create a new skill, understand skill frontmatter, configure allowed-tools, choose skill locations, or learn best practices for writing SKILL.md files.From its SKILL.md

Install
npx -y skills add trsdn/github-copilot-cli --skill copilot-skill-builder

Assembled from the repository path, not quoted from the project. Check it against their README if it does not work.

One thing to look at

  • 1 stars1 stars. Stars are a popularity signal and not a quality one, but at this level it is likely that nobody has read this closely except its author, and you would be relying on your own review.

SKILL.md

5.0 KB, ~1.1k tokens by cl100k_base, as published. Nobody here has run it

Skill Builder

This skill helps you create well-structured Agent Skills for GitHub Copilot CLI.

When to use this skill

  • User wants to create a new Agent Skill
  • User asks about the SKILL.md format or best practices
  • User wants to understand how skills work in Copilot CLI
  • User needs to debug or improve an existing skill

SKILL.md Format

Every skill lives in its own directory and must contain a SKILL.md file:

.github/skills/<skill-name>/
├── SKILL.md          # Required: skill instructions
├── scripts/          # Optional: helper scripts
├── examples/         # Optional: example files
└── templates/        # Optional: template files

SKILL.md Structure

---
name: skill-name
description: What the skill does and when Copilot should use it. Be specific to help Copilot decide when to load this skill.
license: MIT
allowed-tools: read, grep
user-invocable: true
disable-model-invocation: false
---

# Skill Title

Overview of what this skill accomplishes.

## When to use this skill

- Specific trigger 1
- Specific trigger 2

## Step-by-step procedure

1. First step
2. Second step

## Examples

### Example 1: Description
...

## References

- [Link to relevant docs](https://...)

Frontmatter Fields

FieldRequiredDescription
name✅ YesUnique identifier, lowercase with hyphens, max 64 chars
description✅ YesWhat it does and when to use it, max 1024 chars
license❌ NoLicense information for the skill
allowed-tools❌ NoComma-separated string or YAML array of tools to allow when active
user-invocable❌ NoWhether users can invoke the skill with /skill-name; defaults to true
disable-model-invocation❌ NoPrevents automatic model invocation; defaults to false

Skill Locations

TypeLocationScope
Project skills.github/skills/<name>/SKILL.mdCurrent repository
Project skills.agents/skills/<name>/SKILL.mdCurrent repository, cross-agent standard
Project skills.claude/skills/<name>/SKILL.mdCurrent repository, Claude-compatible
Personal skills~/.copilot/skills/<name>/SKILL.mdAll your projects
Personal skills~/.agents/skills/<name>/SKILL.mdShared across agent tools
Custom locationsCOPILOT_SKILLS_DIRSAdditional comma-separated directories
Plugin skills<plugin>/skills/<name>/SKILL.mdInstalled plugin scope

Best Practices

Writing effective descriptions

The description field is critical — it's how Copilot decides when to load your skill.

Good descriptions:

  • "Guide for debugging failing GitHub Actions workflows. Use when asked to debug CI failures."
  • "Convert images between formats using ImageMagick. Use when asked to convert, resize, or optimize images."

Bad descriptions:

  • "A useful skill" (too vague)
  • "Helps with stuff" (non-specific)

Writing effective instructions

  1. Be specific — provide concrete steps, not vague guidance
  2. Include examples — show expected input/output pairs
  3. Reference resources — link to scripts and files using relative paths (e.g., [template](./template.js))
  4. Define scope — clearly state what the skill does and doesn't do
  5. Keep it focused — one skill per concern, not a kitchen sink

Including scripts and resources

Skills can include additional files that Copilot can reference:

When creating a new component, use the template at [component-template](./templates/component.tsx)
as a starting point.

To run validation, execute the script at [validate](./scripts/validate.sh).

Only use allowed-tools: shell or allowed-tools: bash for skills and scripts you fully trust. When in doubt, omit shell tools so Copilot asks before running commands.

Managing Skills in Copilot CLI

/skills list     # List available skills
/skills          # Toggle skills on/off interactively
/skills info     # View details about a skill
/skills reload   # Reload after adding new skills
/skills add      # Add alternative skill location
/skills remove   # Remove a skill directory

Skills vs Custom Instructions

AspectSkillsCustom Instructions
When loadedOn-demand, when relevantAlways, automatically
ScopeTask-specificGeneral/project-wide
Can include scripts✅ Yes❌ No
Best forDetailed task proceduresCoding standards, conventions

Rule of thumb: Use instructions for "always apply" rules, skills for "when relevant" procedures.

Template

Use skill-template.md as a starting point for new skills.

What ships with it: 1 file

728 B alongside SKILL.md

Keep looking

Skills are one crate of 325,949. Ordering is by how many stacks a row turns up in, so the top of any crate is what has actually been picked rather than what has the most stars.