Skip to content

Commit 212f3ef

Browse files
committed
feat: Add GitHub issue templates, PR template, and CI workflow
- Added bug report and feature request issue templates - Added pull request template with comprehensive checklist - Added GitHub Actions workflow for testing MCP server - Includes validation for chat modes and prompt templates
1 parent 5ebac72 commit 212f3ef

5 files changed

Lines changed: 260 additions & 0 deletions

File tree

Lines changed: 72 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,72 @@
1+
name: 🐛 Bug Report
2+
description: File a bug report to help us improve
3+
title: "[BUG] "
4+
labels: ["bug"]
5+
body:
6+
- type: markdown
7+
attributes:
8+
value: |
9+
Thanks for taking the time to fill out this bug report! 🐛
10+
11+
- type: textarea
12+
id: what-happened
13+
attributes:
14+
label: What happened?
15+
description: Also tell us, what did you expect to happen?
16+
placeholder: Tell us what you see!
17+
validations:
18+
required: true
19+
20+
- type: textarea
21+
id: reproduce
22+
attributes:
23+
label: Steps to Reproduce
24+
description: How can we reproduce this issue?
25+
placeholder: |
26+
1. Go to '...'
27+
2. Click on '....'
28+
3. Scroll down to '....'
29+
4. See error
30+
validations:
31+
required: true
32+
33+
- type: dropdown
34+
id: chat-mode
35+
attributes:
36+
label: Which chat mode is affected?
37+
multiple: true
38+
options:
39+
- Azure Bicep Development
40+
- Lambda to Functions Migration
41+
- Spec-Driven Development
42+
- General MCP Server
43+
- Not applicable
44+
45+
- type: textarea
46+
id: environment
47+
attributes:
48+
label: Environment
49+
description: What environment are you running in?
50+
placeholder: |
51+
- OS: [e.g. Windows 11, macOS 14, Ubuntu 22.04]
52+
- VS Code Version: [e.g. 1.85.0]
53+
- Python Version: [e.g. 3.11.5]
54+
- MCP Version: [e.g. 1.0.0]
55+
validations:
56+
required: true
57+
58+
- type: textarea
59+
id: logs
60+
attributes:
61+
label: Relevant log output
62+
description: Please copy and paste any relevant log output. This will be automatically formatted into code, so no need for backticks.
63+
render: shell
64+
65+
- type: checkboxes
66+
id: terms
67+
attributes:
68+
label: Code of Conduct
69+
description: By submitting this issue, you agree to follow our Code of Conduct
70+
options:
71+
- label: I agree to follow this project's Code of Conduct
72+
required: true
Lines changed: 59 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,59 @@
1+
name: ✨ Feature Request
2+
description: Suggest an idea for this project
3+
title: "[FEATURE] "
4+
labels: ["enhancement"]
5+
body:
6+
- type: markdown
7+
attributes:
8+
value: |
9+
Thanks for suggesting a new feature! ✨
10+
11+
- type: textarea
12+
id: problem
13+
attributes:
14+
label: Is your feature request related to a problem?
15+
description: A clear and concise description of what the problem is.
16+
placeholder: I'm always frustrated when...
17+
18+
- type: textarea
19+
id: solution
20+
attributes:
21+
label: Describe the solution you'd like
22+
description: A clear and concise description of what you want to happen.
23+
validations:
24+
required: true
25+
26+
- type: dropdown
27+
id: feature-type
28+
attributes:
29+
label: What type of feature is this?
30+
multiple: true
31+
options:
32+
- New chat mode
33+
- New custom prompt
34+
- MCP server enhancement
35+
- VS Code integration improvement
36+
- Documentation improvement
37+
- Developer experience
38+
- Other
39+
40+
- type: textarea
41+
id: alternatives
42+
attributes:
43+
label: Describe alternatives you've considered
44+
description: A clear and concise description of any alternative solutions or features you've considered.
45+
46+
- type: textarea
47+
id: context
48+
attributes:
49+
label: Additional context
50+
description: Add any other context, mockups, or screenshots about the feature request here.
51+
52+
- type: checkboxes
53+
id: terms
54+
attributes:
55+
label: Code of Conduct
56+
description: By submitting this issue, you agree to follow our Code of Conduct
57+
options:
58+
- label: I agree to follow this project's Code of Conduct
59+
required: true

.github/pull_request_template.md

Lines changed: 38 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,38 @@
1+
## 📋 Description
2+
<!-- Provide a brief description of the changes in this PR -->
3+
4+
## 🔄 Type of Change
5+
<!-- Mark the relevant option with an [x] -->
6+
- [ ] 🐛 Bug fix (non-breaking change which fixes an issue)
7+
- [ ] ✨ New feature (non-breaking change which adds functionality)
8+
- [ ] 💥 Breaking change (fix or feature that would cause existing functionality to not work as expected)
9+
- [ ] 📚 Documentation update
10+
- [ ] 🧪 Test updates
11+
- [ ] 🎨 Chat mode or prompt improvements
12+
13+
## 🧪 Testing
14+
<!-- Describe the tests that you ran to verify your changes -->
15+
- [ ] MCP server starts without errors
16+
- [ ] Chat modes are created successfully
17+
- [ ] Custom prompts work as expected
18+
- [ ] Example usage script runs successfully
19+
20+
## 📸 Screenshots (if applicable)
21+
<!-- Add screenshots to help explain your changes -->
22+
23+
## ✅ Checklist
24+
<!-- Mark completed items with an [x] -->
25+
- [ ] My code follows the project's style guidelines
26+
- [ ] I have performed a self-review of my own code
27+
- [ ] I have commented my code, particularly in hard-to-understand areas
28+
- [ ] I have made corresponding changes to the documentation
29+
- [ ] My changes generate no new warnings
30+
- [ ] I have added tests that prove my fix is effective or that my feature works
31+
- [ ] New and existing unit tests pass locally with my changes
32+
33+
## 🔗 Related Issues
34+
<!-- Link any related issues here -->
35+
Closes #
36+
37+
## 📝 Additional Notes
38+
<!-- Any additional information that reviewers should know -->
Lines changed: 38 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,38 @@
1+
name: Test MCP Server
2+
3+
on:
4+
push:
5+
branches: [ main ]
6+
pull_request:
7+
branches: [ main ]
8+
9+
jobs:
10+
test:
11+
runs-on: ubuntu-latest
12+
13+
steps:
14+
- uses: actions/checkout@v4
15+
16+
- name: Set up Python
17+
uses: actions/setup-python@v4
18+
with:
19+
python-version: '3.9'
20+
21+
- name: Install dependencies
22+
run: |
23+
python -m pip install --upgrade pip
24+
pip install -r requirements.txt
25+
26+
- name: Test chat mode creation
27+
run: |
28+
python example_usage.py
29+
30+
- name: Verify chat mode files created
31+
run: |
32+
ls -la .github/chatmodes/
33+
ls -la chat_modes/
34+
35+
- name: Validate chat mode file format
36+
run: |
37+
echo "Checking front matter format..."
38+
head -5 .github/chatmodes/*.md

.github/workflows/test.yml

Lines changed: 53 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,53 @@
1+
name: 🧪 Test MCP Server
2+
3+
on:
4+
push:
5+
branches: [ main ]
6+
pull_request:
7+
branches: [ main ]
8+
9+
jobs:
10+
test:
11+
runs-on: ubuntu-latest
12+
strategy:
13+
matrix:
14+
python-version: ["3.9", "3.10", "3.11", "3.12"]
15+
16+
steps:
17+
- uses: actions/checkout@v4
18+
19+
- name: Set up Python ${{ matrix.python-version }}
20+
uses: actions/setup-python@v4
21+
with:
22+
python-version: ${{ matrix.python-version }}
23+
24+
- name: Install dependencies
25+
run: |
26+
python -m pip install --upgrade pip
27+
pip install -r requirements.txt
28+
pip install pytest
29+
30+
- name: Test MCP server can start
31+
run: |
32+
timeout 10s python mcp_chatmode_server.py || test $? = 124
33+
34+
- name: Test example usage
35+
run: |
36+
python example_usage.py
37+
38+
- name: Validate chat mode templates
39+
run: |
40+
# Basic validation that chat mode files exist and are properly formatted
41+
test -f "chat_modes/azure-bicep-development/azure-bicep-development.chatmode.md"
42+
test -f "chat_modes/lambda-to-functions-migration/lambda-to-functions-migration.chatmode.md"
43+
test -f "chat_modes/spec-driven-development/spec-driven-development.chatmode.md"
44+
45+
# Validate that prompt files exist
46+
test -f "chat_modes/azure-bicep-development/review.prompt.md"
47+
test -f "chat_modes/azure-bicep-development/deploy.prompt.md"
48+
test -f "chat_modes/lambda-to-functions-migration/evaluate.prompt.md"
49+
test -f "chat_modes/lambda-to-functions-migration/validate.prompt.md"
50+
test -f "chat_modes/spec-driven-development/validate_spec.prompt.md"
51+
test -f "chat_modes/spec-driven-development/generate_tests.prompt.md"
52+
53+
echo "✅ All chat mode templates validated successfully!"

0 commit comments

Comments
 (0)