Documentation Index
Fetch the complete documentation index at: https://docs.simultaneous.live/llms.txt
Use this file to discover all available pages before exploring further.
Prerequisites
- Python 3.10 or higher
- A Browserbase account (for browser automation)
Step 1: Install
pip install simultaneous simultaneous-cli
Step 2: Sign up and create a project
# Sign up for an account
sim auth signup
# Create your first project
sim projects create "My First Project"
Copy the project ID from the output - you’ll need it in the next step.
Step 3: Run your first automation
Create a file demo.py:
import asyncio
from simultaneous import SimClient, Browsers, Models
async def main():
# Replace with your project ID from step 2
sim = SimClient(project_id="your-project-id-here")
# Create a browser client
browser = sim.browser_client(
provider=Browsers.BROWSERBASE,
model_name=Models.O4_MINI,
)
# Automate the browser
async with browser:
page = browser.page
await page.goto("https://www.google.com")
await page.act("search for 'hello world'")
await asyncio.sleep(2)
await page.screenshot(path="results.png")
print("✅ Done! Check results.png")
if __name__ == "__main__":
asyncio.run(main())
Run it:
That’s it! You’ve run your first browser automation.
What you need
Before running, make sure you have:
- Project ID: Get it from
sim projects list or when you create a project
- Model API key: Set
OPENAI_API_KEY environment variable (for AI-powered actions)
Optional: Using environment variables
You can also set your project ID in a .env file:
# .env file
SIMULTANEOUS_PROJECT_ID=your-project-id-here
OPENAI_API_KEY=sk-...
Then simplify your code:
import asyncio
from simultaneous import SimClient, Browsers, Models
async def main():
sim = SimClient() # Reads from .env automatically
browser = sim.browser_client(
provider=Browsers.BROWSERBASE,
model_name=Models.O4_MINI,
)
async with browser:
page = browser.page
await page.goto("https://www.google.com")
await page.act("search for 'hello world'")
await asyncio.sleep(2)
await page.screenshot(path="results.png")
asyncio.run(main())
Next steps