From 2b3c5c26cdc26a6faea6767a59ade869815e241f Mon Sep 17 00:00:00 2001 From: mikewong23571 Date: Thu, 19 Mar 2026 15:40:33 +0800 Subject: [PATCH] docs: create providers/ section with dedicated provider pages (#928) MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Add dedicated documentation pages for each cloud browser provider: Browser Use, Browserbase, Browserless, and Kernel (sorted alphabetically). Uses providers/ path per maintainer feedback. - Fix Kernel defaults to match source code (KERNEL_HEADLESS=true, KERNEL_STEALTH=false) — README had these inverted - Add Providers section to sidebar navigation - Simplify cdp-mode cloud providers section to link to new pages Fixes part of #774 Co-authored-by: Claude Opus 4.6 --- docs/src/app/cdp-mode/page.mdx | 22 +--------- docs/src/app/providers/browser-use/layout.tsx | 7 ++++ docs/src/app/providers/browser-use/page.mdx | 24 +++++++++++ docs/src/app/providers/browserbase/layout.tsx | 7 ++++ docs/src/app/providers/browserbase/page.mdx | 24 +++++++++++ docs/src/app/providers/browserless/layout.tsx | 7 ++++ docs/src/app/providers/browserless/page.mdx | 39 ++++++++++++++++++ docs/src/app/providers/kernel/layout.tsx | 7 ++++ docs/src/app/providers/kernel/page.mdx | 41 +++++++++++++++++++ docs/src/lib/docs-navigation.ts | 9 ++++ docs/src/lib/page-titles.ts | 4 ++ 11 files changed, 171 insertions(+), 20 deletions(-) create mode 100644 docs/src/app/providers/browser-use/layout.tsx create mode 100644 docs/src/app/providers/browser-use/page.mdx create mode 100644 docs/src/app/providers/browserbase/layout.tsx create mode 100644 docs/src/app/providers/browserbase/page.mdx create mode 100644 docs/src/app/providers/browserless/layout.tsx create mode 100644 docs/src/app/providers/browserless/page.mdx create mode 100644 docs/src/app/providers/kernel/layout.tsx create mode 100644 docs/src/app/providers/kernel/page.mdx diff --git a/docs/src/app/cdp-mode/page.mdx b/docs/src/app/cdp-mode/page.mdx index 6b23fc7..6cc8010 100644 --- a/docs/src/app/cdp-mode/page.mdx +++ b/docs/src/app/cdp-mode/page.mdx @@ -111,28 +111,10 @@ This enables control of: ## Cloud providers -Use cloud browser infrastructure when local browsers aren't available: +Use the `-p` flag to connect to a cloud browser provider instead of launching a local browser: ```bash -# Browserbase -export BROWSERBASE_API_KEY="your-api-key" agent-browser -p browserbase open https://example.com - -# Browser Use -export BROWSER_USE_API_KEY="your-api-key" -agent-browser -p browseruse open https://example.com - -# Kernel -export KERNEL_API_KEY="your-api-key" -agent-browser -p kernel open https://example.com - -# Browserless -export BROWSERLESS_API_KEY="your-api-key" -agent-browser -p browserless open https://example.com - -# Or via environment variable -export AGENT_BROWSER_PROVIDER=browserbase -agent-browser open https://example.com ``` -The `-p` flag takes precedence over `AGENT_BROWSER_PROVIDER`. +See the [Providers](/providers/browser-use) section for setup and configuration of each supported provider: [Browser Use](/providers/browser-use), [Browserbase](/providers/browserbase), [Browserless](/providers/browserless), and [Kernel](/providers/kernel). diff --git a/docs/src/app/providers/browser-use/layout.tsx b/docs/src/app/providers/browser-use/layout.tsx new file mode 100644 index 0000000..f2767b6 --- /dev/null +++ b/docs/src/app/providers/browser-use/layout.tsx @@ -0,0 +1,7 @@ +import { pageMetadata } from "@/lib/page-metadata"; + +export const metadata = pageMetadata("providers/browser-use"); + +export default function Layout({ children }: { children: React.ReactNode }) { + return children; +} diff --git a/docs/src/app/providers/browser-use/page.mdx b/docs/src/app/providers/browser-use/page.mdx new file mode 100644 index 0000000..a9d3533 --- /dev/null +++ b/docs/src/app/providers/browser-use/page.mdx @@ -0,0 +1,24 @@ +# Browser Use + +[Browser Use](https://browser-use.com) provides cloud browser infrastructure for AI agents. Use it when running agent-browser in environments where a local browser isn't available (serverless, CI/CD, etc.). + +## Setup + +```bash +export BROWSER_USE_API_KEY="your-api-key" +agent-browser -p browseruse open https://example.com +``` + +Or use environment variables for CI/scripts: + +```bash +export AGENT_BROWSER_PROVIDER=browseruse +export BROWSER_USE_API_KEY="your-api-key" +agent-browser open https://example.com +``` + +The `-p` flag takes precedence over `AGENT_BROWSER_PROVIDER`. + +When enabled, agent-browser connects to a Browser Use cloud session instead of launching a local browser. All commands work identically. + +Get your API key from the [Browser Use Cloud Dashboard](https://cloud.browser-use.com/settings?tab=api-keys). Free credits are available to get started, with pay-as-you-go pricing after. diff --git a/docs/src/app/providers/browserbase/layout.tsx b/docs/src/app/providers/browserbase/layout.tsx new file mode 100644 index 0000000..d5a3911 --- /dev/null +++ b/docs/src/app/providers/browserbase/layout.tsx @@ -0,0 +1,7 @@ +import { pageMetadata } from "@/lib/page-metadata"; + +export const metadata = pageMetadata("providers/browserbase"); + +export default function Layout({ children }: { children: React.ReactNode }) { + return children; +} diff --git a/docs/src/app/providers/browserbase/page.mdx b/docs/src/app/providers/browserbase/page.mdx new file mode 100644 index 0000000..9691826 --- /dev/null +++ b/docs/src/app/providers/browserbase/page.mdx @@ -0,0 +1,24 @@ +# Browserbase + +[Browserbase](https://browserbase.com) provides remote browser infrastructure to make deployment of agentic browsing agents easy. Use it when running agent-browser in environments where a local browser isn't feasible. + +## Setup + +```bash +export BROWSERBASE_API_KEY="your-api-key" +agent-browser -p browserbase open https://example.com +``` + +Or use environment variables for CI/scripts: + +```bash +export AGENT_BROWSER_PROVIDER=browserbase +export BROWSERBASE_API_KEY="your-api-key" +agent-browser open https://example.com +``` + +The `-p` flag takes precedence over `AGENT_BROWSER_PROVIDER`. + +When enabled, agent-browser connects to a Browserbase session instead of launching a local browser. All commands work identically. + +Get your API key from the [Browserbase Dashboard](https://browserbase.com/overview). diff --git a/docs/src/app/providers/browserless/layout.tsx b/docs/src/app/providers/browserless/layout.tsx new file mode 100644 index 0000000..1f907b4 --- /dev/null +++ b/docs/src/app/providers/browserless/layout.tsx @@ -0,0 +1,7 @@ +import { pageMetadata } from "@/lib/page-metadata"; + +export const metadata = pageMetadata("providers/browserless"); + +export default function Layout({ children }: { children: React.ReactNode }) { + return children; +} diff --git a/docs/src/app/providers/browserless/page.mdx b/docs/src/app/providers/browserless/page.mdx new file mode 100644 index 0000000..2d704df --- /dev/null +++ b/docs/src/app/providers/browserless/page.mdx @@ -0,0 +1,39 @@ +# Browserless + +[Browserless](https://browserless.io) provides cloud browser infrastructure with a Sessions API. Use it when running agent-browser in environments where a local browser isn't available. + +## Setup + +```bash +export BROWSERLESS_API_KEY="your-api-token" +agent-browser -p browserless open https://example.com +``` + +Or use environment variables for CI/scripts: + +```bash +export AGENT_BROWSER_PROVIDER=browserless +export BROWSERLESS_API_KEY="your-api-token" +agent-browser open https://example.com +``` + +The `-p` flag takes precedence over `AGENT_BROWSER_PROVIDER`. + +## Configuration + + + + + + + + + + + + +
VariableDescriptionDefault
BROWSERLESS_API_KEYAPI token (required)
BROWSERLESS_API_URLBase API URL (for custom regions or self-hosted)https://production-sfo.browserless.io
BROWSERLESS_BROWSER_TYPEType of browser to use (chromium or chrome)chromium
BROWSERLESS_TTLSession TTL in milliseconds300000
BROWSERLESS_STEALTHEnable stealth modetrue
+ +When enabled, agent-browser connects to a Browserless cloud session instead of launching a local browser. All commands work identically. + +Get your API token from the [Browserless Dashboard](https://browserless.io). diff --git a/docs/src/app/providers/kernel/layout.tsx b/docs/src/app/providers/kernel/layout.tsx new file mode 100644 index 0000000..1a75d6f --- /dev/null +++ b/docs/src/app/providers/kernel/layout.tsx @@ -0,0 +1,7 @@ +import { pageMetadata } from "@/lib/page-metadata"; + +export const metadata = pageMetadata("providers/kernel"); + +export default function Layout({ children }: { children: React.ReactNode }) { + return children; +} diff --git a/docs/src/app/providers/kernel/page.mdx b/docs/src/app/providers/kernel/page.mdx new file mode 100644 index 0000000..b7cd5c2 --- /dev/null +++ b/docs/src/app/providers/kernel/page.mdx @@ -0,0 +1,41 @@ +# Kernel + +[Kernel](https://www.kernel.sh) provides cloud browser infrastructure for AI agents with features like stealth mode and persistent profiles. + +## Setup + +```bash +export KERNEL_API_KEY="your-api-key" +agent-browser -p kernel open https://example.com +``` + +Or use environment variables for CI/scripts: + +```bash +export AGENT_BROWSER_PROVIDER=kernel +export KERNEL_API_KEY="your-api-key" +agent-browser open https://example.com +``` + +The `-p` flag takes precedence over `AGENT_BROWSER_PROVIDER`. + +## Configuration + + + + + + + + + + + + +
VariableDescriptionDefault
KERNEL_API_KEYAPI key (required)
KERNEL_HEADLESSRun browser in headless modetrue
KERNEL_STEALTHEnable stealth mode to avoid bot detectionfalse
KERNEL_TIMEOUT_SECONDSSession timeout in seconds300
KERNEL_PROFILE_NAMEBrowser profile name for persistent cookies/logins(none)
+ +**Profile persistence:** When `KERNEL_PROFILE_NAME` is set, the profile will be created if it doesn't already exist. Cookies, logins, and session data are automatically saved back to the profile when the browser session ends, making them available for future sessions. + +When enabled, agent-browser connects to a Kernel cloud session instead of launching a local browser. All commands work identically. + +Get your API key from the [Kernel Dashboard](https://dashboard.onkernel.com). diff --git a/docs/src/lib/docs-navigation.ts b/docs/src/lib/docs-navigation.ts index 945de53..bd01e87 100644 --- a/docs/src/lib/docs-navigation.ts +++ b/docs/src/lib/docs-navigation.ts @@ -41,6 +41,15 @@ export const navigation: NavSection[] = [ { name: "Native Mode", href: "/native-mode" }, ], }, + { + title: "Providers", + items: [ + { name: "Browser Use", href: "/providers/browser-use" }, + { name: "Browserbase", href: "/providers/browserbase" }, + { name: "Browserless", href: "/providers/browserless" }, + { name: "Kernel", href: "/providers/kernel" }, + ], + }, { title: "Engines", items: [ diff --git a/docs/src/lib/page-titles.ts b/docs/src/lib/page-titles.ts index 155ead6..ec29dc7 100644 --- a/docs/src/lib/page-titles.ts +++ b/docs/src/lib/page-titles.ts @@ -18,6 +18,10 @@ export const PAGE_TITLES: Record = { "engines/lightpanda": "Lightpanda", next: "Next.js + Vercel", "native-mode": "Native Mode", + "providers/browser-use": "Browser Use", + "providers/browserbase": "Browserbase", + "providers/browserless": "Browserless", + "providers/kernel": "Kernel", changelog: "Changelog", };