# @percy/cli

> [![Test](https://github.com/percy/cli/workflows/Test/badge.svg)](https://github.com/percy/cli/actions)

Latest version **1.32.12** (published 2026-10-21) · MIT license · 0 weekly downloads

## Install

```sh
npm install @percy/cli
pnpm add @percy/cli
yarn add @percy/cli
bun add @percy/cli
```

Provides the command `percy`.

## Health

**Score 60/100 (C)** — status: active.

Positive: esm support; no vulnerabilities; recently updated; high maintenance score.

Warnings: low downloads; no types.

## Facts

| | |
|---|---|
| Version | 1.32.12 |
| Published | 2026-10-21 |
| First published | 2020-07-30 |
| Weekly downloads | 0 |
| License | MIT |
| TypeScript types | none |
| Module format | ESM + CommonJS |
| Node | >=14 |
| Dependencies | 10 |
| Unpacked size | 17.1 KB |
| Known vulnerabilities | 0 |
| Install scripts | no |
| GitHub stars | 87 |
| Maintainers | percy-admin |

## Links

- npm: https://www.npmjs.com/package/@percy/cli
- Repository: https://github.com/percy/cli
- Homepage: https://github.com/percy/cli#readme
- Issues: https://github.com/percy/cli/issues
- npm.io page: https://npm.io/package/@percy/cli

## Dependencies (10)

- [@percy/client](https://npm.io/package/@percy/client.md) 1.32.12
- [@percy/logger](https://npm.io/package/@percy/logger.md) 1.32.12
- [@percy/cli-app](https://npm.io/package/@percy/cli-app.md) 1.32.12
- [@percy/cli-exec](https://npm.io/package/@percy/cli-exec.md) 1.32.12
- [@percy/cli-build](https://npm.io/package/@percy/cli-build.md) 1.32.12
- [@percy/cli-config](https://npm.io/package/@percy/cli-config.md) 1.32.12
- [@percy/cli-doctor](https://npm.io/package/@percy/cli-doctor.md) 1.32.12
- [@percy/cli-upload](https://npm.io/package/@percy/cli-upload.md) 1.32.12
- [@percy/cli-command](https://npm.io/package/@percy/cli-command.md) 1.32.12
- [@percy/cli-snapshot](https://npm.io/package/@percy/cli-snapshot.md) 1.32.12

## Recent versions

- 1.32.12 (latest) — 2026-10-21
- 1.32.12-beta.4 (beta) — 2026-10-21
- 1.31.15-alpha.0 (alpha) — 2026-05-21
- 1.32.12-beta.3 — 2026-10-16
- 1.32.12-beta.2 — 2026-10-09
- 1.32.12-beta.1 — 2026-10-06
- 1.32.12-beta.0 — 2026-10-01
- 1.32.11 — 2026-09-24
- 1.32.11-beta.2 — 2026-09-22
- 1.32.11-beta.1 — 2026-09-22
- 1.32.11-beta.0 — 2026-09-21
- 1.32.10 — 2026-09-17
- 1.32.10-beta.1 — 2026-09-11
- 1.32.10-beta.0 — 2026-09-08
- 1.32.9 — 2026-09-08
- … 391 more at https://npm.io/package/@percy/cli/versions

## README

# Percy CLI

[![Test](https://github.com/percy/cli/workflows/Test/badge.svg)](https://github.com/percy/cli/actions)

The Percy CLI is used to interact with, and upload snapshots to, [percy.io](https://percy.io) via
the command line.

- [Installation](#installation)
- [Command Topics](#command-topics)
- [Advanced](#advanced)
- [Issues](#issues)
- [Developing](#developing)

## Installation

```sh-session
$ npm install --save-dev @percy/cli
```

## Command Topics

- [`percy exec`](./packages/cli-exec#readme) - capture and upload snapshots
- [`percy snapshot`](./packages/cli-snapshot#readme) - snapshot a static directory or a list of pages
- [`percy upload`](./packages/cli-upload#readme) - upload a static directory of images
- [`percy config`](./packages/cli-config#readme) - manage configuration files
- [`percy build`](./packages/cli-build#readme) - interact with Percy builds

### Advanced

In addition to the CLI packages, this repo contains core libraries responsible for Percy's CI/CD
integrations, Percy API communication, DOM serialization, asset discovery, etc.

- [`@percy/core`](./packages/core#readme) - performs snapshot asset discovery and uploading
- [`@percy/client`](./packages/client#readme) - handles communicating with the Percy API
- [`@percy/dom`](./packages/dom#readme) - serializes DOM snapshots
- [`@percy/env`](./packages/env#readme) - captures CI build environment variables
- [`@percy/config`](./packages/config#readme) - loads Percy configuration files
- [`@percy/logger`](./packages/logger#readme) - common logger used throughout the CLI
- [`@percy/sdk-utils`](./packages/sdk-utils#readme) - shared helpers for JavaScript SDKs
- [`@percy/cli-command`](./packages/cli-command#readme) - Percy CLI command framework

## Issues

For problems directly related to the CLI, [add an issue on
GitHub](https://github.com/percy/cli/issues/new).

For other issues, [open a support
request](https://www.browserstack.com/contact?ref=percy#technical-support).

## Developing

This project is built with [lerna](https://lerna.js.org/). The core libraries and CLI plugins are
located in [./packages](./packages). Run `yarn` to install dependencies after cloning the repo and
use the following scripts for various development tasks:

- `yarn build` - build all packages
- `yarn build:watch` - build and watch all packages in parallel
- `yarn clean` - clean up build and coverage output
- `yarn lint` - lint all packages
- `yarn readme` - generate cli commands readme usage
- `yarn test` - run all tests, one package after another
- `yarn test:coverage` - run all tests with coverage, one package after another
- `yarn global:link` - links all packages being developed as global.
    - requires `yarn build` to be run before consuming.
    - we can then consume this package using
        `yarn link @percy/[core|cli..]`
    - **Note**: linking is only required once, subsequent changes for development requires running build command. 
    
- `yarn global:unlink` - unlinks all packages globally

Individual package scripts can be invoked using yarn's
[workspace](https://classic.yarnpkg.com/en/docs/cli/workspace/) command. For example:

```sh-session
$ yarn workspace @percy/core test
```

### How to update Chromium revision?

check in Core Package's readme [here](./packages/core#readme).

---
_Source: https://npm.io/package/@percy/cli · Machine-readable twin of the npm.io package page. Health data is recomputed on every publish._
