Skip to content

playjev

PlayJev (filedcom): Stagehand-style natural-language browser automation for Playwright where Jev makes the browser decisions.

Projectprototype

Overview

PlayJev by filedcom is a TypeScript library for controlling websites with plain-English instructions while keeping the full Playwright API. You wrap an existing Playwright page and call act to click controls, navigate, fill forms or choose between visible options, and check to ask questions about page state. The README describes it as Stagehand, but with Jev making the browser decisions instead of a generative LLM. It is a different project from the PlayJev game model.

A 48-second demo shows it running public Browserbase/Stagehand evaluation pages: selecting checkboxes, operating a custom dropdown, filling a cross-origin iframe form and navigating multiple pages. It is experimental, with an API still evolving as it is tested on broader benchmarks, and currently requires Chromium/CDP and TypeSafe Jev access. It needs Node.js 20+.

What the decision model decides

TypeQuestionAnswers
ChoiceWhich page element should be acted on for this instruction?(inferred)—
Yes / noDid the form submit successfully?yes · no

How it works

  1. Wrap a Playwright page with playjev().
  2. Call page.act with a plain-English instruction.
  3. Jev chooses the element and action from the page.
  4. Use page.check to verify page state.

Strengths

  • Keeps the full Playwright API.
  • No generative LLM for browser decisions.
  • Handles iframes and custom controls in demos.

Caveats

  • Experimental, evolving API.
  • Chromium/CDP only; requires a TypeSafe key.

Getting started

npm install @filed/playjev playwright && npx playwright install chromium, then export TYPESAFE_API_KEY.

At a glance

Type
Project
Status
prototype
Language
TypeScript
Runtime
Node, Playwright
Has code
yes

Use cases and integrations

How curated lists describe it

  • Natural-language browser automation for Playwright, in the shape of Stagehand. Not the same project as the PlayJev decision model below.

    MrJev/awesome-jev

Frequently asked questions

How is it different from Stagehand?

Jev makes the browser decisions instead of a generative LLM.

Is it the PlayJev game model?

No, it is a separate browser automation library.

Which browsers are supported?

Chromium via CDP.

Related projects

  • CodexQA browser skill that indexes in-page controls and has Jev pick the operation and target each step, with no screenshots needed.

    Agent skillbeta
  • Goal-driven browser agent where each step is one Jev choice over the page's controls, then reviews the run for root causes.

    AppbetaTypeScript
  • Chinese UI test framework where Jev scores candidate page elements for each step of a natural-language test case.

    ProjectbetaPython
  • Cucumber runner where Jev resolves each Gherkin step against the live page and Playwright executes it, so tests need only the .feature file.

    ProjectbetaTypeScript
  • Browser tests written as user steps: Jev finds each control once, the path is recorded, and replays run without the model.

    ProjectbetaTypeScript
  • Community runner for Midscene Test adding jevAct, jevAssert and jevWaitFor nodes that use Jev over a bounded, non-text action space.

    PluginbetaTypeScript