Shapes turns action-first: action leads, steps numbered, state restated. Use for ADHD-friendly output. Do not use to trim tokens; use response-compression.
한국어 요약은 준비 중입니다. 원문 설명을 표시하고 있습니다.
Cascades a rebase through an entire PR stack after a base PR merges or upstream changes. Use when a stack needs to incorporate new base branch commits.
한국어 요약은 준비 중입니다. 원문 설명을 표시하고 있습니다.
설치하기 전에 에이전트에게 전달되는 지시 내용을 확인할 수 있습니다.
Cascade a rebase through an entire PR stack after a base PR merges or the upstream base branch changes.
Run stack-rebase in any of these situations:
master; the
second PR now needs to target master directlymaster has moved forward and stack branches need to
incorporate the new commitssanctum:stack-push)sanctum:stack-create)git branch --list)git fetch origin)git status)--update-refsCreate TodoWrite items before starting:
stack-rebase:fetch-completestack-rebase:trigger-identifiedstack-rebase:rebase-completestack-rebase:conflicts-resolvedstack-rebase:force-pushedstack-rebase:prs-updatedfetch-complete)git fetch origin
If the merged PR's branch still exists on remote, note that GitHub retains the branch after merge. The merged branch itself is no longer a valid stack base.
trigger-identified)Determine what changed:
Case A, Base PR merged into master:
The slice that was the old "root" is now in master.
All remaining slices need to rebase onto master.
# Confirm the merged branch is now in master
git branch -r --merged origin/master | grep "${MERGED_BRANCH}"
Case B, Master moved forward:
Slices are behind master but the stack topology is
unchanged.
Rebase the root slice onto master; --update-refs
carries all descendants.
Case C, Mid-stack revision: A slice was amended. All descendant slices need to rebase onto it.
rebase-complete)STACK=stack/my-feature
BASE=master
# Check out the root slice
ROOT_SLICE=$(git branch --list "${STACK}/*" \
| sed 's/^[* ]*//' | sort | head -1)
git checkout "${ROOT_SLICE}"
# Rebase with --update-refs rewrites all stack branches
git rebase --update-refs origin/${BASE}
--update-refs scans the reflog and updates every local
branch ref that points to a commit being rebased.
All slice branches in the stack are rewritten in one pass.
# Check out the first slice BELOW the amended one
CHILD_SLICE=stack/my-feature/add-api # example
git checkout "${CHILD_SLICE}"
git rebase --update-refs stack/my-feature/add-schema
# jj rebases all descendants automatically on any change
# To rebase the whole stack onto master:
jj rebase -d master \
-r "ancestors(${STACK}/add-ui) & !ancestors(master)"
conflicts-resolved)If the rebase pauses with conflicts:
# See which file conflicts
git status
# After resolving each file:
git add <resolved-file>
git rebase --continue
Repeat until the rebase completes. If a conflict is too complex, abort and investigate:
git rebase --abort
Then examine the diff between the conflicting commits before retrying.
force-pushed)After a successful rebase, push all slice branches.
Use --force-with-lease to guard against remote changes
made since the last fetch:
for branch in $(git branch --list "${STACK}/*" \
| sed 's/^[* ]*//' | sort); do
git push --force-with-lease origin "${branch}"
echo "force-pushed: ${branch}"
done
Never use --force (drops the remote-change guard).
jj git push --all --allow-new
prs-updated)Case A only: After the root slice merged and you
rebased remaining slices onto master, the next PR in
the stack now targets the wrong base.
Update its base via the GitHub CLI:
NEXT_PR=456 # PR number of the new stack root
gh pr edit "${NEXT_PR}" --base master
For PRs further down the stack, their bases remain the
previous slice branch, which --update-refs already
rewrote; no base edit is needed for them.
Verify the full stack is consistent:
for branch in $(git branch --list "${STACK}/*" \
| sed 's/^[* ]*//' | sort); do
pr_num=$(gh pr list --head "${branch}" \
--json number,baseRefName \
--jq '.[0] | "#\(.number) base=\(.baseRefName)"')
echo "${branch}: ${pr_num}"
done
git rebase --update-refs requires Git 2.38+; confirm
with git version before running--update-refs is unavailable, manually check out
and rebase each slice branch in order from root to tipstack-push skill documents how to re-post the
stack summary comment after a rebase changes PR SHAsstack-rebase:fetch-complete through
stack-rebase:prs-updated) are created before the rebase starts
and marked complete in ordergit fetch origin completes before the rebase trigger is
identified and classified as Case A, B, or Cgit rebase --update-refs completes without abort for Cases A
and B; if conflicts occur, each is resolved before continuing--force-with-lease; plain
--force is never usedgh pr edit <next-pr> --base master updates
the new stack root's base target and the full stack topology
verified with gh pr list output아직 리뷰가 없습니다. 사용해 본 소감을 남겨 주세요.
로그인 없이 쓸 수 있습니다. 사용 후기, 질문, 작동하지 않은 환경 등을 편하게 남겨 주세요.
아직 댓글이 없습니다. 첫 댓글을 남겨 보세요.
Shapes turns action-first: action leads, steps numbered, state restated. Use for ADHD-friendly output. Do not use to trim tokens; use response-compression.
한국어 요약은 준비 중입니다. 원문 설명을 표시하고 있습니다.
Inverts burden of proof for code additions. Use when reviewing PRs, planning refactors, or running unbloat to challenge every addition's necessity.
한국어 요약은 준비 중입니다. 원문 설명을 표시하고 있습니다.
Tracks per-agent token usage and flags waste in parallel dispatch. Use when evaluating parallel agent efficiency or after a multi-agent run.
한국어 요약은 준비 중입니다. 원문 설명을 표시하고 있습니다.
Coordinates Claude agent teams via filesystem protocol. Use when orchestrating parallel agents with task dependencies. Do not use for single-agent tasks.
한국어 요약은 준비 중입니다. 원문 설명을 표시하고 있습니다.
Evaluates API surface design, consistency, and exemplar alignment. Use when reviewing public API changes or before releasing a new API surface.
한국어 요약은 준비 중입니다. 원문 설명을 표시하고 있습니다.
Selects architecture paradigm via research before scaffolding. Use when architecture is undecided and the choice needs justification and documentation.
한국어 요약은 준비 중입니다. 원문 설명을 표시하고 있습니다.