github-issues
Interface for creating, querying, and updating GitHub issues via MCP and CLI.
Install
mkdir -p .claude/skills/github-issues-aldelar && curl -L -o skill.zip "https://agentskills.codes/api/skills/download/13402" && unzip -o skill.zip -d .claude/skills/github-issues-aldelar && rm skill.zipInstalls to .claude/skills/github-issues-aldelar
Activation
This is the description your AI agent reads to decide when to run this skill — the better it matches your request, the more reliably it fires.
Create, update, and manage GitHub issues using MCP tools. Use when: - Creating bug reports, feature requests, or task issues - Updating existing issues (labels, assignees, state) - Searching or filtering issues - Managing issue types, sub-issues, or dependenciesKey capabilities
- →Create bug reports, feature requests, or task issues
- →Update existing issues (labels, assignees, state)
- →Search or filter issues
- →Add comments to existing issues
- →Close issues
How it works
The skill manages GitHub issues by using MCP tools for read operations and `gh api` for write operations like creating, updating, and commenting on issues.
Inputs & outputs
When to use github-issues
- →Create new bug report
- →List open project issues
- →Close resolved issues
- →Add comments to existing issues
About this skill
GitHub Issues Management
Manage GitHub issues using MCP tools for reads and gh api for writes.
Available Tools
MCP Tools (read operations)
| Tool | Purpose |
|---|---|
mcp_github_issue_read | Read issue details, sub-issues, comments, labels |
mcp_github_list_issues | List and filter repository issues by state, labels, date |
mcp_github_search_issues | Search issues across repos using GitHub search syntax |
CLI / REST API (write operations)
MCP does not currently support creating or updating issues. Use gh api:
| Operation | Command |
|---|---|
| Create issue | gh api repos/{owner}/{repo}/issues -X POST -f title=... -f body=... |
| Update issue | gh api repos/{owner}/{repo}/issues/{number} -X PATCH -f title=... |
| Add comment | gh api repos/{owner}/{repo}/issues/{number}/comments -X POST -f body=... |
| Close issue | gh api repos/{owner}/{repo}/issues/{number} -X PATCH -f state=closed |
| Set issue type | Include -f type=Bug in the create call (REST API only) |
Workflow
- Determine action: Create, update, or query?
- Gather context: Get repo info, existing labels, milestones if needed
- Structure content: Use appropriate template below
- Execute: Use MCP tools for reads,
gh apifor writes - Confirm: Report the issue URL to user
Creating Issues
gh api repos/{owner}/{repo}/issues \
-X POST \
-f title="Issue title" \
-f body="Issue body in markdown" \
-f type="Bug" \
--jq '{number, html_url}'
Optional Parameters
-f type="Bug" # Issue type (Bug, Feature, Task, Epic)
-f labels[]="bug" # Labels (repeat for multiple)
-f assignees[]="username" # Assignees
-f milestone=1 # Milestone number
Prefer issue types over labels for categorization. When issue types are available, use the type parameter instead of labels like bug or enhancement.
Title Guidelines
- Be specific and actionable
- Keep under 72 characters
- Don't add redundant prefixes like
[Bug]when issue type is set
Body Templates
Bug Report:
## Description
[What's broken]
## Steps to Reproduce
1. ...
## Expected Behavior
[What should happen]
## Actual Behavior
[What happens instead]
Feature Request:
## Summary
[What and why]
## Motivation
[Why this matters]
## Proposed Solution
[How to implement]
## Acceptance Criteria
- [ ] ...
Task:
## Description
[What needs to be done]
## Deliverables
- [ ] ...
## Context
[Background information]
Updating Issues
gh api repos/{owner}/{repo}/issues/{number} \
-X PATCH \
-f state=closed \
--jq '{number, html_url}'
Only include fields you want to change: title, body, state, labels, assignees, milestone.
Common Labels
| Label | Use For |
|---|---|
bug | Something isn't working |
enhancement | New feature or improvement |
documentation | Documentation updates |
high-priority | Urgent issues |
Tips
- Always confirm the repository context before creating issues
- Ask for missing critical information rather than guessing
- Link related issues:
Related to #123 - For updates, fetch current issue first to preserve unchanged fields
When not to use it
- →When MCP tools are needed for creating or updating issues
- →When issue types are not available and labels are preferred for categorization
Limitations
- →MCP does not currently support creating or updating issues.
- →Setting issue type is only available via REST API.
- →For updates, current issue must be fetched first to preserve unchanged fields.
How it compares
This skill combines MCP tools for reading and `gh api` for writing to manage GitHub issues, providing a complete workflow that integrates both read and write functionalities, unlike using only one tool.
Compared to similar skills
github-issues side by side with the closest alternatives in the catalog.
| Skill | Installs | Updated | Safety | Difficulty |
|---|---|---|---|---|
| github-issues (this skill) | 0 | 4mo | Review | Intermediate |
| github-manage | 6 | 9mo | Review | Beginner |
| agent-project-board-sync | 0 | 6mo | Review | Intermediate |
| tbd | 0 | 5mo | Review | Intermediate |
Try saying
Example prompts that trigger this skill in your AI assistant.
More by aldelar
View all by aldelar →You might also like
github-manage
matteocervelli
Manage operations concerning GitHub on behalf of user
agent-project-board-sync
ruvnet
Agent skill for project-board-sync - invoke with $agent-project-board-sync
tbd
jlevy
|-
create-issue
dotCMS
Create GitHub issues using repository templates. Use when the user asks to create an issue, bug report, feature request, task, spike, epic, or UX requirement. Also use when the user describes a problem, bug, enhancement, or work item that should be tracked. Supports both English and Spanish input.
task-management
anthropics
Simple task management using a shared TASKS.md file. Reference this when the user asks about their tasks, wants to add/complete tasks, or needs help tracking commitments.
markdown-task-manager
ioniks
Use when managing tasks, the system is a Kanban task manager based on local Markdown files (`kanban.md` and `archive.md`). It follows a strict format compatible with the task-manager.html web application.