May 27th, 2026
New
Checkly CLI

Checkly CLI 8 is here with three big behavior changes: the CLI is now ESM-only, CTRL+C now cancels running checks, and test, pw-test and trigger now record results by default.
It also adds support for multiple Node.js/Bun versions, simplifies TypeScript support, updates how Playwright include patterns resolve, and automatically loads .env files when present.
v8.0.0 ESM-only and updated Node.js requirementsThe Checkly CLI is now distributed as ESM only instead of CommonJS.
CLI 8 requires Node.js versions matching ^20.19.0 || >=22.12.0
In plain English, you’ll need to use
Node.js 20.19.0 or later on the Node 20 release line
Node.js 22.12.0 or later
Earlier Node.js 20 and 22 versions are not supported. Before upgrading, make sure your local development, CI, and deployment environments use a compatible Node.js version.
Your own projects can of course still use CommonJS.
v8.1.0 Playwright Check Suites now support multiple Node/Bun versionsWhen using Playwright Check Suites, the CLI now looks at your project’s version files (.nvmrc, .node-version, .bun-version, etc.) and selects a compatible Node or Bun version for you. We currently support the following versions:
Node.js: 22 (default), 24, 26
Bun: 1.3 (default)
If you use a different version, we’ll choose the most compatible version for you.
You can also override automatic detection by setting the new engine property:
import { Engine, PlaywrightCheck } from 'checkly/constructs'
new PlaywrightCheck('my-playwright-check', {
/* ... */
engine: Engine.node('24'),
})v8.0.0 No need to install a TypeScript loader separately anymore!Starting with CLI 8, Checkly uses jiti exclusively. It supports modern TypeScript features out of the box, does not require a tsconfig, and now supports tsconfig paths automatically.
jiti is now bundled as a direct dependency when you install Checkly:
npm install checkly@latest So you no longer need to install or manage it separately. That means no extra loader setup and one fewer dependency to manage.
For type checking, please rely on your editor of choice, and make sure that your type checking workflows cover your Checkly files. jiti does not produce type errors.
ts-node is no longer supported.
v8.0.0 Test sessions are now recorded by defaultThe test and trigger commands now record results by default.
That means your runs will be recorded unless you explicitly opt out. To disable recording, use the --no-record option:
npx checkly test --no-record
npx checkly trigger --no-recordIf your scripts relied on recording being off by default, update them before upgrading.
v8.0.0 CTRL+C now cancels running Playwright Check SuitesEver started checkly test or checkly trigger and realized three seconds later it was absolutely not going to pass?
No need to watch it fail in slow motion.
Pressing CTRL+C during test , pw-test or trigger now cancels in-flight test sessions instead of leaving them running in the background eating into your quota.
npx checkly test
# CTRL+C
# Cancelling Playwright checks... ⊘ Docs Environment (0ms)Need the previous “keep running in the cloud after I disconnect” behaviour? Run in detached mode with --detach or -d
npx checkly test --detach
# CTRL+C
# Checks will continue running in the cloud. v8.0.0 .env files are now loaded automaticallyThe CLI now automatically loads a .env file when one is present.
You can use it for configuration such as:
API keys
Account IDs
Environment-specific variables
To disable automatic .env loading entirely, set:
CHECKLY_NO_DOTENV=1 ℹ️ These environment variables are only available locally to the CLI - they do not become Checkly environment variables.
v8.0.0 Playwright include patterns now resolve from the config directoryPlaywright check Suites include patterns now resolve relative to the directory of your Playwright config file, not the project root.
This now matches Playwright’s own behavior, which should make path resolution more predictable.
If your Playwright config lives in a subdirectory, double-check your include globs after upgrading.
checkly rca run now support --test-session-error-group or -te to trigger a Root Cause Analysis on Test Session Error Groups.
Happy monitoring (and testing!)
Questions or feedback? Join our Slack community.