From 59856249f56b56d68ef87ee180df62025945ada6 Mon Sep 17 00:00:00 2001 From: AnnaXWang <6621137+AnnaXWang@users.noreply.github.com> Date: Thu, 9 Jul 2026 22:12:32 +0000 Subject: [PATCH 1/7] Move scaling guide to introduction/scale with redirect - Move browsers/pools/scaling.mdx to introduction/scale.mdx and retitle to "Scale" - Add it to the Overview nav group and redirect /browsers/pools/scaling to /introduction/scale - Add a "Why reserve browsers with browser pools" section to the pools overview with a backlink to the new page - Update the changelog link to the new path Co-Authored-By: Claude Fable 5 --- browsers/pools/overview.mdx | 6 +++++- changelog.mdx | 2 +- docs.json | 5 +++-- browsers/pools/scaling.mdx => introduction/scale.mdx | 4 ++-- 4 files changed, 11 insertions(+), 6 deletions(-) rename browsers/pools/scaling.mdx => introduction/scale.mdx (98%) diff --git a/browsers/pools/overview.mdx b/browsers/pools/overview.mdx index 3a131c7d..110c0e07 100644 --- a/browsers/pools/overview.mdx +++ b/browsers/pools/overview.mdx @@ -5,6 +5,10 @@ description: "Pre-configure pools of reserved browsers for immediate acquisition 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. +## Why reserve browsers with browser pools + +Browser pools move browser setup out of your critical path: browsers with your full configuration—stealth, proxies, extensions, profiles—are provisioned ahead of time, so acquiring one returns a ready browser instead of paying setup cost on every task. Reserved browsers aren't billed until they're acquired, so an idle pool costs nothing to keep warm. Because every browser in a pool shares the same configuration, your automation code can acquire and run without per-task setup logic. At high concurrency, pools also give you predictable capacity: a fixed number of browsers is reserved for your workload, independent of on-demand creation. See [Scale](/introduction/scale) for how pools fit into production architecture best practices. + ## How browser pools work Browser pools are a way to pre-configure a fixed set of browsers without being charged for them until they are used (i.e. `acquired`). All browsers in the pool share the same settings upon instantiation. @@ -27,7 +31,7 @@ Browser pools are a way to pre-configure a fixed set of browsers without being c - 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. Failing to release browsers may result in unexpected latency when acquiring future browsers. diff --git a/changelog.mdx b/changelog.mdx index 93f021e0..44f1dd97 100644 --- a/changelog.mdx +++ b/changelog.mdx @@ -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. diff --git a/docs.json b/docs.json index 4e29c75c..d9532e35 100644 --- a/docs.json +++ b/docs.json @@ -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": "/" }, @@ -73,7 +74,8 @@ "index", "introduction/create", "introduction/control", - "introduction/observe" + "introduction/observe", + "introduction/scale" ] }, { @@ -162,7 +164,6 @@ "pages": [ "browsers/pools/overview", "browsers/pools/policy-json", - "browsers/pools/scaling", "browsers/pools/faq" ] } diff --git a/browsers/pools/scaling.mdx b/introduction/scale.mdx similarity index 98% rename from browsers/pools/scaling.mdx rename to introduction/scale.mdx index d293a589..6dc76339 100644 --- a/browsers/pools/scaling.mdx +++ b/introduction/scale.mdx @@ -1,6 +1,6 @@ --- -title: "Scaling in Production" -description: "Recommended practices for scaling" +title: "Scale" +description: "Recommended practices for scaling browser automation in production" --- ## Introduction From 149542097d631ecf4271624f97cf089f04d03c85 Mon Sep 17 00:00:00 2001 From: Anna Wang Date: Thu, 9 Jul 2026 15:15:57 -0700 Subject: [PATCH 2/7] Apply suggestion from @AnnaXWang --- introduction/scale.mdx | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/introduction/scale.mdx b/introduction/scale.mdx index 6dc76339..ae255006 100644 --- a/introduction/scale.mdx +++ b/introduction/scale.mdx @@ -1,6 +1,6 @@ --- title: "Scale" -description: "Recommended practices for scaling browser automation in production" +description: "Recommended practices for scaling in production" --- ## Introduction From 26a6badf75e380863a10a335463dc6bcb25f60c8 Mon Sep 17 00:00:00 2001 From: AnnaXWang <6621137+AnnaXWang@users.noreply.github.com> Date: Thu, 9 Jul 2026 22:23:05 +0000 Subject: [PATCH 3/7] Retrigger Mintlify preview build Co-Authored-By: Claude Fable 5 From 24b241c833868c1ef116451bb8f07f68378b43b4 Mon Sep 17 00:00:00 2001 From: AnnaXWang <6621137+AnnaXWang@users.noreply.github.com> Date: Thu, 9 Jul 2026 22:37:47 +0000 Subject: [PATCH 4/7] Add trailing newline to style.css Nudges Mintlify to re-ingest the custom stylesheet; the preview build for this branch was missing it. Co-Authored-By: Claude Fable 5 --- style.css | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/style.css b/style.css index cc256401..4ad20ae4 100644 --- a/style.css +++ b/style.css @@ -247,4 +247,4 @@ html.dark .callout[class*="yellow"] svg { .dark .card:hover { border-color: rgb(223 223 223) !important; -} \ No newline at end of file +} From 5160e714afaa062ac266214b1a587bacfe20d6ea Mon Sep 17 00:00:00 2001 From: Anna Wang Date: Thu, 9 Jul 2026 16:03:58 -0700 Subject: [PATCH 5/7] address comment --- browsers/pools/overview.mdx | 10 +++++++--- 1 file changed, 7 insertions(+), 3 deletions(-) diff --git a/browsers/pools/overview.mdx b/browsers/pools/overview.mdx index 110c0e07..fa32250b 100644 --- a/browsers/pools/overview.mdx +++ b/browsers/pools/overview.mdx @@ -1,13 +1,17 @@ --- 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. -## Why reserve browsers with browser pools +## Why pre-configure browsers with browser pools -Browser pools move browser setup out of your critical path: browsers with your full configuration—stealth, proxies, extensions, profiles—are provisioned ahead of time, so acquiring one returns a ready browser instead of paying setup cost on every task. Reserved browsers aren't billed until they're acquired, so an idle pool costs nothing to keep warm. Because every browser in a pool shares the same configuration, your automation code can acquire and run without per-task setup logic. At high concurrency, pools also give you predictable capacity: a fixed number of browsers is reserved for your workload, independent of on-demand creation. See [Scale](/introduction/scale) for how pools fit into production architecture best practices. +- Browser pools allows you to provision browsers with your specific configuration ahead of time (such as stealth, proxies, extensions, and profiles), rather than the setup latency happening at agent runtime. +- Acquiring a browser from a pool returns a ready browser, faster. +- Reserved browsers aren't billed until they're used, so an idle pool of reserved browers costs nothing. + +See [Scale](/introduction/scale) for how pools fit into best practices for production architecture. ## How browser pools work From 9aaace0ca8f2caa7404258375edc3c5f059106f7 Mon Sep 17 00:00:00 2001 From: Anna Wang Date: Thu, 9 Jul 2026 16:04:57 -0700 Subject: [PATCH 6/7] fix grammar --- browsers/pools/overview.mdx | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/browsers/pools/overview.mdx b/browsers/pools/overview.mdx index fa32250b..c193df1d 100644 --- a/browsers/pools/overview.mdx +++ b/browsers/pools/overview.mdx @@ -7,7 +7,7 @@ Browser pools let you maintain a set of reserved, identical browsers ready for i ## Why pre-configure browsers with browser pools -- Browser pools allows you to provision browsers with your specific configuration ahead of time (such as stealth, proxies, extensions, and profiles), rather than the setup latency happening at agent runtime. +- Browser pools allow you to provision browsers with your specific configuration ahead of time (such as stealth, proxies, extensions, and profiles), rather than the setup latency happening at agent runtime. - Acquiring a browser from a pool returns a ready browser, faster. - Reserved browsers aren't billed until they're used, so an idle pool of reserved browers costs nothing. From ff99594745bfc633da2407745fd59e9f4c131213 Mon Sep 17 00:00:00 2001 From: Anna Wang Date: Thu, 9 Jul 2026 16:13:56 -0700 Subject: [PATCH 7/7] Address comments --- browsers/pools/overview.mdx | 10 ++-------- 1 file changed, 2 insertions(+), 8 deletions(-) diff --git a/browsers/pools/overview.mdx b/browsers/pools/overview.mdx index c193df1d..a5894910 100644 --- a/browsers/pools/overview.mdx +++ b/browsers/pools/overview.mdx @@ -3,15 +3,9 @@ title: "Overview" 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. -## Why pre-configure browsers with browser pools - -- Browser pools allow you to provision browsers with your specific configuration ahead of time (such as stealth, proxies, extensions, and profiles), rather than the setup latency happening at agent runtime. -- Acquiring a browser from a pool returns a ready browser, faster. -- Reserved browsers aren't billed until they're used, so an idle pool of reserved browers costs nothing. - -See [Scale](/introduction/scale) for how pools fit into best practices for production architecture. +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