GitHub CLI (gh)
When to Use This Skill
Use gh for GitHub repositories. To detect GitHub:
git remote -v | grep -i github.com
If the remote contains github.com, use this skill.
Before Any Operation
Always verify authentication first:
gh auth status
If not authenticated, guide the user to run gh auth login.
Behavioral Guidelines
- Creating PRs: Always check for uncommitted changes first with
git status - Viewing PRs/Issues: Use
--commentsflag when user wants full context - CI Operations: Check
gh run listbefore triggering new workflows - Use
--web: When the user might benefit from the browser UI - PR descriptions: Use HEREDOC for multi-line bodies to preserve formatting
Command Reference
Pull Requests
| Action | Command |
|--------|---------|
| Create | gh pr create --title "Title" --body "Desc" |
| Create draft | gh pr create --draft --title "Title" |
| List | gh pr list |
| View | gh pr view <id> |
| View with comments | gh pr view <id> --comments |
| Checkout | gh pr checkout <id> |
| Diff | gh pr diff <id> |
| Merge | gh pr merge <id> |
| Approve | gh pr review <id> --approve |
Issues
| Action | Command |
|--------|---------|
| Create | gh issue create --title "Title" --body "Desc" |
| List | gh issue list |
| List mine | gh issue list --assignee=@me |
| View | gh issue view <id> |
| Close | gh issue close <id> |
| Comment | gh issue comment <id> --body "Comment" |
Workflow Runs (CI/CD)
| Action | Command |
|--------|---------|
| List runs | gh run list |
| View run | gh run view <id> |
| View logs | gh run view <id> --log |
| Watch live | gh run watch <id> |
| Rerun failed | gh run rerun <id> --failed |
Repository
| Action | Command |
|--------|---------|
| View info | gh repo view |
| Clone | gh repo clone <owner/repo> |
| Fork | gh repo fork |
| Open in browser | gh repo view --web |
Advanced: API Calls
For operations not covered by CLI commands:
gh api repos/{owner}/{repo}/pulls/{id}/comments