E2E 0.23.0 adds doctor, engine protocol and viewport resize
Updated E2E
Summary
E2E 0.23.0 (November 5, 2026) adds e2e doctor, an out-of-process engine protocol, agent viewport resize, MCP run_tests, and a breaking inputValue/isChecked change.
- Tool
- E2E
- Category
- Coding agents
- Date
- Open source
- Yes
- License
- Apache-2.0
- Pricing
- Not stated in the sources we cited.
E2E 0.23.0 shipped on November 5, 2026. The release adds a preflight e2e doctor command, an engine protocol for out-of-process engines, viewport resize for the built-in agent, and an MCP run_tests tool. One change is breaking: inputValue() and isChecked() now throw ACTION_FAILED on nodes that have no value or checked state, matching Playwright.
Release facts
| Fact | Detail |
|---|---|
| Product | E2E, repository tester-army/e2e |
| Version | e2e@0.23.0, after 0.22.0 |
| Release date | November 5, 2026 |
| Docs | https://e2e.com/docs (CLI help and MCP listing now point here) |
| License | Apache-2.0 |
e2e doctor
PR 1493 adds e2e doctor. It checks that e2e run can start without starting anything: the Node.js runtime, the config and its targets, each engine's own checks, and the model each agent resolved to. --json prints a doctor-1 report; --check-model calls each model once; the command exits 2 when a check failed. Engines can report checks through an optional doctor hook.
Engine protocol
PR 1232 adds connectEngine, serveEngine and transports in e2e/engine. An engine can run in another process, on another machine, or in another language over LSP-style JSON-RPC. Every engine built with defineEngine now goes through the protocol in process, so the harness drives every engine the same way. Engine.dispose runs only after init was called, even when init failed.
Agent viewport resize and MCP run_tests
PR 1524 gives the built-in agent a resize_viewport tool so agent.act and e2e explore can check layouts at desktop, tablet and phone widths. The tool is offered when the target's engine implements the optional session.resize hook. Custom executors call ctx.actions.resize({ width, height }), and the replay cache records it.
PR 1520 adds an MCP run_tests tool: it runs a test file, one test (tests/checkout.e2e.ts:12), or the whole suite the same way e2e run does and returns the printed output, so a coding agent can run tests without a shell.
Breaking: inputValue and isChecked
PR 1552 changes inputValue() on a node with no value (heading, button) and isChecked() on a node with no checked state to throw ACTION_FAILED, as in Playwright, instead of returning "" and false. A field with no value still reads "", and a checkable role with no state still reads false. uncheck() on an ARIA role="radio" now clicks it; a native radio still refuses.
Other changes worth checking
- Explore: digs into edge-case inputs and other accounts after main flows;
--max-stepsup to 100 and--timeoutup to 2 hours (PR 1522, PR 1523). - test.fail: mark a test expected to fail; an unexpected pass fails with
UNEXPECTED_PASS(PR 1539). - timeout: 0: means no deadline of its own, as in Playwright (PR 1554).
- Startup: heavy deps load lazily;
e2e --versionand--helpare about 25% faster per the notes (PR 1576). - app.baseUrl: no longer ends in a slash (PR 1479).
The previous release is E2E 0.22. More tools are in the coding agents category.
More from E2E
E2E 0.22 changes post-login screenshots and adds hosted test targets
E2EA breaking screenshot-policy change accompanies BrowserStack and ACP support, pixel drags and selective recordings.
Category: Coding agents
Pricing: Not stated
e2e adds decision-model test filtering
E2EA new decisionFilter asks which tests a change can affect, alongside Cursor plugin support and per-action hooks.
Category: Coding agents
Pricing: Not stated
E2E 0.20.0 adds a watch mode to its test runner
E2EE2E 0.20.0, released October 12, 2026, adds e2e run --watch to re-run tests on save, plus session, TypeScript and shutdown fixes.
Category: Coding agents
Pricing: Open source
E2E mobile 0.12.0 fails iOS offline mode, adds Android fold
E2EE2E's @e2e-dev/mobile 0.12.0, released October 12, 2026, makes iOS offline calls fail, enables Android fold and adds a Limrun device provider.
Category: Coding agents
Pricing: Open source
Questions
What is E2E?
E2E is a TypeScript testing framework for web and mobile apps. The product site and repository describe agent actions that can be recorded and replayed without calling the model again when the cache matches.
Is E2E open source?
Yes. The GitHub API reports Apache-2.0 for tester-army/e2e.
What shipped in the latest release covered here?
e2e@0.23.0, published November 5, 2026. It adds e2e doctor, an out-of-process engine protocol, a resize_viewport agent tool, MCP run_tests, test.fail, and a breaking change where inputValue/isChecked throw ACTION_FAILED on nodes without a value or checked state.
Where are the docs?
As of 0.23.0, CLI help, e2e init output and the MCP server listing point to https://e2e.com/docs.
Filed on Agent Radar. Claims in this note are limited to the sources above.