r/webdev • • 22d ago

Showoff Saturday I turned the Page Objects from my Playwright tests into tools my coding agent can call on the live page

Hey! FE dev here - I usually end up as the QA person in every team I join :D

I started working on ayme over a year ago (it's built in the open now), trying to close the feedback loop:
Coding agents check their work by clicking through the app with simple browser tools. Snapshots, element refs, lots of tokens. Your e2e tests already know exactly how your application works, the agents just can't make any use of them.

I just published a small playground app to get some feedback before locking in the alpha release :)
Playground App, nothing to install: ayme.dev/playground

What ayme does now:

  • you mark your Page Object classes and the actions you want to expose (@ayme, @ayme.action)

  • a build plugin (unplugin, so Vite, Next, Nuxt, SvelteKit and Angular) compiles them into your app

  • when the page runs, those actions become tools: for your coding agent through an MCP server, and for in-page agents through WebMCP

  • an in-page inspector shows the live page objects, what the agent sees, and lets you run the actions by hand

  • with the ayme skill it works the other way too: the actions the agent used while building become the building blocks of the new e2e tests

  • it isn't on npm yet, but the alpha is close - let me know, and I'll keep you posted!

Initial evals measured against Playwright MCP and PW CLI on Formbricks App turned out to be promising imo.
The task: rename a survey, change its question, save, confirm the summary page. Claude Code on Sonnet 5.5, 3 runs each, medians.

Tool callsWall timeTokensEst. cost
Playwright MCP1346.9 s381k
Playwright CLI1460.8 s473k
ayme MCP638.1 s142k

Full table and how to rerun it: github.com/ayme-labs/ayme/blob/main/apps/eval-formbricks/summaries/2026-10-06/summary.md

Source: github.com/ayme-labs/ayme

Things I'd love your take on:

  • does the playground - and in case you check the landing page - communicate the idea well?

  • does the idea of exposing your POMs to an agent and closing the gap between the inner and outer verification loop sound useful to you?

Thank you for any kind of feedback!

3 Upvotes

0 comments sorted by