Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
72 changes: 45 additions & 27 deletions .github/plugin/marketplace.json
Original file line number Diff line number Diff line change
Expand Up @@ -19,7 +19,7 @@
{
"name": "azure-cloud-development",
"source": "./plugins/azure-cloud-development",
"description": "Azure cloud development tools including Infrastructure as Code, architecture patterns, and cost optimization.",
"description": "Comprehensive Azure cloud development tools including Infrastructure as Code, serverless functions, architecture patterns, and cost optimization for building scalable cloud applications.",
"version": "1.0.0"
},
{
Expand All @@ -34,10 +34,16 @@
"description": "Tools for REPL-first Clojure workflows featuring Clojure instructions, the interactive programming chat mode and supporting guidance.",
"version": "1.0.0"
},
{
"name": "context-engineering",
"source": "./plugins/context-engineering",
"description": "Tools and techniques for maximizing GitHub Copilot effectiveness through better context management. Includes guidelines for structuring code, an agent for planning multi-file changes, and prompts for context-aware development.",
"version": "1.0.0"
},
{
"name": "copilot-sdk",
"source": "./plugins/copilot-sdk",
"description": "Build applications with the GitHub Copilot SDK across multiple programming languages. Includes comprehensive instructions for C#, Go, Node.js/TypeScript, and Python.",
"description": "Build applications with the GitHub Copilot SDK across multiple programming languages. Includes comprehensive instructions for C#, Go, Node.js/TypeScript, and Python to help you create AI-powered applications.",
"version": "1.0.0"
},
{
Expand All @@ -49,7 +55,7 @@
{
"name": "csharp-mcp-development",
"source": "./plugins/csharp-mcp-development",
"description": "Complete toolkit for building Model Context Protocol (MCP) servers in C# using the official SDK.",
"description": "Complete toolkit for building Model Context Protocol (MCP) servers in C# using the official SDK. Includes instructions for best practices, a prompt for generating servers, and an expert chat mode for guidance.",
"version": "1.0.0"
},
{
Expand All @@ -61,7 +67,7 @@
{
"name": "dataverse-sdk-for-python",
"source": "./plugins/dataverse-sdk-for-python",
"description": "Comprehensive collection for building production-ready Python integrations with Microsoft Dataverse.",
"description": "Comprehensive collection for building production-ready Python integrations with Microsoft Dataverse. Includes official documentation, best practices, advanced features, file operations, and code generation prompts.",
"version": "1.0.0"
},
{
Expand All @@ -82,10 +88,16 @@
"description": "Essential prompts, instructions, and chat modes for modern frontend web development including React, Angular, Vue, TypeScript, and CSS frameworks.",
"version": "1.0.0"
},
{
"name": "gem-team",
"source": "./plugins/gem-team",
"description": "A modular multi-agent team for complex project execution with DAG-based planning, parallel execution, TDD verification, and automated testing.",
"version": "1.0.0"
},
{
"name": "go-mcp-development",
"source": "./plugins/go-mcp-development",
"description": "Complete toolkit for building Model Context Protocol (MCP) servers in Go using the official github.com/modelcontextprotocol/go-sdk.",
"description": "Complete toolkit for building Model Context Protocol (MCP) servers in Go using the official github.com/modelcontextprotocol/go-sdk. Includes instructions for best practices, a prompt for generating servers, and an expert chat mode for guidance.",
"version": "1.0.0"
},
{
Expand All @@ -103,91 +115,97 @@
{
"name": "kotlin-mcp-development",
"source": "./plugins/kotlin-mcp-development",
"description": "Complete toolkit for building Model Context Protocol (MCP) servers in Kotlin using the official io.modelcontextprotocol:kotlin-sdk library.",
"description": "Complete toolkit for building Model Context Protocol (MCP) servers in Kotlin using the official io.modelcontextprotocol:kotlin-sdk library. Includes instructions for best practices, a prompt for generating servers, and an expert chat mode for guidance.",
"version": "1.0.0"
},
{
"name": "mcp-m365-copilot",
"source": "./plugins/mcp-m365-copilot",
"description": "Comprehensive collection for building declarative agents with Model Context Protocol integration for Microsoft 365 Copilot.",
"description": "Comprehensive collection for building declarative agents with Model Context Protocol integration for Microsoft 365 Copilot",
"version": "1.0.0"
},
{
"name": "openapi-to-application-csharp-dotnet",
"source": "./plugins/openapi-to-application-csharp-dotnet",
"description": "Generate production-ready .NET applications from OpenAPI specifications. Includes ASP.NET Core project scaffolding, controller generation, and entity framework integration.",
"description": "Generate production-ready .NET applications from OpenAPI specifications. Includes ASP.NET Core project scaffolding, controller generation, entity framework integration, and C# best practices.",
"version": "1.0.0"
},
{
"name": "openapi-to-application-go",
"source": "./plugins/openapi-to-application-go",
"description": "Generate production-ready Go applications from OpenAPI specifications. Includes project scaffolding, handler generation, middleware setup, and Go best practices.",
"description": "Generate production-ready Go applications from OpenAPI specifications. Includes project scaffolding, handler generation, middleware setup, and Go best practices for REST APIs.",
"version": "1.0.0"
},
{
"name": "openapi-to-application-java-spring-boot",
"source": "./plugins/openapi-to-application-java-spring-boot",
"description": "Generate production-ready Spring Boot applications from OpenAPI specifications. Includes project scaffolding, REST controller generation, and service layer organization.",
"description": "Generate production-ready Spring Boot applications from OpenAPI specifications. Includes project scaffolding, REST controller generation, service layer organization, and Spring Boot best practices.",
"version": "1.0.0"
},
{
"name": "openapi-to-application-nodejs-nestjs",
"source": "./plugins/openapi-to-application-nodejs-nestjs",
"description": "Generate production-ready NestJS applications from OpenAPI specifications. Includes project scaffolding, controller and service generation, and TypeScript best practices.",
"description": "Generate production-ready NestJS applications from OpenAPI specifications. Includes project scaffolding, controller and service generation, TypeScript best practices, and enterprise patterns.",
"version": "1.0.0"
},
{
"name": "openapi-to-application-python-fastapi",
"source": "./plugins/openapi-to-application-python-fastapi",
"description": "Generate production-ready FastAPI applications from OpenAPI specifications. Includes project scaffolding, route generation, and dependency injection.",
"description": "Generate production-ready FastAPI applications from OpenAPI specifications. Includes project scaffolding, route generation, dependency injection, and Python best practices for async APIs.",
"version": "1.0.0"
},
{
"name": "ospo-sponsorship",
"source": "./plugins/ospo-sponsorship",
"description": "Tools and resources for Open Source Program Offices (OSPOs) to identify, evaluate, and manage sponsorship of open source dependencies through GitHub Sponsors, Open Collective, and other funding platforms.",
"version": "1.0.0"
},
{
"name": "partners",
"source": "./plugins/partners",
"description": "Custom agents that have been created by GitHub partners.",
"description": "Custom agents that have been created by GitHub partners",
"version": "1.0.0"
},
{
"name": "pcf-development",
"source": "./plugins/pcf-development",
"description": "Complete toolkit for developing custom code components using Power Apps Component Framework for model-driven and canvas apps.",
"description": "Complete toolkit for developing custom code components using Power Apps Component Framework for model-driven and canvas apps",
"version": "1.0.0"
},
{
"name": "php-mcp-development",
"source": "./plugins/php-mcp-development",
"description": "Comprehensive resources for building Model Context Protocol servers using the official PHP SDK with attribute-based discovery.",
"description": "Comprehensive resources for building Model Context Protocol servers using the official PHP SDK with attribute-based discovery, including best practices, project generation, and expert assistance",
"version": "1.0.0"
},
{
"name": "power-apps-code-apps",
"source": "./plugins/power-apps-code-apps",
"description": "Complete toolkit for Power Apps Code Apps development including project scaffolding, development standards, and expert guidance.",
"description": "Complete toolkit for Power Apps Code Apps development including project scaffolding, development standards, and expert guidance for building code-first applications with Power Platform integration.",
"version": "1.0.0"
},
{
"name": "power-bi-development",
"source": "./plugins/power-bi-development",
"description": "Comprehensive Power BI development resources including data modeling, DAX optimization, performance tuning, and visualization design.",
"description": "Comprehensive Power BI development resources including data modeling, DAX optimization, performance tuning, visualization design, security best practices, and DevOps/ALM guidance for building enterprise-grade Power BI solutions.",
"version": "1.0.0"
},
{
"name": "power-platform-mcp-connector-development",
"source": "./plugins/power-platform-mcp-connector-development",
"description": "Complete toolkit for developing Power Platform custom connectors with Model Context Protocol integration for Microsoft Copilot Studio.",
"description": "Complete toolkit for developing Power Platform custom connectors with Model Context Protocol integration for Microsoft Copilot Studio",
"version": "1.0.0"
},
{
"name": "project-planning",
"source": "./plugins/project-planning",
"description": "Tools and guidance for software project planning, feature breakdown, epic management, implementation planning, and task organization.",
"description": "Tools and guidance for software project planning, feature breakdown, epic management, implementation planning, and task organization for development teams.",
"version": "1.0.0"
},
{
"name": "python-mcp-development",
"source": "./plugins/python-mcp-development",
"description": "Complete toolkit for building Model Context Protocol (MCP) servers in Python using the official SDK with FastMCP.",
"description": "Complete toolkit for building Model Context Protocol (MCP) servers in Python using the official SDK with FastMCP. Includes instructions for best practices, a prompt for generating servers, and an expert chat mode for guidance.",
"version": "1.0.0"
},
{
Expand All @@ -199,13 +217,13 @@
{
"name": "rust-mcp-development",
"source": "./plugins/rust-mcp-development",
"description": "Build high-performance Model Context Protocol servers in Rust using the official rmcp SDK with async/await and procedural macros.",
"description": "Build high-performance Model Context Protocol servers in Rust using the official rmcp SDK with async/await, procedural macros, and type-safe implementations.",
"version": "1.0.0"
},
{
"name": "security-best-practices",
"source": "./plugins/security-best-practices",
"description": "Security frameworks, accessibility guidelines, performance optimization, and code quality best practices.",
"description": "Security frameworks, accessibility guidelines, performance optimization, and code quality best practices for building secure, maintainable, and high-performance applications.",
"version": "1.0.0"
},
{
Expand All @@ -217,7 +235,7 @@
{
"name": "structured-autonomy",
"source": "./plugins/structured-autonomy",
"description": "Premium planning, thrifty implementation.",
"description": "Premium planning, thrifty implementation",
"version": "1.0.0"
},
{
Expand All @@ -229,25 +247,25 @@
{
"name": "technical-spike",
"source": "./plugins/technical-spike",
"description": "Tools for creation, management and research of technical spikes to reduce unknowns and assumptions before specification and implementation.",
"description": "Tools for creation, management and research of technical spikes to reduce unknowns and assumptions before proceeding to specification and implementation of solutions.",
"version": "1.0.0"
},
{
"name": "testing-automation",
"source": "./plugins/testing-automation",
"description": "Comprehensive collection for writing tests, test automation, and TDD including unit tests, integration tests, and end-to-end testing.",
"description": "Comprehensive collection for writing tests, test automation, and test-driven development including unit tests, integration tests, and end-to-end testing strategies.",
"version": "1.0.0"
},
{
"name": "typescript-mcp-development",
"source": "./plugins/typescript-mcp-development",
"description": "Complete toolkit for building Model Context Protocol (MCP) servers in TypeScript/Node.js using the official SDK.",
"description": "Complete toolkit for building Model Context Protocol (MCP) servers in TypeScript/Node.js using the official SDK. Includes instructions for best practices, a prompt for generating servers, and an expert chat mode for guidance.",
"version": "1.0.0"
},
{
"name": "typespec-m365-copilot",
"source": "./plugins/typespec-m365-copilot",
"description": "Comprehensive collection of prompts, instructions, and resources for building declarative agents and API plugins using TypeSpec for Microsoft 365 Copilot.",
"description": "Comprehensive collection of prompts, instructions, and resources for building declarative agents and API plugins using TypeSpec for Microsoft 365 Copilot extensibility.",
"version": "1.0.0"
}
]
Expand Down
1 change: 1 addition & 0 deletions .github/workflows/validate-readme.yml
Original file line number Diff line number Diff line change
Expand Up @@ -8,6 +8,7 @@ on:
- "prompts/**"
- "agents/**"
- "collections/**"
- "plugins/**"
- "*.js"
- "README.md"
- "docs/**"
Expand Down
33 changes: 31 additions & 2 deletions AGENTS.md
Original file line number Diff line number Diff line change
Expand Up @@ -32,9 +32,12 @@ The Awesome GitHub Copilot repository is a community-driven collection of custom
# Install dependencies
npm ci

# Build the project (generates README.md)
# Build the project (generates README.md and marketplace.json)
npm run build

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

# Validate collection manifests
npm run collection:validate

Expand Down Expand Up @@ -93,9 +96,18 @@ All agent files (`*.agent.md`), prompt files (`*.prompt.md`), and instruction fi
- Follow the [GitHub Copilot hooks specification](https://docs.github.com/en/copilot/how-tos/use-copilot-agents/coding-agent/use-hooks)
- Optionally includes `tags` field for categorization

#### Plugin Folders (plugins/*)
- Each plugin is a folder containing a `.github/plugin/plugin.json` file with metadata
- plugin.json must have `name` field (matching the folder name)
- plugin.json must have `description` field (describing the plugin's purpose)
- plugin.json must have `version` field (semantic version, e.g., "1.0.0")
- Plugin folders can contain any combination of agents, prompts, instructions, skills, and hooks
- The `marketplace.json` file is automatically generated from all plugins during build
- Plugins are discoverable and installable via GitHub Copilot CLI

### Adding New Resources

When adding a new agent, prompt, instruction, skill, or hook:
When adding a new agent, prompt, instruction, skill, hook, or plugin:

**For Agents, Prompts, and Instructions:**
1. Create the file with proper front matter
Expand All @@ -121,6 +133,14 @@ When adding a new agent, prompt, instruction, skill, or hook:
5. Update the README.md by running: `npm run build`
6. Verify the skill appears in the generated README

**For Plugins:**
1. Create a new folder in `plugins/` with a descriptive name (lowercase with hyphens)
2. Create `.github/plugin/plugin.json` with metadata (name, description, version)
3. Add agents, prompts, instructions, skills, or hooks to the plugin folder
4. Run `npm run build` to update README.md and marketplace.json
5. Verify the plugin appears in `.github/plugin/marketplace.json`
6. Test plugin installation: `copilot plugin install <plugin-name>@awesome-copilot`

### Testing Instructions

```bash
Expand Down Expand Up @@ -219,6 +239,15 @@ For hook folders (hooks/*/):
- [ ] Follows [GitHub Copilot hooks specification](https://docs.github.com/en/copilot/how-tos/use-copilot-agents/coding-agent/use-hooks)
- [ ] Optionally includes `tags` array field for categorization

For plugin folders (plugins/*/):
- [ ] Folder contains a `.github/plugin/plugin.json` file with metadata
- [ ] plugin.json has `name` field matching folder name (lowercase with hyphens)
- [ ] plugin.json has non-empty `description` field
- [ ] plugin.json has `version` field (semantic version, e.g., "1.0.0")
- [ ] Folder name is lower case with hyphens
- [ ] Plugin resources (agents, prompts, etc.) follow their respective guidelines
- [ ] Run `npm run build` to verify marketplace.json is updated correctly

## Contributing

This is a community-driven project. Contributions are welcome! Please see:
Expand Down
26 changes: 25 additions & 1 deletion eng/README.md
Original file line number Diff line number Diff line change
@@ -1,6 +1,30 @@
# Contributor Reporting (Maintainers) 🚧

This directory contains a lightweight helper to generate human-readable reports about missing contributors.
This directory contains build scripts and utilities for maintaining the repository.

## Build Scripts

### `update-readme.mjs`
Generates the main README.md and documentation files from the repository content (agents, prompts, instructions, skills, hooks, collections).

### `generate-marketplace.mjs`
Automatically generates `.github/plugin/marketplace.json` from all plugin directories in the `plugins/` folder. This file is used by the GitHub Copilot CLI to discover and install plugins from this repository.

**How it works:**
- Scans all directories in `plugins/`
- Reads each plugin's `.github/plugin/plugin.json` for metadata
- Generates a consolidated `marketplace.json` with all available plugins
- Runs automatically as part of `npm run build`

**To run manually:**
```bash
npm run plugin:generate-marketplace
```

### `generate-website-data.mjs`
Generates JSON data files for the website from repository content.

## Contributor Tools

- `contributor-report.mjs` — generates a markdown report of merged PRs for missing contributors (includes shared helpers).
- `add-missing-contributors.mjs` — on-demand maintainer script to automatically add missing contributors to `.all-contributorsrc` (infers contribution types from merged PR files, then runs the all-contributors CLI).
Expand Down
Loading
Loading