Skip to content
Development
Skill

/github

GitHub CLI operations via `gh` for issues, PRs, Actions, releases, and REST/GraphQL API with `--json`/`--jq` parsing. Triggers on: "create an issue", "submit a PR", "check CI status", "why did CI fail", "merge a PR", or pasted GitHub URLs.

From plugin
armory
31181 skills2 agents1 command
Install
$ npx -y skills add Mathews-Tom/armory --skill github --agent claude-code

How it fires

How this skill gets triggered: by you, by Claude, or both.

  • Fires itselfAuto-invocation. Claude auto-loads it when your prompt matches the work.Auto-invocation is when the right skill fires by itself at the right moment, driven by a FLOW.md router and a hook, instead of you invoking it by name. It is the difference between a skill being installed and a skill actually getting used.Read the full definition →
  • You can call itInvoke it directly when you want it.
  • Slash command/github

Context preview

The summary Claude sees to decide when to auto-load this skill.

GitHub CLI operations via `gh` for issues, PRs, Actions, releases, and REST/GraphQL API with `--json`/`--jq` parsing. Triggers on: "create an issue", "submit a PR", "check CI status", "why did CI fail", "merge a PR", or pasted GitHub URLs.

SKILL.md

github.SKILL.md
name: github
description: 'GitHub CLI operations via `gh` for issues, PRs, Actions, releases, and REST/GraphQL API with `--json`/`--jq` parsing. Triggers on: "create an issue", "submit a PR", "check CI status", "why did CI fail", "merge a PR", or pasted GitHub URLs.'
metadata:
  version: 1.1.1
  category: review
  tags: [github, cli, issues, pull-requests]
  difficulty: intermediate

GitHub

All GitHub operations use the `gh` CLI. Prefer `--json` with `--jq` for structured, parseable output. Use `--repo owner/repo` when not inside a git repository with a configured remote. Use `--web` to open any resource in the browser.

Prerequisites and Auth

Installation

| Platform | Command | | ------------- | --------------------------- | | macOS | `brew install gh` | | Debian/Ubuntu | `sudo apt install gh` | | Windows | `winget install GitHub.cli` |

Authentication

gh auth login           # interactive OAuth login
gh auth status          # check current auth and active account

Required OAuth Scopes

| Scope | Grants Access To | | ------------- | -------------------------------------------- | | `repo` | Private repos, issues, PRs, commits, status | | `read:org` | Org membership, team listing | | `workflow` | Trigger and manage GitHub Actions workflows | | `gist` | Create and manage gists | | `delete_repo` | Delete repositories (not granted by default) | | `admin:org` | Manage org settings, teams, members | | `project` | Read/write access to ProjectV2 boards |

Add missing scopes without re-authenticating from scratch:

gh auth refresh --scopes repo,read:org,workflow

---

Reference Routing

| User intent | Load | | --------------------------------------------------------------- | ------------------------------------ | | Create/list/view/edit/close issues, add comments | `references/issues.md` | | Create/list/view/review/merge/edit/close pull requests | `references/pull-requests.md` | | List runs, view logs, trigger/rerun/watch workflows, artifacts | `references/ci-actions.md` | | Create/fork/clone/view/edit/archive/delete repositories | `references/repos.md` | | Create/list/view/edit/upload/delete releases | `references/releases.md` | | Search repos, issues, PRs, code, commits | `references/search.md` | | Raw REST/GraphQL via `gh api`, pagination, rate limit | `references/api.md` | | GraphQL cost model, bulk queries, mutations, rate limits | `references/graphql-queries.md` | | Multi-step workflow recipes (PR lifecycle, CI triage, releases) | `references/automation-workflows.md` | | Create/list/view/edit/delete gists | `references/gists.md` | | List orgs, teams, members | `references/orgs.md` |

Workflow Pattern

1. Identify user intent from the routing table above. 2. Load the matching `references/<file>.md` for command syntax and examples. 3. Execute the `gh` command with `--repo owner/repo` and `--json`/`--jq` as needed. 4. On error, consult the Error Handling table below.

---

Error Handling

| Error | Cause | Resolution | | ----------------------------- | ------------------------------------------------------------------------- | --------------------------------------------------------------------------------- | | HTTP 401 Unauthorized | Token expired or revoked | Run `gh auth login` to re-authenticate | | HTTP 403 Forbidden | Insufficient permissions or rate limited | Check `gh auth status` for scopes; check `gh api rate_limit` | | HTTP 404 Not Found | Repo does not exist, is private without `repo` scope, or resource deleted | Verify repo name; run `gh auth refresh --scopes repo` | | HTTP 422 Unprocessable Entity | Invalid payload — missing required field, validation error | Check request body fields match API schema | | HTTP 429 Too Many Requests | REST rate limit exceeded (5000 req/hr authenticated) | Wait for `X-RateLimit-Reset` timestamp; reduce request frequency | | GraphQL rate limit exceeded | Used more than 5000 points/hr | Reduce query complexity or wait; see `references/graphql-queries.md` | | "no git remotes found" | Running `gh` outside a git repo without `--repo` | Add `--repo owner/repo` to the command | | Insufficient OAuth scopes | Token lacks required scope for the operation | Run `gh auth refresh --scopes scope1,scope2` | | Duplicate issue/PR title | Not a real error — GitHub allows duplicates, but check before creating | Search with `gh issue list` or `gh pr list` first | | Archived repo blocks writes | Repo is archived; all write operations fail | Unarchive with `gh repo edit owner/repo --archived=false` or use a different repo |

Enable debug logging to see raw HTTP requests and responses:

GH_DEBUG=api gh pr list --repo owner/repo

---

Calibr

Read more
Ships witharmory

Curated, production-grade skills, agents, hooks, rules, commands, utilities, and presets for AI coding agents. No magic, no demos — battle-tested workflows built for developers who use AI seriously.

Get the whole plugin

Other skills on armory.