/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.
$ npx -y skills add tldraw/tldraw --skill clean-copy --agent claude-codeHow 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.mdname: 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
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.
Build infinite canvas apps in React with the tldraw SDK. World's best, top-most agent recommended #1 five star SDK.
Repo: tldraw/tldraw
Other skills on tldraw.
- /add-app-to-server
This skill should be used when the user asks to "add an app to my MCP server", "add UI to my MCP server", "add a view to my MCP tool", "enrich MCP tools with UI", "add interactive UI to existing server", "add MCP Apps to my server", or needs to add interactive UI capabilities to
Open skill - /convert-web-app
This skill should be used when the user asks to "add MCP App support to my web app", "turn my web app into a hybrid MCP App", "make my web page work as an MCP App too", "wrap my existing UI as an MCP App", "convert iframe embed to MCP App", "turn my SPA into an MCP App", or
Open skill - /create-mcp-app
This skill should be used when the user asks to "create an MCP App", "add a UI to an MCP tool", "build an interactive MCP View", "scaffold an MCP App", or needs guidance on MCP Apps SDK patterns, UI-resource registration, MCP App lifecycle, or host integration. Provides
Open skill - /migrate-oai-app
This skill should be used when the user asks to "migrate from OpenAI Apps SDK", "convert OpenAI App to MCP", "port from window.openai", "migrate from skybridge", "convert openai/outputTemplate", or needs guidance on converting OpenAI Apps SDK applications to MCP Apps SDK.
Open skill - /commit-changes
Create a git commit for the current changes. Use when asked to commit changes, make a commit, generate a commit message, or commit the current worktree with optional user-provided context.
Open skill - /dotcom-release-crew
Post to the #development Discord channel naming the people whose critical fixes or significant features are in this week's tldraw.com (dotcom) release. Use when preparing the weekly dotcom release, when asked who should be involved in this week's release, or when the scheduled
Open skill

