Back to Skills

creating-github-issues

majiayu000
Updated Today
1 views
58
9
58
View on GitHub
Metaword

About

This skill helps developers create comprehensive GitHub issues by ensuring proper research and documentation before filing. It triggers on issue-related phrases and guides users through exploring codebases and including specific technical details. The workflow emphasizes adding context like file paths, code snippets, and existing patterns for clear, actionable issues.

Quick Install

Claude Code

Recommended
Plugin CommandRecommended
/plugin add https://github.com/majiayu000/claude-skill-registry
Git CloneAlternative
git clone https://github.com/majiayu000/claude-skill-registry.git ~/.claude/skills/creating-github-issues

Copy and paste this command in Claude Code to install this skill

Documentation

Creating GitHub Issues

Overview

Every GitHub issue should be well-researched and clearly documented. This skill ensures issues contain enough context for anyone to understand and implement them.

Mandatory Workflow

Step 1: Research the Codebase

Before writing the issue, use the Explore agent or search tools to understand:

  • Where relevant code lives (file paths, functions, components)
  • How similar functionality is currently implemented
  • Database tables, API endpoints, or UI components involved
  • Existing patterns that should be followed

Include in the issue:

  • Specific file paths and line numbers
  • Code snippets showing current implementation
  • References to similar existing code as examples

Why: Issues with research reduce back-and-forth questions and give implementers a head start.

Step 2: Create the Issue

Use gh issue create with a well-structured body:

gh issue create --title "Brief descriptive title" --body "$(cat <<'EOF'
## Summary
<1-3 sentences describing what needs to be done>

## Current State
<What exists now, with file paths and code references>

## Proposed Changes
<What should change, with specific details>

## Technical Notes
<File paths, database tables, API endpoints, code snippets>

## Acceptance Criteria
- [ ] Specific testable requirement
- [ ] Another requirement
EOF
)"

Step 3: Add Labels

Discover current labels and apply appropriate ones:

gh label list --limit 50

Common label categories:

  1. Type (pick one):

    • enhancement - New feature or improvement
    • bug - Something isn't working
    • documentation - Documentation improvements
    • question - Further information requested
  2. Priority (if applicable):

    • priority: critical - Production broken, blocking issue
    • priority: high - Important bug fix, urgent feature
    • priority: low - Nice to have, can wait
  3. Area (if applicable):

    • Labels indicating which part of the codebase is affected
gh issue edit <number> --add-label "enhancement"

Step 4: Add to Project (if applicable)

If the repository uses GitHub Projects:

gh issue edit <number> --add-project "Project Name"

Issue Template

## Summary
<1-3 sentences describing what needs to be done>

## Current State
<What exists now>
- File: `path/to/file.ts:123`
- Current behavior: <description>

## Proposed Changes
<What should change>
1. Change X to do Y
2. Add Z functionality

## Technical Notes
- Relevant files: `src/components/Feature.tsx`, `src/utils/helpers.ts`
- Related functions: `handleSubmit()`, `validateInput()`
- Consider: <architectural notes, edge cases>

## Acceptance Criteria
- [ ] Specific testable requirement
- [ ] Another requirement
- [ ] Tests pass

## Additional Context
<Screenshots, error messages, related issues>

Field Selection Guidelines

Priority

  • Critical - Production broken, blocking issue
  • High - Important bug fix, urgent feature (most bugs default here)
  • Medium - Standard feature work
  • Low - Nice to have, can wait

Default guidance: Bugs default to High unless trivial. Enhancements default to Medium unless urgent.

Common Mistakes

MistakeFix
Create issue without researching code firstUse Explore agent to find relevant files
Generic issue descriptionInclude specific file paths, line numbers, code snippets
Missing acceptance criteriaAlways include testable requirements
No labelsAlways add at least a type label
Vague titleMake titles specific and searchable

GitHub Repository

majiayu000/claude-skill-registry
Path: skills/creating-github-issues

Related Skills

content-collections

Meta

This skill provides a production-tested setup for Content Collections, a TypeScript-first tool that transforms Markdown/MDX files into type-safe data collections with Zod validation. Use it when building blogs, documentation sites, or content-heavy Vite + React applications to ensure type safety and automatic content validation. It covers everything from Vite plugin configuration and MDX compilation to deployment optimization and schema validation.

View skill

cloudflare-turnstile

Meta

This skill provides comprehensive guidance for implementing Cloudflare Turnstile as a CAPTCHA-alternative bot protection system. It covers integration for forms, login pages, API endpoints, and frameworks like React/Next.js/Hono, while handling invisible challenges that maintain user experience. Use it when migrating from reCAPTCHA, debugging error codes, or implementing token validation and E2E tests.

View skill

llamaindex

Meta

LlamaIndex is a data framework for building RAG-powered LLM applications, specializing in document ingestion, indexing, and querying. It provides key features like vector indices, query engines, and agents, and supports over 300 data connectors. Use it for document Q&A, chatbots, and knowledge retrieval when building data-centric applications.

View skill

canvas-design

Meta

The canvas-design skill generates original visual art in PNG and PDF formats for creating posters, designs, and other static artwork. It operates through a two-step process: first creating a design philosophy document, then visually expressing it on a canvas. The skill focuses on original compositions using form, color, and space while avoiding copyright infringement by never copying existing artists' work.

View skill