| name | yak |
| description | Stacked PR workflow. Use when the user wants to pause for a quick yak, insert a yak branch beneath current work, create stacked branches, sync a stack, or create a PR. TRIGGER when: user says "yak", "stack", "sync", "stack-pr", or talks about stacking PRs/branches.
|
| argument-hint | <yak|stack|sync|stack-pr|tree|done|continue|abort|install> [branch-name|title] |
| allowed-tools | Bash(git *) Bash(gh *) Bash(${CLAUDE_SKILL_DIR}/install.sh *) Bash(chmod *) |
yak — stacked PR workflow
Interpret $ARGUMENTS to decide which command to run.
Commands
git yak <name>
git yak --branch <name>
git yak --done
git yak --continue
git yak --abort
git stack <name>
git sync
git sync <branch>
git sync --continue
git sync --abort
git stack-pr <title>
git stack-tree
Examples
/yak fix-auth → git yak fix-auth
/yak stack part-2 → git stack part-2
/yak sync → git sync
/yak sync part-1 → git sync part-1
/yak stack-pr "Add feature" → git stack-pr "Add feature"
/yak tree → git stack-tree
/yak done → git yak --done
/yak continue → check git config yak.in-progress or git config sync.in-progress to decide git yak --continue or git sync --continue
/yak abort → same check, then git yak --abort or git sync --abort
/yak install → ${CLAUDE_SKILL_DIR}/install.sh
/yak with no args → run git stack-tree and report status
Notes
- Branch relationships are stored in
branch.<name>.stack-parent git config.
stack-pr finds the bottom branch automatically — run it from any branch in the stack.
- Rerere is enabled automatically so repeated conflicts resolve themselves.
- Always use
--force-with-lease (never --force) when pushing.
- When a rebase conflicts, guide the user to resolve, then
--continue.