Azione del sistema operativo del browser
L' InvokeBrowser API fornisce il controllo diretto a livello di sistema operativo sulle sessioni del browser Amazon Bedrock AgentCore . Sebbene l'endpoint di WebSocket-based automazione utilizzi il DevTools protocollo Chrome (CDP) per l'interazione con il browser, InvokeBrowser opera a livello di sistema operativo, abilitando azioni che CDP non è in grado di gestire, come l'interazione con le finestre di dialogo di stampa, le scorciatoie da tastiera, i menu contestuali con il pulsante destro del mouse, gli avvisi e l'acquisizione di schermate a schermo intero. JavaScript
Panoramica di
Amazon Bedrock AgentCore Browser offre due modi per interagire con una sessione del browser:
-
WebSocket-based automazione (CDP): utilizza il DevTools protocollo Chrome tramite una WebSocket connessione. È ideale per le attività standard di automazione del browser, come la navigazione tra le pagine, il clic sugli elementi DOM, la compilazione di moduli e l'estrazione del contenuto della pagina. Librerie come Playwright e Browser-use si connettono tramite questo endpoint.
-
OS-level actions (InvokeBrowser): utilizza un'API REST per eseguire interazioni a livello di sistema operativo tramite mouse, tastiera e azioni di screenshot. Ciò integra CDP gestendo scenari in cui l'automazione a livello di browser è insufficiente.
Utilizzalo InvokeBrowser quando il tuo agente deve:
-
Interagisci con le finestre di dialogo native del sistema operativo, come le finestre di dialogo di stampa, le finestre di upload/download dialogo dei file o le richieste di autenticazione esterne al DOM del browser
-
Ignora gli JavaScript avvisi, le conferme o i prompt che bloccano l'esecuzione di CDP
-
Utilizzate le scorciatoie da tastiera (ad esempio, ctrl+a, ctrl+p) che attivano il comportamento OS-level
-
Interagisci con i menu contestuali visualizzati con il pulsante destro del mouse dal sistema operativo
-
Cattura schermate complete del desktop che includono contenuti esterni alla finestra del browser, come notifiche del sistema operativo o layout a più finestre
-
Esegui operazioni di trascinamento che si estendono su più finestre del browser o tra il browser e il desktop
InvokeBrowser segue lo stesso schema di InvokeCodeInterpreter: una singola operazione unificata con invio di tipo di azione. Invii una richiesta con esattamente un'azione e ricevi un risultato corrispondente.
Azioni supportate
InvokeBrowser supporta i seguenti tipi di azioni tramite l'BrowserActionunione. È necessario impostare esattamente un membro dell'azione per richiesta.
Azioni del mouse
Per tutte le azioni del mouse, i valori delle coordinate (x,y) devono rientrare rigorosamente nei limiti della finestra della sessione del browser. Gli intervalli validi sono 1 < x < viewport Width-2 e 1 < y < viewport. Height-2 La dimensione predefinita del viewport è 1456×819 pixel, che può essere configurata all'avvio di una sessione utilizzando il parametro. viewPort
| Azione | Campi obbligatori | Campi facoltativi | Description |
|---|---|---|---|
|
|
|
|
Fate clic sulle coordinate specificate. |
|
|
|
— |
Sposta il cursore sulle coordinate specificate. |
|
|
|
|
Trascina dalla posizione iniziale a quella finale. |
|
|
|
|
Scorri fino alla posizione specificata. |
Azioni da tastiera
| Azione | Campi obbligatori | Campi facoltativi | Description |
|---|---|---|---|
|
|
|
— |
Digita una stringa di testo. Lunghezza massima: 10.000 caratteri. |
|
|
|
|
Premere un tasto N volte. |
|
|
|
— |
Premere una combinazione di tasti (ad esempio, |
Azione screenshot
| Azione | Campi obbligatori | Campi facoltativi | Description |
|---|---|---|---|
|
|
— |
|
Cattura l'intero desktop del sistema operativo (non solo la finestra del browser). Formato: solo PNG. |
Considerazioni
-
ASCII-only immissione di testo: l'
keyTypeazione supporta solo caratteri ASCII. Non-ASCII i caratteri (come i caratteri Unicode o multibyte) vengono ignorati durante l'immissione. -
Nessuna convalida dei nomi di chiave: le
keyShortcutazionikeyPressand non convalidano se i nomi di chiave specificati sono supportati. Se fornite un nome di chiave non riconosciuto, l'API restituisce lo stato SUCCESS senza eseguire l'azione prevista. Fate riferimento ai nomi chiave supportati elencati sopra. -
Nomi chiave supportati: i nomi delle chiavi
keyPresse lekeyShortcutazioni devono essere in minuscolo. Le chiavi supportate includono caratteri singoli (a—z,0—9) e chiavi denominate comeenter,,tab,space,,backspace,delete,escapectrl,alt.shift
Formati di richieste e risposte
Richiesta
POST /browsers/{browserIdentifier}/sessions/invoke HTTP/1.1 x-amzn-browser-session-id: sessionId Content-type: application/json
Il corpo della richiesta contiene un action campo con esattamente un membro dell'BrowserActionunion set:
{ "action": { "mouseClick": { "x": 100, "y": 200, "button": "LEFT", "clickCount": 1 } } }
Risposta
sessionIdViene restituito tramite l'intestazione della x-amzn-browser-session-id risposta. Il corpo della risposta contiene un result campo con il risultato dell'azione corrispondente.
In caso di successo:
{ "result": { "mouseClick": { "status": "SUCCESS", "error": null } } }
In caso di errore, il status campo è impostato su FAILED e contiene una descrizione dell'errore. error
Esempi
Gli esempi seguenti mostrano come richiamare le azioni del browser utilizzando la AWS CLI AWS , SDK for Python (Boto3) e l'API.