> ## Documentation Index
> Fetch the complete documentation index at: https://docs.parallelane.com/llms.txt
> Use this file to discover all available pages before exploring further.

# Pull requests

> Creating a GitHub pull request from the app, and writing it with Claude Code

Create a pull request on GitHub for a branch, without leaving the app.
The title and description can be written by your local Claude Code CLI.

## Where to start

* The **Create pull request** button sits after Push, Pull, Fetch, and Stash in the right sidebar header. The head branch is the current branch.
* **Create pull request…** is in the local branch's submenu when you right-click a commit in the graph. The head branch is that branch.

## The Create Pull Request dialog

<Frame>
  <img src="https://mintcdn.com/railgit/La2vIBMFHafSrcPT/images/remote-pr-dialog.png?fit=max&auto=format&n=La2vIBMFHafSrcPT&q=85&s=b4f705427c5d9344ab31230f35bd2b7c" alt="The Create Pull Request dialog, with the Head branch line reading origin/feature/rate-limits ← feature/rate-limits, main selected as the Base branch, a filled Title and Description, a Write with AI button below them, and Create as draft and Open on GitHub checkboxes beside the Cancel and Create pull request buttons" width="1126" height="1252" data-path="images/remote-pr-dialog.png" />
</Frame>

<Steps>
  <Step title="Pick the base branch">
    **Head branch** is the branch you opened the dialog from.
    **Base branch** lists the repository's default branch first, then the branches of the selected remote.
  </Step>

  <Step title="Write the title and description">
    Type into **Title** and **Description**, or click **Write with AI**.
    Only the title is required.
  </Step>

  <Step title="Create it">
    Turn on **Create as draft** or **Open on GitHub** as you like, then click **Create pull request**.
    If the branch is missing on the remote, it's pushed first.
  </Step>
</Steps>

The pull request is created with the GitHub account chosen for the repository in **Settings → Projects → Account**, or the **Default account** from **Settings → ParalleLane → Git**.
If no GitHub account is set, or the selected account is for another host, an error toast appears and the dialog stays open.
[Accounts & authentication](/settings/accounts) covers adding one.

## Writing with AI

**Write with AI** runs the Claude Code CLI installed on your computer and fills in **Title** and **Description** from the branch's changes.
The CLI runs on your computer and uses your own Claude Code sign-in.

Edit the result as you like, or click **Rewrite with AI** for another attempt.
If you close the dialog while a draft is running, a toast asks you to confirm with **Cancel and close**.

<Tip>
  When Claude Code is missing, **Write with AI** is disabled and its tooltip points to **Settings › AI**.
</Tip>

## Settings → ParalleLane → AI

<Frame>
  <img src="https://mintcdn.com/railgit/La2vIBMFHafSrcPT/images/settings-ai.png?fit=max&auto=format&n=La2vIBMFHafSrcPT&q=85&s=8460ab175dab50ce183bfdb4df02f05d" alt="The AI settings screen, with the Claude Code row carrying a Detected badge and a Check again button above the resolved path and version, followed by the Executable path, CLI arguments, and Prompt rows" width="2906" height="1784" data-path="images/settings-ai.png" />
</Frame>

| Row                 | What it does                                                                                                               |
| ------------------- | -------------------------------------------------------------------------------------------------------------------------- |
| **Claude Code**     | Shows whether the CLI was **Detected**, with its path and version. **Check again** runs detection again.                   |
| **Executable path** | Leave it empty to detect the CLI automatically, or enter an absolute path and click **Apply**.                             |
| **CLI arguments**   | Extra arguments passed to Claude Code on every draft. The default is `--model haiku --effort medium`.                      |
| **Prompt**          | The instruction sent to Claude Code. `{base}`, `{head}`, and `{lang}` are replaced with the branches and the app language. |

Changes apply to the next draft.
