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.6.5"
".": "0.7.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: 17
openapi_spec_url: https://storage.googleapis.com/stainless-sdk-openapi-specs/kernel%2Fkernel-0ac9428eb663361184124cdd6a6e80ae8dc72c927626c949f22aacc4f40095de.yml
openapi_spec_hash: 27707667d706ac33f2d9ccb23c0f15c3
openapi_spec_url: https://storage.googleapis.com/stainless-sdk-openapi-specs/kernel%2Fkernel-3ec96d0022acb32aa2676c2e7ae20152b899a776ccd499380c334c955b9ba071.yml
openapi_spec_hash: b64c095d82185c1cd0355abea88b606f
config_hash: 00ec9df250b9dc077f8d3b93a442d252
8 changes: 8 additions & 0 deletions CHANGELOG.md
Original file line number Diff line number Diff line change
@@ -1,5 +1,13 @@
# Changelog

## 0.7.0 (2025-07-02)

Full Changelog: [v0.6.5...v0.7.0](https://github.com/onkernel/kernel-go-sdk/compare/v0.6.5...v0.7.0)

### Features

* **api:** headless browsers ([e7f85f9](https://github.com/onkernel/kernel-go-sdk/commit/e7f85f9432b053b513b1581cb2ece0dd78ad3613))

## 0.6.5 (2025-07-02)

Full Changelog: [v0.6.4...v0.6.5](https://github.com/onkernel/kernel-go-sdk/compare/v0.6.4...v0.6.5)
Expand Down
2 changes: 1 addition & 1 deletion README.md
Original file line number Diff line number Diff line change
Expand Up @@ -24,7 +24,7 @@ Or to pin the version:
<!-- x-release-please-start-version -->

```sh
go get -u 'github.com/onkernel/kernel-go-sdk@v0.6.5'
go get -u 'github.com/onkernel/kernel-go-sdk@v0.7.0'
```

<!-- x-release-please-end -->
Expand Down
24 changes: 15 additions & 9 deletions browser.go
Original file line number Diff line number Diff line change
Expand Up @@ -132,19 +132,20 @@ func (r *BrowserPersistenceParam) UnmarshalJSON(data []byte) error {
}

type BrowserNewResponse struct {
// Remote URL for live viewing the browser session
BrowserLiveViewURL string `json:"browser_live_view_url,required"`
// Websocket URL for Chrome DevTools Protocol connections to the browser session
CdpWsURL string `json:"cdp_ws_url,required"`
// Unique identifier for the browser session
SessionID string `json:"session_id,required"`
// Remote URL for live viewing the browser session. Only available for non-headless
// browsers.
BrowserLiveViewURL string `json:"browser_live_view_url"`
// Optional persistence configuration for the browser session.
Persistence BrowserPersistence `json:"persistence"`
// JSON contains metadata for fields, check presence with [respjson.Field.Valid].
JSON struct {
BrowserLiveViewURL respjson.Field
CdpWsURL respjson.Field
SessionID respjson.Field
BrowserLiveViewURL respjson.Field
Persistence respjson.Field
ExtraFields map[string]respjson.Field
raw string
Expand All @@ -158,19 +159,20 @@ func (r *BrowserNewResponse) UnmarshalJSON(data []byte) error {
}

type BrowserGetResponse struct {
// Remote URL for live viewing the browser session
BrowserLiveViewURL string `json:"browser_live_view_url,required"`
// Websocket URL for Chrome DevTools Protocol connections to the browser session
CdpWsURL string `json:"cdp_ws_url,required"`
// Unique identifier for the browser session
SessionID string `json:"session_id,required"`
// Remote URL for live viewing the browser session. Only available for non-headless
// browsers.
BrowserLiveViewURL string `json:"browser_live_view_url"`
// Optional persistence configuration for the browser session.
Persistence BrowserPersistence `json:"persistence"`
// JSON contains metadata for fields, check presence with [respjson.Field.Valid].
JSON struct {
BrowserLiveViewURL respjson.Field
CdpWsURL respjson.Field
SessionID respjson.Field
BrowserLiveViewURL respjson.Field
Persistence respjson.Field
ExtraFields map[string]respjson.Field
raw string
Expand All @@ -184,19 +186,20 @@ func (r *BrowserGetResponse) UnmarshalJSON(data []byte) error {
}

type BrowserListResponse struct {
// Remote URL for live viewing the browser session
BrowserLiveViewURL string `json:"browser_live_view_url,required"`
// Websocket URL for Chrome DevTools Protocol connections to the browser session
CdpWsURL string `json:"cdp_ws_url,required"`
// Unique identifier for the browser session
SessionID string `json:"session_id,required"`
// Remote URL for live viewing the browser session. Only available for non-headless
// browsers.
BrowserLiveViewURL string `json:"browser_live_view_url"`
// Optional persistence configuration for the browser session.
Persistence BrowserPersistence `json:"persistence"`
// JSON contains metadata for fields, check presence with [respjson.Field.Valid].
JSON struct {
BrowserLiveViewURL respjson.Field
CdpWsURL respjson.Field
SessionID respjson.Field
BrowserLiveViewURL respjson.Field
Persistence respjson.Field
ExtraFields map[string]respjson.Field
raw string
Expand All @@ -210,6 +213,9 @@ func (r *BrowserListResponse) UnmarshalJSON(data []byte) error {
}

type BrowserNewParams struct {
// If true, launches the browser using a headless image (no VNC/GUI). Defaults to
// false.
Headless param.Opt[bool] `json:"headless,omitzero"`
// action invocation ID
InvocationID param.Opt[string] `json:"invocation_id,omitzero"`
// If true, launches the browser in stealth mode to reduce detection by anti-bot
Expand Down
1 change: 1 addition & 0 deletions browser_test.go
Original file line number Diff line number Diff line change
Expand Up @@ -27,6 +27,7 @@ func TestBrowserNewWithOptionalParams(t *testing.T) {
option.WithAPIKey("My API Key"),
)
_, err := client.Browsers.New(context.TODO(), kernel.BrowserNewParams{
Headless: kernel.Bool(false),
InvocationID: kernel.String("rr33xuugxj9h0bkf1rdt2bet"),
Persistence: kernel.BrowserPersistenceParam{
ID: "my-awesome-browser-for-user-1234",
Expand Down
2 changes: 1 addition & 1 deletion internal/version.go
Original file line number Diff line number Diff line change
Expand Up @@ -2,4 +2,4 @@

package internal

const PackageVersion = "0.6.5" // x-release-please-version
const PackageVersion = "0.7.0" // x-release-please-version