Refactor high-complexity React components in Dify frontend. Use when `pnpm analyze-component...
npx skills add civitai/civitai --skill "worktree"
Install specific skill from multi-skill repository
# Description
Create and manage git worktrees with automatic environment setup. Creates worktrees at ../model-share-<branch>, copies .env, and runs pnpm install.
# SKILL.md
name: worktree
description: Create and manage git worktrees with automatic environment setup. Creates worktrees at ../model-share-
Worktree Setup Skill
Creates git worktrees with all necessary setup for running the dev server. Handles the tedious setup steps so you can start working immediately.
Quick Start
# Create a worktree for a new branch
node .claude/skills/worktree/cli.mjs create feature/my-feature
# Create a worktree for an existing branch
node .claude/skills/worktree/cli.mjs create existing-branch
# List all worktrees
node .claude/skills/worktree/cli.mjs list
# Remove a worktree
node .claude/skills/worktree/cli.mjs remove feature/my-feature
What It Does
When you create a worktree, the skill:
- Creates the git worktree at
../model-share-<branch-name>(slashes in branch names are replaced with dashes) - Initializes git submodules (
git submodule update --init --recursive) - required forevent-engine-common - Copies
.envfrom the main worktree to the new worktree - Runs
pnpm installto set up dependencies (leverages pnpm's content-addressable store for fast installs)
CLI Commands
| Command | Description |
|---|---|
create <branch> |
Create a new worktree for the specified branch |
list |
List all worktrees |
remove <branch> |
Remove a worktree (deletes directory and prunes git worktree) |
Examples
# Create worktree for a new feature
node .claude/skills/worktree/cli.mjs create feature/user-auth
# Creates: ../model-share-feature-user-auth
# Create worktree for a bugfix
node .claude/skills/worktree/cli.mjs create fix/login-issue
# Creates: ../model-share-fix-login-issue
# Remove when done
node .claude/skills/worktree/cli.mjs remove fix/login-issue
Merging a Worktree to Main
When the user asks to "merge the worktree" or "merge to main", follow this workflow:
-
Commit changes in the worktree:
bash cd /path/to/worktree git add <files> git commit -m "feat/fix: description" -
Update and merge to main:
bash cd /path/to/main-worktree git fetch origin && git checkout main && git pull origin main git merge <branch-name> --no-edit git push origin main -
Clean up the worktree and branch:
```bash
# Remove the worktree directory (use --force if needed)
rm -rf /path/to/worktree
# Delete the local branch
git branch -d
# Optionally delete remote branch
git push origin --delete
```
Example
# 1. Commit in worktree
cd ../model-share-fix-my-bug
git add src/file.ts
git commit -m "fix: resolve the bug"
# 2. Merge to main
cd ../model-share
git fetch origin && git checkout main && git pull origin main
git merge fix/my-bug --no-edit
git push origin main
# 3. Clean up
rm -rf ../model-share-fix-my-bug
git branch -d fix/my-bug
Notes
- Branch names with slashes are converted to dashes in the directory name
- The
.envfile is copied (not symlinked) so you can customize environment per worktree if needed - Uses pnpm's content-addressable store, so subsequent worktree installs are fast
- After creation, use
/dev-serverskill to start the dev server in the new worktree
# Supported AI Coding Agents
This skill is compatible with the SKILL.md standard and works with all major AI coding agents:
Learn more about the SKILL.md standard and how to use these skills with your preferred AI coding agent.