# API de Controle de Computadores SUMMARY: Controle remoto de computadores registrados — enfileirar comandos, capturar screenshots, executar scripts em máquinas remotas. KEY CONTEXT: Two sides: user-facing (Mind Key/JWT) and agent-facing (Computer Token) Register agent: POST /computers/register { install_code } → returns computer_token List: GET /computers/list (Mind Key or JWT) Queue command: POST /computers/:id/commands { type, payload } Command types: screenshot, click, move, type, key, scroll, drag Agent poll: GET /computers/me/poll?wait=5 (Computer Token) Agent result: POST /computers/me/commands/:cid/result (Computer Token) One-shot screenshot: GET /computers/:id/screenshot (waits 30s for result) Pattern: register agent on remote machine → user queues commands → agent polls and executes API de Controle de Computadores A API de Controle de Computadores permite controlar remotamente computadores registrados. Um pequeno agente () roda na máquina-alvo, faz poll por comandos, executa-os e envia os resultados de volta. Isso permite automação de GUI orientada por LLM. Arquitetura [CODE BLOCK] Endpoints voltados ao usuário (Mind Key ou JWT) GET /computers/list Lista todos os computadores registrados. [CODE BLOCK] GET /computers/:id Obtém detalhes de um único computador. [CODE BLOCK] POST /computers/install-code Gera um código de instalação para registrar um novo computador. [CODE BLOCK] Resposta: POST /computers/:id/commands Enfileira um comando para o agente remoto executar. [CODE BLOCK] Resposta: GET /computers/:id/command (via query) Enfileira um comando via GET (para casos simples). [CODE BLOCK] GET /computers/:id/commands Lista comandos recentes de um computador. [CODE BLOCK] GET /computers/:id/commands/:cid Obtém o status + resultado de um comando específico. [CODE BLOCK] GET /computers/:id/screenshot One-shot: enfileira um comando de screenshot e aguarda até 30s pelo resultado. [CODE BLOCK] POST /computers/:id/disable Desativa um computador (revoga seu token, mantém o registro para auditoria). [CODE BLOCK] DELETE /computers/:id Exclui um computador permanentemente. [CODE BLOCK] Endpoints voltados ao agente (Computer Token) Esses endpoints são usados pelo em execução na máquina-alvo. Eles usam um Computer Token (retornado por ), não uma Mind Key. POST /computers/register Resgata um código de instalação e obtém um Computer Token. [CODE BLOCK] Resposta: > [!CRITICAL] > Salve o — ele é exibido apenas uma vez e é necessário para > todos os endpoints do lado do agente. GET /computers/me/poll Long-poll por novos comandos. O agente chama isso em loop. [CODE BLOCK] Retorna imediatamente se houver comandos pendentes, ou após segundos se não houver. POST /computers/me/commands/:cid/result Envia o resultado da execução de um comando. [CODE BLOCK] Tipos de comando | Tipo | Payload | Descrição | |------|---------|-----------| | | | Captura a tela como PNG (base64) | | | | Clica nas coordenadas | | | | Move o mouse para as coordenadas | | | | Digita texto no cursor | | | | Pressiona combinação de teclas | | | | Rola a roda do mouse | | | | Arrasta e solta | Padrão comum: automação de GUI orientada por LLM [CODE BLOCK] Próximos passos - Proxy de navegador — serviço separado para automação de navegador - Guia de agentes auto-hospedados