Skip to content
cccskills
FreePublished on GitHub

git-rebase

Rebase the current branch onto a target branch using safety checks and an appropriate rebase strategy. Use when invoked as `$git-rebase` or when the user asks to update/rebase a branch.

The English summary is being prepared. Showing the original description.

See how to install

Files included (2)

  • SKILL.md3.0 KB
  • agents/openai.yaml43 B

SKILL.md (original)

Review the instructions the agent will receive before you install.

git-rebase

Rebase the current branch onto a target branch. If the user provides an argument, use it as the target branch; otherwise use the remote default branch.

Workflow

  1. Gather context:

    subject=$(git branch --show-current)
    target=<argument-or-default-branch>
    git status --porcelain=v1
    
  2. Stop if:

    • subject equals target.
    • The working tree is dirty. Tell the user to commit or stash first.
  3. Fetch remote-tracking refs without touching the local target branch:

    git fetch origin --prune
    target_ref="origin/${target}"
    

    Never use git fetch origin "${target}:${target}" for a branch that may be checked out in another worktree. If a local target branch must be updated, do that only in the worktree that currently has it checked out.

  4. Analyze divergence:

    merge_base=$(git merge-base HEAD "${target_ref}")
    git log --oneline "${merge_base}..HEAD"
    git log --oneline "${merge_base}..${target_ref}"
    git diff --name-only "${merge_base}" HEAD
    git diff --name-only "${merge_base}" "${target_ref}"
    git merge-base --is-ancestor "${merge_base}" "${target_ref}" && echo base_on_target=yes || echo base_on_target=no
    
  5. Choose strategy:

    ConditionStrategy
    Target has at least 20 commits and at least 3 overlapping filescherry-pick
    Merge-base is not on target lineagerebase --onto
    Otherwisesimple rebase

    Show the analysis and selected strategy before proceeding.

  6. Execute:

    • Simple: git rebase "${target_ref}"
    • Onto: git rebase --onto "${target_ref}" "${merge_base}" HEAD
    • Cherry-pick: create <subject>__cherrypick__ from target_ref and cherry-pick subject commits oldest-first.
  7. On conflicts, resolve automatically and continue; rerere makes this recoverable:

    • Apply any recorded rerere resolution.
    • Filtered machine-state files (e.g. .codex/*.config.toml trust hashes): keep ours (git checkout --ours); the clean filter re-normalizes the blob on git add.
    • Dependency/version bumps: keep the higher version, or --skip the commit if the bump is already upstream.
    • Deliberate config updates: take the incoming value (git checkout --theirs).
    • Generated artifacts: regenerate from source.

    Stage each fix, verify no conflict markers remain, then --continue (or --skip if the commit became empty). Pause and ask only for genuine semantic collisions in hand-written source — never guess those. Report how each conflict was resolved.

  8. After success, set tracking and push:

    git branch --set-upstream-to="origin/${subject}" "${subject}"
    git push --force-with-lease -u origin "${subject}:${subject}"
    git branch -vv
    
  9. Report strategy, branch, and tracking.

Reviews

No reviews yet. Tell others what you thought.

Comments

No login needed. Share how it worked for you, ask a question, or note where it did not run.

No comments yet. Be the first to write one.

Comments are published right away. Do not include personal information such as email addresses or phone numbers. Up to 2 URLs.

0 / 1,000 characters

This form is protected by reCAPTCHA, and the Google Privacy Policy and Terms of Service apply.

More skills from this repository

Quick-save the last assistant response as a verbatim note in the 2ndBrain Obsidian vault (~/2ndBrain/quick-notes/<year>/). Use when the user asks to quick-save/save the last response to 2ndBrain, or invokes $2ndbrain or /skill:2ndbrain.

The English summary is being prepared. Showing the original description.

phatblat/dotfiles12Updated Oct 19, 2026

Write commit messages under the agent-commits convention - a Conventional Commits fork with no chore catch-all, intent-only type tokens, facts in trailers, and legally-grounded AI provenance (Assisted-by, never Co-authored-by). Use when composing a commit in a repo whose commitlint.config.js extends agent-commits, when deciding between feat/fix/refactor/perf, or when recording AI participation.

The English summary is being prepared. Showing the original description.

phatblat/dotfiles12Updated Oct 19, 2026

Coordinate multi-agent work through durable artifacts in git instead of chat. Use this whenever a task involves sending a message to another agent, agent mailboxes or handoffs, claiming work from a shared queue, notifying another agent or crew (OpenClaw, Grok Bot, Claude Code, Codex, Gas Town/Gas City workers) that work is ready, or whenever the user mentions the artifact bus, message bus, agent mail, beads mail, doorbells, or pings between agents — even if they don't say "bus" explicitly.

The English summary is being prepared. Showing the original description.

phatblat/dotfiles12Updated Oct 19, 2026

aven

Free

Use aven to find tasks, update status, and leave durable handoff context.

The English summary is being prepared. Showing the original description.

phatblat/dotfiles12Updated Oct 19, 2026

Plan, order and deliver a batch of backlog items (e.g. every High item) in a Conventional Docs repo, one decision, branch, worktree, draft PR, review and merge per item. Use when asked to work through the backlog, implement all items of a priority, or sequence several backlog items end to end.

The English summary is being prepared. Showing the original description.

phatblat/dotfiles12Updated Oct 19, 2026

boris

Free

Codex workflow tips from Boris Cherny (creator of Codex) and the Codex team. Use when: setting up Codex, optimizing workflows, running parallel sessions, configuring AGENTS.md, using skills/commands, subagents, hooks, MCP integrations, or learning best practices. Covers: git worktrees, plan mode, verification, permissions, Slack MCP, BigQuery, prompting tips, plugins, custom agents, sandboxing, keybindings, status lines, output styles, customization, /simplify for code quality, /batch for parallel code migrations, /loop for scheduled tasks, code review agents, /btw for mid-task questions, /effort max reasoning, remote control sessions, voice mode, setup scripts, session naming, /color, PostCompact hook, auto mode, /schedule cloud jobs, iMessage plugin, auto-memory, and auto-dream, mobile app, session teleporting, Cowork Dispatch, Chrome extension, Desktop app, /branch forking, --bare SDK startup, --add-dir multi-repo, --agent custom agents, /voice input.

The English summary is being prepared. Showing the original description.

phatblat/dotfiles12Updated Oct 19, 2026

See all skills by phatblat

Report a problem with this skill