create-pull-request
À propos
Cette compétence Claude automatise la création et la gestion des demandes de tirage (pull requests) GitHub en utilisant l'interface en ligne de commande GitHub. Elle gère la préparation des branches, la formulation des titres et descriptions des PR, la création de la PR, ainsi que la gestion des flux de travail de révision et de fusion. Utilisez-la pour proposer des modifications depuis une branche de fonctionnalité en vue d'une révision ou pour fusionner un travail terminé dans la branche principale.
Installation rapide
Claude Code
Recommandénpx skills add pjt222/agent-almanac -a claude-code/plugin add https://github.com/pjt222/agent-almanacgit clone https://github.com/pjt222/agent-almanac.git ~/.claude/skills/create-pull-requestCopiez et collez cette commande dans Claude Code pour installer cette compétence
Documentation
Create Pull Request
GitHub PR w/ clear title + structured desc + branch setup.
Use When
- Feature/fix branch → review
- Merge completed → main
- Req code review
- Doc purpose + scope of changes
In
- Required: Feature branch w/ committed changes
- Required: Base branch (usually
main) - Optional: Reviewers
- Optional: Labels / milestone
- Optional: Draft status
Do
Step 1: Branch Ready
Verify up-to-date + all committed:
# Check for uncommitted changes
git status
# Fetch latest from remote
git fetch origin
# Rebase on latest main (or merge)
git rebase origin/main
Got: Branch ahead of origin/main, no uncommit, no conflicts.
If err: Rebase conflicts → resolve (see resolve-git-conflicts) → git rebase --continue. Diverged → git merge origin/main.
Step 2: Review Changes
Full diff + commit history:
# See all commits on this branch (not on main)
git log origin/main..HEAD --oneline
# See the full diff against main
git diff origin/main...HEAD
# Check if branch tracks remote and is pushed
git status -sb
Got: All commits PR-relevant. Diff = intended changes only.
If err: Unrelated commits → interactive rebase → clean up history pre-PR.
Step 3: Push Branch
# Push branch to remote (set upstream tracking)
git push -u origin HEAD
Got: Branch on GitHub remote.
If err: Rejected → git pull --rebase origin <branch> + resolve.
Step 4: Title + Desc
Title <70 chars. Body for details:
gh pr create --title "Add weighted mean calculation" --body "$(cat <<'EOF'
## Summary
- Implement `weighted_mean()` with NA handling and zero-weight filtering
- Add input validation for mismatched vector lengths
- Include unit tests covering edge cases
## Test plan
- [ ] `devtools::test()` passes with no failures
- [ ] Manual verification with example data
- [ ] Edge cases: empty vectors, all-NA weights, zero-length input
🤖 Generated with [Claude Code](https://claude.com/claude-code)
EOF
)"
Draft:
gh pr create --title "WIP: Add authentication" --body "..." --draft
Got: PR on GitHub + URL. Desc = what changed + how to test.
If err: gh not auth → gh auth login. Wrong base → --base main.
Step 5: Review Feedback
Respond + push:
# View PR comments
gh api repos/{owner}/{repo}/pulls/{number}/comments
# View PR review status
gh pr checks
# After making changes, commit and push
git add <files>
git commit -m "$(cat <<'EOF'
fix: address review feedback on input validation
EOF
)"
git push
Got: New commits on PR. Comments addressed.
If err: CI fail post-push → gh pr checks → fix pre-rereq.
Step 6: Merge + Cleanup
Post-approval:
# Merge the PR (squash merge keeps history clean)
gh pr merge --squash --delete-branch
# Or merge with all commits preserved
gh pr merge --merge --delete-branch
# Or rebase merge (linear history)
gh pr merge --rebase --delete-branch
Update local main:
git checkout main
git pull origin main
Got: PR merged, remote branch deleted, local main updated.
If err: Blocked by fail checks / missing approvals → address first. No force-merge w/o resolve.
Check
- Title <70 chars + descriptive
- Body: summary + test plan
- All commits PR-relevant
- CI passes
- Branch up-to-date vs base
- Reviewers assigned (if req)
- No sensitive data
Traps
- PR too large: Focus 1 feat/fix. Large → hard review + merge conflicts.
- No test plan: Always describe verify, even docs.
- Stale branch: Base moved ahead → rebase pre-PR → min conflicts.
- Force-push during review: Avoid on branch w/ open comments. Push new → incremental visible.
- Ignoring CI: Check
gh pr checkspre-rereq. Fail CI = waste reviewers. - Branch not deleted: Use
--delete-branch→ remote clean.
→
commit-changes— PR commitsmanage-git-branches— branch create + namingresolve-git-conflicts— rebase/merge conflictscreate-github-release— release post-merge
Dépôt GitHub
Compétences associées
content-collections
MétaCette compétence propose une configuration éprouvée en production pour Content Collections, un outil axé sur TypeScript qui transforme des fichiers Markdown/MDX en collections de données typées de manière sûre avec une validation Zod. Utilisez-la lors de la création de blogs, de sites de documentation ou d'applications Vite + React riches en contenu pour garantir la sécurité de typage et la validation automatique du contenu. Elle couvre tout, de la configuration du plugin Vite et de la compilation MDX à l'optimisation des déploiements et la validation des schémas.
polymarket
MétaCette compétence permet aux développeurs de créer des applications avec la plateforme de marchés prédictifs Polymarket, incluant l'intégration d'API pour le trading et les données de marché. Elle fournit également une diffusion de données en temps réel via WebSocket pour surveiller les transactions en direct et l'activité du marché. Utilisez-la pour mettre en œuvre des stratégies de trading ou pour créer des outils traitant les mises à jour de marché en direct.
creating-opencode-plugins
MétaCette compétence aide les développeurs à créer des plugins OpenCode qui s'interconnectent avec plus de 25 types d'événements tels que les commandes, les fichiers et les opérations LSP. Elle fournit la structure du plugin, les spécifications de l'API événementielle et les modèles d'implémentation pour les modules JavaScript/TypeScript. Utilisez-la lorsque vous avez besoin d'intercepter, de surveiller ou d'étendre le cycle de vie de l'assistant IA OpenCode avec une logique personnalisée pilotée par les événements.
sglang
MétaSGLang est un framework de service LLM haute performance spécialisé dans la génération rapide et structurée pour les workflows JSON, regex et agentiques grâce à son cache de préfixe RadixAttention. Il offre une inférence nettement plus rapide, particulièrement pour les tâches avec des préfixes répétés, ce qui le rend idéal pour les sorties complexes et structurées ainsi que les conversations multi-tours. Choisissez SGLang plutôt que des alternatives comme vLLM lorsque vous avez besoin d'un décodage contraint ou que vous construisez des applications avec un partage étendu de préfixes.
