mirror of
https://github.com/harivansh-afk/sandbox-agent.git
synced 2026-04-15 07:04:48 +00:00
feat: [US-022] - Add TypeScript SDK browser content extraction methods
Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
This commit is contained in:
parent
9776e0f4cb
commit
f4c43a5ac5
1 changed files with 53 additions and 0 deletions
|
|
@ -31,10 +31,21 @@ import {
|
|||
type AgentInstallResponse,
|
||||
type AgentListResponse,
|
||||
type BrowserActionResponse,
|
||||
type BrowserContentQuery,
|
||||
type BrowserContentResponse,
|
||||
type BrowserCreateTabRequest,
|
||||
type BrowserExecuteRequest,
|
||||
type BrowserExecuteResponse,
|
||||
type BrowserLinksResponse,
|
||||
type BrowserMarkdownResponse,
|
||||
type BrowserNavigateRequest,
|
||||
type BrowserPageInfo,
|
||||
type BrowserPdfQuery,
|
||||
type BrowserReloadRequest,
|
||||
type BrowserScreenshotQuery,
|
||||
type BrowserScrapeRequest,
|
||||
type BrowserScrapeResponse,
|
||||
type BrowserSnapshotResponse,
|
||||
type BrowserStartRequest,
|
||||
type BrowserStatusResponse,
|
||||
type BrowserTabInfo,
|
||||
|
|
@ -2085,6 +2096,48 @@ export class SandboxAgent {
|
|||
return this.requestJson("DELETE", `${API_PREFIX}/browser/tabs/${tabId}`);
|
||||
}
|
||||
|
||||
async takeBrowserScreenshot(query: BrowserScreenshotQuery = {}): Promise<Uint8Array> {
|
||||
const response = await this.requestRaw("GET", `${API_PREFIX}/browser/screenshot`, {
|
||||
query,
|
||||
accept: "image/*",
|
||||
});
|
||||
const buffer = await response.arrayBuffer();
|
||||
return new Uint8Array(buffer);
|
||||
}
|
||||
|
||||
async getBrowserPdf(query: BrowserPdfQuery = {}): Promise<Uint8Array> {
|
||||
const response = await this.requestRaw("GET", `${API_PREFIX}/browser/pdf`, {
|
||||
query,
|
||||
accept: "application/pdf",
|
||||
});
|
||||
const buffer = await response.arrayBuffer();
|
||||
return new Uint8Array(buffer);
|
||||
}
|
||||
|
||||
async getBrowserContent(query: BrowserContentQuery = {}): Promise<BrowserContentResponse> {
|
||||
return this.requestJson("GET", `${API_PREFIX}/browser/content`, { query });
|
||||
}
|
||||
|
||||
async getBrowserMarkdown(): Promise<BrowserMarkdownResponse> {
|
||||
return this.requestJson("GET", `${API_PREFIX}/browser/markdown`);
|
||||
}
|
||||
|
||||
async scrapeBrowser(request: BrowserScrapeRequest): Promise<BrowserScrapeResponse> {
|
||||
return this.requestJson("POST", `${API_PREFIX}/browser/scrape`, { body: request });
|
||||
}
|
||||
|
||||
async getBrowserLinks(): Promise<BrowserLinksResponse> {
|
||||
return this.requestJson("GET", `${API_PREFIX}/browser/links`);
|
||||
}
|
||||
|
||||
async executeBrowserScript(request: BrowserExecuteRequest): Promise<BrowserExecuteResponse> {
|
||||
return this.requestJson("POST", `${API_PREFIX}/browser/execute`, { body: request });
|
||||
}
|
||||
|
||||
async getBrowserSnapshot(): Promise<BrowserSnapshotResponse> {
|
||||
return this.requestJson("GET", `${API_PREFIX}/browser/snapshot`);
|
||||
}
|
||||
|
||||
private async getLiveConnection(agent: string): Promise<LiveAcpConnection> {
|
||||
await this.awaitHealthy();
|
||||
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue