feat: [US-024] - Add TypeScript SDK browser monitoring, crawl, context, and cookie methods

Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
This commit is contained in:
Nathan Flurry 2026-03-17 06:27:12 -07:00
parent 264ec25578
commit 11efecfda9

View file

@ -32,9 +32,19 @@ import {
type AgentListResponse, type AgentListResponse,
type BrowserActionResponse, type BrowserActionResponse,
type BrowserClickRequest, type BrowserClickRequest,
type BrowserConsoleQuery,
type BrowserConsoleResponse,
type BrowserContentQuery, type BrowserContentQuery,
type BrowserContentResponse, type BrowserContentResponse,
type BrowserContextCreateRequest,
type BrowserContextInfo,
type BrowserContextListResponse,
type BrowserCookiesQuery,
type BrowserCookiesResponse,
type BrowserCrawlRequest,
type BrowserCrawlResponse,
type BrowserCreateTabRequest, type BrowserCreateTabRequest,
type BrowserDeleteCookiesQuery,
type BrowserDialogRequest, type BrowserDialogRequest,
type BrowserExecuteRequest, type BrowserExecuteRequest,
type BrowserExecuteResponse, type BrowserExecuteResponse,
@ -42,6 +52,8 @@ import {
type BrowserLinksResponse, type BrowserLinksResponse,
type BrowserMarkdownResponse, type BrowserMarkdownResponse,
type BrowserNavigateRequest, type BrowserNavigateRequest,
type BrowserNetworkQuery,
type BrowserNetworkResponse,
type BrowserPageInfo, type BrowserPageInfo,
type BrowserPdfQuery, type BrowserPdfQuery,
type BrowserReloadRequest, type BrowserReloadRequest,
@ -50,6 +62,7 @@ import {
type BrowserScrapeRequest, type BrowserScrapeRequest,
type BrowserScrapeResponse, type BrowserScrapeResponse,
type BrowserSelectRequest, type BrowserSelectRequest,
type BrowserSetCookiesRequest,
type BrowserSnapshotResponse, type BrowserSnapshotResponse,
type BrowserStartRequest, type BrowserStartRequest,
type BrowserStatusResponse, type BrowserStatusResponse,
@ -2173,6 +2186,42 @@ export class SandboxAgent {
return this.requestJson("POST", `${API_PREFIX}/browser/dialog`, { body: request }); return this.requestJson("POST", `${API_PREFIX}/browser/dialog`, { body: request });
} }
async getBrowserConsole(query?: BrowserConsoleQuery): Promise<BrowserConsoleResponse> {
return this.requestJson("GET", `${API_PREFIX}/browser/console`, { query });
}
async getBrowserNetwork(query?: BrowserNetworkQuery): Promise<BrowserNetworkResponse> {
return this.requestJson("GET", `${API_PREFIX}/browser/network`, { query });
}
async crawlBrowser(request: BrowserCrawlRequest): Promise<BrowserCrawlResponse> {
return this.requestJson("POST", `${API_PREFIX}/browser/crawl`, { body: request });
}
async getBrowserContexts(): Promise<BrowserContextListResponse> {
return this.requestJson("GET", `${API_PREFIX}/browser/contexts`);
}
async createBrowserContext(request: BrowserContextCreateRequest): Promise<BrowserContextInfo> {
return this.requestJson("POST", `${API_PREFIX}/browser/contexts`, { body: request });
}
async deleteBrowserContext(contextId: string): Promise<BrowserActionResponse> {
return this.requestJson("DELETE", `${API_PREFIX}/browser/contexts/${contextId}`);
}
async getBrowserCookies(query?: BrowserCookiesQuery): Promise<BrowserCookiesResponse> {
return this.requestJson("GET", `${API_PREFIX}/browser/cookies`, { query });
}
async setBrowserCookies(request: BrowserSetCookiesRequest): Promise<BrowserActionResponse> {
return this.requestJson("POST", `${API_PREFIX}/browser/cookies`, { body: request });
}
async deleteBrowserCookies(query?: BrowserDeleteCookiesQuery): Promise<BrowserActionResponse> {
return this.requestJson("DELETE", `${API_PREFIX}/browser/cookies`, { query });
}
private async getLiveConnection(agent: string): Promise<LiveAcpConnection> { private async getLiveConnection(agent: string): Promise<LiveAcpConnection> {
await this.awaitHealthy(); await this.awaitHealthy();