Todos os produtos
Search
Central de documentação

AgentBay:Conceitos principais

Última atualização: Jun 29, 2026

Conheça os conceitos fundamentais do AgentBay SDK, incluindo sessões, imagens, persistência de dados e resultados de API.

Classe AgentBay

Funções principais

A classe AgentBay é a interface primária para interagir com o serviço AgentBay. Ela oferece as seguintes funções essenciais:

  • Gerenciador de sessões: Crie, exclua e gerencia sessões em nuvem.

  • Cliente de API: Responsável por toda a comunicação com o serviço de nuvem AgentBay.

  • Manipulador de autenticação: Gerencia chaves de API e segurança de forma automática.

Uso básico

# 1. Initialize client
agent_bay = AgentBay()

# 2. Create session (uses linux_latest by default)
session = agent_bay.create().session

# 3. Use session for your tasks
# ... your automation tasks ...

# 4. Clean up resources
agent_bay.delete(session)

Sessões

Uma sessão representa uma conexão entre um usuário e um ambiente em nuvem.

Principais características

  • Temporárias: As sessões são criadas sob demanda e destruídas após a conclusão das tarefas.

  • Isoladas: Cada sessão opera com total independência em relação às demais.

  • Faturadas: O custo é calculado com base no tempo em que a sessão permanece ativa.

Uso básico

# Create a session
session = agent_bay.create().session

# Use the session for your tasks
session.command.execute_command("echo 'Hello World'")

# Always clean up when done
agent_bay.delete(session)

Ciclo de vida da sessão

Create Session → Use Session → Delete Session
      ↓             ↓              ↓
  Allocate      Execute         Release
  Resources     Operations      Resources

Liberação de sessão

É obrigatório liberar uma sessão após o uso para liberar recursos de nuvem. Existem duas maneiras de fazer isso:

Liberação manual (recomendada)

# Explicitly delete when done
agent_bay.delete(session)

Liberação automática por tempo limite

Caso você não exclua a sessão manualmente, ela será liberada automaticamente após atingir o tempo limite.

  1. Acesse o console do AgentBay. No painel de navegação à esquerda, escolha Policy Management.

  2. Clique em Create Policy. Defina Release Inactive Desktops como Ative.

  3. Insira os valores de tempo limite para Release Desktop after MCP Interaction Terminates e Release Desktop after MCP Interaction Terminates.

  4. Clique em Create Policy.

  5. No painel de navegação à esquerda, escolha Service Management. Localize a chave de API . Na coluna Actions, clique no ícone ⋮.

  6. Escolha View/Associate Policy. Na seção Associated Policy, clique em Associate Policy. Selecione a política criada e clique em Confirm.

    Nota

    Cada chave de API pode ser associada a apenas uma política. Ao criar uma chave de API, ela é associada automaticamente à política padrão. Você deve primeiro clicar em Dissociate.

Imagens

Imagens oficiais do sistema

A tabela a seguir lista as imagens oficiais mais recentes fornecidas pelo AgentBay.

ID da imagem

Ambiente

Mais indicado para

linux_latest

Computador em nuvem

Computação geral e tarefas de servidor (padrão se não especificado)

windows_latest

Computador em nuvem

Tarefas gerais do Windows, desenvolvimento .NET e aplicativos Windows

browser_latest

Navegador em nuvem

Web scraping, automação de navegador e testes de sites

code_latest

Sandbox de código

Programação, ferramentas de desenvolvimento e tarefas de codificação

mobile_latest

Cloud Phone

Testes de aplicativos móveis e automação Android

Nota
  • Se nenhum image_id for especificado, o AgentBay utiliza linux_latest como ambiente padrão.

  • É possível crie e utilizar imagens personalizadas no console do AgentBay para atender a necessidades específicas.

Selecione uma imagem adequada

Exemplo de ambiente Windows

from agentbay.session_params import CreateSessionParams

# Create Windows environment and automate notepad
params = CreateSessionParams(image_id="windows_latest")
session = agent_bay.create(params).session

# Start Notepad application
session.computer.start_app("notepad.exe")
# Returns: ProcessListResult with started process info

# Input text into notepad
session.computer.input_text("Hello from Windows!")
# Returns: BoolResult with success status

agent_bay.delete(session)

Exemplo de ambiente de navegador

# Create browser environment
params = CreateSessionParams(image_id="browser_latest")
session = agent_bay.create(params).session

# Initialize and navigate
from agentbay.browser import BrowserOption
session.browser.initialize(BrowserOption())
session.browser.agent.navigate("https://www.baidu.com")
print("Web navigation successful")

agent_bay.delete(session)

Exemplo de ambiente sandbox de código

# Create development environment and execute code
params = CreateSessionParams(image_id="code_latest")
session = agent_bay.create(params).session

# Execute code
result = session.code.run_code("print('Hello from CodeSpace!')", "python")
# Returns: CodeExecutionResult with output
# Example: result.result = "Hello from CodeSpace!"

agent_bay.delete(session)

Exemplo de ambiente Cloud Phone

# Create Android environment and send HOME key
params = CreateSessionParams(image_id="mobile_latest")
session = agent_bay.create(params).session

# Press HOME key to return to home screen
from agentbay.mobile import KeyCode
session.mobile.send_key(KeyCode.HOME)
# Returns: BoolResult with success status
# Example: result.success = True (returns to Android home screen)

agent_bay.delete(session)

Persistência de dados

Dados temporários

  • Por padrão, todos os dados de uma sessão são temporários.

  • As informações são perdidas assim que a sessão termina.

  • Ideal para processamento de tarefas, arquivos transitórios ou cache.

# This data will be LOST when session ends
session.file_system.write_file("/tmp/temp_data.txt", "This will disappear")

Dados persistentes

  • O armazenamento persistente permite reter dados entre diferentes sessões.

  • A configuração desse recurso deve ser feita explicitamente.

  • Recomendado para arquivos de projeto, configurações e resultados importantes.

from agentbay import ContextSync

# Create persistent storage
context = agent_bay.context.get("my-project", create=True).context
context_sync = ContextSync.new(context.id, "/tmp/persistent")

# Create session with persistent data
params = CreateSessionParams(context_syncs=[context_sync])
session = agent_bay.create(params).session

# This data will be SAVED across sessions
session.file_system.write_file("/tmp/persistent/important.txt", "This will persist")
Nota

Para garantir a persistência dos dados, é necessário utilizar um Contexto. Caso contrário, as informações serão perdidas permanentemente ao final da sessão.

Resultados de API e IDs de solicitação

Resultados de API

As chamadas à API do AgentBay retornam respostas encapsuladas em um objeto de resultado.

# Example API call
screenshot = session.computer.screenshot()

# The result object contains:
print(screenshot.success)     # True/False - whether the operation succeeded
print(screenshot.data)        # Your actual data (screenshot URL)
print(screenshot.request_id)  # Request ID for troubleshooting

ID de solicitação

Toda chamada de API retorna um ID de solicitação único, como "ABC12345-XXXX-YYYY-ZZZZ-123456789ABC".

Utilidades dos IDs de solicitação
  • Resolução de problemas: Compartilhe este ID com o suporte para obter assistência mais rápida.

  • Rastreamento: Acompanhe operações individuais nos logs de trace.

  • Depuração: Identifique exatamente qual chamada de API apresentou falha.

Quando utilizar IDs de solicitação
  • Quando uma chamada de API falhar inesperadamente.

  • Ao notar problemas de desempenho em uma operação específica.

  • Sempre que entrar em contato com o suporte sobre algum incidente.

Exemplo de resolução de problemas
result = session.code.run_code("print('hello')", "python")
if not result.success:
    print(f"Code execution failed! Request ID: {result.request_id}")
    # Share this Request ID with support for faster help