Skip to content
cccskills
FreePublished on GitHub

workspace-sync

Deterministic synchronization of trunk, PR evaluation worktrees, and drift reporting in Deliberate Lab's bare repository workspace.

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

PAIR-code/deliberate-lab97 stars(GitHub 97 + cccskills 0)
Works withGitHub

Run score Not tested

See how to install

Files included (2)

  • SKILL.md3.6 KB
  • scripts/workspace-sync.sh12.2 KB

SKILL.md (original)

Review the instructions the agent will receive before you install.

Workspace Sync

Synchronize all branches and worktrees in Deliberate Lab's bare repository layout against upstream and origin.

This skill replaces manual, multi-step git operations with a single deterministic automation script that fast-forwards trunk, mirrors PR evaluation worktrees, identifies merged/closed PRs for cleanup, and reports feature branch drift.

When to use

Invoke this skill when asked to:

  • "Sync workspace"
  • "Update all PR worktrees"
  • "Pull latest changes"
  • "Catch up with upstream"
  • "Check branch drift"
  • "Sync my fork"

Procedure

1. Run the Synchronization Script

From any worktree directory or the parent repository container:

./.agents/skills/workspace-sync/scripts/workspace-sync.sh

To preview changes without altering any git refs or worktree checkouts:

./.agents/skills/workspace-sync/scripts/workspace-sync.sh --dry-run

To only sync trunk and feature branch status without touching PR worktrees:

./.agents/skills/workspace-sync/scripts/workspace-sync.sh --skip-pr-mirror

The script visibly echoes the underlying git commands by default (prefixed with [dry-run] during dry-run mode) and formats all worktree targets with actionable relative paths. If the sync report exceeds 7 KB, it automatically saves to a temporary file via mktemp and provides the path for lossless inspection via view_file (ADR 0003).

2. Understanding the Execution Phases

The script executes four deterministic stages:

  1. Remote Pruning: Runs git fetch --all --prune to refresh all remotes and clean up deleted remote-tracking refs.
  2. Trunk Synchronization (main):
    • Ensures main/ is clean before touching it.
    • Fast-forwards main to upstream/main (git merge --ff-only upstream/main).
    • Pushes main to origin/main to keep your personal fork in sync.
  3. PR Worktree Mirroring (pr-<number>):
    • Finds all sibling worktrees matching pr-[0-9]*.
    • Safety First: Any worktree with uncommitted changes (git status --porcelain) is skipped to prevent data loss.
    • Lifecycle Awareness & Automated Cleanup: Queries GitHub CLI (gh pr view) to see if the PR is MERGED or CLOSED. If so and the worktree is clean, automatically removes the worktree (git worktree remove) and deletes the local branch (git branch -D), keeping the workspace free of zombie checkouts.
    • Exact Mirroring: For open PRs, fetches upstream pull/<number>/head and resets the local branch to FETCH_HEAD.
    • Dependency Notice: If package.json or package-lock.json changed during the update, reminds you to run npm ci in that worktree.
  4. Feature Branch Drift Awareness:
    • Inspects active development branches (e.g. <issue>-<slug>).
    • Reports commit counts ahead and behind main.
    • If a feature branch is behind, suggests running git rebase main inside that worktree when the author is ready.

Safety Rules

  • Never rebase or merge PR evaluation worktrees: External PRs must remain exact mirrors of their upstream head.
  • Never clobber dirty worktrees: Any worktree with unstaged or uncommitted changes is protected and skipped.
  • Do not auto-rebase active feature branches: Feature branches may be in the middle of active development or testing. The script only reports divergence; rebasing is left to the developer or agent at an intentional time.

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

Set up a git worktree to run and evaluate an upstream Pull Request locally in a flat worktree bare clone repository layout.

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

PAIR-code/deliberate-lab97Updated Oct 25, 2026

gh

Free

Run GitHub CLI commands and inspect GitHub Issues and Pull Requests cleanly without PTY Glamour terminal truncation or comment-stripping traps.

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

PAIR-code/deliberate-lab97Updated Oct 25, 2026

Evaluate Pull Requests for participant or experimenter UX changes, determine runtime behavioral impact, audit and synthesize Deliberate Lab's 7-part manual experiment test plans, and interactively co-author verification steps.

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

PAIR-code/deliberate-lab97Updated Oct 25, 2026

Reflect on pairing sessions from the AI perspective using the FAR framework (Friction, Ambiguity, Repetition), present observations conversationally, and anchor generalizable improvements as GitHub issues or comments.

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

PAIR-code/deliberate-lab97Updated Oct 25, 2026

Inspect the local Deliberate Lab workspace environment, Node.js version, bare repository worktrees, remotes, git status, and toolchain readiness.

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

PAIR-code/deliberate-lab97Updated Oct 25, 2026

See all skills by PAIR-code

Report a problem with this skill