comparing-branches-visually — скилл для Claude Code: визуальный дифф
Разворачивает две ветки в отдельных worktree, поднимает оба дев-сервера на разных портах и делает скриншоты одних и тех же страниц для сравнения.
npx skills add spencerpauly/awesome-cursor-skills --skill comparing-branches-visually -a claude-codeЧто делает comparing-branches-visually
Скилл нужен, когда правки в UI надо показать до и после. Он создаёт git worktree для базовой ветки, запускает её дев-сервер на другом порту, а текущая ветка остаётся на своём. Дальше агент находит изменённые файлы через git diff main --name-only, отбирает из них компоненты и стили и сопоставляет файлы с маршрутами: app/dashboard/page.tsx превращается в /dashboard.
По каждой затронутой странице агент открывает адрес базовой ветки, снимает скриншот как «before», затем переходит на порт текущей ветки и снимает «after». В отчёте рядом оказываются обе картинки и список изменений — например, уменьшенная высота шапки или переехавшие ссылки навигации. В конце worktree удаляется командой git worktree remove.
Сравнивать стоит при одинаковом размере вьюпорта: скилл советует начать с 1280×800, а для мобильных правок добавить 375px. Если приложение закрыто авторизацией, войти придётся на обоих портах — иначе скриншоты выйдут со страницей логина. Порт 3001 для базовой ветки задаётся вручную, и если он занят, шаг с сервером сорвётся.
Какие задачи решает
- показать до и после правки в интерфейсе
- сравнить вёрстку двух веток без ручного переключения
- собрать скриншоты изменённых страниц для описания пул-реквеста
- проверить, не поехала ли вёрстка на мобильной ширине
- найти страницы, которых коснулись изменения в компонентах
Примеры запросов агенту
- Сравни визуально ветку feature/redesign-header с main и покажи скриншоты до и после
- Подними обе ветки в worktree и сними скриншоты /dashboard и /settings
- Сделай визуальный дифф изменений и добавь его в описание PR
Как установить comparing-branches-visually
1Через Skills CLI (Vercel)
npx skills add spencerpauly/awesome-cursor-skills --skill comparing-branches-visually -a claude-code2Вручную: положить файлы
~/.claude/skills/comparing-branches-visually/SKILL.mdПапка скилла целиком; для одного проекта — .claude/skills/comparing-branches-visually/
1Через Skills CLI (Vercel)
npx skills add spencerpauly/awesome-cursor-skills --skill comparing-branches-visually -a codex2Вручную: положить файлы
.agents/skills/comparing-branches-visually/SKILL.mdДля всех проектов — ~/.agents/skills/
1Через Skills CLI (Vercel)
npx skills add spencerpauly/awesome-cursor-skills --skill comparing-branches-visually -a cursor2Вручную: положить файлы
.cursor/skills/comparing-branches-visually/SKILL.mdCursor читает и .agents/skills/, и .claude/skills/
1GitHub CLI
gh skill install spencerpauly/awesome-cursor-skills comparing-branches-visually2Вручную: положить файлы
.github/skills/comparing-branches-visually/SKILL.md1Через Skills CLI (Vercel)
npx skills add spencerpauly/awesome-cursor-skills --skill comparing-branches-visually -a gemini-cli2Командой платформы
gemini skills install https://github.com/spencerpauly/awesome-cursor-skills --path resources/comparing-branches-visuallyВручную: положить файлы
.devin/skills/comparing-branches-visually/SKILL.mdСтарый путь .windsurf/skills/ тоже читается
Через Skills CLI (Vercel)
npx skills add spencerpauly/awesome-cursor-skills --skill comparing-branches-visually -a opencodeClaude.ai
Упакуйте папку в zip и загрузите в Settings → Capabilities → Skills
По шагам, с командами для каждой платформы: Как установить скилл в Claude Code: пять способов
Вопросы о comparing-branches-visually
Как установить comparing-branches-visually в Claude?
Выполните npx skills add spencerpauly/awesome-cursor-skills --skill comparing-branches-visually -a claude-code. После этого файл скилла окажется в ~/.claude/skills/comparing-branches-visually/SKILL.md.
Что делает comparing-branches-visually?
Разворачивает базовую и текущую ветки одновременно, поднимает дев-серверы на разных портах, снимает скриншоты одних и тех же страниц и выдаёт отчёт с парами «before» и «after».
Что нужно, чтобы скилл сработал?
Свободный порт для дев-сервера базовой ветки и вход в приложение на обоих портах, если оно требует авторизации. Скриншоты снимаются через browser_navigate и browser_take_screenshot.
Исходный текст
SKILL.md · CC0-1.0
--- name: comparing-branches-visually description: Check out two branches in separate worktrees, start both dev servers on different ports, screenshot the same pages, and produce a visual diff. user-invocable: true --- # Comparing Branches Visually Create a visual before/after comparison of UI changes between two branches. ## Workflow ### 1. Set Up Two Worktrees Use `best-of-n-runner` subagents or git worktrees to run both branches simultaneously: ```bash # Create a worktree for the base branch git worktree add /tmp/branch-compare-base main # The current working directory has the feature branch ``` ### 2. Start Both Servers Start the base branch server on a different port: ```bash # In the base worktree cd /tmp/branch-compare-base && PORT=3001 npm run dev # Current branch is already on the default port (3000) ``` ### 3. Identify Pages to Compare Determine which pages are affected by the changes: ```bash git diff main --name-only | grep -E '\.(tsx?|jsx?|vue|svelte|css)' ``` Map changed files to their routes (e.g. `app/dashboard/page.tsx` → `/dashboard`). ### 4. Screenshot Both Versions For each affected page: 1. `browser_navigate` to `http://localhost:3001/<page>` (base branch) 2. `browser_take_screenshot` → save as "before" 3. `browser_navigate` to `http://localhost:3000/<page>` (feature branch) 4. `browser_take_screenshot` → save as "after" ### 5. Report Present the comparison: ``` Visual Diff: feature/redesign-header vs main /dashboard: Before: [screenshot from main] After: [screenshot from feature branch] Changes: Header height reduced, nav links repositioned, new avatar dropdown /settings: Before: [screenshot] After: [screenshot] Changes: No visual differences detected ``` ### 6. Clean Up ```bash # Stop the base branch server # Remove the worktree git worktree remove /tmp/branch-compare-base ``` ## Tips - Test at a consistent viewport size (1280×800 is a good default) - For mobile-first changes, also compare at 375px width - If the app requires auth, log in on both ports first - This pairs well with `screenshotting-changelog` for PR descriptions
© spencerpauly · CC0-1.0 · spencerpauly/awesome-cursor-skills