Automated summary
Guides creating, merging and cleaning up pull requests in a specific project: writing the PR body, choosing the branch, and merging with rebase.
Strengths
- Enforces a narrative PR body (problem → approach → remaining work) instead of a list of files
- Bans squash merges and requires `gh pr merge --rebase` so step-by-step commits survive on develop
- Documents how to work around branch-deletion failures when the branch is checked out in a worktree
- Includes a post-merge check that runs an aggregation script and suggests skill maintenance when it flags something
Limitations
- Tightly coupled to one project's naming conventions and tooling (gh, .claude/scripts/aggregate-usage.py)
- Explicitly excludes PR code review, commit message writing and issue creation, which belong to other skills
- Assumes branches are cut from develop, which does not fit every branching model
Use it when you need to open a PR, merge it with rebase, or clean up local and remote branches right after a merge.
Avoid it for reviewing the code of an existing PR, writing commit messages, or filing issues, which are handled by other skills.
Security analysis
SafeThe skill is narrowly scoped to PR workflow: branch naming, PR body structure, rebase merging, and post-merge cleanup. Commands used (gh, git, a local python script) are powerful but standard and purposeful, with no obfuscation, no curl|sh, no secret or token transmission, and no unbounded deletion (`rm -rf` absent; branch deletion is limited and gated on user confirmation). The only residual concern is blind execution of a project-local script, which is a repo-trust rather than skill-level risk.
- •Instructs running a local project script (`python3 .claude/scripts/aggregate-usage.py`) whose contents are not shown; risk depends on that file.
- •Instructs branch deletion (local and remote) after merge, though user confirmation is required first.
- •Uses `gh pr merge --rebase` and `git switch -c` — legitimate repo operations, no destructive or exfiltrating patterns.
- •No `allowed-tools` declared despite instructing shell/git/gh usage; scoping tools would be cleaner.
Examples
이번 작업 PR 올리자 — 본문은 문제/접근/남은 과제 순서로 써줘.이 PR 머지하자. rebase로 머지하고, 끝나면 브랜치 정리할지 물어봐줘.머지 끝났으니 로컬·리모트 브랜치 정리해줘. 워크트리에 체크아웃돼 있으면 우회해서 삭제해줘.name: pr description: Use when creating or merging a pull request in this project — PR 본문 작성, 브랜치 구성, 머지·머지 후 정리 시점. 본문 서사(문제→접근→남은 과제), rebase 머지 원칙, 머지 후 브랜치 정리(워크트리 제약 우회 포함)를 다룬다. Triggers on "PR 올리자", "PR 만들어", "머지하자", "브랜치 정리해". Does NOT trigger on PR 코드 리뷰 수행(review 스킬 또는 유저 직접), 커밋 메시지 작성(commit 스킬), 이슈 작성(issue 스킬).
PR — 생성·머지·정리
브랜치·올리기 전
- 브랜치명
features/<이슈번호>-<슬러그>(feature/아님). develop에서 분기. - 페이즈가 나뉘는 작업은 페이즈별 PR — 머지 후 다음 페이즈 착수.
- WIP 정리는 PR 올리기 전에 (commit 스킬의 흡수 절차) — 리뷰어에게 보이는 커밋은 논리 단위 최종본이어야 한다.
본문
기준: 보는 사람이 코드를 까보기 전에 본문만으로 내용을 파악할 수 있어야 한다.
- 여러 커밋을 엮은 전체 작업의 서사: 문제 → 접근 → 남은 과제. 개별 커밋은 그 서사의 단위. 파일 목록 나열 금지.
- "남은 과제"에 이번 PR에서 의도적으로 뺀 것·파생 후속을 명시한다 — 후속 작업의 킥오프가 이 항목을 읽는다.
리뷰 수행은 이 스킬 밖이다 — 공개된 PR에 대해 유저가 지시할 때만 review 스킬로 (유저 직접 리뷰도 가능).
머지·정리
- 머지는
gh pr merge --rebase, squash 금지 — 단계별 커밋이 develop에 보존돼야 회귀 분석 시 변경 의도를 추적할 수 있다. - 머지 후 브랜치(로컬·리모트) 정리 여부를 유저에게 확인한다.
- 브랜치가 워크트리에 체크아웃돼 있으면 삭제가 거부된다 — 그 워크트리에서 임시 브랜치를 만들어 이동(
git switch -c <임시-브랜치>)한 뒤 대상 브랜치를 삭제한다. - 머지 후
python3 .claude/scripts/aggregate-usage.py실행 — 출력(⚠️ 줄)이 있으면 해당 스킬의 정비를 유저에게 제안한다 (수락 시 improve-skill 스킬). 무출력이면 조용히 넘어간다 (#690 flywheel).
From the file to a first result
The download contains exactly the content displayed on this page. This copy may differ from the latest version in the source repository.
View the source and supporting filesThis download contains SKILL.md only. Any scripts, references, templates and dependencies are not included. Get the required files from the source, preserving their directory structure, before continuing.
1. Download the file
Download SKILL.mdFrom the root of a test project, save the file as .skill-downloads/pr-creation-and-merge-mryiqfk4/SKILL.md, or use the command below. This folder is for inspecting the skill before installation.
Command for macOS/Linux or WSL: requires a POSIX shell and curl. On Windows without WSL, use the download button and create the folder manually.
mkdir -p '.skill-downloads/pr-creation-and-merge-mryiqfk4' && curl --fail --show-error --location 'https://skills-guides.com/api/skills/pr-creation-and-merge-mryiqfk4/download' --output '.skill-downloads/pr-creation-and-merge-mryiqfk4/SKILL.md.part' && mv '.skill-downloads/pr-creation-and-merge-mryiqfk4/SKILL.md.part' '.skill-downloads/pr-creation-and-merge-mryiqfk4/SKILL.md'2. Check prerequisites
Read SKILL.md before using it. If it references scripts or external services, inspect them and prepare the required access in your test environment.
No recognized prerequisites section in this file. This does not mean it is self-contained: libraries, tools and access requirements may be mentioned elsewhere in the content or source repository.
The platforms on this page are catalog indications. The paths below follow tool documentation; they do not prove this skill has been run in those tools. No minimum tool version is confirmed for this listing.
3. Load the skill
After inspection, copy the complete folder into your project using one of the commands below, then open a new tool session. The command stops if a folder with the same name already exists: compare the files before replacing it.
Claude Code
test -f '.skill-downloads/pr-creation-and-merge-mryiqfk4/SKILL.md' && test -s '.skill-downloads/pr-creation-and-merge-mryiqfk4/SKILL.md' && mkdir -p '.claude/skills' && test ! -e '.claude/skills/pr' && cp -R '.skill-downloads/pr-creation-and-merge-mryiqfk4' '.claude/skills/pr'OpenSkills
OpenSkills must already be installed. The local install/read procedure is checked with OpenSkills 1.5.0, which requires Node.js ≥ 20.6.0. Catalog slugs are not resolved automatically.
Official OpenSkills installationopenskills install './.skill-downloads/pr-creation-and-merge-mryiqfk4'openskills read 'pr-creation-and-merge-mryiqfk4'Reading should display the installed file content and its base directory. It does not run the skill or install its dependencies.
For an agent that reads AGENTS.md, then sync the index. This command changes AGENTS.md: review the diff before using it.
openskills syncManual method or another tool: attach SKILL.md to a conversation, or open it in an agent that can read files. Include any required supporting resources. No universal folder is recognized by every tool.
4. Try a first task
Use a short, synthetic input: an API endpoint, a small document or an interface brief. In a new conversation, attach the file or give the agent its path, then adapt this request:
Read .skill-downloads/pr-creation-and-merge-mryiqfk4/SKILL.md and apply its instructions to this example: [describe a test input]. Identify any missing files, dependencies or access. Produce the result requested by the skill without inventing data or running unreviewed scripts.Expected result: output matching the skill instructions, or a precise list of missing prerequisites. A read confirmation alone does not validate a first use. If an external resource is unavailable, that path remains untested.
React Hook Form Best Practices
Development
Master React Hook Form: avoid anti-patterns, manage subscriptions, and handle reset, dirty state, and controlled inputs correctly.
Emotion to Mantine Migration
Development
Migrate Emotion styled-components to Mantine components with style props and CSS modules. Use when converting .styled.tsx files or removing @emotion imports.
Scope Creep Detector
Development
Analyzes git diffs against a stated intent to detect scope creep, unrelated files, broad PRs, and oversized changes, then suggests keep, split, or justify actions.