Skip to main content
The GitHub Copilot Agent Toolkit includes a skills system that provides specialized, domain-specific instructions and workflows for AI agents. Skills bundle best practices, patterns, and reference materials to ensure consistent, high-quality code generation.

What Are Skills?

Skills are modular instruction sets that agents can load when working on specific tasks. Each skill contains:
  • Domain expertise - Best practices and patterns for specific technologies
  • Bundled resources - Templates, references, and examples
  • Automated workflows - Step-by-step instructions for common tasks
  • Quality guidelines - Checklists and validation rules

Available Skills

The toolkit includes seven production-ready skills:

React Best Practices

57 performance optimization rules across 8 categories for React and Next.js

Next.js Best Practices

File conventions, RSC patterns, data fetching, and Next.js-specific optimizations

Composition Patterns

React composition patterns for building flexible, maintainable component APIs

UI Components

Best practices for shadcn/ui, Tailwind CSS, and component architecture

Zustand State Management

Client-side state management with the decoupled actions pattern

Web Project Conventions

Project structure, naming conventions, and import patterns for Next.js apps

Playwright CLI

Browser automation for testing, form filling, screenshots, and data extraction

How Skills Work

Each skill is organized in .github/skills/<skill-name>/ with a SKILL.md file containing metadata and core documentation.
Skill structure varies by skill. Some skills use rules/ directories with granular rule files (react-best-practices, vercel-composition-patterns), some use individual markdown files for topics (next-best-practices), and others include references/ for additional docs (playwright-cli, ui-components) or assets/ for templates (zustand).
Common structure patterns:
.github/skills/<skill-name>/
├── SKILL.md           # Required: Metadata and core documentation
├── AGENTS.md          # Optional: Extended guidance for AI agents
├── rules/             # Optional: Individual rule files
├── references/        # Optional: Reference documentation
└── assets/            # Optional: Templates and examples

Skill Metadata

Each skill includes metadata in SKILL.md:
---
name: skill-identifier
description: When to use this skill and what it provides
license: MIT
metadata:
  author: vercel
  version: "1.0.0"
---

Rule Organization

Skills organize guidance into prioritized categories:
PriorityImpactWhen to Apply
CRITICALHigh user impactAlways enforce these rules
HIGHSignificant improvementApply in most cases
MEDIUMMeasurable benefitApply when practical
LOWIncremental gainApply in optimization passes

Using Skills in Your Project

Manual Reference

Read skill documentation directly from .github/skills/ to understand best practices:
cat .github/skills/react-best-practices/SKILL.md

AI Agent Integration

AI agents can load skills dynamically when working on relevant tasks. The toolkit’s agent system automatically invokes skills based on:
  • File patterns - Working with React components loads React best practices
  • Task context - Building UI components loads UI component guidelines
  • Explicit requests - “Use Zustand for state management” loads the Zustand skill

Project Configuration

Reference skills in your project’s AGENTS.md:
## Skills

You have access to skills in `.github/skills` for project-specific patterns:

- React features: `react-best-practices`
- Next.js features: `next-best-practices`
- State management: `zustand`
- UI components: `ui-components`

Skill Benefits

Skills ensure all team members and AI agents follow the same patterns and best practices.
Codified expertise prevents common mistakes and anti-patterns before they reach code review.
New developers can reference skills to understand project conventions and patterns.
Skills are optimized for AI consumption with clear examples, priorities, and decision trees.

Creating Custom Skills

You can create custom skills for your project:
  1. Create skill directory: .github/skills/my-skill/
  2. Add SKILL.md: Include metadata and quick reference
  3. Add AGENTS.md: Write detailed instructions for AI agents
  4. Add examples: Include code samples and templates
  5. Reference in AGENTS.md: Add to your project’s skill list
Skills work best when they’re focused on a single domain with clear, actionable guidance.

Best Practices

For Skill Authors

  • Be specific - Provide concrete examples, not abstract principles
  • Show don’t tell - Include incorrect and correct code samples
  • Prioritize - Mark rules by impact (CRITICAL/HIGH/MEDIUM/LOW)
  • Test - Verify skills produce correct results when used by AI agents

For Skill Users

  • Load relevant skills - Only load skills needed for the current task
  • Follow priorities - Apply CRITICAL and HIGH rules consistently
  • Adapt - Skills are guidelines, not rigid requirements
  • Contribute - Improve skills as you discover new patterns

Next Steps

Explore individual skills to learn specific patterns:

Build docs developers (and LLMs) love