Skip to content

Commit 4137c19

Browse files
trsdnCopilot
andcommitted
feat: initial release — CLI-only Copilot customization blueprint
Blueprint for customizing GitHub Copilot CLI with custom agents, instructions, skills, and MCP server configurations. No VS Code. No IDE. Just the terminal. Includes: - Custom agent: Copilot Customization Builder - Skills: skill-builder, setup-audit, cli-guide - Scoped instructions for Markdown files - AGENTS.md for root-level agent instructions - Install script for existing projects - GitHub Actions workflows (release, validate, commit-lint) - Issue templates, PR template, dependabot config - Conventional commits enforcement via git hooks Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>
0 parents  commit 4137c19

27 files changed

+2616
-0
lines changed

.githooks/commit-msg

Lines changed: 49 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,49 @@
1+
#!/bin/bash
2+
# Git commit-msg hook to enforce Conventional Commits
3+
# Install via: ./scripts/setup-hooks.sh
4+
5+
commit_msg_file="$1"
6+
commit_msg=$(head -1 "$commit_msg_file")
7+
8+
# Skip merge commits
9+
if echo "$commit_msg" | grep -qE "^Merge "; then
10+
exit 0
11+
fi
12+
13+
# Skip [skip ci] only commits
14+
if echo "$commit_msg" | grep -qE "^\[skip ci\]$"; then
15+
exit 0
16+
fi
17+
18+
# Conventional Commits pattern
19+
pattern='^(feat|fix|docs|style|refactor|perf|test|build|ci|chore|revert)(\(.+\))?(!)?: .+'
20+
21+
if ! echo "$commit_msg" | grep -qE "$pattern"; then
22+
echo ""
23+
echo "❌ Commit message does not follow Conventional Commits format!"
24+
echo ""
25+
echo " Your message: $commit_msg"
26+
echo ""
27+
echo " Required format: <type>(<optional scope>): <description>"
28+
echo ""
29+
echo " Allowed types:"
30+
echo " feat - A new feature"
31+
echo " fix - A bug fix"
32+
echo " docs - Documentation only"
33+
echo " style - Formatting, no code change"
34+
echo " refactor - Code restructuring"
35+
echo " perf - Performance improvement"
36+
echo " test - Adding/updating tests"
37+
echo " build - Build system changes"
38+
echo " ci - CI configuration changes"
39+
echo " chore - Maintenance tasks"
40+
echo " revert - Reverting a previous commit"
41+
echo ""
42+
echo " Examples:"
43+
echo " feat: add new copilot skill for debugging"
44+
echo " fix(agents): correct yaml frontmatter parsing"
45+
echo " docs: update contributing guidelines"
46+
echo " feat!: redesign skill format (BREAKING CHANGE)"
47+
echo ""
48+
exit 1
49+
fi
Lines changed: 93 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,93 @@
1+
name: Bug Report
2+
description: Report a bug or unexpected behavior
3+
title: '[Bug]: '
4+
labels: ['bug', 'needs-triage']
5+
body:
6+
- type: markdown
7+
attributes:
8+
value: |
9+
Thanks for taking the time to report a bug! Please fill out the form below.
10+
11+
- type: textarea
12+
id: description
13+
attributes:
14+
label: Bug Description
15+
description: A clear and concise description of what the bug is.
16+
placeholder: Describe the bug...
17+
validations:
18+
required: true
19+
20+
- type: textarea
21+
id: reproduce
22+
attributes:
23+
label: Steps to Reproduce
24+
description: Steps to reproduce the behavior
25+
placeholder: |
26+
1. Run 'copilot' in terminal
27+
2. Use '/agent' to select...
28+
3. See error
29+
validations:
30+
required: true
31+
32+
- type: textarea
33+
id: expected
34+
attributes:
35+
label: Expected Behavior
36+
description: What you expected to happen
37+
placeholder: I expected...
38+
validations:
39+
required: true
40+
41+
- type: textarea
42+
id: actual
43+
attributes:
44+
label: Actual Behavior
45+
description: What actually happened
46+
placeholder: Instead, this happened...
47+
validations:
48+
required: true
49+
50+
- type: input
51+
id: os
52+
attributes:
53+
label: Operating System
54+
description: What OS are you using?
55+
placeholder: e.g., macOS 14.0, Windows 11, Ubuntu 22.04
56+
validations:
57+
required: true
58+
59+
- type: input
60+
id: cli_version
61+
attributes:
62+
label: Copilot CLI Version
63+
description: Run 'copilot --version' to get the version
64+
placeholder: e.g., v1.0.3
65+
validations:
66+
required: true
67+
68+
- type: input
69+
id: shell
70+
attributes:
71+
label: Shell
72+
description: What shell are you using?
73+
placeholder: e.g., bash, zsh, PowerShell, fish
74+
75+
- type: checkboxes
76+
id: affected
77+
attributes:
78+
label: Affected Components
79+
description: Which customization type is affected?
80+
options:
81+
- label: Custom Agent (.agent.md)
82+
- label: Instructions File (.instructions.md / copilot-instructions.md)
83+
- label: Agent Skill (SKILL.md)
84+
- label: AGENTS.md
85+
- label: MCP Configuration
86+
- label: Other
87+
88+
- type: textarea
89+
id: context
90+
attributes:
91+
label: Additional Context
92+
description: Add any other context about the problem here
93+
placeholder: Error messages, log output, or screenshots can be helpful

.github/ISSUE_TEMPLATE/config.yml

Lines changed: 8 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,8 @@
1+
blank_issues_enabled: false
2+
contact_links:
3+
- name: 💬 Question or Discussion
4+
url: https://github.com/trsdn/github-copilot-cli/discussions
5+
about: Ask questions and discuss ideas with the community
6+
- name: 📚 Documentation
7+
url: https://github.com/trsdn/github-copilot-cli#readme
8+
about: Read the documentation for guidance
Lines changed: 77 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,77 @@
1+
name: Feature Request
2+
description: Suggest a new feature or enhancement
3+
title: '[Feature]: '
4+
labels: ['enhancement', 'needs-triage']
5+
body:
6+
- type: markdown
7+
attributes:
8+
value: |
9+
Thanks for suggesting a new feature! Please fill out the form below.
10+
11+
- type: textarea
12+
id: description
13+
attributes:
14+
label: Feature Description
15+
description: A clear and concise description of the feature you'd like to see
16+
placeholder: I'd like to see...
17+
validations:
18+
required: true
19+
20+
- type: textarea
21+
id: problem
22+
attributes:
23+
label: Problem Statement
24+
description: What problem does this feature solve? Why is it needed?
25+
placeholder: Currently, users face...
26+
validations:
27+
required: true
28+
29+
- type: textarea
30+
id: solution
31+
attributes:
32+
label: Proposed Solution
33+
description: Describe how you envision this feature working
34+
placeholder: The feature would work by...
35+
validations:
36+
required: true
37+
38+
- type: textarea
39+
id: usecase
40+
attributes:
41+
label: Use Case
42+
description: Provide a concrete example of how this feature would be used
43+
placeholder: |
44+
Example scenario:
45+
User wants to: [describe]
46+
Feature enables: [describe]
47+
validations:
48+
required: true
49+
50+
- type: checkboxes
51+
id: type
52+
attributes:
53+
label: Feature Type
54+
description: What type of contribution is this?
55+
options:
56+
- label: New Agent Skill
57+
- label: New Custom Agent
58+
- label: New Instructions File
59+
- label: Enhancement to existing customization
60+
- label: Documentation improvement
61+
- label: Other
62+
63+
- type: textarea
64+
id: context
65+
attributes:
66+
label: Additional Context
67+
description: Add any other context, mockups, or examples
68+
69+
- type: checkboxes
70+
id: contribute
71+
attributes:
72+
label: Willingness to Contribute
73+
description: Can you help implement this?
74+
options:
75+
- label: I'd be willing to implement this feature
76+
- label: I'd need help implementing this
77+
- label: I'm just suggesting the idea

.github/PULL_REQUEST_TEMPLATE.md

Lines changed: 57 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,57 @@
1+
## Description
2+
3+
<!-- Provide a clear and concise description of your changes -->
4+
5+
## Type of Change
6+
7+
- [ ] 🐛 Bug fix
8+
- [ ] ✨ New feature
9+
- [ ] 💥 Breaking change
10+
- [ ] 📚 Documentation update
11+
- [ ] ♻️ Code refactoring
12+
13+
## What Changed?
14+
15+
### Files Added/Modified
16+
17+
-
18+
-
19+
20+
### Customization Type
21+
22+
- [ ] Custom Agent (`.agent.md`)
23+
- [ ] Instructions File (`.instructions.md`)
24+
- [ ] Agent Skill (`SKILL.md`)
25+
- [ ] AGENTS.md
26+
- [ ] Workflow/CI
27+
- [ ] Documentation
28+
- [ ] Other: ___________
29+
30+
## Motivation and Context
31+
32+
<!-- Why is this change required? -->
33+
34+
Closes #
35+
36+
## Testing
37+
38+
### How Has This Been Tested?
39+
40+
- [ ] Tested in Copilot CLI with `/agent`
41+
- [ ] Verified with `/skills list` and `/skills info`
42+
- [ ] Checked instructions with `/instructions`
43+
- [ ] Validated file generation and format
44+
45+
### Test Configuration
46+
47+
- **Copilot CLI Version**:
48+
- **OS**:
49+
- **Shell**:
50+
51+
## Checklist
52+
53+
- [ ] My changes follow the style guidelines of this project
54+
- [ ] I have performed a self-review
55+
- [ ] I have updated documentation as needed
56+
- [ ] My changes don't include VS Code-specific features
57+
- [ ] I have tested with Copilot CLI

0 commit comments

Comments
 (0)