task icon Task

Create GitHub Pull Request

Create a new pull request from a branch

Requirements
Repository (owner/repo), source branch (head), target branch (base), PR title, PR description
3

Help user select branches:

  • Source branch (head): the branch with their changes
  • Target branch (base): where to merge (usually main/master)

Confirm PR title and description. Suggest a clear title format
like "feat: add feature" or "fix: resolve bug".

5

Confirm the PR was created successfully.
Show the PR number, branch info, and direct link to GitHub.
Mention next steps (request reviewers, add labels, etc).

                    To run this task you must have the following required information:

> Repository (owner/repo), source branch (head), target branch (base), PR title, PR description

If you don't have all of this information, exit here and respond asking for any extra information you require, and instructions to run this task again with ALL required information.

---

You MUST use a todo list to complete these steps in order. Never move on to one step if you haven't completed the previous step. If you have multiple CONSECUTIVE read steps in a row, read them all at once (in parallel). Otherwise, do not read a file until you reach that step.

Add all steps to your todo list now and begin executing.

## Steps

1. [Read GitHub Pull Requests Guide]: Read the documentation in: `skills/sauna/[skill_id]/references/github.prs.guide.md` (PR creation requirements)

2. [Gather Arguments: List GitHub Repository Branches] The next step has the following requirements for arguments, do not proceed until you have all the required information:
- `owner`: owner from requirements
- `repo`: repo from requirements
- `per_page` (default: "30"): 30

3. [Run Code: List GitHub Repository Branches]: Call `run_script` with:

```json
{
  "file": {
    "path": https://sk.ills.app/code/github.repos.branches/preview,
    "args": [
      "owner",
      "repo",
      "per_page"
    ]
  },
  "packages": null
}
```

4. Help user select branches:
- Source branch (head): the branch with their changes
- Target branch (base): where to merge (usually main/master)

Confirm PR title and description. Suggest a clear title format
like "feat: add feature" or "fix: resolve bug".


5. [Gather Arguments: Create GitHub Pull Request] The next step has the following requirements for arguments, do not proceed until you have all the required information:
- `owner`: owner from requirements
- `repo`: repo from requirements
- `title`: PR title
- `body`: PR description
- `head`: source branch (head)
- `base` (default: "main"): target branch (base)

6. [Run Code: Create GitHub Pull Request]: Call `run_script` with:

```json
{
  "file": {
    "path": https://sk.ills.app/code/github.prs.create/preview,
    "args": [
      "owner",
      "repo",
      "title",
      "body",
      "head",
      "base"
    ]
  },
  "packages": null
}
```

7. Confirm the PR was created successfully.
Show the PR number, branch info, and direct link to GitHub.
Mention next steps (request reviewers, add labels, etc).