Synthèse automatique
Rédige et ouvre une pull request GitHub à partir des changements de la branche courante, en s'appuyant sur l'historique git et un modèle de description, avec aperçu et confirmation avant l'envoi.
Points forts
- Détecte la branche de base (CLAUDE.md, puis origin/HEAD, sinon main) et refuse de s'exécuter sur la branche de base
- Génère un corps de PR structuré (contexte, contenu implémenté, décisions et compromis, mesures de performance) au lieu d'un simple diff
- Relie optionnellement la PR à une issue via « Closes #N » pour fermer automatiquement l'issue au merge
- Montre titre, corps et comparaison base ← head avant tout push, et permet de réécrire après retour
Limites
- Suppose un dépôt GitHub avec la CLI gh installée et authentifiée, et un remote nommé origin
- Les conventions de titre (type: résumé en coréen) et le modèle de PR sont très opinionnés et en coréen
- S'arrête si des changements ne sont pas commités : il faut lancer /commit d'abord
À utiliser quand une branche est prête et que vous voulez ouvrir une PR GitHub correctement documentée sans rédiger le corps à la main.
À éviter si les modifications ne sont pas encore commitées, si gh n'est pas configuré, ou si le dépôt est hébergé sur GitLab ou Bitbucket.
Analyse de sécurité
PrudenceNo destructive, obfuscated, or exfiltration behavior is instructed; the workflow is a standard git/gh PR creation flow with a preview/approval step. However, it grants push and PR-edit capabilities and interpolates user/model-controlled strings into shell commands, so it merits caution rather than safe.
- •Declares broad Bash permissions for git push, gh pr create, and gh pr edit; these can modify remote branches/PRs and would also allow force-push or arbitrary PR edits if the agent deviates from the procedure.
- •Shell placeholders such as {current_branch}, {title}, and {body} are inserted into commands without explicit quoting/escaping guidance; AI-generated PR titles/bodies or user-supplied issue numbers containing quotes or shell metacharacters could break the command or cause unintended shell expansion.
- •The skill reads git diff and may read changed files into the model context; this is normal for PR drafting but can expose sensitive repository content to the LLM, with no exfiltration instructions present.
Exemples
/pr 42/prPR 만들어줘name: pr description: Commit, push, and open a PR. Use when the user asks to create a PR (e.g. "PR 만들어줘", "PR 생성해줘", "풀리퀘 올려줘"). argument-hint: "[issue-number]" allowed-tools: Bash(git status:), Bash(git diff:), Bash(git log:), Bash(git branch:), Bash(git push:), Bash(gh pr create:), Bash(gh pr edit:*)
PR Creation Skill
Input
$ARGUMENTS
Format: <issue-number> (optional)
Examples:
/pr 42→ PR 생성 후 GitHub Issue #42와 development 연동 (PR merge 시 자동 close)/pr→ issue 연동 없이 PR 생성
Current Git Context
Current git status: !git status Current git diff (staged and unstaged changes): !git diff HEAD Current branch: !git branch --show-current Recent commits since branching: !git log --oneline origin/HEAD..HEAD
Base Branch Detection
Determine the base branch using this priority:
- If the project CLAUDE.md specifies a main/base branch, use that
- Try
git symbolic-ref refs/remotes/origin/HEAD 2>/dev/null | sed 's|refs/remotes/origin/||' - Default:
main
Pre-checks
- Verify current branch is NOT the base branch — if on base branch, warn and abort
- Check for uncommitted changes — if any, warn the user to run
/commitfirst
PR Template
.github/PULL_REQUEST_TEMPLATE.md 를 기반으로 아래 항목을 채워 PR body를 작성한다.
issue-number가 제공된 경우, Background 아래에 Closes #N 을 추가한다 — GitHub이 이를 인식해 PR merge 시 issue를 자동 close하고 development 패널에 연동한다.
## Background
{이 PR의 배경. 어떤 Phase인지, 무엇을 목표로 했는지. 1~3줄.}
Closes #{issue-number} ← issue-number가 있을 때만 포함
## 구현 내용
{무엇을 구현했는지. 핵심 변경 사항을 번호 목록으로.}
1. ...
## 설계 결정 & 트레이드오프
{왜 이 방식을 선택했는지. 고려한 대안과 포기한 이유.}
| 결정 | 이유 | 포기한 대안 |
|------|------|------------|
| ... | ... | ... |
## 성능 측정
{최적화 전/후 수치. 목표 대비 실제 결과. 해당 없으면 "N/A"}
| 지표 | 목표 | Before | After |
|------|------|--------|-------|
| TPS | ... | ... | ... |
| P99 Latency | ... | ... | ... |
## 참고 자료
- ...
## 코멘트
{리뷰어나 미래의 나에게 전달할 메모. 없으면 생략.}
작성 원칙: diff를 나열하지 않는다. 변경의 무엇(What), 왜(Why), 어떻게(How) 를 서술해 코드를 읽지 않아도 맥락을 파악할 수 있게 쓴다.
Procedure
Step 1: Analyze
- 위 git context를 바탕으로 변경 내용 파악
- 필요 시 변경된 파일 직접 읽어 context 보완
- PR 제목과 body 초안 작성
- 제목 형식:
type: 한국어 요약(50자 이내, 명령문, 끝 마침표 없음) - type은 커밋 컨벤션과 동일: feat / fix / refactor / style / chore / test / docs
- 브랜치의 커밋들을 종합해 가장 대표적인 type 하나 선택
- 제목 형식:
Step 2: Preview & confirm
다음을 사용자에게 보여주고 승인 대기:
- PR 제목
- PR body 미리보기
{base_branch}←{current_branch}
승인 시 Step 3 진행, 수정 요청 시 재작성 후 재확인.
Step 3: Push & create PR
git push -u origin {current_branch}
gh pr create --base {base_branch} --title "{title}" --body "{body}"
Step 4: Report
- PR URL
- 제목
- base ← head 브랜치명
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/pr-creation-mrwak8mo/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/pr-creation-mrwak8mo' && curl --fail --show-error --location 'https://skills-guides.com/api/skills/pr-creation-mrwak8mo/download' --output '.skill-downloads/pr-creation-mrwak8mo/SKILL.md.part' && mv '.skill-downloads/pr-creation-mrwak8mo/SKILL.md.part' '.skill-downloads/pr-creation-mrwak8mo/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.
Outils déclarés par l’auteur (à vérifier dans votre agent) : Bash(git status:*), Bash(git diff:*), Bash(git log:*), Bash(git branch:*), Bash(git push:*), Bash(gh pr create:*), Bash(gh pr edit:*)
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/pr-creation-mrwak8mo/SKILL.md' && test -s '.skill-downloads/pr-creation-mrwak8mo/SKILL.md' && mkdir -p '.claude/skills' && test ! -e '.claude/skills/pr' && cp -R '.skill-downloads/pr-creation-mrwak8mo' '.claude/skills/pr'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/pr-creation-mrwak8mo'openskills read 'pr-creation-mrwak8mo'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/pr-creation-mrwak8mo/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.