So much of working with GitHub means leaving your terminal for the browser: open a pull request, check CI, review an issue, cut a release. GitHub CLI (gh) pulls all of that back into the shell. It's the official command-line interface to GitHub, so creating and reviewing PRs, triaging issues, watching Actions runs, and managing releases happen right where you already are, next to the code.
The Everyday Loop, in the Shell
The common flow - branch, push, open a PR, check its status - never touches the browser:
# Open a PR from the current branch
gh pr create --fill
# See its checks and review status
gh pr status
# Watch the latest Actions run
gh run watch
Scriptable and Extensible
Because it's a real CLI with a JSON output mode and an extension system, gh is also a building block: script repetitive repo chores, query the GitHub API without hand-rolling auth, or install community extensions that add new commands. It turns GitHub into something you can automate.
Rough Edges and Limitations
- GitHub-specific. GitLab and others have their own CLIs; gh speaks GitHub.
- Rich reviews still want the web. Big, multi-file code review is more comfortable in the browser UI.
- Auth setup first. A one-time login, and SSO orgs need an extra step.
For anyone who lives in the terminal and pushes to GitHub, gh removes a hundred small context switches a week.
Internal link suggestion: link "watching Actions runs" to a CI-related post, or to the act post for running those Actions locally.