Skip to content

Sedum

Plain-English Playwright end-to-end tests where Jev resolves each step's target element and judges whether verify claims hold.

CLIprototypeMIT

Overview

Sedum lets you write browser tests as plain-English steps inside ordinary TypeScript, mixed freely with Playwright's page and expect, test data and helper functions. Each ai(...) sentence is resolved on the page without selectors. A decision model handles bounded tasks only: finding the element a sentence refers to (a Choice among the page's offered elements) and judging whether a verify claim holds (Noul). TypeSafe Jev is the default, with a compatible endpoint or Cloudflare Clef as alternatives. Clicking, typing, waiting, verdicts and exit codes stay deterministic on Playwright, and locator results are cached in Git metadata.

A goal mode lets Jev choose each next operation (click, type, done or blocked) and a target, capped at 24 requests, 18 actions and 120 seconds; the planner's 'done' is never a verdict, and a test passes only when an independent verify claim clears two Nouls (holds at 0.75 or above, contradicted flagged at 0.5). List summaries cite the README's estimate that a 20-person team's PR suite costs $38-91 a month on Jev versus $4,875 on a per-step AI platform. Status is pre-alpha.

What the decision model decides

TypeQuestionAnswers
ChoiceWhich page element does this step refer to?—
ChoiceWhat is the next operation: click, type, done or blocked?click · type · done · blocked
Yes / noDoes this verify claim hold on the page?—
Yes / noIs this claim contradicted by the page?—

How it works

  1. Write tests with plain-English ai(...) steps
  2. Jev picks the element for each step from offered elements
  3. Playwright performs the action deterministically
  4. Verify claims pass only when holds >= 0.75 and contradiction is not flagged

Strengths

  • No selectors to maintain
  • Large cost difference versus per-step AI platforms per the README estimate
  • Deterministic execution and exit codes
  • Cached locators reduce repeat calls

Caveats

  • Pre-alpha; format may change
  • Windows experimental
  • Page content is sent to the provider

Getting started

npm install -D sedum-cli && npx sedum init && npx sedum browsers install chromium, set TYPESAFE_API_KEY, then npx sedum run tests/.

At a glance

Type
CLI
Status
prototype
Language
TypeScript
Runtime
Node CLI on Playwright
Has code
yes
Has tests
yes
License
MIT

Use cases and integrations

How curated lists describe it

  • Browser end-to-end testing: in goal mode each turn asks one Jev `Choice` for the next operation (click, type, done or blocked) plus a speculative target among the page's offered elements, capped at 24 requests, 18 actions and 120 s, and the test passes only when an independent verify claim clears two `Noul`s (holds ≥ 0.75, contradicted flagged at ≥ 0.5), since the planner's done is never a verdict; authored-step tests reuse the same `Choice` to resolve each plain-English step, and with your own API key a 20-person team's PR suite costs $38–$91 a month vs $4,875 on a per-step AI platform.

    yibie/awesome-jev
  • Unofficial open-source end-to-end AI testing tool for Playwright: in goal mode Jev picks each next action and its target, plain-English steps use a Jev Choice to find their element, and verify claims are two Nouls (holds, contradicted), while clicks, waits, verdicts and exit codes stay deterministic

    AnotiaWang/awesome-decision-models
  • Plain-English browser e2e tests cheap enough to run on every PR. Built on Jev and Playwright, open source, bring your own key.

    logicrw/awesome-jev-projects
  • In goal mode Jev picks each next browser action and its target; in authored plain-English test steps it picks the element each step refers to, and for verify claims whether they hold or are contradicted; Playwright performs the action, and code turns the probabilities into a pass, a low-confidence pass or a fail.

    cobanov/awesome-jev
  • Plain-English browser end-to-end tests on Playwright, cheap enough to run on every pull request: Jev resolves what each sentence refers to and whether a claim holds on the page. TypeSafe, a compatible endpoint, or Cloudflare Clef.

    MrJev/awesome-jev

Frequently asked questions

What does Jev decide in Sedum?

Which element a plain-English step refers to, the next action in goal mode, and whether verify claims hold.

Is the planner's 'done' trusted?

No; a test passes only when an independent verify claim clears its thresholds.

Which providers work?

TypeSafe Jev by default, a compatible TypeSafe endpoint, or Cloudflare Clef.

Related projects

  • Browser QA where Playwright drives and records while Jev judges assertions, matches controls to intent and picks goal-directed clicks.

    Agent skillbetaTypeScript
  • Playwright TypeScript project using Jev for semantic assertions, element picking, goal-driven steps and test failure classification.

    ProjectprototypeTypeScript
  • Evidence-driven frontend QA where Jev picks browser actions while code checks DOM, HTTP and database contracts.

    AppbetaPython
  • 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