mirror of
https://github.com/github/awesome-copilot.git
synced 2026-03-12 20:25:11 +00:00
* Add issue fields, issue types, and list_issue_types to github-issues skill - Add list_issue_types to available MCP tools table - Add type parameter to optional parameters with guidance - Expand issue types section: MCP tools (preferred) + GraphQL (advanced) - Document org-level type discovery, create/update with type, GraphQL mutations - Add issue fields section: discover, read, set via GraphQL - Note required GraphQL-Features headers (issue_fields, issue_types) - Update skill description to mention fields, types, dates, priority Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com> * Add Projects V2 guidance to github-issues skill Include MCP tools (projects_list, projects_get, projects_write) and GraphQL examples for project item management. Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com> * Add sub-issues section, move issue fields to end with preview note - Add Sub-Issues and Parent Issues section (MCP, REST, GraphQL) - Add issue_read tool to MCP tools table - Move Issue Fields to last section with private preview callout - Link to community discussion for requesting access Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com> * Prefer issue types over labels for categorization Update guidance and examples to use type parameter (Bug, Feature) instead of equivalent labels when issue types are available. Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com> * Prefer issue fields over project fields for metadata Issue fields live on the issue and travel across projects. Project fields are scoped to a single project. Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com> * Add issue dependencies (blocked by/blocking) section Covers REST endpoints (list, add, remove) and GraphQL (blockedBy, blocking, issueDependenciesSummary, mutations). Also documents tracked issues read-only fields. Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com> * Add project discovery workflow for progress reports Teach agents how to find projects by name, discover fields and iterations, paginate items, and build status breakdowns. Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com> * Generate updated skill listing after SKILL.md changes Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com> * Split skill into reference files per reviewer feedback Move sub-issues, dependencies, issue types, projects, and issue fields into separate references/ files. Main SKILL.md now contains core MCP workflow and a capability table pointing to each reference. This way the agent only loads the knowledge it needs for the specific task. Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com> --------- Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>
156 lines
6.8 KiB
Markdown
156 lines
6.8 KiB
Markdown
---
|
|
name: github-issues
|
|
description: 'Create, update, and manage GitHub issues using MCP tools. Use this skill when users want to create bug reports, feature requests, or task issues, update existing issues, add labels/assignees/milestones, set issue fields (dates, priority, custom fields), set issue types, or manage issue workflows. Triggers on requests like "create an issue", "file a bug", "request a feature", "update issue X", "set the priority", "set the start date", or any GitHub issue management task.'
|
|
---
|
|
|
|
# GitHub Issues
|
|
|
|
Manage GitHub issues using the `@modelcontextprotocol/server-github` MCP server.
|
|
|
|
## Available MCP Tools
|
|
|
|
| Tool | Purpose |
|
|
|------|---------|
|
|
| `mcp__github__create_issue` | Create new issues |
|
|
| `mcp__github__update_issue` | Update existing issues |
|
|
| `mcp__github__get_issue` | Fetch issue details |
|
|
| `mcp__github__search_issues` | Search issues |
|
|
| `mcp__github__add_issue_comment` | Add comments |
|
|
| `mcp__github__list_issues` | List repository issues |
|
|
| `mcp__github__list_issue_types` | List available issue types for an organization |
|
|
| `mcp__github__issue_read` | Read issue details, sub-issues, comments, labels |
|
|
| `mcp__github__projects_list` | List projects, project fields, project items, status updates |
|
|
| `mcp__github__projects_get` | Get details of a project, field, item, or status update |
|
|
| `mcp__github__projects_write` | Add/update/delete project items, create status updates |
|
|
|
|
## Workflow
|
|
|
|
1. **Determine action**: Create, update, or query?
|
|
2. **Gather context**: Get repo info, existing labels, milestones if needed
|
|
3. **Structure content**: Use appropriate template from [references/templates.md](references/templates.md)
|
|
4. **Execute**: Call the appropriate MCP tool
|
|
5. **Confirm**: Report the issue URL to user
|
|
|
|
## Creating Issues
|
|
|
|
### Required Parameters
|
|
|
|
```
|
|
owner: repository owner (org or user)
|
|
repo: repository name
|
|
title: clear, actionable title
|
|
body: structured markdown content
|
|
```
|
|
|
|
### Optional Parameters
|
|
|
|
```
|
|
labels: ["bug", "enhancement", "documentation", ...]
|
|
assignees: ["username1", "username2"]
|
|
milestone: milestone number (integer)
|
|
type: issue type name (e.g., "Bug", "Feature", "Task", "Epic")
|
|
```
|
|
|
|
**Issue types** are organization-level metadata. Before using `type`, call `mcp__github__list_issue_types` with the org name to discover available types. If the org has no issue types configured, omit the parameter.
|
|
|
|
**Prefer issue types over labels for categorization.** When issue types are available (e.g., Bug, Feature, Task), use the `type` parameter instead of applying equivalent labels like `bug` or `enhancement`. Issue types are the canonical way to categorize issues on GitHub. Only fall back to labels when the org has no issue types configured.
|
|
|
|
### Title Guidelines
|
|
|
|
- Start with type prefix when useful: `[Bug]`, `[Feature]`, `[Docs]`
|
|
- Be specific and actionable
|
|
- Keep under 72 characters
|
|
- Examples:
|
|
- `[Bug] Login fails with SSO enabled`
|
|
- `[Feature] Add dark mode support`
|
|
- `Add unit tests for auth module`
|
|
|
|
### Body Structure
|
|
|
|
Always use the templates in [references/templates.md](references/templates.md). Choose based on issue type:
|
|
|
|
| User Request | Template |
|
|
|--------------|----------|
|
|
| Bug, error, broken, not working | Bug Report |
|
|
| Feature, enhancement, add, new | Feature Request |
|
|
| Task, chore, refactor, update | Task |
|
|
|
|
## Updating Issues
|
|
|
|
Use `mcp__github__update_issue` with:
|
|
|
|
```
|
|
owner, repo, issue_number (required)
|
|
title, body, state, labels, assignees, milestone (optional - only changed fields)
|
|
```
|
|
|
|
State values: `open`, `closed`
|
|
|
|
## Examples
|
|
|
|
### Example 1: Bug Report
|
|
|
|
**User**: "Create a bug issue - the login page crashes when using SSO"
|
|
|
|
**Action**: Call `mcp__github__create_issue` with:
|
|
```json
|
|
{
|
|
"owner": "github",
|
|
"repo": "awesome-copilot",
|
|
"title": "[Bug] Login page crashes when using SSO",
|
|
"body": "## Description\nThe login page crashes when users attempt to authenticate using SSO.\n\n## Steps to Reproduce\n1. Navigate to login page\n2. Click 'Sign in with SSO'\n3. Page crashes\n\n## Expected Behavior\nSSO authentication should complete and redirect to dashboard.\n\n## Actual Behavior\nPage becomes unresponsive and displays error.\n\n## Environment\n- Browser: [To be filled]\n- OS: [To be filled]\n\n## Additional Context\nReported by user.",
|
|
"type": "Bug"
|
|
}
|
|
```
|
|
|
|
### Example 2: Feature Request
|
|
|
|
**User**: "Create a feature request for dark mode with high priority"
|
|
|
|
**Action**: Call `mcp__github__create_issue` with:
|
|
```json
|
|
{
|
|
"owner": "github",
|
|
"repo": "awesome-copilot",
|
|
"title": "[Feature] Add dark mode support",
|
|
"body": "## Summary\nAdd dark mode theme option for improved user experience and accessibility.\n\n## Motivation\n- Reduces eye strain in low-light environments\n- Increasingly expected by users\n- Improves accessibility\n\n## Proposed Solution\nImplement theme toggle with system preference detection.\n\n## Acceptance Criteria\n- [ ] Toggle switch in settings\n- [ ] Persists user preference\n- [ ] Respects system preference by default\n- [ ] All UI components support both themes\n\n## Alternatives Considered\nNone specified.\n\n## Additional Context\nHigh priority request.",
|
|
"type": "Feature",
|
|
"labels": ["high-priority"]
|
|
}
|
|
```
|
|
|
|
## Common Labels
|
|
|
|
Use these standard labels when applicable:
|
|
|
|
| Label | Use For |
|
|
|-------|---------|
|
|
| `bug` | Something isn't working |
|
|
| `enhancement` | New feature or improvement |
|
|
| `documentation` | Documentation updates |
|
|
| `good first issue` | Good for newcomers |
|
|
| `help wanted` | Extra attention needed |
|
|
| `question` | Further information requested |
|
|
| `wontfix` | Will not be addressed |
|
|
| `duplicate` | Already exists |
|
|
| `high-priority` | Urgent issues |
|
|
|
|
## Tips
|
|
|
|
- Always confirm the repository context before creating issues
|
|
- Ask for missing critical information rather than guessing
|
|
- Link related issues when known: `Related to #123`
|
|
- For updates, fetch current issue first to preserve unchanged fields
|
|
|
|
## Extended Capabilities
|
|
|
|
The following features require REST or GraphQL APIs beyond the basic MCP tools. Each is documented in its own reference file so the agent only loads the knowledge it needs.
|
|
|
|
| Capability | When to use | Reference |
|
|
|------------|-------------|-----------|
|
|
| Sub-issues & parent issues | Breaking work into hierarchical tasks | [references/sub-issues.md](references/sub-issues.md) |
|
|
| Issue dependencies | Tracking blocked-by / blocking relationships | [references/dependencies.md](references/dependencies.md) |
|
|
| Issue types (advanced) | GraphQL operations beyond MCP `list_issue_types` / `type` param | [references/issue-types.md](references/issue-types.md) |
|
|
| Projects V2 | Project boards, progress reports, field management | [references/projects.md](references/projects.md) |
|
|
| Issue fields | Custom metadata: dates, priority, text, numbers (private preview) | [references/issue-fields.md](references/issue-fields.md) |
|