Skip to content
Applied AI, product engineering, and notes from the workLearn more

Intent · Playwright-backed

Blop

Intent-based browser testing backed by real Playwright browsers. Describe what to verify in a .blop.ts file; an agent drives a real browser to figure out how. Run locally or in CI, and get results.json, events.jsonl, JUnit XML, and screenshots. The control plane is early access.

  • Intent, not selectors
  • Tests as code
  • Local + CI
  • Chromium · Firefox · WebKit
Current Blop web testing and failure-clustering interface
3Browser engines
.blop.tsTest format
4Output formats
CIWhere it runs

How Blop works

A blop test is a TypeScript file that reads like intent. The agent drives a real browser over Playwright with controlled tools — no script execution, no shell escapes.

01

Tests as code in your repo

A .blop.ts file exports agentTest's under describe. agent.goto and agent.goal build a numbered goal list the agent receives when the runner reaches the test. Version-controlled, code-reviewed, yours to edit or delete.

02

Real Playwright browsers

Chromium, Firefox, or WebKit through controlled tools. Intent keeps goals readable while the agent finds the interaction in the current interface.

03

CI-native reporters

Every run writes results.json, an events.jsonl stream, JUnit XML, and screenshots to .blop/. The result is a versioned contract, so other frameworks can emit it too, once adapters ship.

04

Control plane — early access

When you want hosted history, the same result schema uploads to the Blop platform: failures cluster across runs, tests become synthetic checks, and the agent can open fix PRs. Auto-fix is early access, not shipped.

What is ready, and what is coming

The framework and CLI are the workhorse today. The control plane and agent-authored fix PRs are early access — tracked clearly, not as finished products.

  • CLI and .blop.ts runnerShipped

    blop init, blop test, blop watch, blop list, blop skills — one binary, every workflow.

  • Browser harness (Playwright)Shipped

    Chromium, Firefox, WebKit through controlled native tools; @blopai/browser-harness for persistent CLI sessions and containers.

  • CI-native reportersShipped

    results.json, events.jsonl, JUnit XML, and screenshots in .blop/ per run.

  • Control planeEarly access

    Hosted history, failure clustering, synthetic checks, and agent fix PRs. Early access, not generally available.

  • Adapters for other frameworksPlanned

    The result payload is a versioned contract; adapters that emit the same schema are planned, not shipped yet.

Run your first test in ten minutes

Add blop to your project, set your provider credentials, and run blop test. Tests stay as code in your repo from day one.