Skip to content
Development
Skill

/clean-copy

Reimplement the current branch on a new branch with a clean, narrative-quality git commit history. Use when asked to make a clean copy branch, clean up commit history by replaying work, or rebuild a branch as reviewable commits.

From plugin
tldraw
50k27 skills
Install
$ npx -y skills add tldraw/tldraw --skill clean-copy --agent claude-code

How it fires

How this skill gets triggered: by you, by Claude, or both.

  • Fires itselfAuto-invocation. Claude auto-loads it when your prompt matches the work.Auto-invocation is when the right skill fires by itself at the right moment, driven by a FLOW.md router and a hook, instead of you invoking it by name. It is the difference between a skill being installed and a skill actually getting used.Read the full definition →
  • You can call itInvoke it directly when you want it.
  • Slash command/clean-copy

Context preview

The summary Claude sees to decide when to auto-load this skill.

Reimplement the current branch on a new branch with a clean, narrative-quality git commit history. Use when asked to make a clean copy branch, clean up commit history by replaying work, or rebuild a branch as reviewable commits.

SKILL.md

clean-copy.SKILL.md
name: clean-copy
description: Reimplement the current branch on a new branch with a clean, narrative-quality git commit history. Use when asked to make a clean copy branch, clean up commit history by replaying work, or rebuild a branch as reviewable commits.

Clean copy

Reimplement the current branch on a new branch with a clean, narrative-quality commit history suitable for reviewer comprehension.

Workflow

1. Gather context:

  • Source branch: `git branch --show-current`.
  • Working tree: `git status --short`.
  • Commits since main: `git log main..HEAD --oneline`.
  • Diff summary: `git diff main...HEAD --stat`.

2. Validate the source branch:

  • Ensure there are no uncommitted changes or merge conflicts.
  • Confirm the source branch is up to date with `main`.

3. Choose the new branch name:

  • Use the user's requested name when provided.
  • Otherwise use `<source-branch>-clean`.

4. Analyze the diff:

  • Study all changes between the source branch and `main`.
  • Understand the final intended state before recreating it.

5. Create the clean branch from `main`. 6. Plan the commit storyline:

  • Break the implementation into self-contained logical steps.
  • Each step should read like a stage of development in a tutorial.

7. Reimplement the work:

  • Recreate the final changes step by step.
  • Commit after each coherent idea.
  • Use clear commit subjects and descriptions.
  • Use `git commit --no-verify` for intermediate commits so hooks do not block temporarily incomplete states.

8. Verify correctness:

  • Confirm the final clean branch state exactly matches the original source branch.
  • Run the final commit without `--no-verify` so normal checks run.

9. Open a pull request using the `pr` skill.

  • Include a link to the original branch in the PR description.

Rules

  • Never add yourself or an AI tool as an author, contributor, or co-author.
  • Never include AI attribution in commits or PR content.
  • The final clean branch must be identical to the source branch.
  • Do not force push unless the user explicitly asks for it.
Read more
Ships withtldraw

Build infinite canvas apps in React with the tldraw SDK. World's best, top-most agent recommended #1 five star SDK.

Get the whole plugin

Other skills on tldraw.