v0.1.19

microsoft/playwright-cliv0.1.19Sep 1, 2026by yury-s

AI Summary

Introduces recording commands for manual browser actions and fixes various daemon and session bugs including update checks, Windows console windows, and long workspace path handling.

Key Highlights

  • New `recording-start` and `recording-stop` commands for manual code generation.
  • Update check results are now cached to reduce network round-trips.
  • Session daemon no longer opens a console window on Windows.
  • Long workspace paths no longer truncate the daemon socket path.

New Features

  • `recording-start` / `recording-stop` commands
  • Default codegen language inference from environment

Full Release Notes

## What's New

### New Commands

- **`recording-start` / `recording-stop`** — Record actions that the user performs manually in the browser and return them as Playwright code. Useful when the user wants to demonstrate a flow instead of describing it ([#42359](https://github.com/microsoft/playwright/pull/42359))

## Bug Fixes

- The update check result is cached again, so commands no longer pay a network round-trip to the npm registry on every invocation ([#454](https://github.com/microsoft/playwright-cli/pull/454))
- The installed-skill check honors `NO_UPDATE_NOTIFIER` / `CI` and runs at most once a day ([#447](https://github.com/microsoft/playwright-cli/pull/447))
- Negative positional arguments (e.g. `mousewheel` scroll-up deltas) are no longer parsed as flags ([#42333](https://github.com/microsoft/playwright/pull/42333))
- The session daemon no longer opens a console window on Windows ([#42155](https://github.com/microsoft/playwright/pull/42155))
- Long workspace paths no longer truncate the daemon socket path, which left sessions stuck with `EADDRINUSE` ([#42185](https://github.com/microsoft/playwright/pull/42185))
- `install --skills` adds `.playwright-cli/` to `.gitignore`, since traces there can contain credentials ([#42318](https://github.com/microsoft/playwright/pull/42318))
- The hint printed after `attach` shows `-s` instead of `--s` ([#42138](https://github.com/microsoft/playwright/pull/42138))
- `screenshot` returns the original screenshot bytes instead of silently downscaling them to model-specific limits ([#42406](https://github.com/microsoft/playwright/pull/42406))
- Drop the cached browser backend after `close` with a shared browser context, so subsequent commands no longer fail ([#42365](https://github.com/microsoft/playwright/pull/42365))
- Tracing can be restarted after a failed `tracing-stop` instead of permanently producing broken archives ([#42425](https://github.com/microsoft/playwright/pull/42425))
- The default codegen language is inferred from the environment ([#42150](https://github.com/microsoft/playwright/pull/42150))
- Do not clobber the `chromiumSandbox` setting from the config file ([#42288](https://github.com/microsoft/playwright/pull/42288))
- Honor `--user-data-dir` in extension mode ([#42190](https://github.com/microsoft/playwright/pull/42190))
- Do not treat orphaned browser preferences entries as an installed extension ([#42224](https://github.com/microsoft/playwright/pull/42224))
- `state-save` / `state-load` no longer hang when the state contains IndexedDB and a page on that origin is open ([#42260](https://github.com/microsoft/playwright/pull/42260))