# Browser Tool (/pt/docs/verdent-for-vscode/core-features/browser-tool)

> Automatize interações na web, teste interfaces e capture screenshots usando sessões de navegador



A Browser Tool permite interações de navegador conduzidas por IA. Inicie sessões de navegador, clique em elementos, digite texto, role páginas e capture screenshots por meio de comandos em linguagem natural.

### O que você vai aprender [#o-que-você-vai-aprender]

* Ciclo de vida da sessão: iniciar → interagir → fechar
* Ações do navegador: clicar, digitar, rolar
* Casos de uso: teste de interface, screenshots, navegação

***

## Ciclo de vida da sessão [#ciclo-de-vida-da-sessão]

Todo fluxo de trabalho de automação de navegador segue uma sequência rígida:

1. **Iniciar** - Começa uma sessão de navegador em uma URL de destino
2. **Interagir** - Executa ações (clicar, digitar, rolar)
3. **Fechar** - Encerra a sessão para liberar recursos

O estado do navegador persiste entre as ações dentro de uma sessão. Você deve fechar o navegador antes de usar outras ferramentas do Verdent.

<Tip>
  Cada ação retorna um screenshot mostrando o estado atual do navegador. Revise os screenshots entre as ações para verificar o sucesso antes de prosseguir.
</Tip>

***

## Ações do navegador [#ações-do-navegador]

<Tabs>
  <Tab title="launch">
    **Inicia uma nova sessão de navegador**

    * Obrigatório: URL de destino
    * Abre o navegador na resolução 1920x1080
    * Sempre a primeira ação em qualquer fluxo de trabalho

    ```
    Launch browser at https://example.com
    ```
  </Tab>

  <Tab title="click">
    **Clica em coordenadas específicas**

    * Obrigatório: coordenadas x,y
    * As coordenadas são relativas à viewport
    * Centralize os elementos de destino para maior confiabilidade

    ```
    Click coordinates 450,300
    ```
  </Tab>

  <Tab title="type">
    **Digita texto pelo teclado**

    * Obrigatório: texto a digitar
    * Digita no elemento atualmente em foco
    * Frequentemente segue um clique em um campo de entrada

    ```
    Type "user@example.com"
    ```
  </Tab>

  <Tab title="scroll">
    **Rola a página**

    * `scroll_down` - Rola uma altura de página para baixo
    * `scroll_up` - Rola uma altura de página para cima
    * Revela conteúdo fora da tela

    ```
    Scroll down to load more content
    ```
  </Tab>

  <Tab title="close">
    **Encerra a sessão do navegador**

    * Sempre a última ação em qualquer fluxo de trabalho
    * Obrigatório antes de usar outras ferramentas
    * Libera os recursos do navegador

    ```
    Close browser
    ```
  </Tab>
</Tabs>

<Tip>
  As coordenadas são relativas à viewport de 1920x1080. O centro é aproximadamente (960, 540). Use screenshots para estimar as posições dos elementos.
</Tip>

***

## Casos de uso comuns [#casos-de-uso-comuns]

<Tabs>
  <Tab title="UI Testing">
    **Teste envios de formulários e fluxos de navegação**

    Inicie em uma página de login, clique nos campos de entrada, digite credenciais, envie formulários e verifique os resultados por meio de screenshots.

    ```
    Launch browser at https://app.example.com/login
    Click coordinates 450,280
    Type "testuser@example.com"
    Click coordinates 450,340
    Type "password123"
    Click coordinates 500,420
    Close browser
    ```
  </Tab>

  <Tab title="Screenshots">
    **Capture páginas para documentação**

    Os screenshots são capturados automaticamente após cada ação. Navegue até as páginas e seções de destino para construir documentação visual.

    ```
    Launch browser at https://docs.example.com
    Scroll down to API section
    Close browser
    ```
  </Tab>

  <Tab title="Navigation">
    **Navegue até o conteúdo de destino**

    Use a automação de navegador para alcançar conteúdo que exige interação (clicar em menus, carregar conteúdo lazy) antes da extração.

    ```
    Launch browser at https://store.example.com
    Scroll down three times
    Click "Next Page" at 960,800
    Close browser
    ```
  </Tab>
</Tabs>

***

## Limitações [#limitações]

* **Exclusividade de ferramenta** - Apenas browser\_action pode ser usada durante sessões ativas
* **Baseada em coordenadas** - Requer coordenadas x,y, não seletores CSS
* **Resolução fixa** - A viewport do navegador é fixada em 1920x1080
* **Somente Chrome** - O Puppeteer suporta navegadores Chrome/Chromium
* **Sem persistência** - As sessões não sobrevivem a reinicializações do Verdent
* **Sem suporte a WSL** - A Browser Tool não funciona em ambientes WSL
* **Sem estado salvo** - Cada sessão começa do zero, sem cookies ou autenticação
* **Sessão única** - Apenas uma sessão de navegador pode estar ativa por vez

<Tip>
  Sempre feche a sessão do navegador antes de usar operações de arquivo, ferramentas de busca ou comandos bash. O navegador bloqueia outras ferramentas durante sessões ativas.
</Tip>

***

## Veja também [#veja-também]

<CardGroup cols="3">
  <Card title="Code Diff" icon="code-compare" href="/docs/verdent-for-vscode/core-features/code-diff">
    Revise e aprove alterações de código
  </Card>
</CardGroup>
