← All posts

CLI

GitHub CLI: Manage Pull Requests and Issues Without the Browser

GitHub CLI brings pull requests, issues, releases, and Actions to your terminal, not the browser.

G CLI

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.