cli-gh
paulrberg/agent-skills
À utiliser pour l'automatisation via la CLI GitHub : commandes « gh », informations sur les dépôts, déclencheurs de workflows, recherche sur GitHub, Codespaces, statut des pull requests, tickets, navigation dans les dépôts ou tâches GitHub en ligne de commande.
...Développer toutÀ propos cli-gh
La compétence « cli-gh » fournit des conseils d’experts pour les opérations GitHub CLI (gh), permettant ainsi aux développeurs de gérer l’intégralité de leur workflow GitHub directement depuis le terminal. Cette skill rationalise les interactions en ligne de commande avec GitHub, éliminant ainsi la nécessité de basculer entre le terminal et le navigateur pour les tâches courantes liées aux dépôts. Elle se concentre exclusivement sur les opérations sûres, en lecture seule ou réversibles, et interdit strictement les commandes destructrices telles que la suppression de dépôts, la suppression de ressources ou le vidage du cache.
Parmi ses principales fonctionnalités figurent la gestion complète des pull requests (création, révision, fusion et suivi des PR), le suivi et l’organisation des tickets, la recherche à l’échelle du dépôt sur l’ensemble de GitHub, la gestion des étiquettes et des projets, la surveillance et le déclenchement des workflows GitHub Actions, les opérations sur les espaces de code, l’automatisation des mises en production et la navigation dans les dépôts depuis un navigateur. Cette compétence prend en charge des fonctionnalités avancées telles que les revues de code Copilot, les brouillons de pull requests, les stratégies de fusion « squash » et « rebase », ainsi que les opérations groupées sur les tickets et les pull requests.
Cette compétence est destinée aux développeurs et aux ingénieurs DevOps qui privilégient les workflows en ligne de commande, aux équipes mettant en œuvre l’automatisation CI/CD, aux responsables de projets open source gérant plusieurs dépôts, ainsi qu’à toute personne cherchant à optimiser l’efficacité de ses interactions avec GitHub. Elle s’avère particulièrement utile pour automatiser les tâches GitHub répétitives, intégrer les opérations GitHub dans des scripts et des workflows, et maintenir des pratiques de développement cohérentes entre les équipes sans quitter la ligne de commande.
FAQ
Quelles opérations destructrices sont interdites dans cette compétence ?
Cette compétence interdit strictement les commandes entraînant une destruction permanente, notamment la suppression de dépôts, l’archivage, la suppression de versions, la suppression d’exécutions de workflows, la suppression du cache, la suppression de secrets/variables, la suppression de clés SSH/GPG, la suppression d’espaces de code et toute opération de suppression en masse. Seules les opérations sûres, en lecture seule ou réversibles, telles que la création de ressources, la consultation d’informations, la mise à jour de contenu et la fermeture (mais pas la suppression) de PR/tickets, sont autorisées.
Dois-je m’authentifier avant d’utiliser les commandes GitHub CLI ?
Oui, vous devez vous authentifier auprès de GitHub à l’aide de la commande « gh auth login » avant d’utiliser la plupart des commandes gh. Vous pouvez vérifier votre statut d’authentification avec « gh auth status » et configurer l’intégration Git avec « gh auth setup-git ». La compétence prend en charge la connexion interactive et la copie automatique du code OAuth dans le presse-papiers.
Puis-je utiliser cette skill pour gérer les pull requests et les revues de code ?
Oui, la skill offre une gestion complète des PR, notamment la création de PR avec des titres, des corps et des branches de base personnalisés, la création de brouillons de PR, la consultation des détails et des différences des PR, l’extraction locale des PR, la réalisation de revues de code (approbation, commentaire, demande de modifications), la demande de revues de code Copilot, la fusion selon différentes stratégies (squash, rebase, merge), ainsi que la mise à jour des branches de pull requests.
Quels sont les principaux cas d’utilisation de cette compétence ?
Les principaux cas d’utilisation comprennent la gestion des workflows GitHub depuis le terminal, l’automatisation des tâches GitHub répétitives via des scripts, l’intégration dans un pipeline CI/CD, la gestion de plusieurs dépôts depuis la ligne de commande, la réalisation de revues de code sans avoir à changer de navigateur, la surveillance des workflows GitHub Actions et le maintien de pratiques de développement cohérentes entre les équipes.
Cette compétence prend-elle en charge GitHub Actions et l’automatisation des workflows ?
Oui, cette compétence inclut des fonctionnalités permettant de déclencher et de surveiller les workflows GitHub Actions, de vérifier l’état d’exécution des workflows, de consulter les journaux des workflows et d’annuler les workflows en cours d’exécution. Elle permet l’automatisation en ligne de commande des processus CI/CD et l’intégration avec les scripts de développement existants.
GitHub CLI (gh)
Overview
Expert guidance for GitHub CLI (gh) operations and workflows. Use this skill for command-line GitHub operations including pull request management, issue tracking, repository operations, workflow automation, and codespace management.
Key capabilities:
- Create and manage pull requests from the terminal
- Track and organize issues efficiently
- Search across all of GitHub (repos, issues, PRs)
- Manage labels and project organization
- Trigger and monitor GitHub Actions workflows
- Work with codespaces
- Automate repository operations and releases
- Browse repositories, PRs, and files in the browser
Safety Rules
CRITICAL: This skill NEVER uses destructive gh CLI operations.
This skill focuses exclusively on safe, read-only, or reversible GitHub operations. The following commands are PROHIBITED and must NEVER be used:
Permanently destructive commands:
gh repo delete- Repository deletiongh repo archive- Repository archivalgh release delete- Release deletiongh release delete-asset- Asset deletiongh run delete- Workflow run deletiongh cache delete- Cache deletiongh secret delete- Secret deletiongh variable delete- Variable deletiongh label delete- Label deletiongh ssh-key delete- SSH key deletion (can lock out users)gh gpg-key delete- GPG key deletiongh codespace delete- Codespace deletiongh extension remove- Extension removalgh gist delete- Gist deletion- Bulk deletion operations using
xargswith any destructive commands - Shell commands:
rm -rf(except for temporary file cleanup)
Allowed operations:
- Creating resources (PRs, issues, releases, labels, repos)
- Viewing and listing (status, logs, information, searches)
- Updating and editing existing resources
- Closing PRs/issues (reversible - can be reopened)
- Reverting pull requests (creates a new revert PR)
- Canceling workflow runs (stops execution without deleting data)
- Merging pull requests (after proper review)
- Read-only git operations (
git status,git log,git diff)
Installation & Setup
# Login to GitHubgh auth login# Login and copy OAuth code to clipboard automaticallygh auth login --clipboard# Check authentication statusgh auth status# Check auth status with JSON outputgh auth status --json# Configure git to use gh as credential helpergh auth setup-git
Pull Requests
Creating PRs
# Create PR interactivelygh pr create# Create PR with title and bodygh pr create --title "Add feature" --body "Description"# Create PR to specific branchgh pr create --base main --head feature-branch# Create draft PRgh pr create --draft# Create PR from current branchgh pr create --fill # Uses commit messages# Create PR with Copilot Code Reviewgh pr create --reviewer @copilot
Viewing PRs
# List PRsgh pr list# List my PRsgh pr list --author @me# View PR detailsgh pr view 123# View PR in browsergh pr view 123 --web# View PR diffgh pr diff 123# View PR diff excluding specific filesgh pr diff 123 --exclude "*.lock"# Check PR statusgh pr status
Managing PRs
# Checkout PR locallygh pr checkout 123# Review PRgh pr review 123 --approvegh pr review 123 --comment --body "Looks good!"gh pr review 123 --request-changes --body "Please fix X"# Request Copilot Code Reviewgh pr edit 123 --add-reviewer @copilot# Merge PRgh pr merge 123gh pr merge 123 --squashgh pr merge 123 --rebasegh pr merge 123 --merge# Close PRgh pr close 123# Reopen PRgh pr reopen 123# Ready draft PRgh pr ready 123# Update PR branch with base branchgh pr update-branch 123# Revert a merged PR (creates a new revert PR)gh pr revert 123
PR Checks
# View PR checksgh pr checks 123# Watch PR checksgh pr checks 123 --watch
Issues
Creating Issues
# Create issue interactivelygh issue create# Create issue with title and bodygh issue create --title "Bug report" --body "Description"# Use a Markdown issue template as interactive/editor starting body textgh issue create --template "Bug Report"# Create issue with labelsgh issue create --title "Bug" --label bug,critical# Assign issuegh issue create --title "Task" --assignee @me# Set the issue type (GitHub.com and GHES 3.17+)gh issue create --type Bug
--template cannot be combined with --body or --body-file; use it with prompts, --editor, or --web. For YAML issue forms, fetch and render the form fields yourself for non-interactive automation, or finish in the browser.
Viewing Issues
# List issuesgh issue list# List my issuesgh issue list --assignee @me# List by labelgh issue list --label bug# Filter by issue typegh issue list --type Bug# Advanced issue searchgh issue list --search "is:open label:bug sort:created-desc"# View issue detailsgh issue view 456# View in browsergh issue view 456 --web
Managing Issues
# Close issuegh issue close 456# Close as duplicate, linking to the original issuegh issue close 123 --duplicate-of 456# Reopen issuegh issue reopen 456# Edit issuegh issue edit 456 --title "New title"gh issue edit 456 --add-label buggh issue edit 456 --add-assignee @user# Comment on issuegh issue comment 456 --body "Update"# Create branch to work on issuegh issue develop 456 --checkout
Issue Types, Sub-Issues & Relationships
Issue types and sub-issues require GitHub.com or GHES 3.17+; blocking relationships require GHES 3.19+.
# Set or remove the issue typegh issue edit 456 --type Buggh issue edit 456 --remove-type# Create a sub-issue under a parentgh issue create --parent 100# Organize existing issues into a parent/child hierarchygh issue edit 100 --add-sub-issue 123,124gh issue edit 100 --remove-sub-issue 123gh issue edit 123 --parent 100gh issue edit 123 --remove-parent# Track blocked-by / blocking relationshipsgh issue create --blocked-by 200,201 --blocking 300gh issue edit 123 --add-blocked-by 200 --add-blocking 300,301gh issue edit 123 --remove-blocked-by 200 --remove-blocking 301
Discussions
When the user asks to list, view, create, edit, or comment on GitHub Discussions, see references/discussions.md. The gh discussion command set is in preview and subject to change.
Copilot Agent Tasks
Delegate work to the Copilot coding agent and track its sessions. The gh agent-task command set (aliases gh agent, gh agents) is in preview.
# Create an agent task on the current repositorygh agent-task create "Improve the performance of the data processing pipeline"# List your most recent agent tasksgh agent-task listgh agent-task list --json id,name,state# View an agent task session (by PR number, session ID, or URL)gh agent-task view 123gh agent-task view <session-id> --json state --jq '.state'
Agent Skills
Discover, install, and publish agent skills from GitHub repositories. The gh skill command set (alias gh skills) is in preview.
# Search for skills across GitHubgh skill search terraform# Preview a skill before installinggh skill preview github/awesome-copilot documentation-writer# Install a skill (default scope: project)gh skill install github/awesome-copilot documentation-writergh skill install owner/repo skill-name --scope user --pin v1.2.0# Include skills in hidden dirs (.claude/skills/, .agents/skills/, .github/skills/)gh skill install owner/repo skill-name --allow-hidden-dirs# List installed skills and update themgh skill listgh skill update --all# Validate and publish your own skillsgh skill publish --dry-run
Repository Operations
Repository Info
# View repositorygh repo view# View in browsergh repo view --web# Clone repositorygh repo clone owner/repo# Clone without adding upstream remotegh repo clone owner/repo --no-upstream# Fork repositorygh repo fork owner/repo# List repositoriesgh repo list owner
Repository Management
# Create repositorygh repo create my-repo --publicgh repo create my-repo --private# Sync forkgh repo sync owner/repo# Set default repositorygh repo set-default# Configure the squash-merge commit message defaultgh repo edit --squash-merge-commit-message COMMIT_MESSAGES
Reading Repo Contents
Read files and directories without cloning. The gh repo read-file and gh repo read-dir commands are in preview and subject to change.
# Read a file from the default branch (paged in a TTY, raw when piped)gh repo read-file README.md --repo cli/cli# Read from a specific branch, tag, or commitgh repo read-file go.mod --ref v2.94.0 --repo cli/cli# Write to disk instead of stdout (--clobber to overwrite)gh repo read-file README.md --output ./README.md --clobber# Refuse escape sequences by default; opt in for TTY/piped outputgh repo read-file script.sh --allow-escape-sequences# List a directory (root when no path given)gh repo read-dir script --repo cli/cli# Inspect entries as JSON for scriptinggh repo read-dir docs --repo cli/cli --json name,path,type,size
Search
When the user asks to search GitHub repositories, issues, or pull requests, see references/search.md.
Labels
When the user asks to list, create, edit, or clone repository labels, see references/labels.md.
Codespaces
When the user asks to list, create, connect to, or manage files within GitHub Codespaces, see references/codespaces.md.
Browse
Open repositories, files, and resources in the browser.
# Open current repo in browsergh browse# Open specific filegh browse src/main.go# Open file at specific linegh browse src/main.go:42# Open blame view for a filegh browse --blame src/main.go# Open Actions tabgh browse --actions# Open specific branchgh browse --branch feature
Releases
When the user asks to create, list, view, or download GitHub releases, see references/releases.md.
Gists
When the user asks to create, list, view, or edit GitHub gists, see references/gists.md.
Configuration
# Set default editorgh config set editor vim# Set default git protocolgh config set git_protocol ssh# View configurationgh config list# Set browsergh config set browser firefox
Quick Reference
Common gh operations at a glance:
| Operation | Command | Common Flags |
|---|---|---|
| Create PR | gh pr create | --draft, --fill, --reviewer @copilot |
| List PRs | gh pr list | --author @me, --label, --search |
| View PR | gh pr view <number> | --web, --comments |
| Merge PR | gh pr merge <number> | --squash, --rebase, --delete-branch |
| Revert PR | gh pr revert <number> | --body |
| Create issue | gh issue create | --title, --body, --template, --type |
| List issues | gh issue list | --assignee @me, --label, --type |
| Close issue | gh issue close <number> | --duplicate-of, --reason |
| View issue | gh issue view <number> | --web, --comments |
| Link sub-issue | gh issue edit <number> | --parent, --add-sub-issue |
| Block issue | gh issue edit <number> | --add-blocked-by, --add-blocking |
| List discussions | gh discussion list | --answered, --sort, --json |
| Create agent task | gh agent-task create | --json (on list/view) |
| Install skill | gh skill install | --scope, --pin, --allow-hidden-dirs |
| Browse repo | gh browse | --blame, --actions, --branch |
| Clone repo | gh repo clone <repo> | --no-upstream |
| Fork repo | gh repo fork | --clone, --remote |
| View repo | gh repo view | --web |
| Read repo file | gh repo read-file <path> | --ref, --output, --clobber, --json |
| Read repo dir | gh repo read-dir [path] | --ref, --json |
| Create release | gh release create <tag> | --title, --notes, --draft |
| Verify release | gh release verify <tag> | --repo |
| Run workflow | gh workflow run <name> | --ref, --field |
| Watch run | gh run watch <id> | --exit-status |
| Search repos | gh search repos <query> | --language, --stars |
| Create label | gh label create <name> | --color, --description |
| Create codespace | gh codespace create | --repo, --branch |
Additional Resources
Reference Guides
For detailed patterns and advanced usage, see:
- Discussions - List, view, create, edit, and comment on GitHub Discussions (preview)
- Workflows & Actions - GitHub Actions workflows, runs, cache management, and CI/CD integration patterns
- Advanced Features - Aliases, API access, extensions, secrets, SSH/GPG keys, organizations, projects, and advanced scripting
- Automation Workflows - Common automation patterns, daily reports, release automation, and team collaboration workflows
- Troubleshooting - Solutions for authentication, permissions, rate limiting, and common errors
Example Scripts
Practical automation scripts (see examples/ directory):
auto-pr-create.sh- Automated PR creation workflowissue-triage.sh- Bulk issue labeling and assignmentworkflow-monitor.sh- Watch and notify on workflow completionrelease-automation.sh- Complete release workflow automation
External Documentation
- Official Manual: https://cli.github.com/manual
- GitHub Community: https://github.com/cli/cli/discussions
- API Documentation: https://docs.github.com/en/rest
- Extension Marketplace: https://github.com/topics/gh-extension
JSON Output
When the user wants to use --json flags or needs the correct gh CLI JSON field names, see references/json-output.md.
Tips
- Use
--webflag to open items in browser for detailed view - Leverage interactive prompts by omitting parameters - most commands support interactive mode
- Apply filters with
--author,--label,--stateto narrow down lists efficiently - Add
--jsonflag to enable scriptable output for automation - Always check
--helpfor valid JSON field names - they differ from GitHub API - Use
gh repo create --templateto scaffold from template repositories - Enable auto-merge with
gh pr merge --autofor PRs that pass checks
Tous les fichiers
18 fichiersInstaller cli-gh
Téléchargez et décompressez les fichiers de compétences dans votre répertoire .claude/skills/.
Télécharger le ZIPClonez le dépôt et copiez les fichiers de compétence dans votre projet.
git clone https://github.com/PaulRBerg/agent-skills/blob/main/skills/cli-gh/SKILL.md # Copy SKILL.md to your .claude/skills/ directory
Copier





Maison
