with one click
rebase
Rebase the current branch.
Install with Codex or Claude Copy this prompt, paste it into Codex, Claude, or another assistant, and let it review the skill page and install it for you.
Menu
Rebase the current branch.
Install with Codex or Claude Copy this prompt, paste it into Codex, Claude, or another assistant, and let it review the skill page and install it for you.
Based on SOC occupation classification
Autonomously create a plan, consult Gemini and Codex for improvements, apply feedback, and implement. No user interaction - uses best judgment throughout.
Turn an idea into a concrete design through structured dialogue.
Gemini and Codex collaboratively brainstorm solutions, building on each other's ideas across rounds. Agent synthesizes the best ideas into a plan.
Claude brainstorms with an opponent LLM (Gemini or Codex) in alternating turns, building on each other's ideas. Synthesizes the best ideas into a plan.
Commit the staged changes. If there are no staged changes, stage all changes first.
Consult Gemini and Codex for high-level planning, synthesize into a detailed plan, implement, then get final review. No user interaction.
| name | rebase |
| description | Rebase the current branch. |
| allowed-tools | Bash |
| disable-model-invocation | true |
Rebase the current branch.
Arguments: $ARGUMENTS
Behavior:
Steps:
git status --porcelaingit stash push -m "rebase-temp"git fetch <remote>git rebase <target> (or git rebase --onto if stale commits found)git config branch.<branch>.workmux-base main
git stash popDetecting already-merged base branches:
When a branch was based on another branch that was squash-merged into the
target, the old commits still appear in the branch history but their changes are
already in the target. A plain git rebase will try to replay them all, causing
repeated conflicts that need to be skipped one by one.
Before rebasing, detect this situation and use --onto to skip stale commits:
base=$(git config --get branch.$(git branch --show-current).workmux-base)
analytics-app-detail but we're rebasing onto origin/main):
git merge-base --is-ancestor <base> <target>
fork_point=$(git merge-base <base> HEAD)
# The tip of the old base branch in our history
last_stale=$(git rev-list --ancestry-path $fork_point..HEAD \
--not <target> | tail -1)^
Or more simply: the merge-base between the base branch tip and HEAD gives
the fork point, and all commits between that and the first commit unique to
our branch are stale. Use:
git rebase --onto <target> <base> HEAD
This replays only commits after the base branch tip onto the target.git diff --quiet. Find the last stale commit and use
git rebase --onto <target> <last-stale-commit>.git rebase <target>.Handling conflicts:
git log -p -n 3 <target> -- <file> to see
recent changes to that file in the target branchgit rebase --continue