AutoMax

Introduction

What AutoMax is, what it wraps, and how its pieces fit together.

What you'll learn

What AutoMax is, which problems it takes off your plate, the CLI-first principle that shapes every feature, and how the packages fit together.

AutoMax is an automation platform with a reusable architecture. It runs on Playwright. You write scenarios in Gherkin, keep one YAML file per project and one per environment, and drive everything from the automax command line. The same commands power the web UI, the MCP server and the scheduler.

What it adds on top of Playwright

ConcernPlaywright aloneWith AutoMax
UI, API and hybrid scenariosseparate test files, separate fixturesone merged fixture set; one scenario can seed through the API and assert in the browser
Many applications and environmentshand-written playwright.config.tsprojects/<slug>/automax.project.yaml and envs/<env>.yaml, generated Playwright projects per project × layer × browser
Configurationenvironment variables and codesix layers with fixed precedence, validated, explainable with automax config show --explain
Test dataad hocCSV, JSON, YAML, database tables and factories per environment; user pools leased per worker
ResultsHTML reportbefore/after screenshots per step, API snapshots, run history in SQLite or Postgres, insights
Resiliencenonescored self-healing locators with persisted history
Tooling around testsnoneMCP server, AI agents that write reviewable proposals, GitHub and Jira, cron schedules, web UI

The CLI-first principle

Every capability is an automax command that works with no server and no database. The web UI, the MCP server and the scheduler spawn those commands and stream their output. CI needs nothing but Node and the repository.

bun run automax run -p demo-shop -e staging -l api
bun run automax run -p demo-shop -e staging -l ui -b chromium -t @smoke

How it works

Packages

PackageOwns
@automax/contractsZod schemas for the YAML files, identifiers, attachment names, scopes, shared types
@automax/coreconfiguration, project registry, fixtures, step library, data providers, screenshots, self-healing, recorder, lint, reporters
@automax/dbKysely schema, migrations, ingest, insights
@automax/mcptool registry and MCP transports
@automax/integrationsGitHub and Jira providers
@automax/agentsLLM adapters, agent roles, proposals
@automax/serverREST, SSE, /mcp, authentication, scheduler
@automax/webthe React application
@automax/clithe automax command

Playwright's test workers, vitest and the native database drivers run on Node 22. Bun is the package manager, script runner and bundler; pnpm works too. Nothing executes tests under Bun.

Status

All thirteen phases are implemented and verified; the roadmap lists the numbers and the known limitations page lists what is still open. The only command that remains a placeholder is automax insights.

The web UI run view: scenario tree grouped by module with flaky, healed and browser badges
A run in the web UI. Every action it offers is an automax command.

Next steps

On this page