Skip to content

stac-manStacked PRs, locally.

A small CLI for stacked pull requests. Free, local-only, no SaaS, no IDE plugin, no login.

stac-man

Why another stacked-PR tool

Stacked pull requests — small, dependent branches that each become their own PR, with each PR's base set to the branch below it — make code review faster and keep changes reviewable. Every existing tool either ships as a SaaS, a paid IDE plugin, or a heavyweight rewrite of git. sm is a single Go binary that records the parent of each branch in git config and keeps the chain in sync as you iterate.

In 30 seconds

Start a feature stack from trunk:

bash
git switch main
sm create feat/auth-models

Edit your files, then commit (auto-restacks descendants):

bash
sm modify -a -m "models: add User"

Stack a second branch on top of the first, edit, commit:

bash
sm create feat/auth-handlers
bash
sm modify -a -m "handlers: /login"

Inspect the tree, then push the whole stack as PRs with bases wired:

bash
sm log
bash
sm submit --stack

That's the whole loop. From here:

Released under a license that is currently TBD.