一键导入
git-sync-base
Ensure the current branch is cleanly rebased onto the remote base branch so that `origin/{base}..HEAD` only shows this branch's commits.
用 Codex 或 Claude 帮你安装 复制这段 Prompt,粘贴到 Codex、Claude 或其他助手里,让它检查 Skill 页面并帮你完成安装。
菜单
Ensure the current branch is cleanly rebased onto the remote base branch so that `origin/{base}..HEAD` only shows this branch's commits.
用 Codex 或 Claude 帮你安装 复制这段 Prompt,粘贴到 Codex、Claude 或其他助手里,让它检查 Skill 页面并帮你完成安装。
基于 SOC 职业分类
Fully autonomous PR polish loop. Runs N rounds of local bramble review (codex + cursor, optionally + gemini), folds in any existing PR comments and CI failures as round-1 input, fixes findings locally, pushes once at the end.
Compare bramble code-review output across reviewer configs (cursor with composer-2, codex with gpt-5.4-mini, gemini with gemini-3.1-flash-lite-preview). Runs each config three times against the same branch — turn 1 fresh, turn 2 resumed with default follow-up prompt, turn 3 resumed with fresh prompt — to also characterize backend resume behavior, then compares findings side-by-side and logs results.
Build and use a ground-truth eval dataset for bramble code-review. Two modes. COLLECTION scans past /pr-polish'd PRs and judges each into a frozen ground truth — multiple rounds of bramble re-review + an independent judge sub-agent per round, until the judge's full-diff bug census saturates. REPLAY runs a reviewer-under-test and scores it mechanically against that frozen ground truth — precision/recall/F1, no sub-agents, cheap and repeatable.
One-shot review of an external GitHub PR. Checks out the PR into an isolated worktree (or temp clone), runs `bramble code-review` against the diff, and produces a calibrated verdict — APPROVE unless there is a blocking correctness issue, with optional improvements listed separately. Read-only on the remote PR, never pushes. User-invoked only via `/external-pr-review`.
Iterative review of a markdown design document. Reads the doc, proposes a tailored grilling rubric, runs N rounds of codex+cursor (optionally +gemini) against the doc with that rubric, edits between rounds, commits locally each round. Never pushes.
"Fully autonomous eval loop for the delegator agent. Runs real-mode tests, analyzes output for usability gaps, spawns fix agents, rebuilds, and re-tests until clean.
| name | git:sync-base |
| description | Ensure the current branch is cleanly rebased onto the remote base branch so that `origin/{base}..HEAD` only shows this branch's commits. |
| argument-hint | |
| disable-model-invocation | false |
python3 .claude/skills/git:sync-base/git-sync.py --verbose
Override base branch with --base <branch> if needed. Auto-detects via origin/HEAD. Pass --no-push to skip the post-rebase force-push. Pass --backup to create a timestamped backup branch before rebasing.
The script:
$GIT_DIR/sync-base.lock) so two runs in the same worktree can't race. Does NOT block other worktrees sharing the bare repo.origin/<base> and origin/<current-branch> (narrow refspec, not git fetch origin).origin/<base> to a SHA once and rebases onto that SHA. Other worktrees advancing origin/<base> mid-run cannot affect us. Includes a cherry-pick fallback for branches containing duplicate copies of base commits.--force-with-lease=refs/heads/<branch>:<fetched-remote-sha> plus --force-if-includes) using the SHA fetched in step 3.The rebase is paused and the output includes a conflict report listing each file and its type (deleted_by_us, deleted_by_them, both_modified, both_added, both_deleted).
Resolve each conflicted file based on its type:
git rm <file> or git checkout --theirs <file> && git add <file>)<<<<<<< markers, git add <file>git add <file>Then continue:
python3 .claude/skills/git:sync-base/git-sync.py --verbose --continue
Repeat until the script exits 0. --continue uses the same pinned target SHA saved at the start of the original run, and will also force-push on success (unless --no-push is passed).
A non-conflict failure. Common causes and fixes:
$(git rev-parse --git-dir)/sync-base.lock.git log HEAD..origin/<branch> before overriding. The rebase itself succeeded; only the push step failed, so you can re-run (the rebase will be a no-op and the push will retry with a fresh lease).