Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
8 changes: 5 additions & 3 deletions browsers/pools/overview.mdx
Original file line number Diff line number Diff line change
@@ -1,9 +1,11 @@
---
title: "Overview"
description: "Pre-configure pools of reserved browsers for immediate acquisition"
description: "Pre-configure pools of reserved browsers"
---

Browser pools let you maintain a set of reserved, identical browsers ready for immediate use. Use them to set your preferred browser configuration in advance, allowing you to minimize browser start-up latency and scale your workloads in production.
Browser pools let you maintain a set of reserved, identical browsers ready for immediate use. Use them to set your preferred browser configuration in advance (such as stealth, proxies, extensions, and profiles), allowing you to minimize browser start-up latency and scale your workloads in production.

Acquiring a browser from a pool is faster than creating a browser directly. Reserved browsers and on-demand browsers share the same concurrency limit, and reserved browsers aren't billed until they're used. See [Scale](/introduction/scale) for how pools fit into best practices for production architecture.

## How browser pools work

Expand All @@ -27,7 +29,7 @@ Browser pools are a way to pre-configure a fixed set of browsers without being c
</Info>
</Step>
<Step title="Release a browser">
When you're done with a browser, release it back to the pool. this step is important; otherwise, the browser will continue to be in an `acquired` state until it times out.
When you're done with a browser, release it back to the pool. This step is important; otherwise, the browser will continue to be in an `acquired` state until it times out.

<Info>
Failing to release browsers may result in unexpected latency when acquiring future browsers.
Expand Down
2 changes: 1 addition & 1 deletion changelog.mdx
Original file line number Diff line number Diff line change
Expand Up @@ -369,7 +369,7 @@ For API library updates, see the [Node SDK](https://github.com/onkernel/kernel-n
- We released [skills](https://skills.sh/?q=kernel/skills) for Kernel, so you can easily build browser agents directly from Claude Code.

## Documentation updates
- We published a [Scaling in Production guide](/browsers/pools/scaling) with recommendations and best practices for handling high-concurrency workloads. Read it to learn how and when to use browser pools versus on-demand browsers, and see code samples for production implementations.
- We published a [Scaling in Production guide](/introduction/scale) with recommendations and best practices for handling high-concurrency workloads. Read it to learn how and when to use browser pools versus on-demand browsers, and see code samples for production implementations.
- Added a new [integration guide](https://www.kernel.sh/docs/integrations/agent-browser) for [Agent Browser](https://github.com/vercel-labs/agent-browser), Vercel's headless browser automation CLI, which has built-in support for Kernel browsers.
</Update>

Expand Down
5 changes: 3 additions & 2 deletions docs.json
Original file line number Diff line number Diff line change
Expand Up @@ -13,6 +13,7 @@
{ "source": "/browsers/hardware-acceleration", "destination": "/browsers/gpu-acceleration" },
{ "source": "/integrations/computer-use", "destination": "/integrations/computer-use/overview" },
{ "source": "/browsers/create-a-browser", "destination": "/introduction/create" },
{ "source": "/browsers/pools/scaling", "destination": "/introduction/scale" },
{ "source": "/introduction", "destination": "/" },
{ "source": "/quickstart", "destination": "/" },
{ "source": "/home", "destination": "/" },
Expand Down Expand Up @@ -73,7 +74,8 @@
"index",
"introduction/create",
"introduction/control",
"introduction/observe"
"introduction/observe",
"introduction/scale"
]
},
{
Expand Down Expand Up @@ -162,7 +164,6 @@
"pages": [
"browsers/pools/overview",
"browsers/pools/policy-json",
"browsers/pools/scaling",
"browsers/pools/faq"
]
}
Expand Down
4 changes: 2 additions & 2 deletions browsers/pools/scaling.mdx → introduction/scale.mdx
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
---
title: "Scaling in Production"
description: "Recommended practices for scaling"
title: "Scale"
description: "Recommended practices for scaling in production"

Copy link
Copy Markdown

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Scale page uses CDP examples

Medium Severity

This PR moves the scaling guide to introduction/scale and lists it under Overview with Create, Control, and Observe, but the architecture accordions still drive browsers only via chromium.connectOverCDP. For intro/overview pages, docs should treat the Playwright Execution API as the default Playwright pattern, like introduction/create and introduction/control.

Fix in Cursor Fix in Web

Triggered by learned rule: Promote Playwright Execution API over direct CDP connections in examples

Reviewed by Cursor Bugbot for commit 1495420. Configure here.

---
## Introduction

Expand Down
2 changes: 1 addition & 1 deletion style.css
Original file line number Diff line number Diff line change
Expand Up @@ -247,4 +247,4 @@ html.dark .callout[class*="yellow"] svg {

.dark .card:hover {
border-color: rgb(223 223 223) !important;
}
}
Loading