PluginBench
Skill
Official
Fail
Audit score 45

update-screenshots

microsoft/vscode

Download and commit screenshot baselines from VS Code CI runs after visual changes are detected.

What is update-screenshots?

Manages component screenshot baselines for VS Code by downloading the latest CI artifacts and committing them. Use this when the screenshot-test GitHub Action reports differences or when asked to update, accept, or refresh screenshot baselines. Note: baselines are no longer stored in the repository but managed by an external screenshot service.

  • Downloads screenshot artifacts from the latest CI run
  • Commits updated baselines to the repository
  • Integrates with the screenshot-test GitHub Action workflow
  • Handles baseline updates after visual changes are detected
  • Works with the external screenshot service (hediet-screenshots.azurewebsites.net)

How to install update-screenshots

npx skills add https://github.com/microsoft/vscode --skill update-screenshots
Prerequisites
  • GitHub CLI (gh) installed and authenticated
  • Access to the VS Code repository
  • Latest CI run with screenshot artifacts available
Claude Code
Cursor
Windsurf
Cline

How to use update-screenshots

  1. 1.Run the skill when prompted by screenshot test failures or when asked to update baselines
  2. 2.The skill downloads the screenshots artifact from the latest CI run using the run ID
  3. 3.Review the before/after comparisons posted in the PR comment by the CI workflow
  4. 4.The skill commits the updated baselines to the repository
  5. 5.After merge to main, the new screenshots become the baselines automatically

Use cases

Good for
  • Update component screenshot baselines after the screenshot-test GitHub Action reports differences
  • Accept visual changes to component screenshots in a PR
  • Refresh baselines when component rendering changes are intentional
  • Download raw captured screenshots from CI for local comparison
  • Commit new baselines after visual regression review
Who it's for
  • VS Code contributors managing component visual tests
  • Developers reviewing screenshot diffs in CI workflows
  • Teams maintaining component screenshot baselines

update-screenshots FAQ

Where are screenshot baselines stored?

Baselines are no longer stored in the repository. They are managed by an external screenshot service (hediet-screenshots.azurewebsites.net) and keyed by commit SHA.

Do I need to manually update baseline images?

No. After merge to main, the screenshots from that commit become the new baselines automatically. The CI workflow handles this.

How do I see visual diffs when screenshots change?

The screenshot-test GitHub Action posts a PR comment with before/after comparisons. You can also download the screenshots artifact from the CI run for raw images.

How do I download screenshots locally for investigation?

Use `gh run download <run-id> --name screenshots --dir .tmp/screenshots` to download the full set of captured screenshots from a CI run.

Is Git LFS still used for screenshots?

No. Git LFS is no longer used for screenshot storage. The external screenshot service handles image management.

Full instructions (SKILL.md)

Source of truth, from microsoft/vscode.


name: update-screenshots description: Download screenshot baselines from the latest CI run and commit them. Use when asked to update, accept, or refresh component screenshot baselines from CI, or after the screenshot-test GitHub Action reports differences. This skill should be run as a subagent.

Update Component Screenshots from CI

Screenshot baselines are no longer stored in the repository. They are managed by an external screenshot service (hediet-screenshots.azurewebsites.net). The CI workflow uploads screenshots to this service and diffs them automatically.

When the Checking Component Screenshots GitHub Action detects changes, it posts a PR comment with before/after comparisons. No manual baseline updates are needed — the screenshots on the main branch commit become the new baselines automatically after merge.

What Changed

  • Baseline images were removed from test/componentFixtures/.screenshots/baseline/.
  • Git LFS is no longer used for screenshot storage.
  • The screenshot service stores images keyed by commit SHA and handles diffing.

If Screenshots Need Investigation

  1. Check the PR comment posted by the CI workflow for visual diffs.
  2. Download the screenshots artifact from the CI run for the raw captured images:
gh run download <run-id> --name screenshots --dir .tmp/screenshots
  1. Compare locally if needed. The artifact contains the full set of captured screenshots.