commit-push-pr
Commit session changes, push the branch, and open a PR — in one shot.
Skill by ZunoSmartLabs
Install
Works with Claude Code, Claude apps, Codex, Cursor, Gemini CLI, GitHub Copilot, VS Code, OpenCode, Goose, Windsurf. Read the repository before you give any tool access to your data.
npx agentmarket install skill/zunosmartlabs-commit-push-pr
Asks which of your tools to add it to (Claude Code, Codex, Cursor, VS Code, Windsurf, Gemini CLI, Claude Desktop) and shows the change first. See https://agentmart.dev/cli.
Get the weekly diff
The weekly diff: one email a week with new agent tools, notable updates and grade changes, plus security alerts for tools you follow. Double opt-in, one-click unsubscribe.
About
Reviews
Write a reviewNo reviews yet. Installed it? Reviews come from verified installers only. How reviews work
Permissions
What this skill can do and what it asks for, from its SKILL.md. Checked Oct 25, 2026.
- Tools
- No tools found
- Secrets
- None asked for
- Install scripts
- None found
Network hosts it talks to 1
codeload.github.com· found in install command
Files it touches
~/.claude/skills/commit-push-pr
What's inside
- Skill name
commit-push-pr- Description
- Commit session changes, push the branch, and open a PR — in one shot. Refuses to run on the repo's default branch (main/master) so the PR step can't fail. Delegates the commit step to `/zsl:commit`, then pushes with `-u`, then opens the PR via `gh`. Use when user wants to ship a feature branch end-to-end, says "/commit-push-pr", or asks to commit, push, and open a PR.
- License
- MIT
- Instructions
- 64 lines in SKILL.md · view on GitHub
Files (1)
- SKILL.md
SKILL.md (first lines)
# Commit, Push, Open PR One-shot shipping for a feature branch: commit → push → PR. The commit step is delegated wholesale to [`/zsl:commit`](../commit/SKILL.md) — same rules (autonomous for session changes, explicit file lists, no Claude attribution). The novel work here is the **pre-flight branch check** and the **push + PR open** after the commit lands. ## Pre-flight: not on the default branch The PR step would fail on `main`/`master` — you can't open a PR from a branch into itself. Check **before** committing so the user isn't left committed-but-undeliverable. 1. `git rev-parse --abbrev-ref HEAD` → current branch. 2. `git symbolic-ref refs/remotes/origin/HEAD --short 2>/dev/null | sed 's|^origin/||'` → remote default branch. Fall back to `main`, then `master`, if that returns nothing. 3. If current branch equals the default branch, **stop immediately**. Surface the mistake and suggest `/zsl:git-branch <description>` to create a properly-prefixed feature branch. Do not proceed to the commit. If the working tree is clean *and* the branch has no unpushed commits, also stop — there's nothing to ship. ## Process 1. **Run the pre-flight branch check.** Stop if on the default branch. 2. **Delegate to [`/zsl:commit`](../commit/SKILL.md).** Follow that skill's full process: classify session vs other-origin changes, confirm only the other-origin bucket, plan the commit(s), execute with explicit file lists. If `/zsl:commit` halts (user declines an other-origin file, hook fails, etc.), halt here too — don't push a half-shipped state. Skip this step if the working tree is clean but the branch has unpushed commits — go straight to push. 3. **Push with upstream.** ```bash git push -u origin <current-branch> ``` `-u` sets the upstream so subsequent `git push`/`git pull` work without arguments. Harmless if the branch already tracks. If push fails (non-fast-forward, hook reject, auth), surface the error verbatim and stop. **Never `--force`. Never `--no-verify`.** 4. **Open the PR.** ```bash gh pr create --title "<title>" --body "<body>" ``` - **Title**: derive from the branch name (strip the `feature/`/`fix/`/etc. prefix, replace hyphens with spaces, sentence-case) or the latest commit subject, whichever reads better. Keep under 72 chars. - **Body**: short *why* summary (1–3 bullets) plus a `## Test plan` checklist. Multi-line via heredoc. If `.github/pull_request_template.md` exists, follow its shape. - **No Claude attribution.** No `🤖 Generated with…`, no `Co-Authored-By:`. Same rule as `/zsl:commit`. - If a PR for this branch already exists, `gh pr create` fails; fall back to `gh pr view --json url -q .url` and report the existing PR URL. - If the repo has an auto-PR workflow (`.github/workflows/auto-pr.yml`) and the push already created the PR, skip the `gh pr create` and just resolve the URL. 5. **Report.** One line: PR URL. Done. ## Safety rails - **Never force-push.** If the remote rejects, stop and let the user resolve. - **Never `--no-verify`.** Pre-push hooks exist for a reason — fix the issue, re-run. - **Don't open against a release branch by accident.** `gh pr create` defaults to the repo's base; if that's `main` but the user's flow uses `develop` or a release branch, ask before opening. - **Don't re-litigate the commit grouping.** `/zsl:commit` owns that decision. ## When to use a different skill - Just committing, no push/PR? → [`/zsl:commit`](../commit/SKILL.md). - Need a branch first? → [`/zsl:git-branch`](../git-branch/SKILL.md), then this skill. - Pre-PR review pass? → [`/zsl:code-review`](../code-review/SKILL.md) before this; fix findings, then run this. ## Why this shape - **Pre-flight before commit** because committing on `main` is harder to unwind than refusing up front. One `git rev-parse` saves a future `git reset`. - **Delegate to `/zsl:commit`** rather than re-implementing the commit rules — keeps the no-`-A`, no-attribution, other-origin-confirmation logic in one place. - **`-u origin` on push** because half of "push failed" reports trace back to a branch with no upstream. Setting it once costs nothing.
From ZunoSmartLabs/zsl-superpowers, MIT.
More from ZunoSmartLabs/zsl-superpowers
- 0.563score
setup-zsl-superpowers
ZunoSmartLabs
Sets up an `## Agent skills` block in AGENTS.md/CLAUDE.md and `docs/agents/` so the engineering skills know this repo's issue tracker (GitHub, local markdown…
SkillBFreshness: B★ 2Claude Code +9 - 0.557score
codebase-design
ZunoSmartLabs
Shared vocabulary and refinements for reasoning about module depth, interfaces, seams, and adapters — the deep-module design language.
SkillBFreshness: B★ 2Claude Code +9 - 0.557score
commit
ZunoSmartLabs
Plan and create git commits autonomously for changes made in this session (no per-commit approval prompt).
SkillBFreshness: B★ 2Claude Code +9 - 0.557score
decision-mapping
ZunoSmartLabs
Turn a loose, multi-session idea into a sequenced map of the decisions and tickets it implies, so it matures before becoming a PRD.
SkillBFreshness: B★ 2Claude Code +9 - 0.557score
git-branch
ZunoSmartLabs
Create a git branch with the prefix convention (`feature/`, `fix/`, `chore/`, `refactor/`, `env/`) required by GitHub auto-PR workflows.
SkillBFreshness: B★ 2Claude Code +9 - 0.557score
human-itl
ZunoSmartLabs
Walk a human through the manual-action [HITL] sub-tasks of a parent (PRD) issue — the steps a coding agent physically cannot perform — recording each as an…
SkillBFreshness: B★ 2Claude Code +9 - 0.557score
ask-zsl
ZunoSmartLabs
Interactive router that helps you find the right ZSL skill for what you're doing right now, without leaving your work.
SkillBFreshness: B★ 2Claude Code +9 - 0.557score
teach-me-the-codebase
ZunoSmartLabs
On-the-fly conversational tutor that teaches you an unfamiliar repo's domain, architecture, and conventions interactively — reading the canonical docs and…
SkillBFreshness: B★ 2Claude Code +9 - 0.553score
domain-modeling
ZunoSmartLabs
The home for domain-doc reasoning — the CONTEXT.md Ubiquitous Language format, the ADR format, and the Domain-Driven Design book-rules.
SkillBFreshness: B★ 2Claude Code +9 - 0.553score
tdd-parallel
ZunoSmartLabs
Full-auto PRD pipeline.
SkillBFreshness: B★ 2Claude Code +9 - 0.553score
code-review
ZunoSmartLabs
Comprehensive pre-PR code review of the current branch with an issues-only tone and an approval gate before applying fixes.
SkillBFreshness: B★ 2Claude Code +9 - 0.533score
diagnose
ZunoSmartLabs
Disciplined diagnosis loop for hard bugs and performance regressions.
SkillBFreshness: B★ 2Claude Code +9
Signals
- Stars
- 2
- Forks
- 0
- Open issues
- 0
- Last commit (this folder)
- Jun 19, 2026 (4 months ago)
- Last release
- Sep 18, 2026 (1 month ago)
From GitHub (fetched Oct 24, 2026).
Details
- License
- MIT
- Repository
- github.com/ZunoSmartLabs/zsl-superpowers
- First seen
- Oct 24, 2026
- Last checked
- Oct 24, 2026
- Source
- GitHubgithub-graphql
More from ZunoSmartLabs
- 0.563score
setup-zsl-superpowers
ZunoSmartLabs
Sets up an `## Agent skills` block in AGENTS.md/CLAUDE.md and `docs/agents/` so the engineering skills know this repo's issue tracker (GitHub, local markdown…
SkillBFreshness: B★ 2Claude Code +9 - 0.557score
codebase-design
ZunoSmartLabs
Shared vocabulary and refinements for reasoning about module depth, interfaces, seams, and adapters — the deep-module design language.
SkillBFreshness: B★ 2Claude Code +9 - 0.557score
commit
ZunoSmartLabs
Plan and create git commits autonomously for changes made in this session (no per-commit approval prompt).
SkillBFreshness: B★ 2Claude Code +9 - 0.557score
decision-mapping
ZunoSmartLabs
Turn a loose, multi-session idea into a sequenced map of the decisions and tickets it implies, so it matures before becoming a PRD.
SkillBFreshness: B★ 2Claude Code +9 - 0.557score
git-branch
ZunoSmartLabs
Create a git branch with the prefix convention (`feature/`, `fix/`, `chore/`, `refactor/`, `env/`) required by GitHub auto-PR workflows.
SkillBFreshness: B★ 2Claude Code +9 - 0.557score
ask-zsl
ZunoSmartLabs
Interactive router that helps you find the right ZSL skill for what you're doing right now, without leaving your work.
SkillBFreshness: B★ 2Claude Code +9
Cite this page
commit-push-pr skill. Agent Mart. https://agentmart.dev/skills/zunosmartlabs-commit-push-pr (last updated 2026-10-24)