CLI testing in plain English that returns an exit code
Kane CLI turns a plain-English objective into a browser test you run from the command line. One command drives your local browser, checks the result, and exits 0 or 1 for CI to read. No IDE, no framework, no selectors. Free to install.
or read the documentation
CLI testing without a suite to maintain
Command-line test runners still sit on top of a suite someone wrote: framework config, selectors, and page objects that a renamed label or shifted layout breaks. The runner is fast, the maintenance is not.
Kane CLI from TestMu AI takes the objective as the input instead. You describe the flow in one plain-English sentence and it drives your local browser through the Chrome DevTools Protocol, limited to what a real user could do on the page.
It waits on the rendered viewport, re-resolves elements when the page shifts, and pushes through unexpected modals up to 50 steps. Then it returns a verified pass or fail with a typed exit code, video, and a shareable link.

What makes Kane CLI testing different
One command in, a real browser driven, and a verified exit code out.
One command, one test
Type the objective and run it. Kane CLI works out the path, drives the browser, and checks the outcome. No test file to author, no framework config, no page objects to keep alive between releases.
Exit codes CI can gate on
Every run ends in a typed exit code: 0 pass, 1 assertion failed, 2 setup or auth error, 3 timeout. Wire it straight into a pipeline step and a failed journey stops the build without any custom reporting glue.
NDJSON you can pipe
Add --agent and each action becomes a newline-delimited JSON event you can pipe into jq or a script. The closing run_end event carries status, extracted values, and a dashboard link for any tool to read.
No framework to scaffold
There is nothing to install beyond the CLI itself. No runner to configure, no selectors to record, no boilerplate to maintain. The objective is the test, so the suite cannot rot the way scripted selectors do.
Headed locally, headless in CI
Watch the run in a visible browser while you debug, then pass --headless for the exact same command in CI. One syntax covers your laptop and the pipeline, with no separate script to keep in sync.
Import and export, no lock-in
Bring existing Playwright or Selenium scripts in, or export any completed run to native Python Playwright with one flag. Command-line testing with Kane CLI adds resilience without trapping your suite.
Test a real browser flow, straight from the command line

Start in your terminal

Validate on the cloud

Release with confidence
One engine for the terminal, agents, and CI
Kane CLI and KaneAI share the same engine and dashboard.
Local terminal or cloud, one syntax
Kane CLI runs command-line tests from your terminal for quick local checks. KaneAI runs the same engine in the cloud at scale. One plain-English syntax and one dashboard, with no rewrite when a laptop check becomes a nightly cross-browser run.
CLI testing an agent can drive
Install the skill once and an AI coding agent assembles the command, runs it headless, parses the NDJSON, and reads the exit code. The agent ships the feature, then tests the flow from the command line to confirm it before a human looks.
Every run leaves a record
Each command-line test captures a persistent video, a full step trace, and a 7-day ShareLink, and syncs to TestMu AI Test Manager. Drop the link into a PR or a bug report as proof the flow ran end to end.
Run a CLI test in three steps
Install Kane CLI
Run npm install -g @testmuai/kane-cli and sign in with your TestMu AI account. Node 18 or higher and Chrome on PATH are all the CLI needs. Nothing to scaffold, no runner to wire in.
Write the objective as a command
Type the flow in plain English: open the app, log in, add an item to the cart, and confirm the order total. Run it from the terminal, or hand it to Claude Code, Cursor, or Codex to run for you.
Run and read the exit code
Kane CLI drives the browser, checks each action against the rendered page, and returns a verified pass or fail with video, a step trace, and a ShareLink. Free locally, or scale to the cloud for cross-browser coverage.
Get Started With Kane CLI
🎉 Launch offer: Bonus credits for the first 3 months on paid plans
Choose the right plan for you
Local test authoring via CLI
Auto-heal & vision
View test cases on UI
Test Manager
Free
$0
/month
200 Credits
Resets in every
30 days
Starter
$19
/month
2000 Credits
Launch: 4,000 Credits (+100%)
Bonus for first 3 months
Pro
$99
/month
10,000 Credits
Launch: 15,000 Credits (+50%)
Bonus for first 3 months
Enterprise
Get access to solutions built on Enterprise-Grade Security, Privacy, and Compliances.
Need more credits?
Got a bigger use case in mind?
Let’s talk
Choose the right plan for you
Free
$0
/month
200 Credits
Resets in every
30 days
Starter
$19
/month
2000 Credits
Launch: 4,000 Credits (+100%)
Bonus for first 3 months
Pro
$99
/month
10,000 Credits
Launch: 15,000 Credits (+50%)
Bonus for first 3 months
Enterprise
Get access to solutions built on Enterprise-Grade Security, Privacy, and Compliances.
Need more credits?
Got a bigger use case in mind?
Let’s talk
Get the technical rundown
Documentation
Everything you need to install, configure, and run Kane CLI in under 2 minutes.
Frequently asked questions
CLI testing means running your tests entirely from the command line instead of an IDE, a recorder, or a point-and-click dashboard. With Kane CLI by TestMu AI you type a plain-English objective, for example "open the pricing page, pick the Pro plan, and confirm the checkout total," and the command drives your local browser, checks the result against what the page actually shows, and exits with a status code. One command in, a verified pass or fail out. No project to scaffold, no selectors to write.
Traditional command-line test runners still need a suite behind them: framework config, selectors, and page objects a human wrote and maintains. Kane CLI takes the objective as the input. You describe the flow in one sentence and it resolves the path itself, anchoring each action to the user-facing element rather than an XPath. It waits on the rendered viewport, works through modals and redirects up to 50 steps, and re-resolves elements when the page shifts, so a renamed label does not break the run from the terminal.
Yes. A command-line test is what pipelines are built to run. Authenticate with your TestMu AI username and access key, pass --headless, --agent, and --timeout, then gate the build on the exit code: 0 when the flow passes, 1 when an assertion fails, 2 on a setup or auth error, and 3 on timeout. The same binary that runs headed on your laptop runs headless on GitHub Actions, GitLab CI, Jenkins, and Bitbucket Pipelines, so a broken user journey stops the release before it ships.
Yes. Add --agent and Kane CLI streams newline-delimited JSON, one typed event per action, so you can pipe the output straight into jq or a script. The closing run_end event carries the status, a summary, any extracted values, and a Test Manager URL. You get a human-readable transcript when you want to watch, and structured data when a tool needs to parse the result in a single line.
Yes. Because the verdict is a machine-readable exit code plus NDJSON, an AI coding agent can drive CLI testing on its own. Install the skill once and Claude Code, Cursor, or Codex CLI assembles a kane-cli run --agent --headless command, runs the objective, and reads the result to decide what to do next. Point your agent at the guide at testmuai.com/kane-cli/agents.md and it installs, authenticates, and tests the flow from the command line for you.
Installing Kane CLI and running command-line tests against your own browser is free, with 100 starter credits and no credit card. You only pay when you scale out: cloud runs across cross-browser and MultiOS coverage on the TestMu AI grid are billed against your plan. Start free and run a real browser test from your terminal in under five minutes.
Let your agent test from the command line
Point your coding agent at the Kane CLI guide and it will install, authenticate, and run a browser test from the command line on its own, then read the verified exit code and close its own loop.