Skip to content

Commit 244176e

Browse files
authored
Some improvements to the contributing guide (#189)
1 parent 5bddac3 commit 244176e

File tree

1 file changed

+73
-4
lines changed

1 file changed

+73
-4
lines changed

CONTRIBUTING.md

Lines changed: 73 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -9,12 +9,16 @@ Thank you for your interest in contributing to the Awesome GitHub Copilot reposi
99
Instructions help customize GitHub Copilot's behavior for specific technologies, coding practices, or domains.
1010

1111
1. **Create your instruction file**: Add a new `.md` file in the `instructions/` directory
12-
2. **Follow the naming convention**: Use descriptive, lowercase filenames with hyphens (e.g., `python-django.md`)
12+
2. **Follow the naming convention**: Use descriptive, lowercase filenames with hyphens (e.g., `python-django.instructions.md`)
1313
3. **Structure your content**: Start with a clear heading and organize your instructions logically
1414
4. **Test your instructions**: Make sure your instructions work well with GitHub Copilot
1515

1616
#### Example instruction format:
1717
```markdown
18+
---
19+
description: 'Instructions for customizing GitHub Copilot behavior for specific technologies and practices'
20+
---
21+
1822
# Your Technology/Framework Name
1923

2024
## Instructions
@@ -40,9 +44,9 @@ Prompts are ready-to-use templates for specific development scenarios and tasks.
4044
#### Example prompt format:
4145
```markdown
4246
---
43-
mode: "agent"
44-
tools: ["codebase", "terminalCommand"]
45-
description: "Brief description of what this prompt does"
47+
mode: 'agent'
48+
tools: ['codebase', 'terminalCommand']
49+
description: 'Brief description of what this prompt does'
4650
---
4751

4852
# Prompt Title
@@ -55,6 +59,47 @@ Your goal is to...
5559
- Include examples where helpful
5660
```
5761

62+
### Adding Chat Modes
63+
64+
Chat modes are specialized configurations that transform GitHub Copilot Chat into domain-specific assistants or personas for particular development scenarios.
65+
66+
1. **Create your chat mode file**: Add a new `.chatmode.md` file in the `chatmodes/` directory
67+
2. **Follow the naming convention**: Use descriptive, lowercase filenames with hyphens and the `.chatmode.md` extension (e.g., `react-performance-expert.chatmode.md`)
68+
3. **Include frontmatter**: Add metadata at the top of your file with required fields
69+
4. **Define the persona**: Create a clear identity and expertise area for the chat mode
70+
5. **Test your chat mode**: Ensure the chat mode provides helpful, accurate responses in its domain
71+
72+
#### Example chat mode format:
73+
```markdown
74+
---
75+
description: 'Brief description of the chat mode and its purpose'
76+
model: 'gpt-5'
77+
tools: ['codebase', 'terminalCommand']
78+
---
79+
80+
# Chat Mode Title
81+
82+
You are an expert [domain/role] with deep knowledge in [specific areas].
83+
84+
## Your Expertise
85+
86+
- [Specific skill 1]
87+
- [Specific skill 2]
88+
- [Specific skill 3]
89+
90+
## Your Approach
91+
92+
- [How you help users]
93+
- [Your communication style]
94+
- [What you prioritize]
95+
96+
## Guidelines
97+
98+
- [Specific instructions for responses]
99+
- [Constraints or limitations]
100+
- [Best practices to follow]
101+
```
102+
58103
## Submitting Your Contribution
59104

60105
1. **Fork this repository**
@@ -68,13 +113,37 @@ Your goal is to...
68113
- A brief description of what your instruction/prompt does
69114
- Any relevant context or usage notes
70115

116+
## What We Accept
117+
118+
We welcome contributions covering any technology, framework, or development practice that helps developers work more effectively with GitHub Copilot. This includes:
119+
120+
- Programming languages and frameworks
121+
- Development methodologies and best practices
122+
- Architecture patterns and design principles
123+
- Testing strategies and quality assurance
124+
- DevOps and deployment practices
125+
- Accessibility and inclusive design
126+
- Performance optimization techniques
127+
128+
## What We Don't Accept
129+
130+
To maintain a safe, responsible, and constructive community, we will **not accept** contributions that:
131+
132+
- **Violate Responsible AI Principles**: Content that attempts to circumvent Microsoft/GitHub's Responsible AI guidelines or promotes harmful AI usage
133+
- **Compromise Security**: Instructions designed to bypass security policies, exploit vulnerabilities, or weaken system security
134+
- **Enable Malicious Activities**: Content intended to harm other systems, users, or organizations
135+
- **Exploit Weaknesses**: Instructions that take advantage of vulnerabilities in other platforms or services
136+
- **Promote Harmful Content**: Guidance that could lead to the creation of harmful, discriminatory, or inappropriate content
137+
- **Circumvent Platform Policies**: Attempts to work around GitHub, Microsoft, or other platform terms of service
138+
71139
## Quality Guidelines
72140

73141
- **Be specific**: Generic instructions are less helpful than specific, actionable guidance
74142
- **Test your content**: Ensure your instructions or prompts work well with GitHub Copilot
75143
- **Follow conventions**: Use consistent formatting and naming
76144
- **Keep it focused**: Each file should address a specific technology, framework, or use case
77145
- **Write clearly**: Use simple, direct language
146+
- **Promote best practices**: Encourage secure, maintainable, and ethical development practices
78147

79148
## Code of Conduct
80149

0 commit comments

Comments
 (0)