Claude
Skills
Sign in
Back

pr-create

Included with Lifetime
$97 forever

Create a pull request with title and body from branch context

Generalscripts

What this skill does


# Create Pull Request

## Script Location

**Scripts live next to this SKILL.md, not in the user's project.** Before
running any script, determine the directory containing this SKILL.md file. Use
that absolute path as `{SKILL_DIR}` when constructing script paths below.

!read references/usage.md

## Gather Context

Run the gather script, passing the user's project directory with `-C`:

```bash
python {SKILL_DIR}/scripts/gather_context.py -C <user-project-directory>
```

## Preconditions

Check these in the JSON output BEFORE proceeding:

1. **Not on base branch**: If `current_branch` equals `base_branch`, STOP and
   say: "Error: Cannot create PR from the base branch. Create a feature branch
   first."
2. **Has commits**: If `commits` array is empty, STOP and say: "Error: No
   commits found. Make commits before creating a PR."
3. **No existing PR**: If `existing_pr` is not null, STOP and say: "Error: PR
   already exists: <url>. Use /flow:pr-title or /flow:pr-desc to update it."

## Execution

Create the PR:

```bash
python {SKILL_DIR}/scripts/create_pr.py -C <user-project-directory> --title "<title>" --body "<body>"
```

## Title Format

- Under 70 characters
- Imperative mood (e.g., "Add feature" not "Added feature")
- No period at end
- Summarize the main change

## Body Format

Use this exact structure:

```
## Summary

- <bullet 1: main change, start with verb>
- <bullet 2: supporting change or context>
- <optional bullet 3-4 if needed>
```

Rules:

- Each bullet starts with a verb (Add, Fix, Update, Remove, etc.)
- Focus on WHAT and WHY, not HOW
- No file paths unless the file itself is the feature
- Do not include any watermark, attribution, or "Generated by" text

## Output

After creating the PR, output:

```
Created PR #<number>: <title>
<url>
```
Files: 4
Size: 8.3 KB
Complexity: 42/100
Category: General

Related in General