GitHub CLI (gh) In-Depth Reference
SkillSearchLets your agent run GitHub commands to manage repos, pull requests, issues, releases, and Actions from the terminal.
Available today. Use it from your connected AI after setup.
No other account needed.
Connect ahel once, and every AI you use reads what you have installed.
Then ask your AI: use the GitHub CLI (gh) In-Depth Reference skill
About this capability
Use when working with the GitHub CLI (`gh`) — authentication, repositories, pull requests, issues, releases, GitHub Actions (workflows, runs, caches), the gh API command, extensions, secrets and variables, search, gists, SSH/GPG keys, labels, rulesets, codespaces, browsing, configuration, aliases, J
What this skill tells your AI
The instructions your AI receives, as published by carapace-sh/carapace-bin in skills/gh/SKILL.md and read by ahel’s review.
Comprehensive reference for the GitHub CLI — the official command-line tool for working with GitHub from the terminal. Covers all command groups, flags, argument formats, environment variables, output formatting, and the extension system.
Data Flow
Local git repo
→ gh repo clone / gh repo create
→ gh pr create / gh issue create
→ gh pr checkout / gh pr merge / gh pr review
→ gh run watch / gh release create
→ gh browse (open in browser)
Authentication:
gh auth login → credential store (or GH_TOKEN env)
→ gh auth status / gh auth switch (multi-account)
→ gh auth refresh (add/remove scopes)
→ gh auth setup-git (credential helper)
Sub-Resources
Load the reference that matches your task. When in doubt, load multiple references.
| Keywords | Reference |
|---|---|
| auth, login, logout, refresh, setup-git, status, switch, token, authentication, credential store, OAuth, scopes, GH_TOKEN, GITHUB_TOKEN, GH_ENTERPRISE_TOKEN, hostname, multi-account, web flow, with-token, insecure-storage, git-protocol, ssh key upload, GitHub Enterprise, GHES | references/auth.md |
| config, configuration, config get, config set, config list, clear-cache, git_protocol, editor, prompt, pager, browser, http_unix_socket, color_labels, accessible_colors, accessible_prompter, spinner, telemetry, per-host config, environment variables, GH_HOST, GH_REPO, GH_EDITOR, GH_BROWSER, GH_PAGER, GH_DEBUG, GH_FORCE_TTY, GH_CONFIG_DIR, GH_NO_UPDATE_NOTIFIER, NO_COLOR, GLAMOUR_STYLE, exit codes, completion, shell completion | references/config.md |
| repo, repository, repo create, repo clone, repo fork, repo view, repo edit, repo list, repo sync, repo delete, repo archive, repo unarchive, repo rename, repo set-default, gitignore, license, deploy-key, autolink, OWNER/REPO, template repo, --source, --push, --private, --public, --internal, visibility, --add-readme | references/repo.md |
| pr, pull request, pr create, pr list, pr view, pr checkout, pr edit, pr merge, pr close, pr reopen, pr review, pr diff, pr comment, pr ready, pr lock, pr unlock, pr status, pr checks, pr update-branch, pr revert, draft, --fill, --fill-first, --fill-verbose, --base, --head, --reviewer, --assignee, --label, --milestone, --project, --template, --dry-run, --no-maintainer-edit, @me, @copilot, merge strategy, squash, rebase, auto-merge, delete-branch | references/pr.md |
| issue, issue create, issue list, issue view, issue edit, issue close, issue reopen, issue comment, issue delete, issue develop, issue transfer, issue pin, issue unpin, issue lock, issue unlock, issue status, --assignee, --label, --milestone, --project, --template, --type, --parent, sub-issue, blocked-by, blocking, duplicate-of, --reason | references/issue.md |
| api, GraphQL, REST API, endpoint, placeholder, {owner}, {repo}, {branch}, field, raw-field, --method, --paginate, --slurp, --header, --input, --cache, --preview, --silent, --verbose, --include, jq, template, workflow_dispatch, nested parameters, key[subkey], key[] | references/api.md |
| actions, workflow, run, cache, workflow list, workflow run, workflow view, workflow enable, workflow disable, run list, run view, run watch, run download, run rerun, run cancel, run delete, cache list, cache delete, --ref, --field, --raw-field, --json, --status, --event, --branch, --commit, --job, --log, --log-failed, --exit-status, --attempt, artifacts, workflow_dispatch | references/actions.md |
| release, release create, release list, release view, release download, release upload, release delete, release edit, release verify, release verify-asset, release delete-asset, --generate-notes, --notes-from-tag, --notes-start-tag, --target, --title, --draft, --prerelease, --latest, --verify-tag, --discussion-category, --fail-on-no-commits, --cleanup-tag, immutable release, asset label, --archive, --pattern, --clobber | references/release.md |
| extension, gh extension, ext, extension install, extension list, extension create, extension remove, extension upgrade, extension browse, extension search, extension exec, gh- prefix, binary extension, script extension, --pin, --force, --precompiled, local extension, upgrade notice, GH_NO_EXTENSION_UPDATE_NOTIFIER | references/extension.md |
| secret, variable, secret set, secret list, secret delete, variable set, variable get, variable list, variable delete, --app, --org, --env, --env-file, --visibility, --repos, --no-repos-selected, --no-store, --user, actions, dependabot, codespaces, agents, repository secret, organization secret, environment secret, user secret, dotenv | references/secret-variable.md |
| search, search repos, search issues, search prs, search code, search commits, --owner, --language, --topic, --stars, --forks, --visibility, --archived, --created, --updated, --sort, --order, --limit, --match, --assignee, --author, --label, --state, --draft, --merged, --review, --reviewed-by, --review-requested, --checks, --base, --head, --include-prs, GitHub search syntax, --web | references/search.md |
| gist, gpg-key, ssh-key, label, org, ruleset, gist create, gist list, gist view, gist clone, gist edit, gist delete, gist rename, --public, --desc, ssh-key add, ssh-key list, ssh-key delete, authentication key, signing key, gpg-key add, gpg-key list, gpg-key delete, label create, label list, label edit, label delete, label clone, org list, ruleset list, ruleset view, ruleset check, --parents, --org, --default | references/gist-keys.md |
| browse, status, codespace, cs, browse --actions, browse --settings, browse --wiki, browse --releases, browse --projects, browse --blame, browse --branch, browse --commit, --no-browser, codespace create, codespace list, codespace code, codespace ssh, codespace delete, codespace edit, codespace logs, codespace ports, codespace rebuild, codespace stop, codespace view, codespace cp, codespace jupyter, --machine, --location, --idle-timeout, --retention-period, --devcontainer-path | references/browse-status.md |
| JSON, --json, --jq, --template, Go template, formatting, tablerow, tablerender, color, autocolor, timeago, timefmt, truncate, hyperlink, pluck, join, Sprig, contains, hasPrefix, hasSuffix, regexMatch, pretty-print, JSON fields | references/output-formatting.md |
Quick Guide
- How do I authenticate with GitHub? → references/auth.md
- How do I configure gh settings and environment variables? → references/config.md
- How do I clone, create, or fork a repository? → references/repo.md
- How do I create and manage pull requests? → references/pr.md
- How do I create and manage issues? → references/issue.md
- How do I make raw API requests or GraphQL queries? → references/api.md
- How do I work with GitHub Actions workflows and runs? → references/actions.md
- How do I create and manage releases? → references/release.md
- How do I install or create gh extensions? → references/extension.md
- How do I manage secrets and variables? → references/secret-variable.md
- How do I search across GitHub? → references/search.md
- How do I manage gists, keys, labels, orgs, or rulesets? → references/gist-keys.md
- How do I open things in the browser or manage codespaces? → references/browse-status.md
- How do I format JSON output with jq or Go templates? → references/output-formatting.md
- How do I switch between multiple GitHub accounts? → references/auth.md
- How do I use
--jsonand--jqflags? → references/output-formatting.md - How do I set up shell completion? → references/config.md
- What environment variables does gh recognize? → references/config.md
Cross-Project References
- For Git internals (branches, refs, remotes, config, hooks), use the git skill.
- For carapace completion integration (the
ghcompleter in carapace-bin, specs, actions, macros), see the carapace skill. - For cobra command structure (gh is built with cobra), see the cobra skill.
Signals
- GitHub stars
- 2k
- Forks
- 145
- Last commit
- Sep 2026
Advanced
- Catalog kind
- skill
- Gateway key
gh- Source
- github.com/carapace-sh/carapace-bin