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
33998 skills2 agents1 command

Claude Code

$ npx -y skills add Mathews-Tom/armory --skill github --agent claude-code

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
@mathews-tom
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.

33998 skills2 agents
Get the whole plugin

Stars on GitHub

Momentum

stars in total
339
Star history of Mathews-Tom/armory on GitHub, a chart by star-history.com

Other skills on armory.

doc-condenser

doc-condenser

**DEPRECATED** — Modern Claude models condense and summarize technical documentation natively with comparable quality. The output…

@mathews-tom@mathews-tomInstall Skill
opus-4-7-migration

opus-4-7-migration

DEPRECATED: The Opus 4.7 migration scanner is retired from the active skill catalog. Retained for archival reference only; not…

@mathews-tom@mathews-tomInstall Skill
regex-builder

regex-builder

**DEPRECATED** — Modern Claude models produce accurate, well-explained regex patterns with edge-case test suites natively,…

@mathews-tom@mathews-tomInstall Skill
sequential-thinking

sequential-thinking

**DEPRECATED** — Opus 4.7 uses adaptive thinking (optional at each step) and Sonnet 4.6 handles structured chain-of-thought…

@mathews-tom@mathews-tomInstall Skill
adr-writer

adr-writer

Generates Architecture Decision Records capturing context, rationale, alternatives, and consequences in numbered status-tracked…

@mathews-tom@mathews-tomInstall Skill
agent-builder

agent-builder

Build AI agents and automate Claude Code programmatically via the Claude Agent SDK and headless CLI mode. Covers Python SDK,…

@mathews-tom@mathews-tomInstall Skill

More skills from other plugins.

brainstorming
Auto-invoked

brainstorming

You MUST use this before any creative work - creating features, building components, adding functionality, modifying behavior, or…

@obra@obraInstall Skill
ask-matt

ask-matt

Ask which skill or flow fits your situation. A router over the skills in this repo.

skills11d309k
@mattpocock@mattpocockInstall Skill
accessibility
Auto-invoked

accessibility

Design, implement, and audit accessible UI to WCAG 2.2 Level AA across Web, iOS, and Android — semantic ARIA roles and labels,…

ecc12d293k
@affaan-m@affaan-mInstall Skill
compiler-commit

compiler-commit

Use when you want to verify compiler changes and commit with the correct convention. Runs tests, lint, and format, then commits…

react1d252k
@facebook@facebookInstall Skill

Questions about github.

Which coding agents can use github?
github installs in Claude Code, Codex, Cursor, Gemini CLI, GitHub Copilot, OpenCode and Windsurf with the skills CLI, using each agent's flag shown on this page. Flowy's auto-invocation, which fires a skill when your prompt matches, runs in Claude Code only.