GitHub Skill (gh CLI)
Use the gh CLI for GitHub issues, PRs, CI, and API queries.
Setup (Blink Claw — zero config)
On Claw machines gh and git are pre-authenticated via the Blink credential
helper — never run gh auth login. If gh auth status reports
"not logged in", the credential helper is still active and git/gh will
successfully fetch/push via HTTPS. You can verify with:
gh api /user --jq .login # should print your GitHub username
blink github status # shows the workspace installation + token expiry
If both of those fail, the workspace has no GitHub App installation yet —
run blink github status for the install link, or connect at
https://blink.new/settings?tab=connectors.
When to Use
USE this skill when:
- Checking PR status, reviews, or merge readiness
- Viewing CI/workflow run status and logs
- Creating, closing, or commenting on issues
- Creating or merging pull requests
- Querying GitHub REST / GraphQL API
DON'T use this skill when:
- Cloning repos → use
git clonedirectly, orblink github clone(both auto-auth via the Blink credential helper) - Simple REST proxy calls →
blink connector exec github ...is one line - Local git operations (commit, push, pull, branch) → plain
gitworks
Common commands
Pull Requests
gh pr list --repo owner/repo
gh pr checks 55 --repo owner/repo
gh pr view 55 --repo owner/repo
gh pr create --title "feat: add feature" --body "Description"
gh pr merge 55 --squash --repo owner/repo
Issues
gh issue list --repo owner/repo --state open
gh issue create --title "Bug: something broken" --body "Details..."
gh issue close 42 --repo owner/repo
CI/Workflow Runs
gh run list --repo owner/repo --limit 10
gh run view <run-id> --repo owner/repo
gh run view <run-id> --repo owner/repo --log-failed
gh run rerun <run-id> --failed --repo owner/repo
API Queries
gh api repos/owner/repo/pulls/55 --jq '.title, .state, .user.login'
gh api repos/owner/repo/labels --jq '.[].name'
gh api graphql -f query='{ viewer { login } }'
JSON Output
Most commands support --json for structured output with --jq filtering:
gh issue list --repo owner/repo --json number,title --jq '.[] | "\(.number): \(.title)"'
gh pr list --json number,title,state,mergeable --jq '.[] | select(.mergeable == "MERGEABLE")'
Notes
- Always specify
--repo owner/repowhen not in a git directory. - Use URLs directly:
gh pr view https://github.com/owner/repo/pull/55. - Rate limits apply; use
gh api --cache 1hfor repeated queries.