github
GitHub CLI - manage repositories, issues, pull requests, actions, releases, and more from the command line.
What this skill does
# GitHub CLI Skill
Use the `gh` CLI to interact with GitHub repositories and services.
## Authentication
Check auth status:
```bash
gh auth status
```
Login:
```bash
gh auth login
```
Refresh token:
```bash
gh auth refresh
```
## Repositories
Clone repository:
```bash
gh repo clone owner/repo
```
Create new repo:
```bash
gh repo create my-repo --public --source=. --push
```
Fork repository:
```bash
gh repo fork owner/repo --clone
```
View repo in browser:
```bash
gh repo view --web
```
List your repos:
```bash
gh repo list
```
## Issues
List issues:
```bash
gh issue list
```
Create issue:
```bash
gh issue create --title "Bug: Login fails" --body "Description here"
```
Create issue interactively:
```bash
gh issue create
```
View issue:
```bash
gh issue view 123
```
Close issue:
```bash
gh issue close 123
```
Reopen issue:
```bash
gh issue reopen 123
```
Comment on issue:
```bash
gh issue comment 123 --body "Working on this"
```
Assign issue:
```bash
gh issue edit 123 --add-assignee @me
```
Add labels:
```bash
gh issue edit 123 --add-label "bug,priority:high"
```
## Pull Requests
List PRs:
```bash
gh pr list
```
Create PR:
```bash
gh pr create --title "Add feature" --body "Description"
```
Create PR from current branch:
```bash
gh pr create --fill
```
View PR:
```bash
gh pr view 45
```
View PR in browser:
```bash
gh pr view 45 --web
```
Checkout PR locally:
```bash
gh pr checkout 45
```
Review PR:
```bash
gh pr review 45 --approve
gh pr review 45 --request-changes --body "Please fix X"
gh pr review 45 --comment --body "Looks good but..."
```
Merge PR:
```bash
gh pr merge 45 --squash
gh pr merge 45 --merge
gh pr merge 45 --rebase
```
Close PR:
```bash
gh pr close 45
```
List PR checks:
```bash
gh pr checks 45
```
View PR diff:
```bash
gh pr diff 45
```
## Actions (CI/CD)
List workflow runs:
```bash
gh run list
```
View run details:
```bash
gh run view 12345
```
Watch run in progress:
```bash
gh run watch 12345
```
View run logs:
```bash
gh run view 12345 --log
```
Rerun failed jobs:
```bash
gh run rerun 12345 --failed
```
List workflows:
```bash
gh workflow list
```
Run workflow manually:
```bash
gh workflow run deploy.yml
```
Run with inputs:
```bash
gh workflow run deploy.yml -f environment=production
```
Disable/enable workflow:
```bash
gh workflow disable deploy.yml
gh workflow enable deploy.yml
```
## Releases
List releases:
```bash
gh release list
```
Create release:
```bash
gh release create v1.0.0 --title "Version 1.0" --notes "Release notes"
```
Create from tag:
```bash
gh release create v1.0.0 --generate-notes
```
Upload assets:
```bash
gh release upload v1.0.0 ./dist/app.zip
```
Download assets:
```bash
gh release download v1.0.0
```
Delete release:
```bash
gh release delete v1.0.0
```
## Gists
Create gist:
```bash
gh gist create file.txt --public
```
Create from stdin:
```bash
echo "Hello" | gh gist create -
```
List gists:
```bash
gh gist list
```
View gist:
```bash
gh gist view GIST_ID
```
Edit gist:
```bash
gh gist edit GIST_ID
```
## Search
Search repos:
```bash
gh search repos "react hooks" --limit 10
```
Search issues:
```bash
gh search issues "bug authentication" --repo owner/repo
```
Search PRs:
```bash
gh search prs "fix memory leak" --state open
```
Search code:
```bash
gh search code "function handleAuth" --repo owner/repo
```
## API
Make API request:
```bash
gh api repos/owner/repo
```
POST request:
```bash
gh api repos/owner/repo/issues -f title="New issue" -f body="Description"
```
GraphQL query:
```bash
gh api graphql -f query='{ viewer { login } }'
```
Paginate results:
```bash
gh api repos/owner/repo/issues --paginate
```
## Labels
List labels:
```bash
gh label list
```
Create label:
```bash
gh label create "priority:high" --color FF0000 --description "High priority"
```
## Projects
List projects:
```bash
gh project list
```
View project:
```bash
gh project view 1
```
## SSH Keys
List SSH keys:
```bash
gh ssh-key list
```
Add SSH key:
```bash
gh ssh-key add ~/.ssh/id_ed25519.pub --title "My laptop"
```
## GPG Keys
List GPG keys:
```bash
gh gpg-key list
```
Add GPG key:
```bash
gh gpg-key add key.gpg
```
## Secrets (for Actions)
List secrets:
```bash
gh secret list
```
Set secret:
```bash
gh secret set MY_SECRET
```
Set from file:
```bash
gh secret set MY_SECRET < secret.txt
```
Delete secret:
```bash
gh secret delete MY_SECRET
```
## Variables (for Actions)
List variables:
```bash
gh variable list
```
Set variable:
```bash
gh variable set MY_VAR --body "value"
```
## Extensions
List installed extensions:
```bash
gh extension list
```
Install extension:
```bash
gh extension install owner/gh-extension
```
Browse extensions:
```bash
gh extension browse
```
## Aliases
Create alias:
```bash
gh alias set pv 'pr view'
```
List aliases:
```bash
gh alias list
```
## Configuration
View config:
```bash
gh config list
```
Set default editor:
```bash
gh config set editor vim
```
Set default browser:
```bash
gh config set browser "open"
```
## Common Workflows
### Quick PR workflow:
```bash
# Create branch, commit, push, create PR
git checkout -b feature/my-feature
# ... make changes ...
git add . && git commit -m "Add feature"
git push -u origin feature/my-feature
gh pr create --fill
```
### Review and merge:
```bash
gh pr checkout 45
# ... review code ...
gh pr review --approve
gh pr merge --squash --delete-branch
```
### Check CI status:
```bash
gh pr checks
gh run watch
```
Related in General
modeling-omnistudio-epc-catalog
IncludedSalesforce Industries CME EPC product-modeling skill for Product2-based catalog creation. Use when creating EPC products, configuring product attributes, building offer bundles with Product Child Items, or reviewing EPC DataPack JSON metadata for product catalog changes. TRIGGER when: user creates or updates Product2 EPC records, AttributeAssignment payloads, AttributeMetadata/AttributeDefaultValues, Offer bundles, or ProductChildItem relationships. DO NOT TRIGGER when: designing OmniScripts/FlexCards/Integration Procedures (use building-omnistudio-omniscript, building-omnistudio-flexcard, or building-omnistudio-integration-procedure), implementing Apex business logic (use generating-apex), or troubleshooting deployment pipelines (use deploying-metadata).
relationship-science-coach
IncludedUse this skill for direct, practical adult relationship coaching: couples conflict, repair, trust, marriage, dating, flirting, attachment patterns, emotional connection, sex, desire differences, eroticism, kink negotiation, affection, love languages, breakups, and long-term passion. Draw on Gottman, EFT and Hold Me Tight, attachment science, modern sex research, Perel, Nagoski, Kerner, Schnarch, Love and Stosny, and flexible love-language tools. Be concrete and low-hedge. Redirect only for imminent danger, abuse, coercive control, minors, non-consent, self-harm, stalking, or medical/legal/psychiatric decisions.
building-sf-integrations
IncludedSalesforce integration architecture and runtime plumbing with 120-point scoring. Use this skill to set up Named Credentials, External Credentials, External Services, REST/SOAP callout patterns, Platform Events, and Change Data Capture. TRIGGER when: user sets up Named Credentials, External Services, REST/SOAP callouts, Platform Events, CDC, or touches .namedCredential-meta.xml files. DO NOT TRIGGER when: Connected App/OAuth config (use configuring-connected-apps), Apex-only logic (use generating-apex), or data import/export (use handling-sf-data).
venue-templates
IncludedAccess comprehensive LaTeX templates, formatting requirements, and submission guidelines for major scientific publication venues (Nature, Science, PLOS, IEEE, ACM), academic conferences (NeurIPS, ICML, CVPR, CHI), research posters, and grant proposals (NSF, NIH, DOE, DARPA). This skill should be used when preparing manuscripts for journal submission, conference papers, research posters, or grant proposals and need venue-specific formatting requirements and templates.
let-fate-decide
IncludedDraws the 12 Houses of the Zodiac Tarot spread to inject entropy into planning when prompts are vague, ambiguous, or casually delegated. Interprets the spread to guide next steps. Use when the user says 'let fate decide', 'YOLO', 'whatever', 'idk', or other nonchalant phrases, makes Yu-Gi-Oh references, or when you are about to arbitrarily pick between multiple reasonable approaches. Prefer over ask-questions-if-underspecified when the user's tone is casual or playful rather than precision-seeking.
net-ops
IncludedCross-platform network troubleshooting (Windows, macOS, Linux) via local or remote shell. Use for: DNS broken, can't resolve hostnames, nslookup/dig works but apps fail, NRPT, WFP, scutil, /etc/resolver, systemd-resolved, /etc/resolv.conf, NetworkManager, VPN DNS leak residue (ProtonVPN/Mullvad/WireGuard/AnyConnect), AV/firewall blocking DNS or DoH, Tailscale DNS interaction, intermittent connectivity, remote diagnostics over SSH.