Video wird geladen...
Video konnte nicht geladen werden
Playwright CLI + Jev is 98% cheaper and TWICE as fast compared Playwright MCP Decided to test out Jev by TypeSafe AI and hook it up to Playwright CLI. I compared the results with Playwright MCP to see how both workflows handle a fuzzy instruction such as: "Create new... show more
41,428 Aufrufe • vor 11 Tagen •via X (Twitter)
14 Kommentare

If you could run this with a local Laya model or CLM from huggingface, that’d make it 100% free 😊

i was wondering if this would work.

A big chunk of that saving is context: the tool schemas ride along on every turn, while a CLI only pays for the calls it actually makes.

This lines up with what I keep seeing. Thin CLI wrappers around Playwright win on cost and latency for fuzzy browser tasks. Full MCP stacks add flexibility, but the round trips and context bloat show up fast. The sweet spot for me is a headed browser session you keep alive, plus a small action API (map, click, type, wait, screenshot) so steps stay replayable. Fresh profiles every run is where logins die. I wrote up that bring-your-own-session approach here: Curious whether your CLI path kept cookies across the fuzzy task or re-authed each time.

I also tried it myself, it's definitely making things cheaper for quick, trivial tasks. But quite early it showed that Jev is a non-thinking model so I had to give it an out to fallback to llm when it couldn't complete the goal or had to fill freetext values. Now I'm playing with exposing my Page Object to Jev so it can call their actions directly. Works surprisingly well for complex flows.

Jev’s efficiency is impressive, but the real advantage lies in adaptability. Playwright CLI + Jev can handle more complex scenarios with less friction, which is often overlooked. Speed is great, but versatility can be a game changer.

wait, playwright cli can give browser snapsot?

Yup

okay I will check again, I was experimenting with a self healing UI testing scripts and decided to go with Playwright MCP because Playwright CLI can’t do browser snapshots (at least not the same as how MCP does it - maybe), but I should actually try

Why not run it locally. Meet 🤝 Kevin

98% cheaper is the kind of result that makes the receipt matter. i’d log the exact Playwright action, latency, and failure branch too. did Jev hit the same happy path or a different retry gate?

same paths. Jev actually did more tool calls because it did extra re-checks before filling the input fields and checks browser state before every action, so if that part could be optimized it might slash the execution time even further the mcp flow goes like this: Snapshot → LLM chooses action → MCP executes → updated snapshot → repeat the jev flow goes like this: DOM observation → Jev chooses action → CLI executes → updated observation → repeat

extra re-checks before input fill are the agent paying for its own uncertainty. snapshot once, act on the snapshot, and only re-read when the write actually lands.

the cli snapshot is text so jev never sees the render, two elements with the same accessible name look identical

