Reference

Troubleshooting

Every failure prints an Error: line and, most of the time, a Fix: line. A failed step also saves failure.jpg in the run folder. Look at it first.

If Claude is making the video, it reads these and fixes most problems itself.

By exit code

CodeMeaningWhat to do
1unexpected errorRun again once. If it happens again, open an issue with the error
2bad inputFix the steps file, style or option the error names
3no usable browser, or doctor found a problemRun npx cursorcam@beta doctor and follow its Fix: lines
4a step failedSee the step errors below
5encoding failedRun doctor, then render again
6timeoutA step or an ask took too long. See below
7the page did not loadCheck that the app is running at that URL
8disk fullFree some disk space. Recording uses up to 1 GB per minute
9interruptedStart the run again
10blocked, or needs a humanA captcha or bot check. Log in by hand with login, see Logins and secrets
11the browser crashedRun again. If it happens again, the page may be too heavy for a hidden browser

Step errors

ErrorFix
Could not find <target>Run inspect on that page and copy a target. If the element shows up late, add a waitFor before it, or raise timeout
<target> matches 2 elementsThe error lists them. Add within, near or nth, or "exact": true
<target> is covered by <element>Close the cover first, like a cookie banner's Accept button
<target> stayed disabledA step before it is missing, like a required field
<target> is see-through (opacity 0)Target the visible element instead
<target> disappearedThe page changed under the cursor. Add a waitFor for the new state first
The step did not finish within …The page is slow. Raise timeout in the steps file
A field shows … instead of …A length limit or input mask changed the text. Type text the field accepts
goto "…" leaves http://…Add that origin to allowOrigins
The steps use $secret:NAME, but CURSORCAM_SECRET_NAME is not setPass the value to that command
Nobody answered "…" within 5 minutesRun again and send the answer sooner

Page problems

ProblemFix
HTTP 401Add httpCredentials with $secret: values
The page needs a loginGive Claude a demo login, or save one with login and use --profile
Native date or color pickersThey do not show in the video. Type the value into the field instead
A native select listAdd "showList": true to show the open list
TooltipsThey do not show in the video. Show the same thing another way
The phone layout looks zoomed outThe page has no viewport meta tag. Record on desktop instead

The video

ProblemFix
The zoom cuts off what changedLower the zoom, see Look and size
A spinner or blank page showsAdd a waitFor for the content before the next step
A cookie banner covers the pageAdd a step that closes it, at the start
Private data showsAdd "mask": [".selector"] to the steps file
The file is too bigRender again with --max-size