Getting Started
Quick Start
Get from zero to a working stacked PR flow fast.
Get from zero to a working stacked PR flow fast.
Prerequisites
gitinstalled — Version control must be available on your system.ghCLI authenticated:gh auth logindubinstalled:# Homebrew brew tap wiseiodev/dubstack brew install dubstack # npm npm i -g dubstack
Optional: Enable AI Assistant
# Guided setup for Gemini, AI Gateway, or Amazon Bedrock
dub ai setup
# Reload your shell with the command DubStack prints
source ~/.zshrc
# Enable assistant for this repo
dub config ai-assistant on
# Pin the provider for this repository
dub config ai-provider bedrock
# Optional: enable AI defaults
dub config ai-defaults create on
dub config ai-defaults submit on
dub config ai-defaults flow on
# Ask a question
dub ai ask "Summarize this stack from trunk to current branch"For Bedrock teams using AWS SSO or role-based auth, DubStack supports:
dub ai env \
--bedrock-profile "bw-sso" \
--bedrock-region "us-west-2" \
--bedrock-model "us.anthropic.claude-sonnet-4-6"dub ai setup and dub ai env both print the exact activation command to run after updating your shell profile.
If you want DubStack AI to follow your repository's formatting, also set up:
- a PR template in
.github/pull_request_template.mdor.github/PULL_REQUEST_TEMPLATE/*.md - a commit template via
git config commit.template .gitmessage
1. Start from Trunk
git checkout main
git pull2. Create a Stack
Create three stacked branches with commits:
# Layer 1
dub create feat/auth-types -am "feat: add auth types"
# Layer 2 (parent: feat/auth-types)
dub create feat/auth-login -am "feat: add login flow"
# Layer 3 (parent: feat/auth-login)
dub create feat/auth-tests -am "test: add auth tests"3. Inspect and Navigate
# View stack tree
dub log
# Interactive checkout
dub co
# Move around current path
dub up
dub down
dub top
dub bottom4. Submit Stack PRs
# Submit stack
dub ss
# Preview only
dub ss --dry-run
# Open PR in browser
dub prOptional: Use the AI Flow
# Stage all, preview generated metadata, create, and submit
dub flow --ai -a
# Auto-approve after staging tracked files
dub flow -y -u5. Respond to Feedback
When feedback lands on a middle branch:
dub co feat/auth-login
# Amend current commit
dub m -a -m "fix: address review feedback"
# Or create a new commit
dub m -c -a -m "fix: follow-up"
# Push updates
dub ss6. Keep Stack in Sync
git checkout main
git pull
dub sync7. Handle Restack Conflicts
dub restack
# Resolve conflicts in files
git add <resolved-files>
dub restack --continue8. Merge in Safe Order
# Merge next safe PR in stack order
dub merge-next
# Run again for the next layer
dub merge-next
# If merges happened manually
dub post-mergeFast Command List
| Command | Purpose |
|---|---|
dub create <name> -am "msg" | Stage all + create + commit |
dub m | Modify current branch commit(s) |
dub log | Show stack graph |
dub co | Interactive checkout |
dub ss | Submit stack PRs |
dub pr | Open PR in browser |
dub sync | Sync local state with remote |
dub doctor | Run stack health checks |
dub ready | Run pre-submit checklist |
dub restack | Rebase stack onto updated parents |
dub merge-next | Merge next safe PR + maintenance |
dub continue / dub abort | Resume/cancel operations |
dub undo | Undo last create/restack |
dub ai ask "..." | Ask AI assistant |
dub flow --ai -a | Run the AI-assisted authoring flow |