# `webtest-ai record`

Captures a browser interaction flow and writes a Markdown spec draft.

```bash
webtest-ai record --url http://127.0.0.1:4010 --output specs/recorded-smoke.md
webtest-ai record --url http://127.0.0.1:4010 --name "Checkout smoke" --tags checkout,smoke --force
```

## Flags

- `--url <url>`: starting URL. Required.
- `--output <path>`: spec output path.
- `--name <name>`: recorded test name.
- `--tags <a,b>`: suite/test tags. Defaults to `recorded`.
- `--config <path>`: JSON config path.
- `--headed`: shows the browser. This is the default manual recorder behavior.
- `--headless`: runs headless for scripted capture.
- `--emit-starter`: writes an optional Playwright starter test.
- `--starter <path>`: starter output path. Implies `--emit-starter`.
- `--event-log <path>`: redacted event-log output path.
- `--api-manifest <path>`: redacted API/network manifest output path.
- `--inventory-proposal <path>`: UI inventory proposal output path.
- `--force`: overwrites generated files.
- `--save-auth`: saves storage state after recording.
- `--auth-profile <name>`: saved auth profile name. Defaults to `recorded-user`.
- `--record-auth-flow`: records password/MFA-like fields as environment placeholders.
- `--smart`: optionally cleans the recorded output with one model call when models are configured.
- `--capture-network manifest`: writes a redacted API manifest.
- `--capture-network full`: adds a privacy warning; request and response bodies are still not stored by this MVP.

The recorder is a bootstrap tool. Review generated specs before committing them.
