create-pr · marcelorodrigo — скилл для Claude Code: что делает и как установить
Оформляет и публикует пулл-реквесты в GitHub по инженерным стандартам через GitHub CLI.
npx skills add marcelorodrigo/agent-skills --skill create-pr -a claude-codeЧто делает create-pr
Скилл автоматизирует открытие пулл-реквестов. Сначала он проверяет рабочее дерево: если есть незакоммиченные файлы через git status --porcelain, запускается скилл conventional-commit. Затем определяется базовая ветка через gh repo view и просматриваются изменения командами git log и git diff.
Заголовок генерируется в формате Conventional Commits (feat(scope): ...), а описание строится без чекбоксов тестирования и повторения диффа. Скилл оставляет только суть: мотивацию правок и контекст для ревьюеров.
Без установленного и авторизованного GitHub CLI (gh) вызов завершится сбоем. При редактировании существующих PR учитывается версия утилиты: в gh старее 2.82.1 запускается прямой вызов gh api, чтобы обойти ошибку с устаревшим Projects classic.
Какие задачи решает
- сформулировать чистое описание пулл-реквеста без шаблонного шума
- проверить незакоммиченные файлы и определить целевую ветку репозитория
- создать пулл-реквест через GitHub CLI с конвенциональным заголовком
- отредактировать существующий PR в обход сбоя Projects classic в старых версиях gh
Примеры запросов агенту
- Создай пулл-реквест для текущей ветки
- Посмотри дифф и подготовь PR в основную ветку
- Обнови заголовок и описание у PR 42
Как установить create-pr
1Через Skills CLI (Vercel)
npx skills add marcelorodrigo/agent-skills --skill create-pr -a claude-code2Вручную: положить файлы
~/.claude/skills/create-pr/SKILL.mdПапка скилла целиком; для одного проекта — .claude/skills/create-pr/
1Через Skills CLI (Vercel)
npx skills add marcelorodrigo/agent-skills --skill create-pr -a codex2Вручную: положить файлы
.agents/skills/create-pr/SKILL.mdДля всех проектов — ~/.agents/skills/
1Через Skills CLI (Vercel)
npx skills add marcelorodrigo/agent-skills --skill create-pr -a cursor2Вручную: положить файлы
.cursor/skills/create-pr/SKILL.mdCursor читает и .agents/skills/, и .claude/skills/
1GitHub CLI
gh skill install marcelorodrigo/agent-skills create-pr2Вручную: положить файлы
.github/skills/create-pr/SKILL.md1Через Skills CLI (Vercel)
npx skills add marcelorodrigo/agent-skills --skill create-pr -a gemini-cli2Командой платформы
gemini skills install https://github.com/marcelorodrigo/agent-skills --path skills/create-prВручную: положить файлы
.devin/skills/create-pr/SKILL.mdСтарый путь .windsurf/skills/ тоже читается
Через Skills CLI (Vercel)
npx skills add marcelorodrigo/agent-skills --skill create-pr -a opencodeClaude.ai
Упакуйте папку в zip и загрузите в Settings → Capabilities → Skills
По шагам, с командами для каждой платформы: Как установить скилл в Claude Code: пять способов
Вопросы о create-pr
Как установить create-pr в Claude Code?
Выполните команду npx skills add marcelorodrigo/agent-skills --skill create-pr -a claude-code. Также можно сохранить файл напрямую в ~/.claude/skills/create-pr/SKILL.md.
Что делает скилл create-pr?
Он проверяет статус ветки, анализирует изменения через git diff, генерирует конвенциональное описание и создаёт пулл-реквест с помощью GitHub CLI.
Какие системные требования нужны для работы?
В системе должен быть установлен и авторизован GitHub CLI (gh). Если версия gh ниже 2.82.1, скилл автоматически переключится на вызовы через gh api.
Исходный текст
SKILL.md · MIT
---
name: create-pr
description: Create Pull Requests following best conventions. Use when opening PRs, writing PR descriptions, or preparing changes for review.
license: MIT
compatibility: Requires GitHub CLI (gh) authenticated and available
metadata:
version: "1.2.0"
---
# Create Pull Request
Create pull requests following the best engineering practices.
**Requires**: GitHub CLI (`gh`) authenticated and available.
## Prerequisites
Before creating a PR, ensure all changes are committed. If there are uncommitted changes, run the commit skill `skill({ name: "conventional-commit" })` first to commit them properly.
```bash
# Check for uncommitted changes
git status --porcelain
```
If the output shows any uncommitted changes (modified, added, or untracked files that should be included), invoke the commit skill `skill({ name: "conventional-commit" })` before proceeding.
## Process
### Step 1: Verify Branch State
```bash
# Detect the default branch
BASE=$(gh repo view --json defaultBranchRef --jq '.defaultBranchRef.name')
# Check current branch and status
git status
git log $BASE..HEAD --oneline
```
Ensure:
- All changes are committed
- Branch is up to date with remote
- Changes are rebased on the base branch if needed
### Step 2: Analyze Changes
Review what will be included in the PR:
```bash
# See all commits that will be in the PR
git log $BASE..HEAD
# See the full diff
git diff $BASE...HEAD
```
Understand the scope and purpose of all changes before writing the description.
### Step 3: Write the PR Description
Use this structure for PR descriptions (ignoring any repository PR templates):
```markdown
<brief description of what the PR does>
<why these changes are being made - the motivation>
<alternative approaches considered, if any>
<any additional context reviewers need>
```
**Do NOT include:**
- "Test plan" sections
- Checkbox lists of testing steps
- Redundant summaries of the diff
**Do include:**
- Clear explanation of what and why
- Links to relevant issues or tickets (only if available)
- Context that isn't obvious from the code
- Notes on specific areas that need careful review
### Step 4: Create the PR
```bash
gh pr create --title "<type>(<scope>): <description>" --body "
<description body here>
"
```
**Title format** follows commit conventions:
- `feat(scope): Add new feature`
- `fix(scope): Fix the bug`
- `refactor(scope): Refactor something`
## PR Description Examples
### Feature PR
```markdown
Add Slack thread replies for alert notifications
When an alert is updated or resolved, we now post a reply to the original
Slack thread instead of creating a new message. This keeps related
notifications grouped and reduces channel noise.
Previously considered posting edits to the original message, but threading
better preserves the timeline of events and works when the original message
is older than Slack's edit window.
```
### Bug Fix PR
```markdown
Handle null response in user API endpoint
The user endpoint could return null for soft-deleted accounts, causing
dashboard crashes when accessing user properties. This adds a null check
and returns a proper 404 response.
```
### Refactor PR
```markdown
Extract validation logic to shared module
Moves duplicate validation code from the alerts, issues, and projects
endpoints into a shared validator class. No behavior change.
This prepares for adding new validation rules without
duplicating logic across endpoints.
```
## Guidelines
- **One PR per feature/fix** - Don't bundle unrelated changes
- **Keep PRs reviewable** - Smaller PRs get faster, better reviews
- **Explain the why** - Code shows what; description explains why
## Editing Existing PRs
When updating a PR after creation, the skill automatically selects the best approach based on your GitHub CLI version:
- **gh 2.82.1+**: Uses native `gh pr edit` (clean, full-featured)
- **gh < 2.82.1**: Falls back to `gh api` (avoids Projects classic deprecation bug)
### Check Your Version
```bash
# Check GitHub CLI version
gh --version
```
### Modern Approach (gh 2.82.1+)
```bash
# Update PR description
gh pr edit PR_NUMBER --body "Updated description here"
# Update PR title
gh pr edit PR_NUMBER --title "New Title here"
# Update both
gh pr edit PR_NUMBER --title "new: Title" --body "New description"
```
### Legacy Fallback (gh < 2.82.1)
If `gh pr edit` fails with a "Projects (classic) is being deprecated" error, use the API directly:
```bash
# Update PR description
gh api -X PATCH repos/{owner}/{repo}/pulls/PR_NUMBER -f body="
Updated description here
"
# Update PR title
gh api -X PATCH repos/{owner}/{repo}/pulls/PR_NUMBER -f title='New Title here'
# Update both
gh api -X PATCH repos/{owner}/{repo}/pulls/PR_NUMBER \
-f title='new: Title' \
-f body='New description'
```
**Note**: The Projects (classic) bug was fixed in gh 2.82.1 (October 2025).
Upgrade with your package manager if you're on an older version.
© marcelorodrigo · MIT · marcelorodrigo/agent-skills
Похожие скиллы
Все скиллы по теме «Git и GitHub» →Сначала — create-pr от других авторов.