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
2 changes: 1 addition & 1 deletion .release-please-manifest.json
Original file line number Diff line number Diff line change
@@ -1,3 +1,3 @@
{
".": "0.75.0"
".": "0.76.0"
}
4 changes: 2 additions & 2 deletions .stats.yml
Original file line number Diff line number Diff line change
@@ -1,4 +1,4 @@
configured_endpoints: 125
openapi_spec_url: https://storage.googleapis.com/stainless-sdk-openapi-specs/kernel/kernel-f0486d0b8e34ddf8ba34e36ff97856cf973e0797e021ff621e04e4840970966e.yml
openapi_spec_hash: 12a71ce5ac80fc65f6a8779f0ca29223
openapi_spec_url: https://storage.googleapis.com/stainless-sdk-openapi-specs/kernel/kernel-ba32039d3975da7aa6d28e5184f0a44c9fbfe36ab7dbc71985d14e2ecc0867b9.yml
openapi_spec_hash: a9f32fc90c2add2ae85af828c298e35b
config_hash: 06186eb40e0058a2a87ac251fc07415d
9 changes: 9 additions & 0 deletions CHANGELOG.md
Original file line number Diff line number Diff line change
@@ -1,5 +1,14 @@
# Changelog

## 0.76.0 (2026-07-09)

Full Changelog: [v0.75.0...v0.76.0](https://github.com/kernel/kernel-node-sdk/compare/v0.75.0...v0.76.0)

### Features

* Layer telemetry request config onto the default set ([e0ac507](https://github.com/kernel/kernel-node-sdk/commit/e0ac5077b0114f4ed5dac88d405de15bd3459dde))

Copy link
Copy Markdown

Choose a reason for hiding this comment

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

Changelog omits breaking telemetry behavior

Medium Severity

0.76.0 documents telemetry layering only under Features. Partial browser payloads no longer mean strict opt-in capture; that wire-compatible behavior change deserves an explicit Breaking Changes entry so SDK users know prior call patterns may capture more categories than before.

Fix in Cursor Fix in Web

Triggered by learned rule: Flag type-narrowing Stainless regen as breaking (semver minor)

Reviewed by Cursor Bugbot for commit aea5bec. Configure here.

* Return credential value keys and support removing values on update ([050b83a](https://github.com/kernel/kernel-node-sdk/commit/050b83af9255031541f9db398cbdca1d53a25d8d))

## 0.75.0 (2026-07-08)

Full Changelog: [v0.74.0...v0.75.0](https://github.com/kernel/kernel-node-sdk/compare/v0.74.0...v0.75.0)
Expand Down
2 changes: 1 addition & 1 deletion package.json
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
{
"name": "@onkernel/sdk",
"version": "0.75.0",
"version": "0.76.0",
"description": "The official TypeScript library for the Kernel API",
"author": "Kernel <>",
"types": "dist/index.d.ts",
Expand Down
50 changes: 34 additions & 16 deletions src/resources/browsers/browsers.ts
Original file line number Diff line number Diff line change
Expand Up @@ -1014,18 +1014,27 @@ export namespace BrowserCreateParams {
*/
export interface Telemetry {
/**
* Per-category capture flags. Selection is opt-in: only the categories set to
* enabled=true are captured; anything omitted is off. If enabled is true and
* browser is omitted or empty, the default category set is used. A browser config
* that enables nothing stops capture on update and starts no capture on create.
* Per-category capture flags. The operational categories (control, connection,
* system, captcha) are captured whenever telemetry is enabled; set one to
* enabled=false to opt out. The CDP categories (console, network, page,
* interaction) and screenshot are off by default; set enabled=true to opt in. On
* create, provided categories layer onto the default set. On update, provided
* categories merge onto the session's current config; when no telemetry is active
* this falls back to the default set (matching create). If browser is omitted or
* empty, the default set is used. A browser config that disables every category
* stops capture on update and starts no capture on create.
*/
browser?: TelemetryAPI.BrowserTelemetryCategoriesConfig;

/**
* Request shortcut for browser telemetry capture. True enables capture using the
* default category set unless browser category settings are provided. False stops
* capture on update and starts no capture on create. enabled=false cannot be
* combined with browser category settings.
* Request shortcut for browser telemetry capture. True enables capture; with no
* browser category settings it captures the default set (control, connection,
* system, captcha), and any browser category settings are layered onto that
* default set. On update, enabled=true resolves the config fresh from the default
* set plus any provided categories, replacing the session's current selection
* rather than merging onto it; omit enabled to merge categories onto the current
* selection instead. False stops capture on update and starts no capture on
* create. enabled=false cannot be combined with browser category settings.
*/
enabled?: boolean;
}
Expand Down Expand Up @@ -1096,18 +1105,27 @@ export namespace BrowserUpdateParams {
*/
export interface Telemetry {
/**
* Per-category capture flags. Selection is opt-in: only the categories set to
* enabled=true are captured; anything omitted is off. If enabled is true and
* browser is omitted or empty, the default category set is used. A browser config
* that enables nothing stops capture on update and starts no capture on create.
* Per-category capture flags. The operational categories (control, connection,
* system, captcha) are captured whenever telemetry is enabled; set one to
* enabled=false to opt out. The CDP categories (console, network, page,
* interaction) and screenshot are off by default; set enabled=true to opt in. On
* create, provided categories layer onto the default set. On update, provided
* categories merge onto the session's current config; when no telemetry is active
* this falls back to the default set (matching create). If browser is omitted or
* empty, the default set is used. A browser config that disables every category
* stops capture on update and starts no capture on create.
*/
browser?: TelemetryAPI.BrowserTelemetryCategoriesConfig;

/**
* Request shortcut for browser telemetry capture. True enables capture using the
* default category set unless browser category settings are provided. False stops
* capture on update and starts no capture on create. enabled=false cannot be
* combined with browser category settings.
* Request shortcut for browser telemetry capture. True enables capture; with no
* browser category settings it captures the default set (control, connection,
* system, captcha), and any browser category settings are layered onto that
* default set. On update, enabled=true resolves the config fresh from the default
* set plus any provided categories, replacing the session's current selection
* rather than merging onto it; omit enabled to merge categories onto the current
* selection instead. False stops capture on update and starts no capture on
* create. enabled=false cannot be combined with browser category settings.
*/
enabled?: boolean;
}
Expand Down
16 changes: 8 additions & 8 deletions src/resources/browsers/telemetry.ts
Original file line number Diff line number Diff line change
Expand Up @@ -1879,12 +1879,11 @@ export namespace BrowserSystemOomKillEvent {
}

/**
* Per-category telemetry capture settings. Selection is opt-in: set a category to
* enabled=true to capture it; anything omitted is off. The default set (used by
* enabled=true with no per-category settings) is the lightweight operational
* signals: control, connection, system, captcha. The CDP categories (console,
* network, page, interaction) and screenshot are off by default and must be opted
* into.
* Per-category telemetry capture settings layered onto the default set. The
* operational signals (control, connection, system, captcha) are on by default and
* are opt-out: set one to enabled=false to stop capturing it. The CDP categories
* (console, network, page, interaction) and screenshot are off by default and are
* opt-in: set enabled=true to capture them.
*/
export interface BrowserTelemetryCategoriesConfig {
/**
Expand Down Expand Up @@ -1948,8 +1947,9 @@ export interface BrowserTelemetryCategoriesConfig {
*/
export interface BrowserTelemetryCategoryConfig {
/**
* Whether this category is captured. Selection is opt-in, so an omitted category
* is not captured.
* Whether this category is captured. Operational categories (control, connection,
* system, captcha) default to true; set false to opt out. CDP categories (console,
* network, page, interaction) and screenshot default to false; set true to opt in.
*/
enabled?: boolean;
}
Expand Down
19 changes: 19 additions & 0 deletions src/resources/credentials.ts
Original file line number Diff line number Diff line change
Expand Up @@ -202,6 +202,13 @@ export interface Credential {
* When the totp_code expires. Only included when totp_code is present.
*/
totp_code_expires_at?: string;

/**
* The field names stored in this credential's values (e.g., username, password).
* Values themselves are never returned. Included on single-credential responses
* (create, get by id or name, update); omitted from list responses.
*/
value_keys?: Array<string>;
}

/**
Expand All @@ -213,6 +220,12 @@ export interface UpdateCredentialRequest {
*/
name?: string;

/**
* Field names to remove from the credential's stored values. Removals are applied
* before `values` are merged, so a key present in both is kept with its new value.
*/
remove_value_keys?: Array<string>;

/**
* If set, indicates this credential should be used with the specified SSO
* provider. Set to empty string or null to remove.
Expand Down Expand Up @@ -281,6 +294,12 @@ export interface CredentialUpdateParams {
*/
name?: string;

/**
* Field names to remove from the credential's stored values. Removals are applied
* before `values` are merged, so a key present in both is kept with its new value.
*/
remove_value_keys?: Array<string>;

/**
* If set, indicates this credential should be used with the specified SSO
* provider. Set to empty string or null to remove.
Expand Down
2 changes: 1 addition & 1 deletion src/version.ts
Original file line number Diff line number Diff line change
@@ -1 +1 @@
export const VERSION = '0.75.0'; // x-release-please-version
export const VERSION = '0.76.0'; // x-release-please-version
Loading