A minimal CLI tool for managing stacked branches and syncing them to GitHub Pull Requests, inspired by tools like Charcoal and Graphite.
gh)brew install javoire/tap/stackinator
See Alternative Installation Methods for other options (Go install, binary download, build from source).
Start from your base branch (e.g., main):
# Create first branch in stack
stack new feature-1
# Make some changes and commit
git add .
git commit -m "Add feature 1"
# Create second branch stacked on feature-1
stack new feature-2
# Make more changes
git add .
git commit -m "Add feature 2"
stack status
○ main
│
○ feature-1 [https://github.com/you/repo/pull/1 :open]
│
● feature-2 [https://github.com/you/repo/pull/2 :open]
The ● indicates your current branch.
After making changes or when the base branch is updated:
stack sync
This will:
See Commands Reference for full documentation.
stack new <branch-name> - Create a new branch in the stackstack status - Display the current stack structurestack sync - Sync all branches and update PRsstack parent - Show the parent of the current branchstack prune - Clean up branches with merged PRsstack rename <new-name> - Rename branch preserving stack relationshipsstack reparent <new-parent> - Change the parent of the current branchstack worktree <branch-name> - Create a worktree for a branchConfigure the base branch and worktrees directory with git config:
git config stack.baseBranch develop # Default is "main"
git config stack.worktreesDir ~/worktrees
Or use the interactive helper:
stack config set
Stackinator includes a skill that teaches AI coding tools how to manage stacked branches. Supported tools: Claude Code, Codex, and Cursor.
stack skill install
This auto-detects which tools are installed and installs the skill for all of them.
For Claude Code, run:
/plugin marketplace add javoire/stackinator
/plugin install stack@stackinator
MIT
Contributions welcome! See Contributing Guide for development setup and guidelines.
Inspired by:
Own this plugin?
Verify ownership to unlock analytics, metadata editing, and a verified badge. GitHub access is read-only (username + org membership).
Sign in to claimOwn this plugin?
Verify ownership to unlock analytics, metadata editing, and a verified badge. GitHub access is read-only (username + org membership).
Sign in to claimBased on adoption, maintenance, documentation, and repository signals. Not a security audit or endorsement.
npx claudepluginhub javoire/stackinator --plugin stackStacked diffs CLI for GitHub and GitLab. Skills for creating, syncing, landing, and managing stacked PRs/MRs with gg.
Git workflow tools: commits, PRs, review inbox, checkout, and work triage
Streamline your git workflow with simple commands for committing, pushing, and creating pull requests
Ultra-compressed communication mode. Cuts ~75% of tokens while keeping full technical accuracy by speaking like a caveman.
Frontend design skill for UI/UX implementation
Comprehensive UI/UX design plugin for mobile (iOS, Android, React Native) and web applications with design systems, accessibility, and modern patterns