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.104.0"
".": "0.106.0"
}
2 changes: 1 addition & 1 deletion .stats.yml
Original file line number Diff line number Diff line change
@@ -1 +1 @@
configured_endpoints: 163
configured_endpoints: 164
11 changes: 11 additions & 0 deletions CHANGELOG.md
Original file line number Diff line number Diff line change
@@ -1,5 +1,16 @@
# Changelog

## 0.106.0 (2026-09-16)

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

### Features

* Add processor-bound AgentCard preparation contracts ([725bcc8](https://github.com/kernel/kernel-node-sdk/commit/725bcc8dafab5fb2a7c348d4057990a58f476fbd))
* Add start_url to browser session updates ([10ab182](https://github.com/kernel/kernel-node-sdk/commit/10ab18213ba857f37aaa113c1f802f009db8ceab))
* Polish and publish the Config Registry API ([92a7d13](https://github.com/kernel/kernel-node-sdk/commit/92a7d131a4e1af661b4b05ab6be95ac27df166eb))
* Square UKP and Hypeman placement load factors ([ed270d2](https://github.com/kernel/kernel-node-sdk/commit/ed270d2c34763157eecd9c9f2177198071c0c810))

## [0.104.0](https://github.com/kernel/kernel-node-sdk/compare/v0.103.0...v0.104.0) (2026-09-15)


Expand Down
2 changes: 2 additions & 0 deletions api.md
Original file line number Diff line number Diff line change
Expand Up @@ -93,6 +93,7 @@ Methods:

- <code title="get /config-registry/analyses/{id}">client.configRegistry.analyses.<a href="./src/resources/config-registry/analyses.ts">retrieve</a>(id) -> ConfigRegistryResponse</code>
- <code title="get /config-registry/analyses">client.configRegistry.analyses.<a href="./src/resources/config-registry/analyses.ts">list</a>({ ...params }) -> AnalysisSummariesOffsetPagination</code>
- <code title="post /config-registry/analyses/{id}/cancel">client.configRegistry.analyses.<a href="./src/resources/config-registry/analyses.ts">cancel</a>(id) -> ConfigRegistryResponse</code>

# Browsers

Expand Down Expand Up @@ -466,6 +467,7 @@ Types:

- <code><a href="./src/resources/vaults/items.ts">AgentcardCheckoutAuthorization</a></code>
- <code><a href="./src/resources/vaults/items.ts">AgentcardCheckoutPreparation</a></code>
- <code><a href="./src/resources/vaults/items.ts">AgentcardPreparedProcessor</a></code>
- <code><a href="./src/resources/vaults/items.ts">AuthorizeVaultItemOperationRequest</a></code>
- <code><a href="./src/resources/vaults/items.ts">CardVaultItemSpec</a></code>
- <code><a href="./src/resources/vaults/items.ts">CardVaultItemState</a></code>
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.104.0",
"version": "0.106.0",
"description": "The official TypeScript library for the Kernel API",
"author": "Kernel <>",
"types": "dist/index.d.ts",
Expand Down
2 changes: 1 addition & 1 deletion src/resources/browser-pools.ts
Original file line number Diff line number Diff line change
Expand Up @@ -477,7 +477,7 @@ export interface BrowserPoolAcquireResponse {
proxy_id?: string;

/**
* URL the session was asked to navigate to on creation, if any. Recorded for
* URL the session was most recently asked to navigate to, if any. Recorded for
* debugging. Navigation is fire-and-forget — the URL is dispatched to the browser
* without waiting for it to load, and any errors (DNS failure, bad status,
* timeout) are silently dropped. Captures what was requested, not what the browser
Expand Down
16 changes: 12 additions & 4 deletions src/resources/browsers/browsers.ts
Original file line number Diff line number Diff line change
Expand Up @@ -607,7 +607,7 @@ export interface BrowserCreateResponse {
proxy_id?: string;

/**
* URL the session was asked to navigate to on creation, if any. Recorded for
* URL the session was most recently asked to navigate to, if any. Recorded for
* debugging. Navigation is fire-and-forget — the URL is dispatched to the browser
* without waiting for it to load, and any errors (DNS failure, bad status,
* timeout) are silently dropped. Captures what was requested, not what the browser
Expand Down Expand Up @@ -778,7 +778,7 @@ export interface BrowserRetrieveResponse {
proxy_id?: string;

/**
* URL the session was asked to navigate to on creation, if any. Recorded for
* URL the session was most recently asked to navigate to, if any. Recorded for
* debugging. Navigation is fire-and-forget — the URL is dispatched to the browser
* without waiting for it to load, and any errors (DNS failure, bad status,
* timeout) are silently dropped. Captures what was requested, not what the browser
Expand Down Expand Up @@ -949,7 +949,7 @@ export interface BrowserUpdateResponse {
proxy_id?: string;

/**
* URL the session was asked to navigate to on creation, if any. Recorded for
* URL the session was most recently asked to navigate to, if any. Recorded for
* debugging. Navigation is fire-and-forget — the URL is dispatched to the browser
* without waiting for it to load, and any errors (DNS failure, bad status,
* timeout) are silently dropped. Captures what was requested, not what the browser
Expand Down Expand Up @@ -1120,7 +1120,7 @@ export interface BrowserListResponse {
proxy_id?: string;

/**
* URL the session was asked to navigate to on creation, if any. Recorded for
* URL the session was most recently asked to navigate to, if any. Recorded for
* debugging. Navigation is fire-and-forget — the URL is dispatched to the browser
* without waiting for it to load, and any errors (DNS failure, bad status,
* timeout) are silently dropped. Captures what was requested, not what the browser
Expand Down Expand Up @@ -1482,6 +1482,14 @@ export interface BrowserUpdateParams {
*/
proxy_id?: string | null;

/**
* Optional URL to navigate the browser to after applying this update. When a
* profile is loaded in the same update, this overrides the profile's restored
* tabs. Navigation is best-effort, so failures do not fail the update. Omit or set
* to an empty string to leave the current page unchanged.
*/
start_url?: string;

/**
* User-defined key-value tags for the browser session. Omit to leave unchanged.
* Provide a map to replace the entire tag set (full replace, not a merge). Set to
Expand Down
16 changes: 16 additions & 0 deletions src/resources/config-registry/analyses.ts
Original file line number Diff line number Diff line change
Expand Up @@ -47,6 +47,22 @@ export class Analyses extends APIResource {
{ query, ...options },
);
}

/**
* Requests cancellation of a running project-scoped analysis. Cancellation is
* asynchronous; poll the analysis until its status becomes canceled. Repeating the
* request after the analysis reaches a terminal state returns the existing
* outcome.
*
* @example
* ```ts
* const configRegistryResponse =
* await client.configRegistry.analyses.cancel('id');
* ```
*/
cancel(id: string, options?: RequestOptions): APIPromise<ConfigRegistryAPI.ConfigRegistryResponse> {
return this._client.post(path`/config-registry/analyses/${id}/cancel`, options);
}
}

export interface AnalysisListParams extends OffsetPaginationParams {
Expand Down
35 changes: 19 additions & 16 deletions src/resources/config-registry/config-registry.ts
Original file line number Diff line number Diff line change
Expand Up @@ -104,6 +104,12 @@ export interface Analysis {
* Lifecycle status of a background analysis.
*/
status: 'running' | 'completed' | 'failed' | 'canceled' | 'expired';

/**
* The workload description supplied for this analysis. Null when the analysis only
* tested connectivity.
*/
intent?: string | null;
}

export interface AnalysisSummary {
Expand Down Expand Up @@ -208,11 +214,11 @@ export interface Evidence {
success_rate: number;

/**
* Most recent contributing run where this config met the success threshold.
* Omitted for knowledge assembled from runs that did not independently meet the
* threshold.
* Most recent contributing run whose evidence supported recommending this
* configuration. Omitted when no individual run independently met the
* recommendation threshold.
*/
last_verified_at?: string | null;
last_supported_at?: string | null;
}

export interface LookupRequest {
Expand Down Expand Up @@ -453,7 +459,9 @@ export interface Recommendation {
evidence: Evidence;

/**
* Specificity of knowledge matched for this recommendation.
* Specificity of knowledge matched for this recommendation. Exact matches use
* knowledge for the requested target; host and domain matches use broader fallback
* knowledge.
*/
match_scope: 'exact' | 'host' | 'domain';

Expand All @@ -468,13 +476,6 @@ export interface Recommendation {
proxy: Proxy;

type: 'recommendation';

/**
* Exact matches meet the evidence threshold; host and domain fallbacks are
* inferred. Check evidence.last_verified_at for successful verification age and
* last_observed_at for the latest evidence.
*/
verification: 'verified' | 'inferred';
}

/**
Expand Down Expand Up @@ -542,8 +543,9 @@ export interface ResolveRequest {
* any non-HTTPS destination as off-site and will not drive an http one. Kernel
* uses it to drive the browser further into the site, where it can observe
* protections that only appear once a session interacts. When this target already
* has a verified configuration, the run confirms that one instead of re-deriving
* the whole matrix, so supplying an intent narrows what can be recommended.
* has a recommended configuration, the run confirms that one instead of
* re-deriving the whole matrix, so supplying an intent narrows what can be
* recommended.
*/
intent?: string;
}
Expand Down Expand Up @@ -609,8 +611,9 @@ export interface ConfigRegistryResolveParams {
* any non-HTTPS destination as off-site and will not drive an http one. Kernel
* uses it to drive the browser further into the site, where it can observe
* protections that only appear once a session interacts. When this target already
* has a verified configuration, the run confirms that one instead of re-deriving
* the whole matrix, so supplying an intent narrows what can be recommended.
* has a recommended configuration, the run confirms that one instead of
* re-deriving the whole matrix, so supplying an intent narrows what can be
* recommended.
*/
intent?: string;
}
Expand Down
2 changes: 1 addition & 1 deletion src/resources/invocations.ts
Original file line number Diff line number Diff line change
Expand Up @@ -566,7 +566,7 @@ export namespace InvocationListBrowsersResponse {
proxy_id?: string;

/**
* URL the session was asked to navigate to on creation, if any. Recorded for
* URL the session was most recently asked to navigate to, if any. Recorded for
* debugging. Navigation is fire-and-forget — the URL is dispatched to the browser
* without waiting for it to load, and any errors (DNS failure, bad status,
* timeout) are silently dropped. Captures what was requested, not what the browser
Expand Down
1 change: 1 addition & 0 deletions src/resources/vaults/index.ts
Original file line number Diff line number Diff line change
Expand Up @@ -4,6 +4,7 @@ export {
Items,
type AgentcardCheckoutAuthorization,
type AgentcardCheckoutPreparation,
type AgentcardPreparedProcessor,
type AuthorizeVaultItemOperationRequest,
type CardVaultItemSpec,
type CardVaultItemState,
Expand Down
Loading
Loading