You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
* Migrating chat modes to agents now that's been released to stable
* Fixing collections
* Fixing names of agents
* Formatting
* name too long
* Escaping C# agent name
Copy file name to clipboardExpand all lines: .github/copilot-instructions.md
+23-23Lines changed: 23 additions & 23 deletions
Display the source diff
Display the rich diff
Original file line number
Diff line number
Diff line change
@@ -2,40 +2,40 @@ The following instructions are only to be applied when performing a code review.
2
2
3
3
## README updates
4
4
5
-
*[ ] The new file should be added to the `README.md`.
5
+
-[ ] The new file should be added to the `README.md`.
6
6
7
7
## Prompt file guide
8
8
9
9
**Only apply to files that end in `.prompt.md`**
10
10
11
-
*[ ] The prompt has markdown front matter.
12
-
*[ ] The prompt has a `mode` field specified of either `agent` or `ask`.
13
-
*[ ] The prompt has a `description` field.
14
-
*[ ] The `description` field is not empty.
15
-
*[ ] The `description` field value is wrapped in single quotes.
16
-
*[ ] The file name is lower case, with words separated by hyphens.
17
-
*[ ] Encourage the use of `tools`, but it's not required.
18
-
*[ ] Strongly encourage the use of `model` to specify the model that the prompt is optimised for.
11
+
-[ ] The prompt has markdown front matter.
12
+
-[ ] The prompt has a `mode` field specified of either `agent` or `ask`.
13
+
-[ ] The prompt has a `description` field.
14
+
-[ ] The `description` field is not empty.
15
+
-[ ] The `description` field value is wrapped in single quotes.
16
+
-[ ] The file name is lower case, with words separated by hyphens.
17
+
-[ ] Encourage the use of `tools`, but it's not required.
18
+
-[ ] Strongly encourage the use of `model` to specify the model that the prompt is optimised for.
19
19
20
20
## Instruction file guide
21
21
22
22
**Only apply to files that end in `.instructions.md`**
23
23
24
-
*[ ] The instruction has markdown front matter.
25
-
*[ ] The instruction has a `description` field.
26
-
*[ ] The `description` field is not empty.
27
-
*[ ] The `description` field value is wrapped in single quotes.
28
-
*[ ] The file name is lower case, with words separated by hyphens.
29
-
*[ ] The instruction has an `applyTo` field that specifies the file or files to which the instructions apply. If they wish to specify multiple file paths they should formated like `'**.js, **.ts'`.
24
+
-[ ] The instruction has markdown front matter.
25
+
-[ ] The instruction has a `description` field.
26
+
-[ ] The `description` field is not empty.
27
+
-[ ] The `description` field value is wrapped in single quotes.
28
+
-[ ] The file name is lower case, with words separated by hyphens.
29
+
-[ ] The instruction has an `applyTo` field that specifies the file or files to which the instructions apply. If they wish to specify multiple file paths they should formated like `'**.js, **.ts'`.
30
30
31
31
## Chat Mode file guide
32
32
33
-
**Only apply to files that end in `.chatmode.md`**
33
+
**Only apply to files that end in `.agent.md`**
34
34
35
-
*[ ] The chat mode has markdown front matter.
36
-
*[ ] The chat mode has a `description` field.
37
-
*[ ] The `description` field is not empty.
38
-
*[ ] The `description` field value is wrapped in single quotes.
39
-
*[ ] The file name is lower case, with words separated by hyphens.
40
-
*[ ] Encourage the use of `tools`, but it's not required.
41
-
*[ ] Strongly encourage the use of `model` to specify the model that the chat mode is optimised for.
35
+
-[ ] The chat mode has markdown front matter.
36
+
-[ ] The chat mode has a `description` field.
37
+
-[ ] The `description` field is not empty.
38
+
-[ ] The `description` field value is wrapped in single quotes.
39
+
-[ ] The file name is lower case, with words separated by hyphens.
40
+
-[ ] Encourage the use of `tools`, but it's not required.
41
+
-[ ] Strongly encourage the use of `model` to specify the model that the chat mode is optimised for.
Copy file name to clipboardExpand all lines: CONTRIBUTING.md
+4-4Lines changed: 4 additions & 4 deletions
Display the source diff
Display the rich diff
Original file line number
Diff line number
Diff line change
@@ -65,8 +65,8 @@ Your goal is to...
65
65
66
66
Chat modes are specialized configurations that transform GitHub Copilot Chat into domain-specific assistants or personas for particular development scenarios.
67
67
68
-
1.**Create your chat mode file**: Add a new `.chatmode.md` file in the `chatmodes/` directory
69
-
2.**Follow the naming convention**: Use descriptive, lowercase filenames with hyphens and the `.chatmode.md` extension (e.g., `react-performance-expert.chatmode.md`)
68
+
1.**Create your chat mode file**: Add a new `.agent.md` file in the `agents/` directory
69
+
2.**Follow the naming convention**: Use descriptive, lowercase filenames with hyphens and the `.agent.md` extension (e.g., `react-performance-expert.agent.md`)
70
70
3.**Include frontmatter**: Add metadata at the top of your file with required fields
71
71
4.**Define the persona**: Create a clear identity and expertise area for the chat mode
72
72
5.**Test your chat mode**: Ensure the chat mode provides helpful, accurate responses in its domain
Copy file name to clipboardExpand all lines: README.md
+3-8Lines changed: 3 additions & 8 deletions
Display the source diff
Display the rich diff
Original file line number
Diff line number
Diff line change
@@ -14,12 +14,11 @@ This repository provides a comprehensive toolkit for enhancing GitHub Copilot wi
14
14
-**👉 [Awesome Agents](docs/README.agents.md)** - Specialized GitHub Copilot agents that integrate with MCP servers to provide enhanced capabilities for specific workflows and tools
15
15
-**👉 [Awesome Prompts](docs/README.prompts.md)** - Focused, task-specific prompts for generating code, documentation, and solving specific problems
16
16
-**👉 [Awesome Instructions](docs/README.instructions.md)** - Comprehensive coding standards and best practices that apply to specific file patterns or entire projects
17
-
-**👉 [Awesome Chat Modes](docs/README.chatmodes.md)** - Specialized AI personas and conversation modes for different roles and contexts
18
17
-**👉 [Awesome Collections](docs/README.collections.md)** - Curated collections of related prompts, instructions, and chat modes organized around specific themes and workflows
19
18
20
19
## 🌟 Featured Collections
21
20
22
-
Discover our curated collections of prompts, instructions, and chat modes organized around specific themes and workflows.
21
+
Discover our curated collections of prompts, instructions, and agents organized around specific themes and workflows.
23
22
24
23
| Name | Description | Items | Tags |
25
24
| ---- | ----------- | ----- | ---- |
@@ -73,10 +72,6 @@ Use the `/` command in GitHub Copilot Chat to access prompts:
73
72
74
73
Instructions automatically apply to files based on their patterns and provide contextual guidance for coding standards, frameworks, and best practices.
75
74
76
-
### 💭 Chat Modes
77
-
78
-
Activate chat modes to get specialized assistance from AI personas tailored for specific roles like architects, DBAs, or security experts.
79
-
80
75
## 🎯 Why Use Awesome GitHub Copilot?
81
76
82
77
-**Productivity**: Pre-built agents, prompts and instructions save time and provide consistent results.
@@ -104,7 +99,7 @@ We welcome contributions! Please see our [Contributing Guidelines](CONTRIBUTING.
104
99
```plaintext
105
100
├── prompts/ # Task-specific prompts (.prompt.md)
106
101
├── instructions/ # Coding standards and best practices (.instructions.md)
107
-
├── chatmodes/ # AI personas and specialized modes (.chatmode.md)
102
+
├── agents/ # AI personas and specialized modes (.agent.md)
108
103
├── collections/ # Curated collections of related items (.collection.yml)
109
104
└── scripts/ # Utility scripts for maintenance
110
105
```
@@ -125,7 +120,7 @@ The customizations in this repository are sourced from and created by third-part
125
120
126
121
---
127
122
128
-
**Ready to supercharge your coding experience?** Start exploring our [prompts](docs/README.prompts.md), [instructions](docs/README.instructions.md), and [chat modes](docs/README.chatmodes.md)!
123
+
**Ready to supercharge your coding experience?** Start exploring our [prompts](docs/README.prompts.md), [instructions](docs/README.instructions.md), and [custom agents](docs/README.agents.md)!
Copy file name to clipboardExpand all lines: agents/CSharpExpert.agent.md
+55-46Lines changed: 55 additions & 46 deletions
Display the source diff
Display the rich diff
Original file line number
Diff line number
Diff line change
@@ -1,11 +1,13 @@
1
1
---
2
-
name: C# Expert
2
+
name: "C# Expert"
3
3
description: An agent designed to assist with software development tasks for .NET projects.
4
4
# version: 2025-10-27a
5
5
---
6
+
6
7
You are an expert C#/.NET developer. You help with .NET tasks by giving clean, well-designed, error-free, fast, secure, readable, and maintainable code that follows .NET conventions. You also give insights, best practices, general software design tips, and testing best practices.
7
8
8
9
When invoked:
10
+
9
11
- Understand the user's .NET task and context
10
12
- Propose clean, organized solutions that follow .NET conventions
11
13
- Cover security (authentication, authorization, data protection)
* .NET Framework: May use `MSBuild` directly or require Visual Studio
90
-
* Look for custom targets/scripts: `Directory.Build.targets`, `build.cmd/.sh`, `Build.ps1`.
94
+
- .NET 5+: `dotnet build`, `dotnet publish`.
95
+
- .NET Framework: May use `MSBuild` directly or require Visual Studio
96
+
- Look for custom targets/scripts: `Directory.Build.targets`, `build.cmd/.sh`, `Build.ps1`.
91
97
92
98
## Good practice
93
-
* Always compile or check docs first if there is unfamiliar syntax. Don't try to correct the syntax if code can compile.
94
-
* Don't change TFM, SDK, or `<LangVersion>` unless asked.
95
99
100
+
- Always compile or check docs first if there is unfamiliar syntax. Don't try to correct the syntax if code can compile.
101
+
- Don't change TFM, SDK, or `<LangVersion>` unless asked.
96
102
97
103
# Async Programming Best Practices
98
104
99
-
***Naming:** all async methods end with `Async` (incl. CLI handlers).
100
-
***Always await:** no fire-and-forget; if timing out, **cancel the work**.
101
-
***Cancellation end-to-end:** accept a `CancellationToken`, pass it through, call `ThrowIfCancellationRequested()` in loops, make delays cancelable (`Task.Delay(ms, ct)`).
102
-
***Timeouts:** use linked `CancellationTokenSource` + `CancelAfter` (or `WhenAny`**and** cancel the pending task).
103
-
***Context:** use `ConfigureAwait(false)` in helper/library code; omit in app entry/UI.
***No pointless wrappers:** don’t add `async/await` if you just return the task.
105
+
-**Naming:** all async methods end with `Async` (incl. CLI handlers).
106
+
-**Always await:** no fire-and-forget; if timing out, **cancel the work**.
107
+
-**Cancellation end-to-end:** accept a `CancellationToken`, pass it through, call `ThrowIfCancellationRequested()` in loops, make delays cancelable (`Task.Delay(ms, ct)`).
108
+
-**Timeouts:** use linked `CancellationTokenSource` + `CancelAfter` (or `WhenAny`**and** cancel the pending task).
109
+
-**Context:** use `ConfigureAwait(false)` in helper/library code; omit in app entry/UI.
0 commit comments