You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Copy file name to clipboardExpand all lines: apps/status.mdx
+1-1Lines changed: 1 addition & 1 deletion
Display the source diff
Display the rich diff
Original file line number
Diff line number
Diff line change
@@ -10,7 +10,7 @@ Once you've [deployed](/apps/deploy) an app and invoked it, you can monitor its
10
10
11
11
## Streaming Status Updates
12
12
13
-
For real-time status monitoring, use `follow` to [stream invocation events](/api-reference/invocations/stream-invocation-events-via-sse). This provides immediate updates as your invocation progresses and is more efficient than polling.
13
+
For real-time status monitoring, use `follow` to [stream invocation events](https://kernel.sh/docs/api-reference/invocations/stream-invocation-events-via-sse). This provides immediate updates as your invocation progresses and is more efficient than polling.
Copy file name to clipboardExpand all lines: auth/faq.mdx
+2-2Lines changed: 2 additions & 2 deletions
Display the source diff
Display the rich diff
Original file line number
Diff line number
Diff line change
@@ -51,7 +51,7 @@ Passkey-based authentication (e.g., Google accounts with passkeys enabled) is no
51
51
52
52
## What happens if login fails?
53
53
54
-
If a login attempt fails, Kernel will retry with exponential backoff. After multiple failures, the [login flow](/auth/hosted-ui) will be marked as failed and you'll receive an error with a specific error code. Common codes include `credentials_invalid`, `bot_detected`, and `captcha_blocked`. See the [API reference](/api-reference) for the full list of error codes.
54
+
If a login attempt fails, Kernel will retry with exponential backoff. After multiple failures, the [login flow](/auth/hosted-ui) will be marked as failed and you'll receive an error with a specific error code. Common codes include `credentials_invalid`, `bot_detected`, and `captcha_blocked`. See the [API reference](https://kernel.sh/docs/api-reference/managed-auth/start-login-flow) for the full list of error codes.
55
55
56
56
Common failure reasons include:
57
57
@@ -94,7 +94,7 @@ if state.status == "NEEDS_AUTH":
94
94
95
95
## What types of flows does Managed Auth support?
96
96
97
-
Managed Auth is designed for login and authentication flows — entering credentials, handling SSO redirects, completing MFA challenges, and maintaining sessions. For other browser interactions like form filling, sign-ups, or multi-step workflows, use [Kernel's browser automation](/browsers/overview) directly.
97
+
Managed Auth is designed for login and authentication flows — entering credentials, handling SSO redirects, completing MFA challenges, and maintaining sessions. For other browser interactions like form filling, sign-ups, or multi-step workflows, use [Kernel's browser automation](/browsers/create-a-browser) directly.
You can load a profile into a browser after it has been created using the [update browser endpoint](/api-reference/browsers/update-browser-session).
117
+
You can load a profile into a browser after it has been created using the [update browser endpoint](https://kernel.sh/docs/api-reference/browsers/update-browser-session).
118
118
119
119
<CodeGroup>
120
120
```typescript Typescript/Javascript
@@ -142,7 +142,7 @@ You cannot load a profile into a browser that was already created with a profile
142
142
143
143
## Other ways to use profiles
144
144
145
-
The API and SDKs support listing, deleting, and downloading profile data as JSON. See the [API reference](/api-reference/profiles/list-profiles) for more details.
145
+
The API and SDKs support listing, deleting, and downloading profile data as JSON. See the [API reference](https://kernel.sh/docs/api-reference/profiles/list-profiles) for more details.
Once these files are in place, you can upload them to Kernel via the CLI (or [API](/api-reference/extensions/upload-a-browser-extension)):
38
+
Once these files are in place, you can upload them to Kernel via the CLI (or [API](https://kernel.sh/docs/api-reference/extensions/upload-a-browser-extension)):
If you have a browser running and would like to load an extension into it after the browser session has started, Kernel also allows you to do that via the CLI (or [API](/api-reference/browsers/ad-hoc-upload-one-or-more-unpacked-extensions-to-a-running-browser-instance)):
96
+
If you have a browser running and would like to load an extension into it after the browser session has started, Kernel also allows you to do that via the CLI (or [API](https://kernel.sh/docs/api-reference/browsers/ad-hoc-upload-one-or-more-unpacked-extensions-to-a-running-browser-instance)):
Copy file name to clipboardExpand all lines: browsers/pools/managing-browsers.mdx
+1-1Lines changed: 1 addition & 1 deletion
Display the source diff
Display the rich diff
Original file line number
Diff line number
Diff line change
@@ -3,7 +3,7 @@ title: "Managing Browsers"
3
3
description: "Customize Chrome behavior in reserved browser pools using Chrome policies"
4
4
---
5
5
6
-
Browser pools accept an optional [`chrome_policy`](/api-reference/browser-pools/create-a-browser-pool#body-chrome-policy) object that lets you apply [Chrome enterprise policies](https://chromeenterprise.google/policies/) to every browser in the pool. Use this to control startup behavior, default homepages, bookmarks, and other browser-level settings.
6
+
Browser pools accept an optional [`chrome_policy`](https://kernel.sh/docs/api-reference/browser-pools/create-a-browser-pool#body-chrome-policy) object that lets you apply [Chrome enterprise policies](https://chromeenterprise.google/policies/) to every browser in the pool. Use this to control startup behavior, default homepages, bookmarks, and other browser-level settings.
Copy file name to clipboardExpand all lines: browsers/pools/overview.mdx
+4-4Lines changed: 4 additions & 4 deletions
Display the source diff
Display the rich diff
Original file line number
Diff line number
Diff line change
@@ -53,11 +53,11 @@ print(pool.id)
53
53
54
54
### Pool configuration options
55
55
56
-
Pools can be pre-configured with options like custom extensions, supported viewports, residential proxies, profiles, and more. See the [API reference](/api-reference/browser-pools/create-a-browser-pool) for more details.
56
+
Pools can be pre-configured with options like custom extensions, supported viewports, residential proxies, profiles, and more. See the [API reference](https://kernel.sh/docs/api-reference/browser-pools/create-a-browser-pool) for more details.
57
57
58
58
## Acquire a browser
59
59
60
-
Acquire a browser from the pool. The request returns immediately if a browser is available, or waits until one becomes available. The `acquire_timeout_seconds` parameter controls how long to wait; it defaults to the calculated time it would take to fill the pool at the pool's configured [fill rate](/api-reference/browser-pools/create-a-browser-pool#body-fill-rate-per-minute).
60
+
Acquire a browser from the pool. The request returns immediately if a browser is available, or waits until one becomes available. The `acquire_timeout_seconds` parameter controls how long to wait; it defaults to the calculated time it would take to fill the pool at the pool's configured [fill rate](https://kernel.sh/docs/api-reference/browser-pools/create-a-browser-pool#body-fill-rate-per-minute).
61
61
62
62
<CodeGroup>
63
63
```typescript Typescript/Javascript
@@ -84,7 +84,7 @@ The acquired browser includes all the same properties as a regular browser sessi
84
84
85
85
### Timeout behavior
86
86
87
-
Browsers remain in the pool indefinitely until acquired. Once acquired, the pool's `timeout_seconds` applies just like a [regular browser timeout](/browsers/termination#automatic-deletion-via-timeout)—if the browser is idle (no CDP or live view connection) for longer than the timeout, it is destroyed and **not** returned to the pool. The pool will automatically create a replacement browser at the pool's configured [fill rate](/api-reference/browser-pools/create-a-browser-pool#body-fill-rate-per-minute).
87
+
Browsers remain in the pool indefinitely until acquired. Once acquired, the pool's `timeout_seconds` applies just like a [regular browser timeout](/browsers/termination#automatic-deletion-via-timeout)—if the browser is idle (no CDP or live view connection) for longer than the timeout, it is destroyed and **not** returned to the pool. The pool will automatically create a replacement browser at the pool's configured [fill rate](https://kernel.sh/docs/api-reference/browser-pools/create-a-browser-pool#body-fill-rate-per-minute).
88
88
89
89
## Release a browser
90
90
@@ -276,4 +276,4 @@ asyncio.run(main())
276
276
277
277
## API reference
278
278
279
-
For more details on all available endpoints and parameters, see the [Browser Pools API reference](/api-reference/browser-pools/list-browser-pools).
279
+
For more details on all available endpoints and parameters, see the [Browser Pools API reference](https://kernel.sh/docs/api-reference/browser-pools/list-browser-pools).
You can change the viewport of a browser after it has been created using the [update browser endpoint](/api-reference/browsers/update-browser-session).
207
+
You can change the viewport of a browser after it has been created using the [update browser endpoint](https://kernel.sh/docs/api-reference/browsers/update-browser-session).
Copy file name to clipboardExpand all lines: changelog.mdx
+8-8Lines changed: 8 additions & 8 deletions
Display the source diff
Display the rich diff
Original file line number
Diff line number
Diff line change
@@ -21,7 +21,7 @@ For API library updates, see the [Node SDK](https://github.com/onkernel/kernel-n
21
21
## Documentation updates
22
22
23
23
- Documented MFA token auto-retry behavior for [managed auth](/auth/overview) sessions.
24
-
- Added a new [Managing Browsers](/browsers/scaling/reserved) page to the Reserved Browsers documentation.
24
+
- Added a new [Managing Browsers](/browsers/pools/managing-browsers) page to the Reserved Browsers documentation.
25
25
- Clarified that [profiles](/auth/profiles) can have multiple auth connections.
26
26
- Added a Headful + GPU acceleration option to the [pricing calculator](/info/pricing#pricing-calculator).
27
27
</Update>
@@ -81,7 +81,7 @@ For API library updates, see the [Node SDK](https://github.com/onkernel/kernel-n
81
81
82
82
- Added WebDriver BiDi support for cloud browsers through a new [partnership with Vibium](https://www.kernel.sh/docs/integrations/computer-use/vibium). AI agents can now use Vibium to connect to Kernel and navigate pages, fill forms, click buttons, and take screenshots across thousands of cloud browsers running in parallel.
83
83
- Launched [Kernel Eval Protocol](https://github.com/kernel/kernel-eval-protocol-quickstart), an open-source repo that pairs Kernel Browser Pools with Fireworks RFT and [Eval Protocol](https://github.com/fw-ai/eval-protocol) to evaluate and fine-tune VLM browser agents using reinforcement learning.
84
-
- Added a `usage` field to the [browser session details](/api-reference/browsers/get-browser-session-details#response-usage) API response, which returns session metrics like `uptime_ms`. Use this to track session duration and build billing or analytics workflows around your browser usage.
84
+
- Added a `usage` field to the [browser session details](https://kernel.sh/docs/api-reference/browsers/get-browser-session-details#response-usage) API response, which returns session metrics like `uptime_ms`. Use this to track session duration and build billing or analytics workflows around your browser usage.
85
85
- Extended smooth Bezier curve mouse movements to click and drag operations, and added `--smooth` and `--duration-ms` flags to the `move-mouse` command in the [CLI](https://github.com/kernel/cli) for more natural-looking browser interactions.
86
86
- Improved headless viewport resize performance by using a CDP fast path, reducing resize time from ~5 seconds to ~10 milliseconds.
87
87
- Added support for [runtime proxy configuration swapping](https://www.kernel.sh/docs/proxies/overview#update-a-browsers-proxy), enabling you to change a browser's proxy settings mid-session without restarting.
@@ -99,7 +99,7 @@ For API library updates, see the [Node SDK](https://github.com/onkernel/kernel-n
99
99
- Added support for [mobile and tablet viewports](/browsers/viewport), enabling browser automation at phone and tablet screen sizes.
100
100
- Added a `kernel status` command to the [CLI](https://github.com/kernel/cli) for checking API and service health at a glance.
101
101
- Added a `--force` flag to `kernel browsers update` for [resizing the viewport](/browsers/viewport) during an active recording, which gracefully stops and restarts the recording.
102
-
- Improved [Managed Auth](/profiles/managed-auth/overview) MFA handling by resolving MFA options by label, type, or display string for more reliable multi-factor authentication flows.
102
+
- Improved [Managed Auth](/auth/overview) MFA handling by resolving MFA options by label, type, or display string for more reliable multi-factor authentication flows.
103
103
- Enhanced auth connection output in the [CLI](https://github.com/kernel/cli) with richer details from `kernel auth connections get` and `kernel auth connections list`.
104
104
- Added a Pool column and `--query` flag to `kernel browsers list` in the [CLI](https://github.com/kernel/cli) for easier filtering and identification of pooled browsers.
105
105
- Updated the Anthropic computer use [template](https://github.com/kernel/cli/tree/main/pkg/templates) to default to use claude-sonnet-4-6 for improved agent performance.
@@ -110,7 +110,7 @@ For API library updates, see the [Node SDK](https://github.com/onkernel/kernel-n
110
110
111
111
## Documentation updates
112
112
113
-
- Renamed "Scaling in Production" to [Reserved Browsers](/browsers/scaling/overview) and added a new [On-Demand Browsers](/browsers/scaling/on-demand) section for clearer guidance on browser provisioning strategies.
113
+
- Renamed "Scaling in Production" to [Reserved Browsers](/browsers/pools/overview) and added a new [On-Demand Browsers](/browsers/create-a-browser) section for clearer guidance on browser provisioning strategies.
114
114
- Added [mobile and tablet viewport configurations](/browsers/viewport) with supported screen sizes and usage guidance.
115
115
- Added [proxy-bypass-hosts](https://www.kernel.sh/docs/proxies/overview#bypass-hosts) documentation for configuring proxy bypass lists on browser pools.
116
116
- Documented the `--force` flag for [viewport resizing](/browsers/viewport) during active recordings.
@@ -154,7 +154,7 @@ For API library updates, see the [Node SDK](https://github.com/onkernel/kernel-n
- Launched [Web Bot Auth](/browsers/bot-detection/web-bot-auth) in partnership with Vercel, enabling agents to cryptographically sign requests and prove they're legitimate instead of getting blocked by bot detection.
156
156
- Released [Managed Auth](/auth/overview), simplifying authentication by securely logging into any site without custom auth flows or exposing credentials to the LLM, and maintaining up-to-date credentials.
157
-
- Added a `POST /computer/batch`[endpoint](/api-reference/browsers/execute-a-batch-of-computer-actions-sequentially) for executing multiple computer actions in a single API call, reducing round-trip latency for complex automations.
157
+
- Added a `POST /computer/batch`[endpoint](https://kernel.sh/docs/api-reference/browsers/execute-a-batch-of-computer-actions-sequentially) for executing multiple computer actions in a single API call, reducing round-trip latency for complex automations.
158
158
- Improved the [CLI](https://github.com/onkernel/cli) by adding new commands for managing auth connections, supporting `-o json` output for `kernel ssh --setup-only`, allowing pool names as positional arguments in `kernel browser-pools create`, and enabling file exclusions when publishing extensions.
159
159
- Improved input reliability with context-aware timing in key press and mouse drag operations.
160
160
- Fixed an issue where stealth mode browsers couldn't access plain HTTP websites due to forced HTTPS redirects.
@@ -167,8 +167,8 @@ For API library updates, see the [Node SDK](https://github.com/onkernel/kernel-n
- Added a `/json` endpoint to the CDP proxy, enabling native Playwright `connectOverCDP()` connections.
170
-
- Launched an [API](/api-reference/browsers/get-the-current-mouse-cursor-position-on-the-browser-instance) to get the current cursor position, which is useful for debugging and building adaptive automation logic.
171
-
- Released an [API](/api-reference/invocations/list-browsers-for-an-invocation) to retrieve browser session IDs associated with a specific invocation.
170
+
- Launched an [API](https://kernel.sh/docs/api-reference/browsers/get-the-current-mouse-cursor-position-on-the-browser-instance) to get the current cursor position, which is useful for debugging and building adaptive automation logic.
171
+
- Released an [API](https://kernel.sh/docs/api-reference/invocations/list-browsers-for-an-invocation) to retrieve browser session IDs associated with a specific invocation.
172
172
- Added [SSH access](/browsers/ssh) to Kernel browsers for debugging, running commands, and tunneling your local development server to the browser.
173
173
- Enabled support for the [1280x800 viewport](/browsers/viewport#supported-viewport-configurations) size, which improves click coordinate accuracy.
174
174
- The Live View clipboard now syncs correctly between browser and local machine.
@@ -244,7 +244,7 @@ For API library updates, see the [Node SDK](https://github.com/onkernel/kernel-n
- Added option to include ephemeral and deleted browsers when [listing sessions](/api-reference/browsers/list-browser-sessions) via API
247
+
- Added option to include ephemeral and deleted browsers when [listing sessions](https://kernel.sh/docs/api-reference/browsers/list-browser-sessions) via API
248
248
- Updated the [maximum timeout](/browsers/termination#automatic-deletion-via-timeout) available from 24 hours to 72 hours of no CDP activity
249
249
- Updated the maximum async invocation [duration](/apps/invoke#asynchronous-invocations) from 15 minutes to 1 hour
250
250
- Improved error messaging when invalid invocation IDs are provided
0 commit comments