Enhance your GitHub Copilot experience with comprehensive instructions, prompts, chat modes, and configurations. Get consistent AI assistance that follows your team's coding standards and project requirements for development, architecture, planning, and documentation tasks.
There are many ways GitHub Copilot can be used to help you with not just your coding tasks, but also with ideation, problem solving, understanding, planning, research and so much more.
The biggest challenge is either creating or finding the right prompts and tools to get the most out of GitHub Copilot - and when to use them.
I've spent many hours building my own tools and prompts and chat modes to help me with my work, and I want to share them with you.
Note
I created this repository without knowing the GitHub team had plans to release a similar library https://github.com/github/awesome-copilot. However, I am planning to migrate all the resource from this repository over to the Github Awesome Copilot repository in the future. So, you will start seeing duplicated content in both repositories.
I am considering retaining this repository to enhance it with more detailed pages on each chat mode, prompt file showing usage examples. As what is possible with these modes often require more detailed examination and demonstrations.
GitHub Copilot provides multiple ways to customize AI responses and tailor assistance to your specific workflows, team guidelines, and project requirements:
| π§ Custom Instructions | π Prompt Files (Reusable Prompts) | π§© Custom Chat Modes | π MCP Servers |
|---|---|---|---|
| Define common guidelines for tasks like code generation, reviews, and commit messages. Describe how tasks should be performed Benefits: β’ Automatic inclusion in every chat request β’ Repository-wide consistency β’ Multiple implementation options |
Create reusable, standalone prompts for specific tasks. Describe what should be done with optional task-specific guidelines Benefits: β’ Eliminate repetitive prompt writing β’ Shareable across teams β’ Support for variables and dependencies |
Define chat behavior, available tools, and codebase interaction patterns within specific boundaries for each request Benefits: β’ Context-aware assistance β’ Tool configuration β’ Role-specific workflows |
Extend GitHub Copilot agents with standardized tools, resources, and prompts via Model Context Protocol for specialized tasks and external integrations Benefits: β’ Invoke tools for databases, APIs, and file operations β’ Access external resources as chat context β’ Pre-configured prompts for complex workflows β’ Tool confirmation and parameter editing β’ Automatic discovery and workspace sharing |
π‘ Pro Tip: Custom instructions only affect Copilot Chat (not inline code completions). You can combine all three customization types - use custom instructions for general guidelines, prompt files for specific tasks, and chat modes to control the interaction context.
Custom instruction files with specific language and framework guidance can be found in the instructions/ folder.
Important
Custom Instructions only apply to Chat modes (Ask, Edit, Agent or custom modes), they do not apply to Copilot auto-completion in the editor.
| Title | Description | Install |
|---|---|---|
| Azure Developer CLI Solution Accelerator Instructions | Apply Azure Developer CLI best practices and guidelines for creating Azure solution accelerators. | |
| Copilot Process tracking Instructions | See process Copilot is following where you can edit this to reshape the interaction or save when follow up may be needed. | |
| C# 14 Best Practices for AI Code Generation Instructions | C# 14 best practices and formatting guidelines for AI code generation. | |
| C# Best Practices for AI Code Generation Instructions | C# best practices and formatting guidelines for AI code generation (all versions). | |
| Markdown | Documentation and content creation standards. |
To set a custom instruction file in your repository:
- Copy these instructions to your
.github/copilot-instructions.mdfile or create task-specific.github/.instructions.mdfiles in your workspace's.github/instructionsfolder.
This file will automatically apply to all contributors when they use GitHub Copilot in the specified file types (e.g., C# files).
Prompt file examples are found in the prompts/ folder.
| Title | Description | Install |
|---|---|---|
| Create Architectural Decision Record | Create an Architectural Decision Record (ADR) document for AI-optimized decision documentation. | |
| Create GitHub Issue from Specification | Create GitHub Issue for feature request from specification file using feature_request.yml template. | |
| Create GitHub Issue from Implementation Plan | Create GitHub Issues from implementation plan phases using feature_request.yml or chore_request.yml templates. | |
| Create GitHub Issues for Unmet Specification Requirements | Create GitHub Issues for unimplemented requirements from specification files using feature_request.yml template. | |
| Create Implementation Plan | Create a new implementation plan file for new features, refactoring existing code or upgrading packages, design, architecture or infrastructure. | |
| Create LLMs.txt File from Repository Structure | Create an llms.txt file from scratch based on repository structure following the llms.txt specification at https://llmstxt.org/ | |
| Generate Standard OO Component Documentation | Create comprehensive, standardized documentation for object-oriented components following industry best practices and architectural documentation standards. | |
| Create Specification | Create a new specification file for the solution, optimized for Generative AI consumption. | |
| .NET/C# Best Practices | Ensure .NET/C# code meets best practices for the solution/project. | |
| .NET/C# Design Pattern Review | Review the C#/.NET code for design pattern implementation and suggest improvements. | |
| Review Azure Architecture Center Multitenant Service-Specific Guidance document | Review Azure Architecture Center multitenant service-specific guidance to ensure it is up-to-date with multitenant features provided by the service and guidance is still relevant. | |
| Suggest Awesome GitHub Copilot Chatmodes | Suggest relevant GitHub Copilot chatmode files from the awesome-copilot repository based on current repository context and chat history, avoiding duplicates with existing chatmodes in this repository. | |
| Suggest Awesome GitHub Copilot Prompts | Suggest relevant GitHub Copilot prompt files from the awesome-copilot repository based on current repository context and chat history, avoiding duplicates with existing prompts in this repository. | |
| Suggest GitHub Copilot Chatmodes | Suggest relevant GitHub Copilot chatmode files from a GitHub repository based on current repository context and chat history, avoiding duplicates with existing chatmodes in this repository. | |
| Suggest GitHub Copilot Prompts | Suggest relevant GitHub Copilot prompt files from a GitHub repository based on current repository context and chat history, avoiding duplicates with existing prompts in this repository. | |
| Update Azure Verified Modules in Bicep Files | Update Azure Verified Modules (AVM) to latest versions in Bicep files. | |
| Update Implementation Plan | Update an existing implementation plan file with new or update requirements to provide new features, refactoring existing code or upgrading packages, design, architecture or infrastructure. | |
| Update LLMs.txt File | Update the llms.txt file in the root folder to reflect changes in documentation or specifications following the llms.txt specification at https://llmstxt.org/ | |
| Update Markdown File Index | Update a markdown file section with an index/table of files from a specified folder. | |
| Update Standard OO Component Documentation | Update existing object-oriented component documentation following industry best practices and architectural documentation standards. | |
| Update Specification | Update an existing specification file for the solution, optimized for Generative AI consumption based on new requirements or updates to any existing code. |
To use a prompt file:
-
Copy it from the
promptsfolder in this repository to your workspace or user.vscode/prompts/folder. -
Use
@in VS Code chat and select your prompt, or run theChat: Run Promptcommand.
Custom chat modes define specific behaviors and tools for GitHub Copilot Chat, enabling enhanced context-aware assistance for particular tasks or workflows.
Chat mode examples are found in the chatmodes/ folder.
| Title | Description | Install |
|---|---|---|
| Azure Principal Architect | Provide expert Azure Principal Architect guidance using Azure Well-Architected Framework principles and Microsoft best practices. | |
| Azure SaaS Architect | Provide expert Azure SaaS Architect guidance focusing on multitenant applications using Azure Well-Architected SaaS principles and Microsoft best practices. | |
| Azure AVM Bicep mode | Create, update, or review Azure IaC in Bicep using Azure Verified Modules (AVM). | |
| Azure AVM Terraform mode | Create, update, or review Azure IaC in Terraform using Azure Verified Modules (AVM). | |
| Critical thinking | Challenge assumptions and encourage critical thinking to ensure the best possible solution and outcomes. | |
| C#/.NET Janitor | Perform janitorial tasks on C#/.NET code including cleanup, modernization, and tech debt remediation. | |
| Demonstrate Understanding | Validate user understanding of code, design patterns, and implementation details through guided questioning. | |
| Expert .NET software engineer | Provide expert .NET software engineering guidance using modern software design patterns. | |
| Expert React Frontend Engineer | Provide expert React frontend engineering guidance using modern TypeScript and design patterns. | |
| Implementation Plan Generation Mode | Generate an implementation plan for new features or refactoring existing code. | |
| Universal Janitor | Perform janitorial tasks on any codebase including cleanup, simplification, and tech debt remediation. | |
| Mentor | Help mentor the engineer by providing guidance and support. | |
| Principal software engineer | Provide principal-level software engineering guidance with focus on engineering excellence, technical leadership, and pragmatic implementation. | |
| Semantic Kernel .NET | Create, update, refactor, explain or work with code using the .NET version of Semantic Kernel. | |
| Semantic Kernel Python | Create, update, refactor, explain or work with code using the Python version of Semantic Kernel. | |
| Idea Generator | Brainstorm and develop new application ideas through fun, interactive questioning until ready for specification creation. | |
| Specification | Generate or update specification documents for new or existing functionality. | |
| Technical Debt Remediation Plan | Generate technical debt remediation plans for code, tests, and documentation. |
To use a chat mode:
-
Copy it from the
chatmodesfolder in this repository to your workspace or user.vscode/chatmodes/folder. -
In VS Code, select your custom chat mode from the chat mode dropdown.
Sample MCP (Model Context Protocol) server configurations can be found in the mcp/ folder.
MCP servers extend GitHub Copilot agents with external tools, resources, and prompts for specialized tasks.
| Asset Type | Description | Availability | Configuration |
|---|---|---|---|
| Custom Instructions | Language-specific guidelines that apply to file types (e.g., C# files) | VS Code & VS | User & Workspace |
| Prompt Files | Reusable, standalone prompts for specific tasks with optional variables | VS Code only | User & Workspace |
| Custom Chat Modes | Predefined instructions and tools for specialized workflows and contexts | VS Code only | User & Workspace |
| MCP Servers | External service integrations via Model Context Protocol for enhanced functionality | VS Code & VS | User & Workspace |
| Feature Name | Description | VS Code/VS Support | Configuration Level |
|---|---|---|---|
| Custom Code Generation Instructions | Code generation instructions for code generation tasks. | VS Code only | User & Workspace |
| Prompt Files | Prompt files are reusable prompts for common tasks. | VS Code only | User & Workspace |
| Custom Chat Modes | Custom chat modes combine instructions and tools for specific workflows. | VS Code only | User & Workspace |
| MCP Servers | MCP Servers enable Copilot to call external services via Model Context Protocol. | VS Code & VS | User & Workspace |
- VS Code Copilot Customization Documentation - Official Microsoft documentation
- GitHub Copilot Chat Documentation - Complete chat feature guide
- Custom Chat Modes - Advanced chat configuration
- VS Code Settings - General VS Code configuration guide
This repository uses various configuration files to ensure consistent code style and avoid issues with line endings:
.editorconfig- Defines coding styles across different editors and IDEs.gitattributes- Ensures consistent line endings in text files.vscode/settings.json- VS Code-specific settings for this repository.vscode/extensions.json- Recommended VS Code extensions
π‘ Note: All markdown files in this repository use LF line endings (Unix-style) to avoid mixed line endings issues. The repository is configured to automatically handle line endings conversion.
This project is licensed under the MIT License - see the LICENSE file for details.
Please note that this project is released with a Contributor Code of Conduct. By participating in this project you agree to abide by its terms.
This project may contain trademarks or logos for projects, products, or services. Authorized use of Microsoft trademarks or logos is subject to and must follow Microsoft's Trademark & Brand Guidelines. Use of Microsoft trademarks or logos in modified versions of this project must not cause confusion or imply Microsoft sponsorship. Any use of third-party trademarks or logos are subject to those third-party's policies.

