Créer une pull request en brouillon

VérifiéPrudence

Crée ou met à jour une pull request en brouillon pour la branche courante : gestion de branche, commits conventionnels, description formatée et liaison à l'issue GitHub.

Spar Skills Guide Bot
DeveloppementIntermédiaire
04/11/2026
Claude Code
#git#pull-request#github#workflow#conventional-commits

Recommandé pour

Synthèse automatique

Crée ou met à jour une pull request en brouillon pour la branche courante, avec un titre et un descriptif normalisés.

Points forts

  • Garde-fou explicite : interdit de committer directement sur `main` et impose la création d'une branche de feature avant toute action.
  • Conventions précises pour les branches (feat/, fix/, refactor/…) et les titres de PR (impératif présent, minuscule après le préfixe, moins de 70 caractères).
  • Comportement idempotent : détecte une PR existante avec `gh pr view` et la met à jour au lieu d'en ouvrir une seconde.
  • Relie automatiquement l'issue d'origine via un mot-clé de fermeture GitHub et propose une checklist de tests.

Limites

  • Le gabarit de corps de PR code en dur des commandes Elixir (`mix test`, `mix dialyzer`, `mix smoke`) propres à un projet Mix.
  • Ne prévoit pas le `git push` de la branche, pourtant nécessaire pour que `gh pr create` aboutisse.
  • Suppose un dépôt GitHub, un CLI `gh` authentifié et une branche de base nommée `main`.
Quand l'utiliser

À utiliser quand une branche de feature est prête à être soumise et qu'il faut ouvrir ou rafraîchir une PR en brouillon sans rédiger le descriptif à la main.

Quand l'éviter

À éviter sur un dépôt non GitHub (GitLab, Bitbucket) ou lorsque la branche n'a pas encore été poussée et que vous ne voulez pas que l'outil touche à l'historique git.

Analyse de sécurité

Prudence
Score qualité80/100

The skill is a conventional local-dev workflow: it inspects branch/status, commits on a feature branch, and opens or edits a draft PR via the GitHub CLI. All commands are legitimate and readable, there is no obfuscation, no destructive operation (no force-push, reset, rm -rf, or pipe-to-shell), and nothing is sent anywhere except normal `gh` API calls. Risk comes only from the inherent power of git commit plus authenticated GitHub network actions, so it warrants caution rather than a safe rating.

Points d'attention
  • •Executes git and GitHub CLI commands that mutate repository state: creating/switching branches, `git add` + `git commit` of staged and unstaged changes, and `gh pr create`/`gh pr edit` (network calls to GitHub).
  • •Commits user changes automatically without an explicit per-action confirmation step, which can bundle unintended files into a commit.
  • •Requires an authenticated `gh` session; the skill does not itself handle tokens, but it operates with the user's GitHub credentials.
  • •Automatically stages and commits staged or unstaged changes when on a feature branch without explicit user confirmation, which could commit unintended or sensitive files.
  • •Uses `gh pr edit` to overwrite an existing PR's title and body without confirming the update with the user.
  • •No allowed-tools are declared even though the skill requires shell execution of `git` and `gh` commands, leaving permissions under-specified.
Comment cette analyse est faite

Exemples

Open a draft PR
/pr
Rewrite an existing PR
/pr https://github.com/acme/app/pull/42 — rewrite the description so it reflects the new caching layer and drop the stale testing checklist.
Work stranded on main
I just finished the Redis cache work but everything is still uncommitted on main. Put it on a proper branch and open a draft PR for me.

name: pr description: Open or update a draft PR for the current branch. Use when: create PR, open PR, draft PR, pull request, prepare for review.

Draft PR Creator

Creates or updates a draft pull request for the current branch.

Usage

  • /pr - Create draft PR for current branch (or update if one exists)
  • /pr <url> - Update existing PR description

Workflow

1. Ensure feature branch and commit

NEVER commit to main unless the user explicitly requests it.

git branch --show-current
git status

If on main, create and switch to a feature branch before doing anything else:

git checkout -b <type>/<short-name>

Branch naming follows the PR type prefix:

  • feat/ — new features
  • fix/ — bug fixes
  • refactor/ — refactoring
  • test/ — test additions
  • chore/ — maintenance
  • docs/ — documentation

Derive the branch name from the commit history or changes (e.g., feat/spawn-and-observe).

After ensuring you're on a feature branch, check for uncommitted changes. If there are staged or unstaged changes, commit them using conventional commit format:

git add <relevant files>
git commit -m "<type>: <description>"

Only proceed to the next step once all changes are committed on a feature branch.

2. Gather context

git log main..HEAD --oneline
git diff main...HEAD --stat

2.5. Identify source issue

If the PR was created from a /tdd <issue> workflow, you already have the issue number in context. Otherwise, check the branch name or commit messages for issue references.

If an issue is identified, it will be linked in the PR body using a GitHub closing keyword (see template below). When the PR is merged, GitHub automatically closes the linked issue and marks it as "completed".

3. Check if PR already exists

gh pr view --json number,title,body 2>/dev/null

4. Write PR description

Use the template below. Keep it concise and natural.

5a. If NO existing PR - Create draft PR

gh pr create --draft --title "<title>" --body "$(cat <<'EOF'
<body>
EOF
)"

5b. If PR already exists - Update description

gh pr edit --title "<title>" --body "$(cat <<'EOF'
<updated body>
EOF
)"

Report the PR URL to the user when done.

PR Title Format

<type>: <short description>

Types: feat:, fix:, refactor:, test:, chore:, docs:

Rules:

  • Lowercase after prefix
  • Present tense imperative ("add" not "added")
  • Under 70 characters

PR Body Template

Closes #<issue_number>

## Summary

1-2 paragraphs explaining what this does and why.

## Changes

- Highlight 1
- Highlight 2
- Highlight 3

## Testing

- [ ] `mix test` passes
- [ ] `mix dialyzer` passes
- [ ] `mix smoke` passes

Omit the Closes #... line if there is no source issue.

Style

  • Fluid prose in Summary - natural writing, not robotic
  • 2-3 bullet points in Changes - highlights only, not a file list
  • No file lists - GitHub shows that in "Files changed"

Pipeline

/tdd <issue_url> -> /review-pr -> /pr -> merge

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 annexes

Ce 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.md

Depuis la racine d’un projet de test, enregistrez le fichier sous .skill-downloads/create-draft-pull-requests-mvhm5lcz/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/create-draft-pull-requests-mvhm5lcz' && curl --fail --show-error --location 'https://skills-guides.com/api/skills/create-draft-pull-requests-mvhm5lcz/download' --output '.skill-downloads/create-draft-pull-requests-mvhm5lcz/SKILL.md.part' && mv '.skill-downloads/create-draft-pull-requests-mvhm5lcz/SKILL.md.part' '.skill-downloads/create-draft-pull-requests-mvhm5lcz/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

Le fichier ne fournit pas un en-tête name/description exploitable pour cette procédure native. Le téléchargement reste disponible pour lecture ; utilisez le mode manuel ci-dessous.

Mode 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/create-draft-pull-requests-mvhm5lcz/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.

Skills similaires