Skip to content

Document saving a running browser to a profile - #729

Merged
andrewleesteele merged 3 commits into
mainfrom
hypeship/save-running-browser-profile
Oct 28, 2026
Merged

andrewleesteele merged 3 commits into
mainfrom
hypeship/save-running-browser-profile

Conversation

@masnwilliams

@masnwilliams masnwilliams commented Oct 28, 2026 •

Copy link
Copy Markdown
Contributor

summary

Adds a "Save a running browser to a profile" section to the profile save-and-reuse guide, covering POST /browsers/{id_or_name}/profiles:

  • saving by profile id, or by name with create-on-miss
  • the Chromium restart: CDP, Playwright and WebDriver clients disconnect and reconnect, tabs reload, and in-page state isn't kept
  • the request returns once the browser accepts CDP again; when to call it
  • what's left out of the saved profile (caches, service worker data, some large offline app storage)
  • the most recently started save wins, and how this interacts with save_changes
  • a successful save restarts the inactivity timeout
  • 409 and other error codes, and which ones to retry
  • API key scopes

Also links to the new section from step 3 of the guide and from the profiles overview.

Examples are cURL plus TypeScript, Python and Go. The SDK snippets match the published @onkernel/sdk 0.134.0, kernel 0.134.0 and kernel-go-sdk v0.133.0: the TypeScript snippet type-checks, the Go snippet passes go vet, and the Python call matches save_profile's signature.

Merge this after the endpoint is live.

testing

  • mint broken-links: no broken links

Note

Low Risk
Documentation-only; no runtime or auth logic changes. Merge timing should follow the endpoint going live.

Overview
Documents POST /browsers/{id_or_name}/profiles, which snapshots a live browser into a profile without deleting the session.

The Save and reuse guide gains a full section with cURL and TypeScript, Python, and Go examples (including longer SDK timeouts for slow saves). It explains create vs overwrite by name or id, the Chromium stop/restart flow (clients must reconnect, tabs reload, volatile in-page state is lost), what is and isn’t in the snapshot, overlap with save_changes and concurrent saves, inactivity timeout behavior, error codes and retries, and scoped API key permissions.

The profiles overview step 3 and the delete-to-save step now link to this flow as an alternative to tearing down the browser.

Reviewed by Cursor Bugbot for commit 6c32cf4. Bugbot is set up for automated code reviews on this repo. Configure here.

@mintlify

mintlify Bot commented Oct 28, 2026 •

Copy link
Copy Markdown
Contributor

Preview deployment for your docs. Learn more about Mintlify Previews.

Project Status Preview Updated
Kernel 🟢 Ready View Preview Oct 28, 2026, 4:51 PM

💡 Tip: Enable Automations to automatically generate PRs for you.

The SDKs with saveProfile are published. Also say which SDKs default to
a one-minute timeout; the Go SDK has no default request timeout.
Comment thread browsers/profiles/save-and-reuse.mdx
@andrewleesteele
andrewleesteele merged commit 845ee88 into main Oct 28, 2026
1 check passed
@andrewleesteele
andrewleesteele deleted the hypeship/save-running-browser-profile branch October 28, 2026 17:49

@andrewleesteele andrewleesteele left a comment

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

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

lgtm

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

3 participants