Synthèse automatique
Ce skill pilote les opérations GitHub courantes (pull requests, issues, statut CI, recherche de code) via la CLI gh.
Points forts
- Couvre le cycle complet des PR : création, consultation, commentaires et vérification CI
- Détecte automatiquement la branche de base parente avec repli sur development/develop/main/master
- Gère les templates de PR (.github/PULL_REQUEST_TEMPLATE.md) et bascule sur --web sinon
- Fournit des commandes prêtes à l'emploi pour les issues et la recherche de code
Limites
- Suppose que gh est installé et authentifié, sans vérifier ce préalable
- La détection de branche parente via git show-branch peut échouer sur des historiques complexes
- Ne couvre pas les revues de code détaillées, les merges ni la gestion des releases
À utiliser dès qu'un utilisateur demande de créer, consulter ou suivre une PR, une issue ou le statut CI sur GitHub.
À éviter pour des opérations Git locales sans lien avec GitHub ou pour des workflows nécessitant des API non exposées par gh.
Analyse de sécurité
PrudenceAll commands are conventional, non-destructive GitHub/git workflows (branch inspection, push, PR/issue creation, code search). There is no exfiltration of tokens, no curl|sh, no rm -rf, no obfuscation, and nothing that disables safety controls. The only concerns are the implicit `git push` side effect and interactive `gh auth login`/`--web` flows, which warrant a caution rating rather than risky.
- •Skill has no declared allowed-tools but instructs the agent to run shell commands (git, gh) and perform network operations via the GitHub CLI
- •Automatically runs `git push -u origin $(git branch --show-current)` without an explicit user confirmation step
- •Unquoted command substitution in the push and base-branch detection snippets can misbehave on unusual branch names
- •`gh pr create --web` and `gh auth login` open a browser / interactive OAuth flow
Exemples
Create a pull request for my current branch with a descriptive titleCheck the CI status of PR 123 and tell me which checks are failingSearch the repo for usages of the deprecated authenticate() functionname: gh description: GitHub operations using gh CLI for any repository. Use when the user asks to "create pr", "create pull request", "view pr", "check ci", "pr status", "list prs", "create issue", "view issue", "search code", or any other GitHub-related operations. Handles PR creation with proper base branch detection, template support, and project conventions. user-invocable: true model: haiku trigger:
- pull request
- create pr
- create pull request
- make pull request
- make a pr
- open pull request
- open a pr
- github pr
- check ci
- pr status
- view pr
- list prs
- show prs
- my prs
- pr checks
- create issue
- github issue
- view issue
- list issues
- search code
- search repo
- repository search
GitHub Operations
Manage GitHub workflows using the gh CLI.
When to Use This Skill
Use this skill when the user asks to:
- Create a pull request
- View PR details or status
- Check CI/CD pipeline status
- Manage issues
- Review PR comments
- Search repository code or issues
Commands
Create Pull Request
When creating a PR:
-
Verify current branch and changes:
git branch --show-current git status -
Check if branch is pushed:
git log @{u}.. 2>/dev/null || echo "Branch not pushed" -
Push if needed:
git push -u origin $(git branch --show-current) -
Detect parent branch (if base not specified):
Find the parent branch from which the current branch was created:
PARENT_BRANCH=$(git show-branch -a 2>/dev/null | grep '\*' | grep -v "$(git rev-parse --abbrev-ref HEAD)" | head -n1 | sed 's/.*\[\(.*\)\].*/\1/' | sed 's/[\^~].*//' | sed 's/remotes\/origin\///') # Fall back to common default branches if detection fails if [ -z "$PARENT_BRANCH" ]; then for branch in development develop main master; do if git show-ref --verify --quiet refs/remotes/origin/$branch; then PARENT_BRANCH=$branch break fi done fi -
Create PR:
Check if a PR template exists and use it, otherwise open in browser:
if [ -f .github/PULL_REQUEST_TEMPLATE.md ]; then gh pr create --title "Brief title (under 70 chars)" --base "$PARENT_BRANCH" --template .github/PULL_REQUEST_TEMPLATE.md else gh pr create --title "Brief title (under 70 chars)" --base "$PARENT_BRANCH" --web fiBase branch logic:
- Auto-detect: Use the parent branch from which current branch was created
- Fallback: Use common default branches if detection fails
- Override: Use explicitly specified base branch if provided by user
Template handling:
- If
.github/PULL_REQUEST_TEMPLATE.mdexists: Use--templateflag to fill it via CLI - If no template: Use
--webflag to open browser for manual description
- Display PR URL to user
View Pull Request
# View specific PR
gh pr view 123
# View PR in browser
gh pr view 123 --web
# List open PRs
gh pr list
# List PRs by author
gh pr list --author @me
Check PR Status
# Check CI/CD status
gh pr checks 123
# View PR status
gh pr status
PR Comments
# View comments on PR
gh pr view 123 --comments
# Add comment to PR
gh pr comment 123 --body "Your comment here"
Issue Management
# Create issue
gh issue create --title "Issue title" --body "Issue description"
# View issue
gh issue view 456
# List open issues
gh issue list
# Search issues
gh issue list --search "keyword"
Code Search
# Search code in current repository
gh search code "search term"
# Search code in specific repository
gh search code --repo owner/repo "search term"
View Commits
# List recent commits on current branch
git log --oneline -10
# View specific commit
gh pr view <commit-sha>
PR Best Practices
Title Format
- Keep under 70 characters
- Use imperative mood: "Add feature" not "Added feature"
- Be specific but concise
Examples:
- ✅ "Optimize CLAUDE.md by removing general knowledge"
- ✅ "Fix memory leak in ChatController disposal"
- ✅ "Add snapshot tests for CallVisualizer UI"
- ❌ "Update files" (too vague)
- ❌ "This PR adds a new feature to handle user authentication and also fixes some bugs" (too long)
Description Format
- If the repository has a PR template at
.github/PULL_REQUEST_TEMPLATE.md, use the--templateflag - If no template exists, use the
--webflag to open browser for manual description - Never create custom descriptions with
--body- always use template or browser
Base Branch Selection
- Auto-detect: Automatically use the parent branch from which the current branch was created
- Fallback: Use common default branches (
development,develop,main, ormaster) if parent branch detection fails - Override: Use explicitly specified base branch if the user requests it (e.g., "create PR against master")
Error Handling
If gh is not authenticated:
Run: gh auth login
Follow browser-based OAuth flow
If gh is not installed:
macOS: brew install gh
Or download from: https://cli.github.com/
Important Notes
- Check for PR template first: Use
--templateif.github/PULL_REQUEST_TEMPLATE.mdexists, otherwise use--web - Never use
--bodyparameter: Always use template or browser for PR descriptions - Always verify branch is pushed before creating PR
- Check CI status before requesting review
Du fichier au premier essai
Le téléchargement contient exactement le contenu affiché sur cette fiche. Cette copie peut différer de la dernière version du dépôt source.
Consulter la source et ses fichiers annexesCe téléchargement contient uniquement SKILL.md. Les scripts, références, modèles et dépendances éventuels ne sont pas inclus. Récupérez les fichiers nécessaires depuis la source en conservant leur arborescence avant de poursuivre.
1. Télécharger le fichier
Télécharger SKILL.mdDepuis la racine d’un projet de test, enregistrez le fichier sous .skill-downloads/github-operations-mrwakdcs/SKILL.md, ou utilisez la commande suivante. Ce dossier sert à examiner la skill avant son installation.
Commande pour macOS/Linux ou WSL : un shell POSIX et curl sont nécessaires. Sous Windows sans WSL, utilisez le bouton de téléchargement et créez le dossier manuellement.
mkdir -p '.skill-downloads/github-operations-mrwakdcs' && curl --fail --show-error --location 'https://skills-guides.com/api/skills/github-operations-mrwakdcs/download' --output '.skill-downloads/github-operations-mrwakdcs/SKILL.md.part' && mv '.skill-downloads/github-operations-mrwakdcs/SKILL.md.part' '.skill-downloads/github-operations-mrwakdcs/SKILL.md'2. Vérifier les prérequis
Lisez SKILL.md avant de l’utiliser. Si le fichier cite des scripts ou services externes, examinez-les et préparez les accès nécessaires dans votre environnement de test.
Aucune section de prérequis reconnue dans ce fichier. Cela ne signifie pas qu’il est autonome : les bibliothèques, outils et accès peuvent être cités ailleurs dans le contenu ou dans le dépôt source.
Les plateformes de la fiche sont des indications du catalogue. Les chemins ci-dessous suivent la documentation des outils ; ils ne prouvent pas que cette skill y a été exécutée. Aucune version minimale de ces outils n’est attestée pour cette fiche.
3. Charger la skill
Après vérification, copiez le dossier complet dans le projet avec l’une des commandes ci-dessous, puis ouvrez une nouvelle session de l’outil. La commande s’arrête si un dossier du même nom existe déjà : comparez les fichiers avant de le remplacer.
Claude Code
test -f '.skill-downloads/github-operations-mrwakdcs/SKILL.md' && test -s '.skill-downloads/github-operations-mrwakdcs/SKILL.md' && mkdir -p '.claude/skills' && test ! -e '.claude/skills/gh' && cp -R '.skill-downloads/github-operations-mrwakdcs' '.claude/skills/gh'OpenSkills
OpenSkills doit déjà être installé. La procédure locale install/read est contrôlée avec OpenSkills 1.5.0, qui exige Node.js ≥ 20.6.0. Aucun slug du catalogue n’est résolu automatiquement.
Installation officielle d’OpenSkillsopenskills install './.skill-downloads/github-operations-mrwakdcs'openskills read 'github-operations-mrwakdcs'La lecture doit afficher le contenu du fichier installé et son dossier de base. Elle ne lance ni la skill ni ses dépendances.
Pour un agent qui lit AGENTS.md, synchronisez ensuite l’index. Cette commande modifie AGENTS.md : relisez le diff avant de l’utiliser.
openskills syncMode manuel ou autre outil : joignez SKILL.md à une conversation, ou ouvrez-le dans un agent capable de lire les fichiers. Ajoutez les ressources annexes nécessaires. Il n’existe pas de dossier universel reconnu par tous les outils.
4. Faire un premier essai
Utilisez une entrée courte et fictive : un endpoint d’API, un petit document ou un brief d’interface. Dans une nouvelle conversation, joignez le fichier ou donnez son chemin à l’agent, puis adaptez cette demande :
Lis .skill-downloads/github-operations-mrwakdcs/SKILL.md et applique ses instructions à cet exemple : [décrire une entrée de test]. Indique les fichiers, dépendances ou accès qui manquent. Produis le résultat demandé par la skill sans inventer de données ni exécuter de script non examiné.Résultat attendu : une sortie correspondant aux instructions de la skill, ou une liste précise des prérequis manquants. Une simple confirmation de lecture ne valide pas le premier usage. Si une ressource externe est indisponible, ce parcours reste à tester.
Configurer un canal de discussion avec SecretRefs
DevOps
Configurez des canaux de discussion avec des commandes non interactives, les secrets étant uniquement des SecretRefs. Couvre les étapes de collecte, modification, réparation et vérification.
Enquêter sur les échecs CI de ClickHouse
DevOps
Investigue un échec CI de ClickHouse de bout en bout à partir d'une URL de PR ou de rapport S3. Récupère les tests échoués, classe flaky vs vraie régression, et cherche des issues/fixes existants.
Revue de PR Ansible
DevOps
Examine une PR Ansible selon le processus standardisé du projet, incluant la validation des changelogs, la couverture de tests et le suivi des commentaires.