# AI use cases for Jev Browser (Ying-Kai-Liao/jev-browser)

Repo: [Ying-Kai-Liao/jev-browser](https://github.com/Ying-Kai-Liao/jev-browser) | Use cases: 4 | Page: https://dedupedai.com/use-cases/ying-kai-liao-jev-browser/

An browser automation library and MCP server where an LLM plans each step and the Jev model picks the page element, action, and value, with Playwright doing the clicks and typing.

This file holds every use case of this repo. Each one starts with a "## " heading and ends with its URL.

- Log in and fill web forms from Claude Code: https://dedupedai.com/use-cases/ying-kai-liao-jev-browser/log-in-and-fill-web-forms-from-claude/
- Pull the part of a long article that answers a question: https://dedupedai.com/use-cases/ying-kai-liao-jev-browser/pull-the-answer-from-a-long-article/
- Check a page layout at phone width: https://dedupedai.com/use-cases/ying-kai-liao-jev-browser/check-a-page-at-phone-width/
- Stop a checkout before it places an order: https://dedupedai.com/use-cases/ying-kai-liao-jev-browser/stop-before-placing-an-order/

## How to log in and fill web forms from Claude Code with Jev Browser

Repo: [Ying-Kai-Liao/jev-browser](https://github.com/Ying-Kai-Liao/jev-browser) | Difficulty: Intermediate | Time: 30 minutes | Basis: From the README

Give Claude one outcome such as logging in or submitting a form, and let the browser tool run the steps.

**Who it is for:** A developer or ops person who repeats the same web form or login work and wants Claude Code to do it through a browser.

**The problem:** Clicking through multi-step forms by hand is slow, and a plain script breaks when the page layout changes.

**The outcome:** Claude calls browser_do with a goal and values, and gets back a status such as done, needs_login, or needs_confirmation along with the list of actions taken.

### Steps

1. Run `npx playwright install chromium` once.
2. Run `claude mcp add jev-browser -e TYPESAFE_API_KEY=your-key -- npx -y -p jev-browser jev-browser-mcp` and replace your-key with your key.
3. Restart Claude Code and ask it to open the target site with browser_open.
4. Ask Claude to call browser_do with the goal and a values object holding the email and password or the form fields.
5. Check the returned status and the actions list before you rely on the result.

### Prompt to paste into your agent

```text
Use the jev-browser MCP server from the Ying-Kai-Liao/jev-browser repo to open <target-url> and run browser_do with the goal "<outcome>" and values <values-object>. Return the status, url, and actions list. Verify that the status is done before reporting success.
```

### Caveat

The README says Jev only answers with probabilities and never writes text, so every typed value has to come from the values you pass in.

Risk, credentials: Passwords passed in values are kept out of the TypeSafe request, but the agent still logs into your account, so use a test account first.

Dual-use notice: only use this on software, sites and systems you own or are authorized to test.

Disclaimer: Third-party repos we don't own or vouch for. AI-generated use cases can be wrong: review everything and run at your own risk. Full text: https://dedupedai.com/disclaimer/

URL: https://dedupedai.com/use-cases/ying-kai-liao-jev-browser/log-in-and-fill-web-forms-from-claude/

## How to pull the part of a long article that answers a question with Jev Browser

Repo: [Ying-Kai-Liao/jev-browser](https://github.com/Ying-Kai-Liao/jev-browser) | Difficulty: Intermediate | Time: 30 minutes | Basis: From the README

Extract only the blocks of a long page that answer your question, in the page's own words.

**Who it is for:** A researcher or analyst who needs a specific fact from a long article, documentation page, or reference page.

**The problem:** Long pages cost many tokens to read in full, and a snapshot shows only the text in the viewport.

**The outcome:** A shorter text containing the page's own blocks that help answer the question, with dropped blocks marked in place.

### Steps

1. Run `git clone https://github.com/Ying-Kai-Liao/jev-browser && cd jev-browser`.
2. Run `npm install`.
3. Run `npm run setup`.
4. Run `cp .env.example .env` and add your TYPESAFE_API_KEY or OPENROUTER_API_KEY.
5. Run `node examples/read-demo.mjs "https://..." "your question"` with your URL and question. (inferred, check the README)

### Prompt to paste into your agent

```text
In the Ying-Kai-Liao/jev-browser repo, run node examples/read-demo.mjs with <url> and the question <question>. Return the returned text. Verify that the answer appears in the text and check the count of dropped blocks.
```

### Caveat

The README says browser_read skips Jev entirely on short pages under 8,000 characters, so it helps only with long articles and documentation.

Dual-use notice: only use this on software, sites and systems you own or are authorized to test.

Disclaimer: Third-party repos we don't own or vouch for. AI-generated use cases can be wrong: review everything and run at your own risk. Full text: https://dedupedai.com/disclaimer/

URL: https://dedupedai.com/use-cases/ying-kai-liao-jev-browser/pull-the-answer-from-a-long-article/

## How to check a page layout at phone width with Jev Browser

Repo: [Ying-Kai-Liao/jev-browser](https://github.com/Ying-Kai-Liao/jev-browser) | Difficulty: Beginner | Time: 15 minutes | Basis: From the README

Resize the browser to a phone size, open a page, and capture what it looks like.

**Who it is for:** A web developer or designer who needs to see how a page looks on a small screen without a device.

**The problem:** Checking a responsive layout by hand means resizing windows and taking screenshots one at a time.

**The outcome:** A PNG screenshot of the page at the phone size, plus a snapshot of the elements visible at that size.

### Steps

1. Run `npx playwright install chromium` once.
2. Run `claude mcp add jev-browser -e TYPESAFE_API_KEY=your-key -- npx -y -p jev-browser jev-browser-mcp` and replace your-key with your key.
3. Ask Claude to call browser_open with the URL and viewport "390x844".
4. Ask Claude to call browser_screenshot and then browser_snapshot to list the visible elements.
5. Review the screenshot for layout problems.

### Prompt to paste into your agent

```text
Use the jev-browser MCP server to call browser_open on <url> with viewport "390x844", then call browser_screenshot. Return the PNG and a short list of layout problems. Verify that the screenshot shows the phone-sized layout before you report it.
```

### Caveat

The README says the viewport size sticks for later calls, so you must reset it with another browser_open if you go back to a desktop check.

Dual-use notice: only use this on software, sites and systems you own or are authorized to test.

Disclaimer: Third-party repos we don't own or vouch for. AI-generated use cases can be wrong: review everything and run at your own risk. Full text: https://dedupedai.com/disclaimer/

URL: https://dedupedai.com/use-cases/ying-kai-liao-jev-browser/check-a-page-at-phone-width/

## How to stop a checkout before it places an order with Jev Browser

Repo: [Ying-Kai-Liao/jev-browser](https://github.com/Ying-Kai-Liao/jev-browser) | Difficulty: Intermediate | Time: 45 minutes | Basis: From the README

Run a cart and checkout flow that pauses at any irreversible button until you approve it.

**Who it is for:** A shopper or small team member who wants an agent to prepare an order but not to submit it without a human check.

**The problem:** An agent that clicks through checkout could place an order by mistake, and a plain script has no pause step.

**The outcome:** The run stops with needs_confirmation and shows the pending action, so you can approve or cancel it.

### Steps

1. Run `npx playwright install chromium` once.
2. Run `claude mcp add jev-browser -e TYPESAFE_API_KEY=your-key -- npx -y -p jev-browser jev-browser-mcp` and replace your-key with your key.
3. Ask Claude to call browser_do with the cart and checkout goal, without allow_irreversible.
4. When the status is needs_confirmation, read the pending field and confirm with the user.
5. Re-call browser_do with allow_irreversible set to true only if the user approves the order.

### Prompt to paste into your agent

```text
Use the jev-browser MCP server to run browser_do on <store-url> with the goal "<checkout-goal>". Stop when the status is needs_confirmation and return the pending action. Verify with the user before you re-call with allow_irreversible true.
```

### Caveat

The README reports that across about 200 rounds it flagged only the saucedemo Finish button, so it may not catch every irreversible action on other sites.

Risk, credentials: A checkout run uses saved payment or login details, so run it only on accounts you control and review the pending action first.

Dual-use notice: only use this on software, sites and systems you own or are authorized to test.

Disclaimer: Third-party repos we don't own or vouch for. AI-generated use cases can be wrong: review everything and run at your own risk. Full text: https://dedupedai.com/disclaimer/

URL: https://dedupedai.com/use-cases/ying-kai-liao-jev-browser/stop-before-placing-an-order/
