Skip to content

Guide · Agent skill

How to use the Commit, Push and Open PR agent skill

Updated · written with AI from the project's own documentation and checked against our catalogue data

The Commit, Push and Open PR skill (ce-commit-push-pr) is a set of instructions that teaches an AI coding agent to ship a finished change as a GitHub pull request. Once it is installed, you ask the agent to open a PR and it follows a fixed routine: check the git and GitHub state, commit only the files it names, push the branch, and write a title and description from the actual changes. This guide explains what the skill does, how to install it, how to trigger it, and what it needs before you rely on it.

Commit, Push and Open PREveryInc/compound-engineering-plugin · MIT

Quick start

  1. 1Download and unzip the skill. Download the ce-commit-push-pr ZIP from the page and unzip it into ~/.claude/skills/ for personal use, or into the project's .claude/skills/ folder.
  2. 2Confirm the prerequisites. Make sure git and the GitHub CLI (gh) are installed, that gh is authenticated to the target repository, and that you have write access to the remote.
  3. 3Finish your change. Make the code or document edits you want to publish, and decide which files belong in the commit.
  4. 4Ask the agent to ship it. Make a plain request such as 'Commit these changes and open a PR', optionally naming the files to include.
  5. 5Review the title and description. Check the title and body the agent composes from the diff, and adjust them if your team has a required format.
  6. 6Finish the handoff. After the PR is published, the skill hands follow-on work to the companion skill ce-babysit-pr, which this page does not describe.

What the skill makes the agent do

An agent skill is a folder of instructions that an agent loads when a request matches it. This one is for the publishing end of a change. When you ask an agent to ship your work as a pull request, the skill has the agent check the git and GitHub state, commit only the files it names, push the branch, and then write a PR title and description following the skill's rules.

It can also work on descriptions alone. It can draft or rewrite the description of an existing PR without committing or pushing anything. The skill is designed to avoid common git mistakes, such as committing unrelated files or creating duplicate PRs.

  • Full workflow: check state, commit, push, then compose and open the PR.
  • Description-only: write or describe a PR body without touching commits.
  • Description update: refresh the body of an open PR you already have.

Install the ce-commit-push-pr skill

Download the skill as a ZIP from the page where you found this guide. Unzip it into a skills folder. For a personal install, use ~/.claude/skills/. For a single project, put it in that project's .claude/skills/ folder so it applies only there.

If you use the Claude apps instead of a folder on disk, you can upload the ZIP under Settings, then Capabilities, then Skills.

  • Personal install: unzip into ~/.claude/skills/.
  • Project install: unzip into the project's .claude/skills/ folder.
  • Claude apps: upload the ZIP under Settings, Capabilities, Skills.
~/.claude/skills/ce-commit-push-pr/

Check what the skill needs before you run it

The skill depends on git and the GitHub CLI (gh). The GitHub CLI must be authenticated to the target repository, and you need write access to the remote so the skill can push and create the PR. A separate gh-stack CLI is optional and only matters if you use stack mode.

The skill runs scripts and uses the network. It publishes commits to the remote, so it is not a substitute for a human review step. The skill can stop when a project check is missing or failing, but you should still review what goes out.

  • Required: git.
  • Required: GitHub CLI (gh), authenticated to the target repository.
  • Required: write access to the remote repository.
  • Optional: gh-stack CLI, for stack mode only.
  • Note: the skill runs scripts and uses the network.

Trigger the skill with a natural request

You do not need a special command. Describe what you want in plain language, and the agent will match the request to the skill. Phrases that ship or open a PR, or that ask for a PR description to be written, rewritten or described, are the ones the skill is written for.

You can also pass a PR reference, such as a pasted PR URL or number, to point the skill at an existing pull request. The skill's argument hint lists the optional modifiers it accepts.

  • Ship it: 'Commit this work and open a PR.'
  • Ship with a scope: 'Commit only the parser files and open a PR.'
  • Draft a description: 'Write a PR description for this change.'
  • Refresh an existing PR: 'Rewrite the description of this PR' with the PR URL or number.
  • Describe a PR: 'Describe this PR' with a pasted PR link.
[PR ref] [mode:pipeline] [archive:on|off] [branding:on|off] [babysit:off|continuous|checkpoint]

Understand how the run goes

On a full workflow, the agent first checks the current branch, remote and any existing PR. If you are on the default branch with work on it, the skill creates a feature branch rather than asking whether to. If the default branch has no work, the skill reports that and stops.

Before pushing, the agent stages and commits named files only. It never uses git add -A or git add . so unrelated staged files stay out. Before it creates the PR, it checks again for an existing PR for that branch, so it does not open a duplicate. If a PR already exists, it updates that PR instead.

  • Named files only: no git add -A and no git add .
  • Re-check before creating: an existing PR is updated, not duplicated.
  • Stacks are opt-in: the skill stays single-PR unless you ask for a stack.
  • Ambiguous commit type: the skill defaults to fix: over feat: when conventional commits are used.
gh pr list --head <branch> --state open --json number,url,isDraft,headRefName,headRepositoryOwner

Tips for getting good results

Keep the change to one logical unit when you can. The skill commits in two or three groups at most, grouped by file, and will use one commit when the grouping is unclear. If you want files kept out of the commit, name that in your request so the skill leaves them and reports them.

Check the PR title and description before they go live if your team relies on a particular format. The skill writes these from the actual diff, but it is still an automated draft.

  • Name the files you want included or excluded.
  • Use description-only mode when you just need text for a PR you will open yourself.
  • Expect the skill to follow the project's pre-push requirements and to stop if they are not met.

What people use it for

  • Opening a PR for a finished bug fix while keeping unrelated working-tree files out of the commit.
  • Rewriting a stale PR description after new commits were pushed to an open PR.
  • Drafting a PR body from the diff for a branch you will open yourself.
  • Enforcing a consistent PR title and description format across a team's repositories.

Frequently asked questions

How do I install the ce-commit-push-pr skill?

Download the skill ZIP from the page, then unzip it into ~/.claude/skills/ for personal use or into a project's .claude/skills/ folder. In the Claude apps, you can instead upload the ZIP under Settings, then Capabilities, then Skills.

Is the ce-commit-push-pr skill free?

The skill is published under the MIT licence. The source provided for this page does not list any price, so check the repository's licence file for the exact terms.

What do I need installed to use this skill?

You need git and the GitHub CLI (gh), authenticated to the target repository. You also need write access to the remote. The gh-stack CLI is optional and only used for stack mode.

Does the skill push code without asking?

It publishes commits to the remote when you ask it to ship a PR, so it is not a replacement for human review. It can stop when a project check is missing or failing, but you should review changes before asking it to publish.

Can the skill just write a PR description?

Yes. In description-only mode it drafts and prints a title and body without committing or pushing. In description update mode it rewrites the body of an existing open PR and applies it only after confirmation.

What if I already have a PR open for my branch?

The skill checks for an existing PR before creating one. If it finds one, it takes the existing-PR path and updates that PR instead of opening a duplicate.

New agent skills, repos and AI tools — every week

The best new skills and open-source projects, the fastest-growing repos, and one free prompt. Five minutes to read. Unsubscribe anytime.

Our verdict

Use this skill if you work in git and GitHub, want an agent to handle the commit, push and PR steps of a finished change, and want consistent PR text written from the diff. Pick something else if your repository requires a human to approve pushes before they happen, or if you do not use git or GitHub, since the skill depends on both.

Download the skill