Run multiple browser automation agents concurrently on configurable intervals

Orchestrate multiple browser automation agents that run concurrently on configurable intervals. Perfect for scheduled tasks like monitoring social media, checking emails, or tracking websites - all running in parallel.
agents/ directoryuvx browser-use init --template scheduler
Optional for agent authentication:
The scheduler automatically discovers and executes all .py files in the agents/ directory:
No configuration needed! The scheduler automatically finds and runs ALL Python files in the agents/ directory.
To add a new agent:
agents/ (e.g., agents/instagram.py)To disable an agent temporarily:
Prefix the filename with underscore:
mv agents/linkedin.py agents/_linkedin.py # Disabled
mv agents/_linkedin.py agents/linkedin.py # Re-enabledControl scheduler behavior via environment variables in .env:
# Required
BROWSER_USE_API_KEY=your-key-here
# Optional - Scheduler Settings
SCHEDULER_INTERVAL_MINUTES=5 # Run every 5 minutes
SCHEDULER_SCRIPTS_DIR=agents # Directory containing agent scripts
# Optional - Cloud Settings (for agents)
CLOUD_PROFILE_ID=your-profile-id # For persistent authentication
CLOUD_PROXY_COUNTRY_CODE=us # Proxy routing
CLOUD_TIMEOUT=60 # Session timeoutThe template includes two example agents:
agents/gmail.py
agents/x.py
Both agents use the @sandbox decorator for cloud execution with persistent authentication.
Run all agents on schedule:
uv run main.pyThe scheduler will:
Ctrl+CRun a single agent once:
uv run agents/gmail.py # Run Gmail agent
uv run agents/x.py # Run X agentSocial Media Monitoring
Inbox Management
Website Monitoring
Data Collection
Change the interval:
Update SCHEDULER_INTERVAL_MINUTES in your .env:
SCHEDULER_INTERVAL_MINUTES=10 # Run every 10 minutesUse a different agents directory:
Update SCHEDULER_SCRIPTS_DIR in your .env:
SCHEDULER_SCRIPTS_DIR=my-agents📖 See the detailed README for creating custom agents, advanced configuration, and troubleshooting.