Skip to main content

Using Plugins

Plugins are curated collections of related agents and skills organized around specific themes, workflows, or use cases. They make it easy to install comprehensive toolkits for particular scenarios with a single command.

What are Plugins?

Plugins bundle related customizations into installable packages:
  • Agents - Specialized AI personas for the plugin’s domain
  • Skills - Self-contained capabilities with bundled resources
  • Commands - Custom CLI commands (coming soon)
  • Themes - Organized by technology, workflow, or use case
Plugins are the easiest way to adopt complete toolkits for specific technologies or workflows without manually downloading individual files.

Plugin Structure

Each plugin is a folder with metadata and references:
plugins/csharp-dotnet-development/
├── README.md                    # Documentation
└── .github/plugin/
    └── plugin.json             # Plugin manifest
{
  "name": "csharp-dotnet-development",
  "description": "Essential toolkit for C# and .NET development",
  "version": "1.0.0",
  "keywords": ["csharp", "dotnet", "aspnet", "testing"],
  "agents": [
    "../../agents/csharp-expert.agent.md",
    "../../agents/debug.agent.md"
  ],
  "skills": [
    "../../skills/csharp-async/",
    "../../skills/ef-core/",
    "../../skills/csharp-docs/"
  ]
}
Fields:
  • name: Matches folder name (lowercase-with-hyphens)
  • description: Brief plugin description
  • version: Semantic version (e.g., “1.0.0”)
  • keywords: Tags for discovery
  • agents: Paths to agent files (relative to plugin.json)
  • skills: Paths to skill folders (relative to plugin.json)

Installing Plugins

1

Add marketplace

copilot plugin marketplace add github/awesome-copilot
2

Browse plugins

# List available plugins
copilot plugin search

# Search by keyword
copilot plugin search azure
3

Install plugin

# Install by name
copilot plugin install csharp-dotnet-development@awesome-copilot

# Install latest version
copilot plugin install azure-cloud-development@awesome-copilot
4

Verify installation

copilot plugin list
Highlighted plugins that cover common scenarios:
Meta skills for discovering and generating GitHub Copilot customizations
copilot plugin install awesome-copilot@awesome-copilot
Includes:
  • Agent discovery and creation
  • Instruction generators
  • Skill templates
  • Prompt engineering guides
Tags: github-copilot, discovery, meta, prompt-engineering

Plugin Categories

Plugins are organized by use case and technology:
  • csharp-dotnet-development - C# and .NET toolkit
  • java-development - Java, Spring Boot, Quarkus
  • python-mcp-development - Python MCP servers
  • frontend-web-dev - React, Angular, Vue, TypeScript
  • go-mcp-development - Go MCP server development
  • azure-cloud-development - Azure IaC, serverless, architecture
  • context-engineering - Context optimization for Copilot
  • database-data-management - PostgreSQL, SQL Server, optimization
  • devops-oncall - Incident response, triage, Azure resources
  • testing-automation - TDD, unit tests, integration tests
  • polyglot-test-agent - Multi-language test generation
  • security-best-practices - OWASP, accessibility, performance
  • mcp-m365-copilot - Declarative agents with MCP
  • power-bi-development - DAX, modeling, optimization
  • power-apps-code-apps - Code-first Power Apps
  • dataverse - Microsoft Dataverse integrations
  • project-planning - Epics, features, implementation planning
  • technical-spike - Assumption testing, validation
  • gem-team - Multi-agent orchestration
  • noob-mode - Plain-English translation for non-technical users

Plugin Details

Each plugin provides:
{
  "name": "csharp-dotnet-development",
  "description": "Essential toolkit for C# and .NET",
  "version": "1.0.0",
  "keywords": ["csharp", "dotnet", "aspnet"]
}

Managing Plugins

Common plugin management tasks:
# View all installed plugins
copilot plugin list

# Show plugin details
copilot plugin show csharp-dotnet-development

Creating Your Own Plugins

To create a custom plugin:
1

Create plugin folder

mkdir -p plugins/my-plugin/.github/plugin
cd plugins/my-plugin
2

Create plugin.json

{
  "name": "my-plugin",
  "description": "My custom plugin description",
  "version": "1.0.0",
  "keywords": ["custom", "team"],
  "agents": [
    "../../agents/my-agent.agent.md"
  ],
  "skills": [
    "../../skills/my-skill/"
  ]
}
3

Create README.md

# My Plugin

Description of what this plugin provides.

## Included Agents
- My Agent - Description

## Included Skills
- my-skill - Description

## Installation
\`\`\`bash
copilot plugin install my-plugin@my-marketplace
\`\`\`
4

Validate and test

# From repository root
npm run plugin:validate

# Generate marketplace.json
npm run plugin:generate-marketplace

Best Practices

  • Group related agents and skills by theme
  • Don’t mix unrelated technologies
  • Use clear, descriptive names
  • Tag appropriately for discoverability
Good: react-development (React-specific tools)
Bad: web-dev-everything (too broad)
  • Use semantic versioning (MAJOR.MINOR.PATCH)
  • Increment MAJOR for breaking changes
  • Increment MINOR for new features
  • Increment PATCH for bug fixes
{
  "version": "2.1.3"
  // 2 = major version
  // 1 = minor version
  // 3 = patch version
}
  • List all included agents and skills
  • Explain what the plugin enables
  • Provide usage examples
  • Document prerequisites
## Prerequisites
- GitHub Copilot subscription
- VS Code 1.85+
- .NET 8 SDK

## What's Included
Detailed list of all resources...
# Validate structure
npm run plugin:validate

# Test installation locally
copilot plugin install ./plugins/my-plugin

# Verify all references resolve
npm run build

Troubleshooting

  • Verify marketplace is added: copilot plugin marketplace list
  • Check plugin name spelling
  • Ensure you have internet connectivity
  • Try updating the marketplace: copilot plugin marketplace update
  • Verify plugin.json paths are correct
  • Check files exist in the repository
  • Reload VS Code window
  • Re-install plugin: copilot plugin uninstall X && copilot plugin install X
  • Check plugin.json is valid JSON
  • Verify all paths are relative and correct
  • Ensure name matches folder name
  • Run npm run plugin:validate for detailed errors

Plugin Marketplace

The plugin marketplace is generated from plugin.json files:
// .github/plugin/marketplace.json
{
  "plugins": [
    {
      "name": "csharp-dotnet-development",
      "description": "Essential toolkit for C# and .NET",
      "version": "1.0.0",
      "keywords": ["csharp", "dotnet"],
      "items": 9
    }
  ]
}
This file is:
  • Auto-generated by npm run build
  • Discoverable by GitHub Copilot CLI
  • Searchable by keywords and tags

Build docs developers (and LLMs) love