
Ce Commit Push Pr
Commit, push, and open a PR—or rewrite the body only—with an adaptive, value-first description scaled to the diff size.
Overview
ce-commit-push-pr is an agent skill most often used in Ship (also Build) that commits, pushes, and opens a PR with an adaptive value-first description, or updates PR text alone.
Install
npx skills add https://github.com/everyinc/compound-engineering-plugin --skill ce-commit-push-prWhat is this skill?
- Full flow: commit, push, and open PR with adaptive depth in the description
- Description-only mode: draft or rewrite PR body without commit/push when user pastes a PR URL or number
- Description update mode refreshes an existing open PR after preview and confirm
- Blocking user questions via harness tools (AskUserQuestion, request_user_input, ask_user)—never silently skip asks
- Triggers: commit and PR, ship this, create a PR, open a pull request, write a PR description
Adoption & trust: 1.5k installs on skills.sh; 20.5k GitHub stars; 2/3 security scanners passed (skills.sh audits).
What problem does it solve?
You have finished work locally but dread writing a proportional PR description and running the git publish steps in the right order.
Who is it for?
Solo builders who ship from the terminal with Claude Code, Codex, or Cursor and want consistent PR hygiene in one invocation.
Skip if: Teams that require signed commits, complex multi-repo releases, or merge workflows this skill does not model—use your org’s release tooling instead.
When should I use this skill?
User says commit and PR, ship this, create a PR, open a pull request, or asks for PR description-only or rewrite flows.
What do I get? / Deliverables
A pushed branch and open PR (or an updated description) with a description that matches change depth, ready for review or merge.
- Git commit
- Pushed branch
- Opened or updated PR with adaptive description
Recommended Skills
Journey fit
Spans multiple journey phases - primary shelf plus alternate fits below.
Shipping safely means reviewable changes; this skill sits on the git-to-PR path where description quality affects merge velocity. PR creation and description are core review-prep rituals before launch and peer review.
Where it fits
Finish an API integration branch and open a PR with context for reviewers.
Ship a fix with a concise PR when the diff is small and a deep narrative when it is not.
Refresh an open release PR description before merge without new commits.
How it compares
Workflow skill for git + PR narrative—not a substitute for dedicated code-review or security audit skills on the diff.
Common Questions / FAQ
Who is ce-commit-push-pr for?
Solo and indie developers using agent harnesses who want commit, push, and PR creation—or PR description edits—without ad-hoc git recipes.
When should I use ce-commit-push-pr?
At Ship review when you say commit and PR or ship this; at Build when wrapping a feature branch; anytime you need write a PR description or rewrite the PR body without touching git.
Is ce-commit-push-pr safe to install?
Check the Security Audits panel on this page; the skill can commit, push, and modify remotes—review diffs and branch targets before confirming agent actions.
SKILL.md
READMESKILL.md - Ce Commit Push Pr
# Git Commit, Push, and PR **Asking the user:** When this skill says "ask the user", use the platform's blocking question tool: `AskUserQuestion` in Claude Code (call `ToolSearch` with `select:AskUserQuestion` first if its schema isn't loaded), `request_user_input` in Codex, `ask_user` in Gemini, `ask_user` in Pi (requires the `pi-ask-user` extension). Fall back to presenting the question in chat only when no blocking tool exists in the harness or the call errors (e.g., Codex edit modes) — not because a schema load is required. Never silently skip the question. ## Mode - **Description-only** — user wants *just* a description ("write/draft a PR description", "describe this PR", or pasted a PR URL/number alone). Run Step 4 only; print the result. Apply only if the user asks. If a PR ref was pasted, pass it to Step 4 so Pre-A resolves the right range. - **Description update** — user wants to refresh/rewrite an existing PR's description with no commit/push intent. If no open PR, report and stop. Otherwise run Step 4 (PR mode using the existing PR's URL), then Step 5 to preview, confirm, and apply via `gh pr edit`. - **Full workflow** — otherwise. Run Steps 1-5 in order. ## Context **On platforms other than Claude Code**, run the Context fallback below. **In Claude Code**, the labeled sections contain pre-populated data — use them directly. **Git status:** !`git status` **Working tree diff:** !`git diff HEAD` **Current branch:** !`git branch --show-current` **Recent commits:** !`git log --oneline -10` **Remote default branch:** !`git rev-parse --abbrev-ref origin/HEAD 2>/dev/null || echo 'DEFAULT_BRANCH_UNRESOLVED'` **Existing PR check:** !`gh pr view --json url,title,state 2>/dev/null || echo 'NO_OPEN_PR'` ### Context fallback ```bash printf '=== STATUS ===\n'; git status; printf '\n=== DIFF ===\n'; git diff HEAD; printf '\n=== BRANCH ===\n'; git branch --show-current; printf '\n=== LOG ===\n'; git log --oneline -10; printf '\n=== DEFAULT_BRANCH ===\n'; git rev-parse --abbrev-ref origin/HEAD 2>/dev/null || echo 'DEFAULT_BRANCH_UNRESOLVED'; printf '\n=== PR_CHECK ===\n'; gh pr view --json url,title,state 2>/dev/null || echo 'NO_OPEN_PR' ``` --- ## Step 1: Resolve branch and PR state The remote default branch returns something like `origin/main`; strip the `origin/` prefix. If it returned `DEFAULT_BRANCH_UNRESOLVED` or bare `HEAD`, try `gh repo view --json defaultBranchRef --jq '.defaultBranchRef.name'`. If both fail, fall back to `main`. Branch routing: - **Detached HEAD** — explain a branch is required and ask whether to create a feature branch. If yes, derive a name from the change content. If no, stop. - **On default branch with work to do** (uncommitted, unpushed, or no upstream) — ask whether to create a feature branch (pushing default directly is not supported). If yes, continue at Step 3 (which handles branch creation safely). If no, stop. - **On default branch with no work** — report no feature branch work and stop. - **Feature branch** — continue. Note the existing PR URL from the PR check if `state: OPEN`. Step 5 uses it to route between new-PR and existing-PR application. ## Step 2: Determine conventions Match repo style for commit messages and PR titles (project instructions in context > recent commits > conventional commits as default). With conventional commits, default to `fix:` over `feat:` when ambiguous — adding code to remedy broken or missing behavior is `fix:`. Reserve `feat:` for capabilities the user could not previously accomplish. The user may override. ## Step 3: Commit and push If on the default branch, b