Agent skill

Visual Regression

by qf-studio in qf-studio/navigator

Setup visual regression testing with Storybook stories, configuration, and CI/CD workflows.

MITAuto-check: notesTesting & QA

Install Visual Regression

skills CLI
$ npx skills add qf-studio/navigator --skill visual-regression -a claude-code

Project install by default; add -g for ~/.claude/skills/.

GitHub CLI
$ gh skill install qf-studio/navigator visual-regression --agent claude-code

Project scope by default; add --scope user for a personal install. Needs GitHub CLI 2.90.0 or later (public preview).

Manual copy
$ git clone --depth 1 https://github.com/qf-studio/navigator.git skills-src && mkdir -p .claude/skills && cp -r skills-src/skills/visual-regression .claude/skills/visual-regression && rm -rf skills-src

Use ~/.claude/skills/ instead of .claude/skills for a personal install. The folder must contain SKILL.md.

Claude Code skills documentation · loads skills from .claude/skills/

Facts

Skill name
visual-regression
GitHub stars
354
Token cost
~3.3k tokens
SKILL.md length
583 words
Files
13
Skills in repo
32
Repo updated
First seen
Licence
MIT

At a glance

Setup visual regression testing with Storybook stories, configuration, and CI/CD workflows.

  • Works in 5 steps: Validate Project Setup → Generate Storybook Stories → Generate Configuration Files → …
  • Says set up visual regression
  • SKILL.md covers Skill Purpose, What This Skill Does, Workflow and Predefined Functions Reference, plus 7 more sections
  • Runs Python scripts from its folder; calls npm and npx; reaches chromatic.com; needs CHROMATIC_PROJECT_TOKEN

What it does

Visual Regression is an agent skill from qf-studio/navigator. Setup visual regression testing with Storybook stories, configuration, and CI/CD workflows. Supports Chromatic, Percy, BackstopJS. Auto-invoke when user says "set up visual regression", "add Chromatic tests", "add screenshot testing", or "set up Percy".

Its SKILL.md is about 3.3k tokens, which your agent loads only when the skill is triggered. The skill folder holds 15 other files (for example `examples/design-system-vr.md`, `examples/existing-storybook-vr.md` and `examples/simple-component-vr.md`).

It sits in Testing & QA, covering Visual regression testing and CI/CD. It works with Storybook and Vue.js. The repository describes itself as: Finish What You Start — Context engineering for Claude Code. Sessions last 20+ exchanges instead of crashing at 7. The licence is MIT.

When your agent uses it

  • Says set up visual regression
  • Add Chromatic tests
  • Add screenshot testing

Example prompts

  • “set up visual regression”
  • “add Chromatic tests”
  • “add screenshot testing”
  • “/visual-regression”

Requirements

  • Python 3
  • Node.js
  • A credential in CHROMATIC_PROJECT_TOKEN
  • Pre-approved tools (allowed-tools): Read, Write, Bash, Glob

Workflow steps

5 steps, taken from the step headings in SKILL.md.

  1. Validate Project Setup
  2. Generate Storybook Stories
  3. Generate Configuration Files
  4. Generate CI/CD Workflow
  5. Provide Setup Instructions

What it can do on your machine

Read from SKILL.md and the folder at commit a6f3006. It shows what the files ask for, not the result of running them.

  • Tool permissions

    Pre-approves these tools, so the agent can use them without asking each time:

    • Read
    • Write
    • Bash
    • Glob

    From allowed-tools in the SKILL.md frontmatter.

  • Runs code

    Ships script files (Python), which the agent can run.

    Shell commands in SKILL.md call:

    • npm
    • npx

    From the folder's file list and the shell code blocks in SKILL.md.

  • Network

    Hosts in commands or code, which the agent is likely to contact:

    • chromatic.com

    From URLs in SKILL.md, links to its own repository left out.

  • Credentials

    Names these keys or tokens, usually read from environment variables:

    • CHROMATIC_PROJECT_TOKEN

    From names ending in _API_KEY, _TOKEN, _SECRET, _KEY or _PASSWORD in SKILL.md.

Context cost

Visual Regression loads about 3.3k tokens when it runs. Until then it costs about 68 tokens; SKILL.md has 583 words of instructions outside code blocks.

Always · name and description, kept in context so the agent knows when to use it
~68
When it runs · the whole SKILL.md, loaded when a task matches
~3.3k

Estimates: characters ÷ 4, the usual rule of thumb; real counts depend on the model's tokenizer. Scripts and assets cost tokens only if the agent reads them.

Safety

Auto-check: notes

The automated check noted patterns worth knowing about, such as sudo or a known installer.

  • NotePre-approves every shell command (allowed-tools: Bash)SKILL.md
    allowed-tools: Read, Write, Bash, Glob

Automated static check — not a guarantee. Review scripts before installing. It scans the text of SKILL.md for risky patterns (piping downloads into a shell, reading credential files, hidden Unicode, destructive commands); files beside SKILL.md are not scanned.

SKILL.md

The full file from qf-studio/navigator at commit a6f3006, republished under its MIT licence (© qf-studio). 583 words, ~3,280 tokens.

Download SKILL.mdSave it as .claude/skills/visual-regression/SKILL.md (or your agent's skills folder). This skill also uses 12 other files; get the full folder from GitHub.
name
visual-regression
description
Setup visual regression testing with Storybook stories, configuration, and CI/CD workflows. Supports Chromatic, Percy, BackstopJS. Auto-invoke when user says "set up visual regression", "add Chromatic tests", "add screenshot testing", or "set up Percy".
allowed-tools
Read, Write, Bash, Glob
version
1.0.0
triggers
set up visual regression, add chromatic tests, create visual tests, configure visual regression, add screenshot testing, set up percy, add backstopjs

Visual Regression Testing Setup Skill


Skill Purpose

Generate complete visual regression testing setup with Storybook stories, configuration files, and CI/CD workflows.

Supports: Chromatic, Percy, BackstopJS Frameworks: React, Vue, Svelte (TypeScript/JavaScript) CI/CD: GitHub Actions, GitLab CI, CircleCI


What This Skill Does

  1. Detects existing setup: Storybook version, VR tool, CI platform
  2. Validates component: Extract props, variants, states
  3. Generates stories: Complete .stories.tsx with all variants
  4. Creates config files: Chromatic, Percy, or BackstopJS configuration
  5. Sets up CI/CD: Auto-generate workflow files
  6. Provides instructions: Next steps for API tokens, first baseline

Workflow

Step 1: Validate Project Setup

Execute: vr_setup_validator.py

Check:

  • Framework (React/Vue/Svelte) from package.json
  • Existing Storybook config (.storybook/ directory)
  • Existing VR tool (chromatic, percy, backstopjs in dependencies)
  • CI platform (.github/, .gitlab-ci.yml, .circleci/)
  • Component file exists and is valid

Output:

json
{
  "framework": "react",
  "storybook_version": "7.6.0",
  "vr_tool": "chromatic",
  "ci_platform": "github",
  "component": {
    "path": "src/components/ProfileCard.tsx",
    "name": "ProfileCard",
    "props": [...],
    "valid": true
  },
  "dependencies": {
    "installed": ["@storybook/react", "@storybook/addon-essentials"],
    "missing": ["chromatic", "@chromatic-com/storybook"]
  }
}

If Storybook not found: Ask user if they want to install Storybook first, provide setup instructions.

If multiple VR tools found: Ask user which to use (Chromatic recommended).


Step 2: Generate Storybook Stories

Execute: story_generator.py

Process:

  1. Parse component file (TypeScript/JSX/Vue SFC)
  2. Extract props, prop types, default values
  3. Identify variants (size, variant, disabled, etc.)
  4. Generate story file from template
  5. Add accessibility tests (@storybook/addon-a11y)
  6. Add interaction tests (if @storybook/test available)

Template: templates/story-template.tsx.j2

Example output (ProfileCard.stories.tsx):

typescript
import type { Meta, StoryObj } from '@storybook/react';
import { ProfileCard } from './ProfileCard';

const meta = {
  title: 'Components/ProfileCard',
  component: ProfileCard,
  parameters: {
    layout: 'centered',
  },
  tags: ['autodocs'],
  argTypes: {
    size: { control: 'select', options: ['sm', 'md', 'lg'] },
    variant: { control: 'select', options: ['default', 'compact'] },
  },
} satisfies Meta<typeof ProfileCard>;

export default meta;
type Story = StoryObj<typeof meta>;

export const Default: Story = {
  args: {
    name: 'John Doe',
    avatar: 'https://example.com/avatar.jpg',
    bio: 'Software Engineer',
    size: 'md',
    variant: 'default',
  },
};

export const Small: Story = {
  args: {
    ...Default.args,
    size: 'sm',
  },
};

export const Large: Story = {
  args: {
    ...Default.args,
    size: 'lg',
  },
};

export const Compact: Story = {
  args: {
    ...Default.args,
    variant: 'compact',
  },
};

// Accessibility test
Default.parameters = {
  a11y: {
    config: {
      rules: [
        { id: 'color-contrast', enabled: true },
        { id: 'label', enabled: true },
      ],
    },
  },
};

Write to: {component_directory}/{ComponentName}.stories.tsx


Step 3: Generate Configuration Files

Execute: chromatic_config_generator.py (or percy/backstop equivalent)

For Chromatic:

Generate 3 files:

  1. chromatic.config.json:
json
{
  "projectId": "<PROJECT_ID_PLACEHOLDER>",
  "buildScriptName": "build-storybook",
  "exitZeroOnChanges": true,
  "exitOnceUploaded": true,
  "onlyChanged": true,
  "externals": ["public/**"],
  "skip": "dependabot/**",
  "ignoreLastBuildOnBranch": "main"
}
  1. Update .storybook/main.js (add addon):
javascript
module.exports = {
  stories: ['../src/**/*.stories.@(js|jsx|ts|tsx)'],
  addons: [
    '@storybook/addon-links',
    '@storybook/addon-essentials',
    '@chromatic-com/storybook', // ← Added
    '@storybook/addon-interactions',
  ],
  framework: {
    name: '@storybook/react-vite',
    options: {},
  },
};
  1. Update package.json (add scripts):
json
{
  "scripts": {
    "chromatic": "npx chromatic",
    "chromatic:ci": "npx chromatic --exit-zero-on-changes"
  }
}

For Percy: Generate .percy.yml instead For BackstopJS: Generate backstop.config.js instead


Step 4: Generate CI/CD Workflow

Execute: ci_workflow_generator.py

Detect CI platform from existing files:

  • .github/workflows/ → GitHub Actions
  • .gitlab-ci.yml → GitLab CI
  • .circleci/config.yml → CircleCI
  • None → Ask user, default to GitHub Actions
GitHub Actions Example:

Generate: .github/workflows/chromatic.yml

yaml
name: Visual Regression Tests

on:
  push:
    branches: [main, develop]
  pull_request:
    branches: [main]

jobs:
  chromatic:
    runs-on: ubuntu-latest
    steps:
      - uses: actions/checkout@v4
        with:
          fetch-depth: 0 # Required for Chromatic

      - name: Setup Node.js
        uses: actions/setup-node@v4
        with:
          node-version: '20'
          cache: 'npm'

      - name: Install dependencies
        run: npm ci

      - name: Run Chromatic
        uses: chromaui/action@latest
        with:
          projectToken: ${{ secrets.CHROMATIC_PROJECT_TOKEN }}
          exitZeroOnChanges: true
          onlyChanged: true

For GitLab CI: Add job to .gitlab-ci.yml For CircleCI: Add job to .circleci/config.yml


Step 5: Provide Setup Instructions

Output to user:

markdown
✅ Visual regression testing setup complete!

## Files Created/Modified

✅ {ComponentName}.stories.tsx (Storybook story with variants)
✅ chromatic.config.json (Chromatic configuration)
✅ .storybook/main.js (Added @chromatic-com/storybook addon)
✅ package.json (Added chromatic scripts)
✅ .github/workflows/chromatic.yml (CI workflow)

## Next Steps

### 1. Install Dependencies

```bash
npm install --save-dev chromatic @chromatic-com/storybook
```

### 2. Create Chromatic Project

1. Go to https://www.chromatic.com/start
2. Sign in with GitHub
3. Create new project
4. Copy project token

### 3. Add Secret to GitHub

1. Go to repository Settings → Secrets and variables → Actions
2. Create secret: `CHROMATIC_PROJECT_TOKEN`
3. Paste your project token

### 4. Update chromatic.config.json

Replace `<PROJECT_ID_PLACEHOLDER>` with your actual project ID from Chromatic dashboard.

### 5. Create Baseline

```bash
npm run chromatic
```

This captures the initial screenshots as your baseline.

### 6. Test Visual Regression

1. Make a visual change to ProfileCard
2. Commit and push
3. CI will run Chromatic automatically
4. Review changes in Chromatic dashboard

## Documentation

See `.agent/sops/testing/visual-regression-setup.md` for detailed workflow.

## Troubleshooting

**Storybook build fails**: Ensure all component dependencies are installed
**Chromatic upload fails**: Check project token in secrets
**No changes detected**: Chromatic only runs on changed stories (use `--force-rebuild` to test)

Predefined Functions Reference

vr_setup_validator.py
python
def detect_storybook_config(project_root: str) -> dict
def detect_vr_tool(project_root: str) -> str
def validate_component_path(component_path: str) -> dict
def check_dependencies(project_root: str) -> dict

Returns: Validation report with detected setup and missing dependencies

story_generator.py
python
def analyze_component(component_path: str, framework: str) -> dict
def generate_story(component_info: dict, template_path: str) -> str
def create_accessibility_tests(component_info: dict) -> str
def create_interaction_tests(component_info: dict) -> str

Returns: Generated story file content

chromatic_config_generator.py
python
def generate_chromatic_config(project_info: dict) -> str
def generate_storybook_config(existing_config: dict) -> str
def generate_package_scripts(existing_scripts: dict) -> dict
def generate_percy_config(project_info: dict) -> str  # Percy alternative
def generate_backstop_config(project_info: dict) -> str  # BackstopJS alternative

Returns: Configuration file contents as strings

ci_workflow_generator.py
python
def detect_ci_platform(project_root: str) -> str
def generate_github_workflow(project_info: dict) -> str
def generate_gitlab_ci(project_info: dict) -> str
def generate_circleci_config(project_info: dict) -> str

Returns: CI workflow file contents


Templates Reference

  • story-template.tsx.j2: React/TypeScript story template
  • story-template.vue.j2: Vue SFC story template
  • chromatic-config.json.j2: Chromatic configuration
  • percy-config.yml.j2: Percy configuration
  • github-workflow.yml.j2: GitHub Actions workflow
  • gitlab-ci.yml.j2: GitLab CI job
  • storybook-main.js.j2: Storybook addon configuration

Show full SKILL.md (220 more words)Show less

Examples

Example 1: Simple Component
User: "Set up visual regression for ProfileCard component"

→ Detects: React, existing Storybook, no VR tool
→ Generates: ProfileCard.stories.tsx with 4 variants
→ Creates: Chromatic config, GitHub workflow
→ Outputs: Setup instructions

See: examples/simple-component-vr.md

Example 2: Full Design System
User: "Set up visual regression for entire design system"

→ Detects: React, Storybook, components in src/components/
→ Generates: Stories for all components (Button, Input, Card, etc.)
→ Creates: Chromatic config with design token validation
→ Outputs: Bulk setup instructions

See: examples/design-system-vr.md

Example 3: Existing Storybook
User: "Add Chromatic to existing Storybook"

→ Detects: Storybook v7, existing stories
→ Adds: @chromatic-com/storybook addon
→ Creates: Chromatic config, CI workflow
→ Preserves: Existing stories and configuration

See: examples/existing-storybook-vr.md


Integration with product-design Skill

After product-design generates implementation plan, suggest visual regression:

"Implementation plan created! Consider setting up visual regression testing:

  'Set up visual regression for {ComponentName}'

This ensures pixel-perfect implementation and prevents visual drift."

Tool Comparison

  • ✅ Purpose-built for Storybook
  • ✅ Component-focused testing
  • ✅ UI review workflow
  • ✅ Free tier: 5,000 snapshots/month
  • ❌ Requires cloud service
Percy
  • ✅ Multi-framework support
  • ✅ Responsive testing
  • ✅ Visual reviews
  • ❌ More expensive
  • ❌ Less Storybook-specific
BackstopJS
  • ✅ Open source, self-hosted
  • ✅ No cloud dependency
  • ✅ Free
  • ❌ More manual setup
  • ❌ Less automation

Default: Chromatic (best Storybook integration)


Error Handling

Component Not Found
Error: Component file not found at {path}

Please provide correct path:
  "Set up visual regression for src/components/ProfileCard.tsx"
Storybook Not Installed
Storybook not detected. Install first:

  npm install --save-dev @storybook/react @storybook/addon-essentials
  npx storybook init

Then retry: "Set up visual regression for ProfileCard"
Multiple VR Tools Detected
Multiple VR tools found: chromatic, percy

Which should I use?
  - "Use Chromatic for visual regression"
  - "Use Percy for visual regression"

Best Practices

  1. Start with key components: Don't test everything, focus on design system primitives
  2. Use interaction tests: Combine visual + functional testing
  3. Baseline on main: Always merge baselines to main branch
  4. Review changes: Don't auto-accept visual changes
  5. Test states: Capture hover, focus, error states
  6. Accessibility: Include a11y tests in all stories

Token Efficiency

Traditional approach (50k tokens):

  1. Read Storybook docs (20k)
  2. Read Chromatic docs (15k)
  3. Write stories manually (10k)
  4. Configure CI (5k)

With visual-regression skill (3k tokens):

  1. Skill auto-invokes (0 tokens)
  2. Instructions load (3k tokens)
  3. Functions execute (0 tokens)

Savings: 94% (47k tokens)


Version History

  • v3.3.0: Initial release with Chromatic support
  • Future: Percy, BackstopJS, Vue, Svelte support

Last Updated: 2025-10-21 Skill Type: Project-specific Generator: nav-skill-creator (self-improving)

© qf-studio, MIT. Rendered from Markdown: HTML in the file is shown as text, images as links, and headings moved down two levels. Raw file

Files

SKILL.md and 12 other files in skills/visual-regression of qf-studio/navigator.

  • SKILL.md
  • examples/design-system-vr.md
  • examples/existing-storybook-vr.md
  • examples/simple-component-vr.md
  • functions/chromatic_config_generator.py
  • functions/ci_workflow_generator.py
  • functions/story_generator.py
  • functions/vr_setup_validator.py
  • templates/chromatic-config.json.j2
  • templates/github-workflow.yml.j2
  • templates/gitlab-ci.yml.j2
  • templates/story-template.tsx.j2
  • templates/storybook-main.js.j2

Open the folder on GitHubat commit a6f3006

Compare with similar skills

Visual Regression next to the 5 skills that share the most tags, products or categories with it. Stars are the repository's; “used in” counts other GitHub owners with a copy.

Visual Regression compared with similar skills
SkillStarsUsed inTokensAuto-checkLicenceRepo updated
Visual Regression this skillqf-studio/navigator354—~3.3kAutomated safety check: NotesMIT
Storybook Testingyonatangross/orchestkit288—~2.3kAutomated safety check: PassMIT
Economical Visual Testsigrlk/storybook-addon-test-codegen1541 repos~1.1kAutomated safety check: PassMIT
Handsontable Visual Test Demoshandsontable/handsontable22k—~1.3kAutomated safety check: PassCustom licence
Computed Stylesbitovi/ai-enablement-prompts121—~2.4kAutomated safety check: PassMIT
Sanity Visual Regressionsanity-io/sanity6.4k—~3.4kAutomated safety check: PassMIT

Similar skills

  • Storybook Testing

    yonatangross/orchestkit

    Storybook 10 testing patterns with Vitest integration, ESM-only distribution, CSF3 typesafe factories, play() interaction tests, Chromatic TurboSnap visual regression, module automocking…

    288 GitHub stars~2.3k tokensUpdated yesterday
    Testing & QAAuto-check passed
  • Economical Visual Tests

    igrlk/storybook-addon-test-codegen

    Author economical visual tests — full visual coverage in the fewest billable snapshots.

    154 GitHub starsUsed in 1 repo~1.1k tokens
    Testing & QAAuto-check passed
  • Handsontable Visual Test Demos

    handsontable/handsontable

    Explains how to add or change the demo pages that Handsontable's visual regression suite photographs, including per-feature routes in the js demo and the shared grid.

    22k GitHub stars~1.3k tokensUpdated yesterday
    Testing & QAAuto-check passed
  • Computed Styles

    bitovi/ai-enablement-prompts

    Extract and compare computed CSS styles between a baseline URL and a dev/Storybook URL using Playwright MCP evaluate calls.

    121 GitHub stars~2.4k tokensUpdated 27 days ago
    Testing & QAAuto-check passed
  • Sanity Visual Regression

    sanity-io/sanity

    Official

    Add, review, and maintain Chromatic visual regression coverage in the Sanity monorepo via dev/storybook stories, the vitest browser-mode suite, and Playwright e2e snapshots.

    6.4k GitHub stars~3.4k tokensUpdated today
    Testing & QAAuto-check passed
  • Smartui Skill

    sickn33/agentic-awesome-skills

    Generates SmartUI visual regression test configurations for screenshot comparison on TestMu AI cloud.

    47k GitHub starsUsed in 1 repo~1.1k tokens
    Testing & QAAuto-check passed

More from qf-studio/navigator

All 32 skills in this repo
  • Backend Endpoint

    qf-studio/navigator

    Create REST/GraphQL API endpoint with validation, error handling, and tests.

    354 GitHub starsUsed in 1 repo~4.5k tokens
    Auto-check: notes
  • Nav Start

    qf-studio/navigator

    Load Navigator documentation navigator when starting development session, resuming work, or beginning new feature.

    354 GitHub stars~4.6k tokensUpdated yesterday
    Auto-check: notes
  • Backend Test

    qf-studio/navigator

    Generate backend tests (unit, integration, mocks) for existing code.

    354 GitHub stars~1.5k tokensUpdated yesterday
    Auto-check: notes
  • Database Migration

    qf-studio/navigator

    Create database migration with schema changes and rollback. An agent skill from qf-studio/navigator.

    354 GitHub stars~3.7k tokensUpdated yesterday
    Auto-check: notes
  • Frontend Component

    qf-studio/navigator

    Create React/Vue component with TypeScript, tests, and styles.

    354 GitHub stars~4.5k tokensUpdated yesterday
    Auto-check: notes
  • Frontend Test

    qf-studio/navigator

    Generate frontend component tests (React Testing Library, Vue Test Utils, snapshot) for existing components.

    354 GitHub stars~1.6k tokensUpdated yesterday
    Auto-check: notes

Works with

Questions about Visual Regression

What does Visual Regression do?

Setup visual regression testing with Storybook stories, configuration, and CI/CD workflows. Visual Regression is an agent skill from qf-studio/navigator. Setup visual regression testing with Storybook stories, configuration, and CI/CD workflows.

When should I use Visual Regression?

Visual Regression fits situations like: says set up visual regression; add Chromatic tests; add screenshot testing.

How do I install Visual Regression in Claude Code?

Run `npx skills add qf-studio/navigator --skill visual-regression -a claude-code`. Or copy the skill folder (skills/visual-regression in qf-studio/navigator) into .claude/skills/visual-regression in your project. Claude Code loads it when a task matches its description.

How do I install Visual Regression in Codex?

Run `npx skills add qf-studio/navigator --skill visual-regression -a codex`. Or copy the skill folder (skills/visual-regression in qf-studio/navigator) into .agents/skills/visual-regression in your project. Codex loads it when a task matches its description.

Can I use Visual Regression in Cursor, Gemini CLI or GitHub Copilot?

Cursor, Gemini CLI, GitHub Copilot and OpenCode also load SKILL.md folders. With the skills CLI, run `npx skills add qf-studio/navigator --skill visual-regression -a cursor` (or -a gemini-cli, github-copilot or opencode for the others). To copy it by hand, put the folder in .cursor/skills/visual-regression, .gemini/skills/visual-regression, .github/skills/visual-regression and .opencode/skills/visual-regression in your project.

What does Visual Regression need to run?

Going by SKILL.md and its folder, Visual Regression needs Python for the scripts in its folder, the command-line tools its instructions call (npm and npx) and credentials named CHROMATIC_PROJECT_TOKEN. Our summary lists: Python 3; Node.js; A credential in CHROMATIC_PROJECT_TOKEN. Its frontmatter pre-approves these tools: Read, Write, Bash, Glob.

Does Visual Regression access the network?

SKILL.md names 1 domain. In commands or code: chromatic.com; the agent is likely to contact it when it follows the instructions. This is read from the text; nothing was executed.

Is Visual Regression safe to install?

Our automated static check of SKILL.md found notes only (pre-approves every shell command (allowed-tools: bash)), nothing it rates as a warning. It is not a guarantee. Review the folder before installing.

What licence does Visual Regression use?

Visual Regression is published under the MIT licence (the repository's licence). It allows redistribution, so the full SKILL.md is shown on this page.

How many tokens does Visual Regression use?

About 3.3k tokens (SKILL.md is roughly 13k characters). Agents keep only the skill's name and description in context until a task matches; then they load SKILL.md in full.

What are the alternatives to Visual Regression?

Skills that share tags, products or a category with Visual Regression: Storybook Testing (yonatangross/orchestkit, 288 stars), Economical Visual Tests (igrlk/storybook-addon-test-codegen, 154 stars), Handsontable Visual Test Demos (handsontable/handsontable, 22k stars) and Computed Styles (bitovi/ai-enablement-prompts, 121 stars). The comparison table on this page puts their stars, adoption, token cost, safety result and licence side by side.

Who maintains Visual Regression?

qf-studio (a GitHub organization) maintains it in qf-studio/navigator, which has 354 GitHub stars. The repository holds 32 skills in this directory. The repository was last updated on October 6, 2026.

Source: qf-studio/navigator on GitHub. Facts on this page come from the repository at the commit we read; the author's words are quoted as theirs.