issues

Interact with GitHub issues - create, list, and view issues.

31,392 stars
Complexity: medium

About this skill

This skill empowers an AI agent to manage GitHub issues within a repository. It allows users to create new issues with specified titles, bodies, and optional labels; list open issues to quickly see their status and basic details; and view comprehensive information for a specific issue. By leveraging the `gh` command-line tool, the skill provides a seamless and conversational interface for interacting with GitHub's issue tracking system, enhancing an agent's ability to support development and project management workflows.

Best use case

Developers, project managers, and team members can use this skill to streamline their workflow by managing GitHub issues directly from their AI agent environment. It's ideal for quickly reporting bugs, tracking tasks, reviewing project progress, or getting details on specific issues during a conversation, without needing to switch contexts to the GitHub web interface.

Interact with GitHub issues - create, list, and view issues.

Users can expect to successfully create new GitHub issues with specified details, receive a clear and concise list of open issues in the current repository, or get comprehensive information about a specific issue. The agent will guide the user through the necessary inputs for each action, providing confirmation or requested data upon completion.

Practical example

Example input

User: "Hey agent, I need to create a new GitHub issue." Agent: "What would you like to do with GitHub issues? (Create new issue, List issues, View issue)" User: "Create new issue." Agent: "Please provide the title for the new issue." User: "Bug: Login button unresponsive." Agent: "Do you want to add a body or any labels?" User: "Yes, the body should be 'When clicking login, nothing happens.' and label it 'bug'."

Example output

Agent: "New issue 'Bug: Login button unresponsive' created successfully at [GitHub Issue URL]." (Alternatively, for listing) Agent: "Here are the open issues: 1. Bug: Login button unresponsive (open) 2. Feature Request: Dark mode (open) ..." (Alternatively, for viewing) Agent: "Issue #1: Bug: Login button unresponsive. Description: When clicking login, nothing happens. Labels: bug. Status: open. Assignee: (unassigned)."

When to use this skill

  • Use this skill when you need to quickly log a bug, create a new task, check the status of an open issue, or review the details of a task directly from your AI agent. It's particularly useful during coding sessions, project discussions, or stand-ups where immediate access to issue management is beneficial and efficient.

When not to use this skill

  • This skill is not suitable for complex issue management workflows that require advanced filtering capabilities, bulk operations, or highly specific GitHub features not covered by the `gh` CLI (e.g., managing project boards, pull requests, or extensive label customization). It's also not ideal for deeply collaborative discussions within an issue (e.g., extensive commenting, assigning multiple people, or reviewing linked pull requests) where the full GitHub web interface or a dedicated desktop client would offer a richer experience.

Installation

Claude Code / Cursor / Codex

$curl -o ~/.claude/skills/issues/SKILL.md --create-dirs "https://raw.githubusercontent.com/sickn33/antigravity-awesome-skills/main/plugins/antigravity-awesome-skills-claude/skills/issues/SKILL.md"

Manual Installation

  1. Download SKILL.md from GitHub
  2. Place it in .claude/skills/issues/SKILL.md inside your project
  3. Restart your AI agent — it will auto-discover the skill

How issues Compares

Feature / AgentissuesStandard Approach
Platform SupportClaudeLimited / Varies
Context Awareness High Baseline
Installation ComplexitymediumN/A

Frequently Asked Questions

What does this skill do?

Interact with GitHub issues - create, list, and view issues.

Which AI agents support this skill?

This skill is designed for Claude.

How difficult is it to install?

The installation complexity is rated as medium. You can find the installation instructions above.

Where can I find the source code?

You can find the source code on GitHub using the link provided at the top of the page.

Related Guides

SKILL.md Source

Interact with GitHub issues - create, list, and view issues.

## When to Use

- The user wants to create, list, inspect, or otherwise work with GitHub issues.
- The task involves issue intake or repository issue management through the GitHub CLI workflow.
- You need a guided issue flow that gathers titles, descriptions, and action selection before running commands.

## Instructions

This command helps you work with GitHub issues using the `gh` CLI.

### Step 1: Determine Action

Use AskUserQuestion to ask what the user wants to do:

**Question:**
- question: "What would you like to do with GitHub issues?"
- header: "Action"
- multiSelect: false
- options:
  - label: "Create new issue"
    description: "Open a new issue with title, body, and optional labels"
  - label: "List issues"
    description: "View open issues in the current repository"
  - label: "View issue"
    description: "See details of a specific issue by number"

---

## If "Create new issue" selected:

### Step 2a: Get Issue Title

Use AskUserQuestion to get the issue title:

**Question:**
- question: "What's a short, scannable title for this issue? Keep it brief (5-10 words max) - details go in the body. (Use 'Other' to type your title)"
- header: "Title"
- multiSelect: false
- options:
  - label: "I'll type a title"
    description: "Enter a concise title like 'Login button unresponsive' or 'Add dark mode support'"

**Title guidelines:**
- Keep titles SHORT and scannable (5-10 words max)
- Good: "Fix broken password reset flow"
- Bad: "When I try to reset my password and click the button nothing happens and I get an error"
- The description/body is where details belong, not the title

If the user provides a long title, help them shorten it and move the details to the body.

### Step 3a: Get Issue Body

Use AskUserQuestion to gather the issue body content:

**Question 1 - Issue type context:**
- question: "What type of issue is this?"
- header: "Type"
- multiSelect: false
- options:
  - label: "Bug"
    description: "Something broken that needs fixing"
  - label: "Enhancement"
    description: "Improvement to existing functionality"
  - label: "New feature"
    description: "Brand new functionality"
  - label: "Task"
    description: "General work item or chore"

**Question 2 - Description:**
- question: "Now provide the full details. This is where you explain context, background, and specifics that didn't fit in the title. (Use 'Other' to type your description)"
- header: "Description"
- multiSelect: false
- options:
  - label: "I'll describe it in detail"
    description: "Provide context, steps, examples, and any relevant information"

The user will select "Other" here to provide their full description.

**Description guidelines:**
- This is where ALL the detail goes - be thorough
- Include context: what were you doing, what's the background?
- Include specifics: error messages, URLs, versions, etc.
- The more detail here, the better - unlike the title which should be brief

**Question 3 - For bugs, ask about reproduction:**
If issue type is "Bug", use AskUserQuestion:

- question: "Can you provide steps to reproduce this bug? (Use 'Other' to type steps)"
- header: "Repro steps"
- multiSelect: false
- options:
  - label: "Provide steps"
    description: "I'll describe how to reproduce the issue"
  - label: "Not reproducible"
    description: "The bug is intermittent or hard to reproduce"

**Question 4 - Expected vs actual behavior (for bugs):**
If issue type is "Bug", use AskUserQuestion:

- question: "What did you expect to happen vs what actually happened? (Use 'Other' to describe)"
- header: "Behavior"
- multiSelect: false
- options:
  - label: "Describe behavior"
    description: "I'll explain expected vs actual behavior"

### Step 4a: Get Labels (Optional)

Use AskUserQuestion to select labels:

- question: "Which labels should we add? (if any)"
- header: "Labels"
- multiSelect: true
- options:
  - label: "bug"
    description: "Something isn't working"
  - label: "enhancement"
    description: "New feature or request"
  - label: "documentation"
    description: "Improvements to docs"
  - label: "good first issue"
    description: "Good for newcomers"

### Step 5a: Create the Issue

Construct the issue body based on the type:

**For Bug reports:**
```
## Description
[User's description]

## Steps to Reproduce
[User's reproduction steps or "Not easily reproducible"]

## Expected Behavior
[What should happen]

## Actual Behavior
[What actually happens]
```

**For Feature requests/Enhancements:**
```
## Description
[User's description]

## Use Case
[Why this would be useful]
```

**For Tasks/Other:**
```
## Description
[User's description]
```

Run the gh command to create the issue:
```bash
gh issue create --title "[title]" --body "[constructed body]" --label "[labels]"
```

Report the issue URL back to the user.

---

## If "List issues" selected:

### Step 2b: Filter Options

Use AskUserQuestion to determine filtering:

- question: "How would you like to filter issues?"
- header: "Filter"
- multiSelect: false
- options:
  - label: "All open issues"
    description: "Show all open issues"
  - label: "Assigned to me"
    description: "Issues assigned to the current user"
  - label: "Created by me"
    description: "Issues I created"
  - label: "With specific label"
    description: "Filter by a label"

If "With specific label" selected, use AskUserQuestion:

- question: "Which label to filter by? (Use 'Other' for custom label)"
- header: "Label"
- multiSelect: false
- options:
  - label: "bug"
    description: "Bug reports"
  - label: "enhancement"
    description: "Feature requests"
  - label: "documentation"
    description: "Documentation issues"

### Step 3b: List Issues

Run the appropriate gh command:
- All open: `gh issue list`
- Assigned to me: `gh issue list --assignee @me`
- Created by me: `gh issue list --author @me`
- With label: `gh issue list --label "[label]"`

Display the results in a clean format.

---

## If "View issue" selected:

### Step 2c: Get Issue Number

Use AskUserQuestion:

- question: "Which issue number would you like to view? (Use 'Other' to enter the number)"
- header: "Issue #"
- multiSelect: false
- options:
  - label: "Enter issue number"
    description: "I'll type the issue number"

### Step 3c: View Issue

Run: `gh issue view [number]`

Display the issue details including title, body, labels, assignees, and comments.

---

## Error Handling

If `gh` command fails:
1. Check if user is authenticated: `gh auth status`
2. If not authenticated, inform user to run `gh auth login`
3. Check if in a git repository with a GitHub remote
4. Report specific error message to user

## Important Notes

- **Titles should be succinct** (5-10 words) - if a user provides a long title, help shorten it and move details to body
- **Bodies should be detailed** - encourage users to provide thorough context, steps, and specifics
- Always confirm the issue was created successfully by showing the URL
- For issue bodies, preserve user's formatting and newlines
- If the user provides minimal information, that's okay - create the issue with what they gave
- Use HEREDOC for the body to preserve formatting:
  ```bash
  gh issue create --title "Title" --body "$(cat <<'EOF'
  Body content here
  EOF
  )"
  ```

Related Skills

n8n-expression-syntax

31392
from sickn33/antigravity-awesome-skills

Validate n8n expression syntax and fix common errors. Use when writing n8n expressions, using {{}} syntax, accessing $json/$node variables, troubleshooting expression errors, or working with webhook data in workflows.

Developer ToolsClaude

mermaid-expert

31392
from sickn33/antigravity-awesome-skills

Create Mermaid diagrams for flowcharts, sequences, ERDs, and architectures. Masters syntax for all diagram types and styling.

Developer ToolsClaude

mcp-builder-ms

31392
from sickn33/antigravity-awesome-skills

Use this skill when building MCP servers to integrate external APIs or services, whether in Python (FastMCP) or Node/TypeScript (MCP SDK).

Developer ToolsClaude

makepad-deployment

31392
from sickn33/antigravity-awesome-skills

CRITICAL: Use for Makepad packaging and deployment. Triggers on: deploy, package, APK, IPA, 打包, 部署, cargo-packager, cargo-makepad, WASM, Android, iOS, distribution, installer, .deb, .dmg, .nsis, GitHub Actions, CI, action, marketplace

Developer ToolsClaude

macos-menubar-tuist-app

31392
from sickn33/antigravity-awesome-skills

Build, refactor, or review SwiftUI macOS menubar apps that use Tuist.

Developer ToolsClaude

kaizen

31392
from sickn33/antigravity-awesome-skills

Guide for continuous improvement, error proofing, and standardization. Use this skill when the user wants to improve code quality, refactor, or discuss process improvements.

Developer ToolsClaude

hugging-face-tool-builder

31392
from sickn33/antigravity-awesome-skills

Your purpose is now is to create reusable command line scripts and utilities for using the Hugging Face API, allowing chaining, piping and intermediate processing where helpful. You can access the API directly, as well as use the hf command line tool.

Developer ToolsClaude

git-pushing

31392
from sickn33/antigravity-awesome-skills

Stage all changes, create a conventional commit, and push to the remote branch. Use when explicitly asks to push changes ("push this", "commit and push"), mentions saving work to remote ("save to github", "push to remote"), or completes a feature and wants to share it.

Developer ToolsClaude

git-hooks-automation

31392
from sickn33/antigravity-awesome-skills

Master Git hooks setup with Husky, lint-staged, pre-commit framework, and commitlint. Automate code quality gates, formatting, linting, and commit message enforcement before code reaches CI.

Developer ToolsClaude

gh-review-requests

31392
from sickn33/antigravity-awesome-skills

Fetch unread GitHub notifications for open PRs where review is requested from a specified team or opened by a team member. Use when asked to "find PRs I need to review", "show my review requests", "what needs my review", "fetch GitHub review requests", or "check team review queue".

Developer ToolsClaude

fp-types-ref

31392
from sickn33/antigravity-awesome-skills

Quick reference for fp-ts types. Use when user asks which type to use, needs Option/Either/Task decision help, or wants fp-ts imports.

Developer ToolsClaude

fp-taskeither-ref

31392
from sickn33/antigravity-awesome-skills

Quick reference for TaskEither. Use when user needs async error handling, API calls, or Promise-based operations that can fail.

Developer ToolsClaude