Requirements
- Node 20+ (for
npx; you don’t need a Node project). - Web: any OS. iOS: macOS with Xcode + the iOS Simulator.
Set up a project
# webnpx @unotest/web init
# iOSnpx @unotest/mobile install /path/to/Your.app --update-envinit / install scaffold the unotest/ layout, write unotest.config.*, and
wire MCP config (.mcp.json / editor settings) so your agent finds the server
automatically.
Choosing a browser (web)
During init you pick how Chromium is provided:
- System Chrome / Edge — zero download. Sets
channel: "chrome"(or"msedge") in your config. - Bundled Chromium — Playwright’s build (~150 MB). Run
npx @unotest/web install-chromiumif you didn’t during init.
You can also run Firefox and WebKit — set browsers in
config. Single browser in dev; CI can run all three.
Wire your editor
unotest is an MCP server. After init, these editors pick it up automatically:
- Claude Code — via
.mcp.jsonand project settings. - Cursor / Codex — via their MCP config.
See Connect your editor for details.
Verify
# webnpx @unotest/web e2e welcome
# iOSnpx @unotest/mobile doctorIf something’s off, the CLI prints a single actionable line — no stack traces in
normal operation. Set UNOTEST_DEBUG=1 for full diagnostics.