github

Utilisation de GitHub CLI pour les issues, PRs, logs de CI/checks, commentaires, revues, releases, dépôts et requêtes API gh.

Qu'est-ce que github ?

Cette compétence fournit une interface complète pour interagir avec GitHub via l'outil en ligne de commande `gh`. Elle est conçue pour les agents IA et les développeurs qui ont besoin de gérer efficacement les Pull Requests (création, fusion asynchrone, vérifications), les issues, les workflows CI/CD, et d'exécuter des requêtes API GitHub avancées. La documentation détaille des flux de travail complexes comme la fusion asynchrone avec le header Octopool, la gestion des fusions empilées (stacked PRs), et l'utilisation de variables d'environnement comme `GH_CONFIG_DIR` pour l'authentification dans des environnements conteneurisés. Elle supporte également la vérification d'état des checks, le re-run de workflows, et l'extraction de données structurées via `--json` et `--jq`. L'IA peut ainsi automatiser des tâches de développement directement depuis le terminal, en respectant les politiques de fusion et les revues de code.

Compatible avec~Claude Code~Codex CLI~Cursor
npx skills add https://github.com/clawdbot/clawdbot/tree/main/skills/github

Installed? Explore more Développement et programmation skills: steipete/bluebubbles, steipete/eightctl, steipete/blucli · View all 6 →

Demander à votre IA préférée

Ouvre une nouvelle conversation avec cette compétence d'agent déjà préchargée.

Documentation

Que fait github ?

Utilisez gh pour GitHub. Utilisez git pour les commits/branches/push/pull locaux. Utilisez les outils de lecture de code pour les revues approfondies.

Authentification

gh auth status
gh auth login

Le HOME de la passerelle peut différer du HOME de l'opérateur. Si l'authentification gh existe ailleurs, définissez GH_CONFIG_DIR dans l'environnement du service de passerelle et redémarrez.

PRs (Pull Requests)

gh pr list --repo proprietaire/depot --json number,title,state,author,url
gh pr view 55 --repo proprietaire/depot --json title,body,author,files,commits,reviews,reviewDecision
gh pr checks 55 --repo proprietaire/depot
gh pr diff 55 --repo proprietaire/depot
gh pr create --repo proprietaire/depot --title "feat: titre" --body-file /tmp/pr.md

Lors de la création ou du rafraîchissement du corps d'une PR, ajoutez ce pied de page final uniquement lorsque la ligne Runtime fournit sessionUrl=<url-exacte>. Remplacez <sessionUrl> par cette URL textuellement ; ne la construisez pas et ne la modifiez pas. Omettre le pied de page lorsque sessionUrl est absent. Préservez tout marqueur de publication devant un seul pied de page, et gardez le pied de page final :

---
[Voir la session de l'équipe OpenClaw](https://raw.githubusercontent.com/clawdbot/clawdbot/main/<sessionUrl>)

Les URLs fonctionnent directement : gh pr view https://github.com/proprietaire/depot/pull/55.

Fusions asynchrones

Utilisez le workflow de déploiement natif du dépôt lorsqu'il est fourni. Pour les fusions programmatiques autorisées ailleurs, utilisez l'API de fusion asynchrone de GitHub via gh api ; gh pr merge ne sélectionne pas cette API. Fournissez le SHA de tête révisé, préservez les revues/vérifications requises et vérifiez d'abord l'appartenance à la pile : soumettre une PR empilée fusionne ou met également en file d'attente ses PRs descendantes ouvertes, qui nécessitent leur propre revue et autorisation.

gh api -H 'X-Octopool-Require: merge-async-v1' \
  --method PUT repos/proprietaire/depot/pulls/55/merge-async \
  -H 'X-GitHub-Api-Version: 2026-03-10' \
  -f sha=SHA_DE_TETE_REVISE -f merge_method=squash -f merge_action=direct_merge
gh api -H 'X-Octopool-Require: merge-async-v1' \
  repos/proprietaire/depot/pulls/55/merge-async/UUID_REQUETE \
  -H 'X-GitHub-Api-Version: 2026-03-10' -H 'Cache-Control: max-age=0'

Gardez l'en-tête de garde Octopool en premier après api. Les wrappers protégés plus anciens le rejettent avant de pouvoir réécrire l'autorité de fusion ; utilisez une version d'Octopool incluant le garde asynchrone s'il est refusé. Le wrapper pris en charge préserve SHA/méthode/action/bypass et ne réécrit que le texte du commit. gh natif peut transmettre l'en-tête. Ne le supprimez pas, ne désactivez pas la politique, et ne sélectionnez pas un binaire brut pour contourner un rejet.

Conservez details.uuid d'une réponse 202 avant d'interroger. pending signifie attendre ; merged inclut details.sha, qui nécessite toujours une vérification finale de la PR/tête. enqueued signifie mis en file d'attente, pas fusionné : surveillez la PR elle-même. Pour honorer une file d'attente configurée, utilisez merge_action=default (ou merge_queue pour mettre explicitement en file d'attente), en omettant les champs de méthode/titre/message directs. N'activez jamais bypass_rules sans autorisation.

En cas d'échec (failed), signalez details.message. Un code 409 identifie une requête existante ; inspectez son UUID et ses options sans soumettre à nouveau. Les réponses perdues, les erreurs d'interrogation et l'expiration des résultats après 24 heures nécessitent une réconciliation, jamais une nouvelle tentative aveugle ou un repli synchrone. Interrogez avec des attentes limitées et des lectures fraîches. Le traitement asynchrone n'arme pas la fusion automatique pour les vérifications non satisfaites ; utilisez le workflow natif ou gh pr merge --auto lorsque ce comportement est autorisé.

Propriété du déploiement

Lorsque l'utilisateur demande de déployer ou fusionner une PR, le résultat final est l'état GitHub vérifié de la PR, pas la fin d'une revue, d'un tour de travailleur ou d'une observation CI.

  • Gardez la tâche active jusqu'à ce que gh pr view ... --json state,mergedAt,mergeCommit prouve que state est MERGED.
  • Traitez les résultats de revue, les conflits de fusion, les vérifications échouées et les modifications demandées comme un travail de continuation lorsqu'ils sont dans le périmètre. Corrigez-les, relancez les contrôles requis et réévaluez la tête mise à jour exacte.
  • Une vérification en attente est un état d'attente, pas une fin. Utilisez le workflow d'attente ou de fusion pris en charge par le dépôt ; ne prétendez pas au succès à partir de vérifications vertes partielles.
  • Si le travail a été délégué à une session persistante et que cette session s'arrête avant la fusion, continuez la même session plutôt que de traiter son rapport comme le résultat final.
  • Arrêtez-vous comme bloqué seulement lorsque la continuation nécessite une nouvelle autorité, des informations d'identification indisponibles ou une décision produit qui ne peut pas être déduite en toute sécurité. Signalez le bloqueur exact et laissez la PR non fusionnée.

Issues

gh issue list --repo proprietaire/depot --state open --json number,title,labels,url
gh issue view 42 --repo proprietaire/depot --json title,body,comments,labels,state
gh issue create --repo proprietaire/depot --title "Bug: ..." --body-file /tmp/issue.md
gh issue comment 42 --repo proprietaire/depot --body-file /tmp/commentaire.md
gh issue close 42 --repo proprietaire/depot --comment "Corrigé dans ..."

CI/exécutions

gh run list --repo proprietaire/depot --limit 10
gh run view <id-exécution> --repo proprietaire/depot --json status,conclusion,headSha,url
gh run view <id-exécution> --repo proprietaire/depot --log-failed
gh run rerun <id-exécution> --repo proprietaire/depot --failed

API

gh api repos/proprietaire/depot/pulls/55 --jq '.title, .state, .user.login'
gh api repos/proprietaire/depot/labels --jq '.[].name'
gh api --cache 1h repos/proprietaire/depot --jq '{stars: .stargazers_count, forks: .forks_count}'

Utilisez --json + --jq pour une sortie structurée. Utilisez --body-file pour les commentaires/corps contenant des backticks, des snippets shell, des noms d'environnement ou du texte utilisateur.

Individual skills in this repo

This repo contains 20 individual skills — each has its own dedicated page.

1password

Set up and use 1Password CLI for sign-in, desktop integration, and reading or injecting secrets.

acp-router

Route plain-language requests for Claude Code, Cursor, Copilot, OpenClaw ACP, OpenCode, Gemini CLI, Qwen, Kiro, Kimi, iFlow, Factory Droid, Kilocode, or explicit ACP harness work into either OpenClaw ACP runtime sessions or direct acpx-driven sessions ("telephone game" flow). For coding-agent thread requests, read this skill first, then use only `sessions_spawn` for thread creation. Codex chat binding defaults to the native Codex app-server plugin unless ACP is explicit or background spawn needs ACP.

add-model-provider

Add and live-prove a model provider with non-interactive config one-liners, without exposing credentials.

agent-transcript

Requested GitHub PR/issue agent transcripts: redact, trim, preview, and insert safely.

apple-notes

Create, view, edit, delete, search, move, or export Apple Notes via the memo CLI on macOS.

apple-reminders

List, add, edit, complete, or delete Apple Reminders and reminder lists via remindctl.

auto-qa

Run OpenClaw-wide autonomous QA and live/stress campaigns across independent subsystem lanes, with verified fixes and a resumable evidence report.

autoreview

Structured code review through the shared OpenClaw agent-skills installation.

bear-notes

Create, search, and manage Bear notes via grizzly CLI.

blacksmith-testbox

Run Blacksmith Testbox for CI-parity checks, secrets, hosted services, migrations, or builds local cannot reproduce.

block-kit

Use proactively for structured or interactive Slack replies, and when asked to author or validate native Slack Block Kit JSON.

blogwatcher

Monitor blogs and RSS/Atom feeds for updates using the blogwatcher CLI.

blucli

BluOS CLI (blu) for discovery, playback, grouping, and volume.

bluebubbles

Send and manage iMessages via BlueBubbles, including attachments, tapbacks, edits, replies, and groups.

browser-automation

Use when controlling web pages with the OpenClaw browser tool, especially multi-step flows, login checks, tab management, or recovery from stale refs/timeouts.

camsnap

Capture frames or clips from RTSP/ONVIF cameras and local webcams, including USB pan/tilt/zoom control.

canvas

Present HTML on connected OpenClaw node canvases, navigate/eval/snapshot, and debug canvas host URLs.

channel-message-flows

Use when running QA Lab channel message flow evidence.

clawdtributor

Clawtributor PRs here, last week or another window: discover conversation refs, recheck GitHub, rank by impact.

clawhub

Search ClawHub for plugins by default, or skills when explicitly requested; install, verify, update, uninstall, publish, or sync skills.

Skills associés