Skip to main content
skill CX Codex

screenshotting-changelog — Claude Code skill: before/after PR shots

Builds a visual changelog for a pull request: captures pages before and after your UI edits and drops the image pairs into the PR body.

Install into Claude Code · Skills CLI (Vercel) All methods and platforms ↓
npx skills add spencerpauly/awesome-cursor-skills --skill screenshotting-changelog -a claude-code
Open on GitHub

What screenshotting-changelog does

The skill kicks in when you are preparing a pull request that touches the interface. The agent opens the affected pages in Cursor's built-in browser, takes full-page screenshots and saves them to the workspace. The before state comes first: stash your work with git stash or check out the base branch, start the dev server, then call browser_navigate and browser_take_screenshot with fullPage: true.

Then the changes come back (git stash pop or a switch to the feature branch), the server reloads, and the same pages are captured again as after-homepage.png. Those pairs turn into a markdown block with before and after images plus a short list of what changed, pasted straight into the PR description.

There are variations for trickier cases. browser_resize gives you a comparison at mobile, tablet and desktop widths, and you can capture dark mode, hover states, open modals and forms with errors. Screenshots land in the workspace, so you can reference them in markdown or upload them to the PR. Backend-only changes are a waste of time here — there is nothing for a reviewer to look at.

What it helps with

  • show a reviewer how a page looked before and after the edits
  • assemble a visual changelog for a UI pull request
  • compare layout at mobile, tablet and desktop widths
  • capture hover states, modals and forms with errors
  • screenshot a single component from a Storybook URL

Example prompts for the agent

  • Take before and after screenshots of the pages I changed and build a visual changelog into the PR description
  • Capture the homepage at 375, 768 and 1280 widths and show me the difference
  • Screenshot the modal and the error form in dark mode, before and after

How to install screenshotting-changelog

1Skills CLI (Vercel)

npx skills add spencerpauly/awesome-cursor-skills --skill screenshotting-changelog -a claude-code

2Manually: put the files in place

~/.claude/skills/screenshotting-changelog/SKILL.md

Copy the whole skill folder; for one project use .claude/skills/screenshotting-changelog/

Step by step, with commands for each platform: How to install skills in Claude Code: five ways

Questions about screenshotting-changelog

How do I install screenshotting-changelog in Claude?

Run npx skills add spencerpauly/awesome-cursor-skills --skill screenshotting-changelog -a claude-code. The skill file then lives at ~/.claude/skills/screenshotting-changelog/SKILL.md.

What does screenshotting-changelog do?

It captures the affected pages before and after your edits with the built-in browser, turns the image pairs into a markdown changelog and pastes it into the pull request description.

When should I skip this skill?

On backend-only changes — a reviewer has nothing visual to compare. It is meant for pull requests with UI edits.

Source text

SKILL.md · CC0-1.0
---
name: screenshotting-changelog
description: Generate a visual changelog or PR description by taking before/after screenshots of UI changes using Cursor's built-in browser. Use when preparing a PR with visual changes.
---

# Screenshot Changelog

Use this skill when preparing a pull request that includes visual/UI changes. Capture before and after screenshots to create a visual changelog that reviewers can quickly scan.

## Steps

1. **Capture the "before" state** — before making changes (or on the base branch), start the dev server and screenshot the affected pages:

   ```bash
   git stash  # or checkout the base branch
   ```

   Start the dev server, then:

   ```
   Tool: browser_navigate
   Arguments: { "url": "http://localhost:3000/affected-page", "take_screenshot_afterwards": true }
   ```

   ```
   Tool: browser_take_screenshot
   Arguments: { "fullPage": true, "filename": "before-homepage.png" }
   ```

   Repeat for each affected page or component state.

2. **Switch to the feature branch** — apply your changes:

   ```bash
   git stash pop  # or checkout the feature branch
   ```

   Wait for the dev server to hot-reload (or restart it).

3. **Capture the "after" state** — screenshot the same pages:

   ```
   Tool: browser_take_screenshot
   Arguments: { "fullPage": true, "filename": "after-homepage.png" }
   ```

4. **Generate the changelog** — create a summary describing what changed visually:

   ```markdown
   ## Visual Changes

   ### Homepage
   **Before:**
   ![before](before-homepage.png)

   **After:**
   ![after](after-homepage.png)

   Changes: Updated hero section layout, new CTA button color, added testimonials section.
   ```

5. **Include in the PR description** — paste the visual changelog into the PR body so reviewers can see the changes at a glance without running the app locally.

## Variations

- **Responsive comparison**: use `browser_resize` to capture screenshots at mobile (375px), tablet (768px), and desktop (1280px) widths.
- **Dark mode comparison**: if the app has a dark mode toggle, capture both themes.
- **Interactive states**: capture hover states, open modals, filled forms, and error states.

## Notes

- Screenshots are saved to the workspace. You can reference them in markdown or upload them to the PR.
- For component-level screenshots, navigate to a Storybook URL or a specific component route.
- This is most valuable for design-heavy PRs — skip it for backend-only changes.

© spencerpauly · CC0-1.0 · spencerpauly/awesome-cursor-skills

Similar skills

Everything for Frontend and UI →

From the same set59

recording-browser-flow-as-test Walks through browser interactions step by step via MCP and outputs a clean Playwright test based on accessibility tree selectors. CX Codex +1 406installs verifying-markdown-formatting Walks a Markdown file through a formatting checklist and fixes what it finds: headings, lists, links, code blocks, spacing. Useful before committing a README or docs. CX Codex +1 404installs exporting-to-png Teaches the agent to render code snippets, Mermaid diagrams, terminal logs, and SVG files into PNG images via CLI utilities or headless browsers. CX Codex +1 401installs parallel-ci-triage Splits failed GitHub Actions jobs across parallel subagents, each fixing its own slice. Useful when CI breaks in several places at once. CX Codex +1 403installs updating-npm-package Updates npm dependencies safely by checking npmjs.com and adapting to the version jump. It runs tests on minor updates and finds migration guides for major ones. CX Codex +1 398installs react-native-patterns This skill guides an agent building React Native and Expo apps, covering navigation, platform-specific code, styling, lists, and native modules. CX Codex +1 399installs adding-docker This skill writes a Dockerfile, docker-compose setup and .dockerignore for your app. Useful when you want a container without hand-writing the configs. CX Codex +1 398installs fixing-broken-links This skill scans project files for dead URLs and broken local paths, verifies responses with curl, and repairs or removes missing links. CX Codex +1 393installs

Project sponsors

Companies that keep this analytics open
Gold sponsor

Impressions, clicks and code copies — open statistics. We keep the numbers public for the same reason NeBlask itself is public. Become a sponsor