CLI

Run any command with npx tensteps@beta <command>. Add --help to any command for every option.

| Command | Does | | --- | --- | | run | Send personas through a site and write a report | | validate | Check tensteps.yml | | personas | Preview the personas a population or study will use | | models | List the models Tensteps can use, with prices | | install-browser | Download Chromium ahead of time |

run

npx tensteps@beta run --url https://your-preview.vercel.app

| Option | What it does | | --- | --- | | -u, --url | The site to test (or TENSTEPS_URL). In GitHub Actions it comes from the deploy event. | | -s, --study | Only these studies. | | -n, --sessions | Personas per study, overriding the config. | | -t, --trigger | Use a trigger's session count (pull_request, push_main, nightly). | | --model | Claude model (or TENSTEPS_MODEL). Default claude-fable-5-1. | | --effort | Thinking effort: none, low, medium, high. Default low. | | --concurrency | Sessions at once. Default 4. | | --max-cost | Don't start if the estimate is above this many dollars. | | --fail-under | Exit 1 if any study's success rate is below this, like 80%. | | -H, --header | Extra request header for the site, like "x-api-key: abc". | | --allow-host | Other sites a flow may visit, like checkout.stripe.com. | | --dry-run | Show the plan and cost estimate, then stop. | | --open | Open the report when done. | | -y, --yes | Don't ask before starting. | | --headed | Show the browser windows. | | --no-summarize | Skip writing plain-language finding titles. | | --ci | CI mode. On automatically when CI=true. | | --no-comment | In CI mode, don't comment on the pull request. | | -o, --out | Where runs are saved. Default .tensteps/runs. |

Exit codes: 0 done; 1 a study fell below --fail-under; 2 a setup problem (config, key, URL); 3 the run itself failed.

Environment: ANTHROPIC_API_KEY (required), VERCEL_AUTOMATION_BYPASS_SECRET (protected Vercel previews), TENSTEPS_URL, TENSTEPS_MODEL, TENSTEPS_EFFORT, and any secret:NAME your studies use.

validate

npx tensteps@beta validate [file] [--strict] [--print-resolved] [--json]

Points to the exact line of any problem. --print-resolved shows the config with every default filled in.

personas

npx tensteps@beta personas -p low_tech_comfort -n 5
npx tensteps@beta personas --study checkout

Shows who will test your site, with their traits and, for a study, the device and network each one gets.

models

| Model | Price per million tokens (in / out) | Notes | | --- | --- | --- | | claude-fable-5-1 | $10 / $50 | Most capable. Default. | | claude-opus-5-5 | $4 / $20 | About 40% of Fable's cost. | | claude-sonnet-5-5 | $2 / $10 | Faster and cheaper; good for large runs. | | claude-haiku-4-5-20251001 | $1 / $5 | Cheapest; least realistic personas. |