Use this skill when the user wants to "create stacked PR", "stack PRs", "dependent PR", "rebase stack", "merge stack", or manage PR dependencies. Handles stacked PR workflows for large features split across multiple dependent pull requests.
/plugin marketplace add constellos/claude-code-plugins/plugin install github-orchestration@constellos-localThis skill inherits all available tools. When active, it can use any tool Claude has access to.
Manage dependent PR workflows (stacked PRs) for large features requiring multiple review iterations.
Stacked PR Management enables creating chains of dependent PRs where each PR builds on the previous one. Useful for large features that need incremental review or when working on multiple related changes simultaneously.
# Create PR chain
BASE="main"
BRANCHES=("42-feature/base" "43-feature/middleware" "44-feature/ui")
for i in "${!BRANCHES[@]}"; do
BRANCH="${BRANCHES[$i]}"
NEXT_BASE=$([[ $i -eq 0 ]] && echo "$BASE" || echo "${BRANCHES[$i-1]}")
# Create PR with base as previous branch
PR_NUM=$(gh pr create \
--base "$NEXT_BASE" \
--head "$BRANCH" \
--title "Feature part $((i+1))" \
--body "**Stack:** Part $((i+1)) of ${#BRANCHES[@]}
$([ $i -gt 0 ] && echo "**Base PR:** Search previous PR")" \
--json number -q .number)
# Save to stack
addPRToStack "$PWD" "{\"pr\": $PR_NUM, \"branch\": \"$BRANCH\", \"base\": \"$NEXT_BASE\", \"children\": []}"
done
visualizeStack "$(loadPRStack "$PWD")"
# Output:
# main
# └── #42 feat/base
# └── #43 feat/middleware
# └── #44 feat/ui
# When base PR merges, rebase stack
BASE_PR=42
DEPENDENTS=$(findDependentPRs "$(loadPRStack "$PWD")" $BASE_PR)
for pr in $DEPENDENTS; do
BRANCH=$(gh pr view $pr --json headRefName -q .headRefName)
git checkout "$BRANCH"
git rebase main
git push --force-with-lease
done
savePRStack(cwd, stack) - Save stack stateloadPRStack(cwd) - Load stack stateaddPRToStack(cwd, node) - Add PR to stackremovePRFromStack(cwd, prNumber) - Remove from stackvisualizeStack(stack) - ASCII tree visualizationvalidateStackOrder(stack) - Check for circular dependenciesgetMergeOrder(stack) - Get bottom-up merge orderfindDependentPRs(stack, prNumber) - Find all descendants# Feature split across 3 PRs
git checkout main
git checkout -b 1-feature/database
# ... make changes ...
git push -u origin 1-feature/database
gh pr create --base main --head 1-feature/database --title "Part 1: Database schema"
git checkout -b 2-feature/api 1-feature/database
# ... make changes ...
git push -u origin 2-feature/api
gh pr create --base 1-feature/database --head 2-feature/api --title "Part 2: API endpoints"
git checkout -b 3-feature/ui 2-feature/api
# ... make changes ...
git push -u origin 3-feature/ui
gh pr create --base 2-feature/api --head 3-feature/ui --title "Part 3: UI components"
STACK=$(loadPRStack "$PWD")
MERGE_ORDER=$(getMergeOrder "$STACK")
for pr in $MERGE_ORDER; do
# Wait for CI
gh pr checks $pr --watch
# Merge
gh pr merge $pr --squash --delete-branch
# Update base of dependent PRs
DEPENDENTS=$(findDependentPRs "$STACK" $pr)
for dep in $DEPENDENTS; do
gh pr edit $dep --base main
done
done
validateStackOrder() before mergeThis skill should be used when the user asks about libraries, frameworks, API references, or needs code examples. Activates for setup questions, code generation involving libraries, or mentions of specific frameworks like React, Vue, Next.js, Prisma, Supabase, etc.
Creating algorithmic art using p5.js with seeded randomness and interactive parameter exploration. Use this when users request creating art using code, generative art, algorithmic art, flow fields, or particle systems. Create original algorithmic art rather than copying existing artists' work to avoid copyright violations.