Browser Use 1.0.0 rebuilds its agent on CDP and runs 2 to 3 times faster

4 days ago

Browser Use 1.0.0 rebuilds its agent: the model writes Python in one persistent REPL that runs straight on Chrome DevTools Protocol (CDP). 80% of the library is gone, and on the same models the agent finishes more tasks at a third of the cost or less, in under half the time. Browser() now starts a Browser Use Cloud browser, the default model is bu-fast, and one Browser Use key replaces per-provider keys. Release notes: https://github.com/browser-use/browser-use/releases/tag/1.0.0 Migration guide (MIGRATING.md): https://github.com/browser-use/browser-use/blob/main/MIGRATING.md Full changelog: https://github.com/browser-use/browser-use/compare/0.13.14...1.0.0

Ask about this presentation

Chapters

  1. 0:00Python straight on Chrome
  2. 0:13The new agent
  3. 0:1580% of the library deleted
  4. 0:28More tasks, less cost
  5. 0:44New defaults
  6. 0:46Cloud browser by default
  7. 1:01One key, default model
  8. 1:14Your own model
  9. 1:27Old options fail early
  10. 1:42Also new
  11. 1:43Typed results, files, secrets
  12. 1:58The bu command is gone
  13. 2:12Long turns keep going
  14. 2:26Who has to wait
  15. 2:27Exact pins
  16. 2:42Still waiting
  17. 2:54Where I'd start
Show transcript
  1. Browser Use 1.0 starts over. Your agent now writes Python in one persistent REPL, and every cell runs straight on Chrome DevTools Protocol, with nothing translating in between.

    Slide text
    + 01
    Browser Use

    Browser Use 1.0.0 rebuilds its agent on raw CDP

    The agent writes Python in one REPL, straight on Chrome DevTools Protocol

    Release notes · browser-use 1.0.0
  2. First, the new agent.

    Slide text
    + 01
    Browser Use
    01
    Release notes · browser-use 1.0.0
  3. To get there, the team deleted eighty percent of the library. The DOM serializer and the action schema are gone. The model writes a cell, Chrome runs it, and the output goes back.

    Slide text
    + 01
    Browser Use

    136,866 lines deleted, 80% of the library

    ● task
    │
    ● model writes a cell    new_tab(url); bu.click(41)
    │
    ● REPL runs it on Chrome (CDP), output back to the model
    │
    ✓ finish(result)
    Release notes · browser-use 1.0.0
  4. On the same models, the new agent finishes far more tasks. Luna goes from passing about four tasks in ten to about seven. Every task costs a third as much or less, and takes less than half the time.

    Slide text
    + 01
    Browser Use

    Same models, more tasks, a third of the cost

    Score, cost per task and minutes per task for 0.x and 1.0 on Luna high, Terra medium and Sol medium
    Release notes · browser-use 1.0.0 · benchmark chart
  5. Next, the new defaults.

    Slide text
    + 02
    Browser Use
    02
    Release notes · browser-use 1.0.0
  6. The default browser moved to the cloud. A plain browser with no arguments now starts on Browser Use Cloud. Tasks on localhost or a private network still need a local Chromium, and the agent warns you once.

    Slide text
    + 02
    Browser Use

    Browser() now starts a Browser Use Cloud browser

    Localhost and private IPs still need a local Chromium

    Release notes · browser-use 1.0.0 · What changes by default
  7. You no longer have to pick a model. Leave it empty and the agent runs bu-fast on the Browser Use gateway. So one Browser Use key replaces a separate key for every model provider.

    Slide text
    + 02
    Browser Use

    Leave the model empty and it runs bu-fast

    One Browser Use key replaces a key per provider

    Release notes · browser-use 1.0.0 · What changes by default
  8. Your own model still works. OpenAI, Anthropic and Google each have a chat class, and any Pydantic AI model string works too, Groq included. LangChain chat models are rejected now.

    Slide text
    + 02
    Browser Use

    Your own model still works

    • + Chat classes for OpenAI, Anthropic and Google
    • + Any Pydantic AI model string, Groq included
    • + LangChain chat models now raise a TypeError
    Release notes · browser-use 1.0.0 · What changes by default
  9. Old code fails loudly and early. An option the new agent can't honor raises a type error before a browser starts or anything is billed, and every removed import names what replaced it.

    Slide text
    + 02
    Browser Use

    Old options fail before anything is billed

    • + An option 1.0 can't honor raises a TypeError
    • + A removed import names its replacement
    • + Unused 0.x tuning knobs warn once
    Release notes · browser-use 1.0.0 · Upgrading from 0.x
  10. What else is new.

    Slide text
    + 03
    Browser Use
    03
    Release notes · browser-use 1.0.0
  11. Hand the agent a Pydantic model and you get typed results back. It uploads and downloads files on local and cloud browsers, and it keeps secrets out of its output. That redaction is not a sandbox.

    Slide text
    + 03
    Browser Use

    Typed results, files and secrets

    • + Typed results from your own Pydantic model
    • + Uploads and downloads on local and cloud browsers
    • + Secrets redacted from output, though it is not a sandbox
    Release notes · browser-use 1.0.0 · Also new
  12. The short bu and browser commands are gone, because they broke uv tool installs beside other tools. The command is browser-use now. It pipes Python straight to browser harness and runs the MCP server.

    Slide text
    + 03
    Browser Use

    The bu and browser commands are gone

    • + browser-use pipes Python to browser-harness
    • + It also runs the MCP server and installs the agent skill
    • + browser-use init was removed
    Release notes · browser-use 1.0.0 · Behavior changes · Also new
  13. Long bu-smart turns no longer stop at five minutes. Every OpenAI Responses request now streams for up to fifteen minutes, and a failure hidden in a successful response gets one retry.

    Slide text
    + 03
    Browser Use

    Long bu-smart turns no longer stop at 300 seconds

    • + Every OpenAI Responses request streams, up to 930 s
    • + A failure inside an HTTP 200 is retried once
    • + An oversized request compacts once and is sent again
    Release notes · browser-use 1.0.0 · Reliability
  14. And who has to wait.

    Slide text
    + 04
    Browser Use
    04
    Release notes · browser-use 1.0.0
  15. Every dependency is pinned to the exact version the tests ran. So a project that needs a different Pydantic, MCP or Pillow can't install Browser Use alongside it. The team wants to hear which pin blocks you.

    Slide text
    + 04
    Browser Use

    1.0 pins every dependency exactly

    A project that needs another pydantic, mcp or pillow version can't install it alongside

    Release notes · browser-use 1.0.0 · Known issues
  16. Cloud browsers can't emulate another screen size yet, so that still needs a local Chromium. And Google's gen AI library stays below version three until Pydantic AI supports it.

    Slide text
    + 04
    Browser Use

    Cloud browsers can't change the viewport yet

    • + Another viewport needs a local Chromium
    • + google-genai stays below 3 until Pydantic AI supports it
    Release notes · browser-use 1.0.0 · Known issues
  17. I'd start any new browser agent on 1.0, because the same model finishes more tasks for a third of the cost. For older code, the migration guide maps every old option to its new answer, and the old versions stay installable.

    Slide text
    + 04
    Browser Use

    I'd start any new browser agent on 1.0

    Migration guide: MIGRATING.md
    0.x stays installable
    github.com/browser-use/browser-use
    Release notes · MIGRATING.md · browser-use/browser-use

What happened in AI today, in your inbox

One short email each evening. Read it and you’re caught up.

Built with ❤️ in New York