GitHub CLI (gh)
Overview
Use gh for authenticated GitHub operations from the terminal. Prefer explicit, idempotent commands and report URLs back to the user.
Quick checks
- Auth status:
gh auth status
- Current repo context:
gh repo view --json nameWithOwner,url,defaultBranchRef
Core workflows
Repo create (private by default)
gh repo create OWNER/NAME --private --confirm --description "..."
If running inside a local repo, use --source . --remote origin --push.
Clone / fork
gh repo clone OWNER/NAME
gh repo fork OWNER/NAME --clone
Issues
- List:
gh issue list --limit 20
- Create:
gh issue create --title "..." --body "..."
- Comment:
gh issue comment <num> --body "..."
Pull requests
- Create from current branch:
gh pr create --title "..." --body "..."
- List:
gh pr list --limit 20
- View:
gh pr view <num> --web
- Merge (use explicit method):
gh pr merge <num> --merge
Releases
gh release create vX.Y.Z --title "vX.Y.Z" --notes "..."
Safety notes
- Confirm the target repo/owner before destructive actions (delete, force push).
- For private repos, ensure
--privateis set on create. - Prefer
--confirmto avoid interactive prompts in automation.