Claude Code Plugins

Community-maintained marketplace

Feedback

Fetch GitHub issues, PRs, repo contents, and code using the gh CLI. Use when the user shares GitHub URLs (issues, PRs, repos, source files) or asks about GitHub content. The gh CLI provides complete content that web fetching often misses due to JavaScript rendering.

Install Skill

1Download skill
2Enable skills in Claude

Open claude.ai/settings/capabilities and find the "Skills" section

3Upload to Claude

Click "Upload skill" and select the downloaded ZIP file

Note: Please verify skill by going through its instructions before using it.

SKILL.md

name github-content
description Fetch GitHub issues, PRs, repo contents, and code using the gh CLI. Use when the user shares GitHub URLs (issues, PRs, repos, source files) or asks about GitHub content. The gh CLI provides complete content that web fetching often misses due to JavaScript rendering.

GitHub Content Fetching

When to activate:

  • User pastes a GitHub URL (issue, PR, repo, or source file)
  • User asks about PR comments, reviews, or discussions
  • User wants to browse or search code in a GitHub repository
  • User references a GitHub issue or PR by number and repo

Why use gh CLI instead of web fetching:

GitHub's web interface relies heavily on JavaScript to load comments, reviews, and discussions. Web fetching often retrieves only partial content. The gh CLI accesses the API directly and returns complete data.

Issues

View an issue with all comments:

gh issue view <number> --repo owner/repo --comments

Pull Requests

View a PR with comments and review status:

gh pr view <number> --repo owner/repo --comments

View the diff for a PR:

gh pr diff <number> --repo owner/repo

View PR review comments (inline code comments):

gh api repos/owner/repo/pulls/<number>/comments

List files changed in a PR:

gh pr view <number> --repo owner/repo --json files --jq '.files[].path'

Repository Browsing

List contents of a directory (defaults to root):

gh api repos/owner/repo/contents/path/to/dir

View a specific file's contents:

gh api repos/owner/repo/contents/path/to/file --jq '.content' | base64 -d

Get the full repository tree (all files):

gh api repos/owner/repo/git/trees/main?recursive=1 --jq '.tree[] | select(.type=="blob") | .path'

Replace main with the appropriate branch name if needed.

Code Search

Search for code within a specific repository:

gh search code "search query" --repo owner/repo

Search with language filter:

gh search code "search query" --repo owner/repo --language python

Search with path filter:

gh search code "search query" --repo owner/repo --path "src/"

View search results with more context:

gh search code "search query" --repo owner/repo --json path,repository,textMatches

Parsing GitHub URLs

Extract owner/repo from common URL patterns:

URL Pattern Example
github.com/owner/repo github.com/zed-industries/zed
github.com/owner/repo/issues/123 Issue #123 in that repo
github.com/owner/repo/pull/456 PR #456 in that repo
github.com/owner/repo/blob/branch/path Source file at path
github.com/owner/repo/tree/branch/path Directory at path

Tips

  • For large outputs, pipe through head -n 100 or use --jq to filter
  • Use --json flag with gh pr view or gh issue view for structured data
  • For private repos, ensure gh auth status shows you're authenticated
  • When browsing files, the API returns base64-encoded content that needs decoding