Skip to main content
By the end of this guide, you have taken a failing check from the alert to its root cause without leaving the terminal, confirmed the diagnosis with a recorded test run, and deployed the fix.
The Shop checkout check detail page in Checkly, with failed runs from N. Virginia and Ireland followed by a passing run after the fix
To follow along, clone the sample project. It monitors the checkout of the Danube demo shop, and it fails on purpose.
To run this guide from your terminal or your coding agent, run npx checkly init in your project first. It installs the Checkly CLI and Checkly Skills for your agent. Then paste the prompt below into Claude Code, Cursor, Codex, or any agent that supports skills. It builds the same setup as this guide, proves it with npx checkly test --record, and stops for your confirmation before npx checkly deploy.
Prompt
The steps below are what the agent does, in the open.

Step 1: Find what failed

An alert tells you a check failed. Start from the terminal, not the dashboard. List the failing checks and open the one from the alert.
Terminal
Terminal
Terminal
Terminal
Two things matter here. Every result fails with the same error, so Checkly has folded them into one error group. And it fails from both locations, so this is not a regional blip. The RCA column says Rocky AI has already analyzed the group.

Step 2: Read the error and the analysis

Open the error group. It prints the full Playwright error with the failing line, and below it the root cause analysis.
Terminal
Terminal
The error says what did not happen: the order confirmation never appeared after Buy. Rocky read the trace and found what happened instead: the form showed Please fill in all fields.. That is the lead. Rocky’s conclusion is a hypothesis, and this one is wrong in a detail that matters. Open the spec: it fills name, surname, address, zipcode, and city. Checkly scrubs form input values from stored traces, so the analysis could not see them. Whenever the analysis and your code disagree, the trace decides.
Rocky analyzes every new error group automatically. To rerun it with what you know, use npx checkly rca run --error-group <id> --user-context "..." --watch.

Step 3: Look at the result

The result page has the failure screenshot, the video, and the trace viewer. It is the quickest way to see what the browser saw, and it is what the alert links to.
The failed Shop checkout result in Checkly with the Run, Retry 1, and Retry 2 tabs, the View Trace, Screenshots, Video, and Analyze root cause buttons, and the Playwright error with line 21 highlighted
Open the screenshot. The checkout form is still on screen, five fields are filled, the company field is empty, and the form says Please fill in all fields..
The Danube shop checkout form at the moment of failure: name, surname, address, zipcode, and city filled in, the Company (optional) field empty, and the message Please fill in all fields above the Buy button
That is a strong lead, and a screenshot is one frame. The trace tells you what the click did and what the page looked like as text you can search.

Step 4: Read the trace in the terminal

Download the trace for the failed result. Every asset belongs to one result, so pass the result ID and the check ID from step 1.
Terminal
Terminal
Unzip it and open the first attempt’s trace with Playwright’s terminal trace viewer. It needs Playwright 1.59 or later.
Terminal
Terminal
Every field was filled and Buy was clicked. Then the expectation waited five seconds for a confirmation that never came. Check what the click did on the network.
Terminal
Terminal
No order was sent. The last request to the shop is the cart’s books lookup, before the click. Whatever stopped the order happened in the browser, so look at the page as it was when the test failed. Playwright attaches it as error-context.
Terminal
Terminal
There is the root cause. Five fields are filled, the sixth is labelled optional and empty, and the form refuses to submit with Please fill in all fields.. The check is doing exactly what a customer without a company would do, and that customer cannot buy. This is an application bug, not a monitoring bug.
Point your coding agent at the same trace with npx playwright trace install-skill. Debugging with AI agents covers the full text-first toolchain.

Step 5: Confirm the diagnosis, then ship

A root cause is a claim until a change proves it. If the company field is the cause, filling it should make the check pass. Fill it, and leave a comment that says why, so nobody mistakes the workaround for the intended flow.
tests/checkout.spec.ts
Run it on Checkly without deploying. The deployed monitor keeps running the old code until you say otherwise.
Terminal
Terminal
It passes, so the diagnosis holds. File the bug against the checkout form with the trace attached. Then deploy, so the monitor covers the rest of the checkout while the fix ships.
Terminal

Verify it works

Run the deployed check instead of waiting for its next scheduled run.
Terminal
Terminal
The check is passing again, and the failed runs and the recovery are on the check page. The same investigation works from a chat client with the Checkly MCP Server connected, which is where you are when the alert lands on your phone. The server’s tools read live results, error groups, and analyses, and download the same assets.
Prompt
The agent calls list-check-stats with the failing filter to find the check, get-error-group-root-cause-analyses to read the group and Rocky’s analysis, and list-check-result-assets when it needs the trace. It ends with the same Please fill in all fields. evidence you found in step 4.

Next

Monitor a checkout flow: now that you can debug one, build a full checkout monitor with the Playwright Check Suite and a Browser Check side by side.

Reference