Ação do sistema operacional do navegador
A InvokeBrowser API fornece controle direto no nível do sistema operacional sobre as sessões do Amazon Bedrock AgentCore Browser. Embora o endpoint de WebSocket-based automação use o DevTools Protocolo Chrome (CDP) para interação com o navegador, InvokeBrowser opera no nível do sistema operacional, permitindo ações que o CDP não pode realizar, como interagir com diálogos de impressão, atalhos de teclado, menus de contexto com o botão direito do mouse, alertas e captura de tela em tela cheia. JavaScript
Visão geral do
O Amazon Bedrock AgentCore Browser fornece duas maneiras de interagir com uma sessão do navegador:
-
WebSocket-based automação (CDP): usa o DevTools protocolo Chrome em uma WebSocket conexão. Isso é ideal para tarefas padrão de automação do navegador, como navegar em páginas, clicar em elementos DOM, preencher formulários e extrair o conteúdo da página. Bibliotecas como Playwright e browser-use se conectam por meio desse endpoint.
-
OS-level actions (InvokeBrowser): usa uma API REST para realizar interações no nível do sistema operacional por meio de ações de mouse, teclado e captura de tela. Isso complementa o CDP ao lidar com cenários em que a automação no nível do navegador é insuficiente.
Use InvokeBrowser quando seu agente precisar:
-
Interaja com diálogos nativos do sistema operacional, como diálogos de impressão, diálogos de arquivos ou solicitações de autenticação que upload/download estão fora do DOM do navegador
-
Ignore JavaScript alertas, confirmações ou solicitações que bloqueiam a execução do CDP
-
Use atalhos de teclado (por exemplo, ctrl+a, ctrl+p) que acionam o comportamento OS-level
-
Interaja com os menus de contexto do botão direito renderizados pelo sistema operacional
-
Capture capturas de tela completas do desktop que incluam conteúdo fora da janela de visualização do navegador, como notificações do sistema operacional ou layouts de várias janelas
-
Execute operações de arrastar e soltar que se estendem pelas janelas do navegador ou entre o navegador e a área de trabalho
InvokeBrowser segue o mesmo padrão de InvokeCodeInterpreter: uma única operação unificada com despacho do tipo ação. Você envia uma solicitação com exatamente uma ação e recebe o resultado correspondente.
Ações compatíveis
InvokeBrowser suporta os seguintes tipos de ação por meio do BrowserAction sindicato. Exatamente um membro da ação deve ser definido por solicitação.
Ações do mouse
Para todas as ações do mouse, os valores das coordenadas (x,y) devem estar estritamente dentro dos limites da janela de visualização da sessão do navegador. Os intervalos válidos são 1 < x < viewport Width-2 e 1 < y < Height-2 viewport. O tamanho padrão da janela de visualização é 1456 × 819 pixels, que pode ser configurado ao iniciar uma sessão usando o parâmetro. viewPort
| Ação | Campos obrigatórios | Campos opcionais | Description |
|---|---|---|---|
|
|
|
|
Clique nas coordenadas especificadas. |
|
|
|
— |
Mova o cursor para as coordenadas especificadas. |
|
|
|
|
Arraste da posição inicial para a final. |
|
|
|
|
Role na posição especificada. |
Ações do teclado
| Ação | Campos obrigatórios | Campos opcionais | Description |
|---|---|---|---|
|
|
|
— |
Digite uma sequência de texto. Tamanho máximo: 10.000 caracteres. |
|
|
|
|
Pressione uma tecla N vezes. |
|
|
|
— |
Pressione uma combinação de teclas (por exemplo, |
Ação de captura de tela
| Ação | Campos obrigatórios | Campos opcionais | Description |
|---|---|---|---|
|
|
— |
|
Capture a área de trabalho completa do sistema operacional (não apenas a janela de visualização do navegador). Formato: somente PNG. |
Considerações
-
ASCII-only entrada de texto: a
keyTypeação suporta somente caracteres ASCII. Non-ASCII caracteres (como Unicode ou caracteres de vários bytes) são ignorados durante a entrada. -
Sem validação de nome de chave: as
keyShortcutaçõeskeyPresse não validam se os nomes de chave especificados são suportados. Se você fornecer um nome de chave não reconhecido, a API retornará um status de SUCESSO sem realizar a ação pretendida. Consulte os nomes de chave compatíveis listados acima. -
Nomes de chave compatíveis: os nomes das chaves
keyPressekeyShortcutações devem estar em letras minúsculas. As chaves suportadas incluem caracteres únicos (a—z,0—9) e chaves nomeadasenter, como,tab,space,backspace,delete,escape,ctrl,alt,shift.
Formato de solicitação e resposta
Solicitação
POST /browsers/{browserIdentifier}/sessions/invoke HTTP/1.1 x-amzn-browser-session-id: sessionId Content-type: application/json
O corpo da solicitação contém um action campo com exatamente um membro do conjunto de BrowserAction uniões:
{ "action": { "mouseClick": { "x": 100, "y": 200, "button": "LEFT", "clickCount": 1 } } }
Resposta
O sessionId é retornado por meio do cabeçalho de x-amzn-browser-session-id resposta. O corpo da resposta contém um result campo com o resultado da ação correspondente.
Sobre o sucesso:
{ "result": { "mouseClick": { "status": "SUCCESS", "error": null } } }
Em caso de falha, o status campo é definido como FALHA e contém uma descrição da falha. error
Exemplos
Os exemplos a seguir mostram como invocar ações do navegador usando a AWS CLI AWS , o SDK for Python (Boto3) e a API.