Skip to main content

Minimal cloud browser SDK for AgentBay (Alibaba Cloud Wuying) — session lifecycle management via CDP.

Project description

agentbay-lite

PyPI version Python License: MIT

Minimal cloud browser SDK for AgentBay (Alibaba Cloud Wuying) — session lifecycle management via CDP.

  • Lightweight: only httpx + pydantic, no Alibaba Cloud SDK dependency
  • Sync & Async: AgentBayCloud and AsyncAgentBayCloud clients
  • Context manager: sessions auto-delete on exit
  • Alibaba Cloud RPC: proper Bearer token auth with Timestamp/SignatureNonce
  • Unified interface: same API shape as browser-use-lite, skyvern-lite, airtop-lite

Install

pip install agentbay-lite

Quick Start

from agentbay_lite import AgentBayCloud

client = AgentBayCloud(api_key="...")  # or set AGENTBAY_API_KEY env var

# Create a cloud browser session (3-step RPC: CreateMcpSession -> InitBrowser -> GetCdpLink)
session = client.sessions.create()
print(session.cdp_url)   # wss://...
print(session.session_id)

# Use with Playwright (or any CDP client)
from playwright.sync_api import sync_playwright
with sync_playwright() as pw:
    browser = pw.chromium.connect_over_cdp(session.cdp_url)
    page = browser.contexts[0].new_page()
    page.goto("https://example.com")

# Cleanup
client.sessions.delete(session.session_id)
client.close()

Context Manager

with AgentBayCloud(api_key="...") as client:
    with client.sessions.create() as session:
        ...  # session auto-deleted on exit

Async

import asyncio
from agentbay_lite import AsyncAgentBayCloud

async def main():
    async with AsyncAgentBayCloud(api_key="...") as client:
        session = await client.sessions.create()
        print(session.cdp_url)
        await client.sessions.delete(session.session_id)

asyncio.run(main())

Features

Feature Usage
Stealth mode create(browser_mode="stealth")
Custom proxy create(proxy=ProxyConfig(server="http://..."))
Managed proxy create(proxy=ManagedProxyConfig(country="US"))
Fingerprint create(fingerprint=FingerprintConfig(user_agent="..."))
Context persistence create(context=ContextAttach(context_id="..."))
Recording control create(recording=RecordingConfig(enabled=False))
Custom image create(image_id="img-xxx")
Session labels create(labels={"env": "prod"})
Idle timeout create(idle_release_timeout=300)

Session CRUD

# Create
session = client.sessions.create()

# Get
info = client.sessions.get(session.session_id)

# List
sessions = client.sessions.list(status="RUNNING")

# Delete (idempotent)
client.sessions.delete(session.session_id)

Configuration

Environment Variable Description Default
AGENTBAY_API_KEY API key (required if not passed explicitly)
AGENTBAY_ENDPOINT API endpoint hostname wuyingai.cn-shanghai.aliyuncs.com

Exception Hierarchy

CloudBrowserError          # Base exception
├── AuthenticationError    # 401/403 — invalid or expired API key
├── QuotaExceededError     # 429 — rate limit (has .retry_after attribute)
├── SessionNotFoundError   # 404 — session doesn't exist
├── ProviderError          # 5xx — server error (has .status_code, .request_id)
├── TimeoutError           # Operation timed out
└── NetworkError           # Connection failure

License

MIT

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

agentbay_lite-1.0.1.tar.gz (16.3 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

agentbay_lite-1.0.1-py3-none-any.whl (14.1 kB view details)

Uploaded Python 3

File details

Details for the file agentbay_lite-1.0.1.tar.gz.

File metadata

  • Download URL: agentbay_lite-1.0.1.tar.gz
  • Upload date:
  • Size: 16.3 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.2.0 CPython/3.12.9

File hashes

Hashes for agentbay_lite-1.0.1.tar.gz
Algorithm Hash digest
SHA256 96bfe451c48be1c1b5965d0b71bdda06cd80bbc0cc58a25fc869e9ecf9462d85
MD5 bd790db80963a729d230f50d4f376011
BLAKE2b-256 dec74f8f7573f0f041c40954780112a33610339d2abe9c4617ecb7d4b611c932

See more details on using hashes here.

File details

Details for the file agentbay_lite-1.0.1-py3-none-any.whl.

File metadata

  • Download URL: agentbay_lite-1.0.1-py3-none-any.whl
  • Upload date:
  • Size: 14.1 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.2.0 CPython/3.12.9

File hashes

Hashes for agentbay_lite-1.0.1-py3-none-any.whl
Algorithm Hash digest
SHA256 5f6e8b0a99c13ef9f8d37d1e28cc232bd084926ae62df381b2ff6513fa9c3983
MD5 dc3355ff1662769ba6f19800a21bbc9f
BLAKE2b-256 6332a17b3d36f876d9b5ec77eed0af44be97859a644df8aae354cd8338d42336

See more details on using hashes here.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page