O que os agentes fazem daqui
O navegador do agente
Cada agente abre um navegador próprio, como painel do canvas. A imagem da página volta para ele.
O que pedir
- "Abre o localhost:3000 e me diz se o cabeçalho ficou alinhado."
- "Abre a página, clica em Entrar e me diz o que acontece."
- "A tela está em branco. Lê o console e me diz qual é o erro."
- "Preenche o campo de e-mail com um valor inválido e vê se a mensagem de erro aparece."
- "Rola até o rodapé e confere se os links novos apareceram."
- "Me diz qual é o texto do botão de confirmação."
O que ele faz na página
- Abrir um endereço: aceita
localhost:3000,meusite.com:8080ou uma URL completa. - Fotografar: devolve a imagem da página no estado em que ela está.
- Clicar: o alvo é um seletor CSS (
#salvar,.btn-primary) ou o texto visível do elemento (Entrar). A imagem do resultado vem junto. - Digitar num campo: o alvo é um seletor CSS. Os eventos de input são disparados, então React e Vue enxergam o texto. Ele pode apertar Enter no fim, o que resolve busca e login.
- Rolar: até o topo, até o fim, até um seletor, ou um número de pixels.
- Ler o console: logs, avisos e erros de JavaScript. É a única fonte quando a página aparece em branco.
- Rodar JavaScript na página: o valor da expressão volta para ele. Serve para ler o texto de um elemento, conferir um valor de estado ou checar se um seletor existe.
- Fechar o navegador: o painel sai do canvas.
Um navegador por agente
- O navegador pertence ao agente que o abriu. Nenhum outro agente navega nele.
- Um agente não dirige o navegador que você abriu. Esse é o de o painel do navegador.
- Se ele já tem um navegador aberto, o endereço seguinte vai para o mesmo painel.
O open do terminal vai para o canvas
Quando um agente roda open com uma URL ou com um arquivo .html, o CanvasCode abre o endereço no
navegador dele, dentro do canvas, e recusa o comando. O agente recebe o motivo e o endereço que foi
aberto.
- Isso vale enquanto o navegador padrão deste projeto for o interno, em ajustes do navegador. Com o externo escolhido, o comando passa direto.
- A escapatória é o marcador
CODECANVAS_EXTERNO=1na frente do comando: com ele, o endereço abre fora do app. - Um
open .no Finder, umopen -anoutro programa e qualquer alvo que não seja uma página não são interceptados.
O que ele não faz
- Não usa o Safari nem o Chrome para conferir o próprio trabalho.
- Não clica em elemento que não existe: ele responde que não achou, em vez de seguir adiante.