<!-- This is an auto-generated description by cubic. -->
## Summary by cubic
Changed the screenshot test to start browser sessions one at a time
instead of in parallel to avoid Playwright semaphore errors.
<!-- End of auto-generated description by cubic. -->
<!-- This is an auto-generated description by cubic. -->
## Summary by cubic
Improved error handling for missing optional imports in eval by raising
clear ImportError messages with install instructions.
<!-- End of auto-generated description by cubic. -->
<!-- This is an auto-generated description by cubic. -->
## Summary by cubic
Added support for Browserbase and Hyperbrowser as remote browser options
in the eval service.
- **New Features**
- Users can now select Browserbase or Hyperbrowser with the `--browser`
flag.
- Added environment variable checks and session creation logic for both
services.
<!-- End of auto-generated description by cubic. -->
refactor: simplify email query parameter description and enhance action
result messages
- Updated the description of the `query` parameter in
`GetRecentEmailsParams` for clarity.
- Refined the action result messages for better readability and
consistency, including specific query details in the long-term memory
response.
<!-- This is an auto-generated description by cubic. -->
---
## Summary by cubic
Simplified the Gmail email query parameter description and improved
action result messages for clearer feedback.
- **Refactors**
- Shortened and clarified the `query` parameter description.
- Updated action result messages to include query details and improve
readability.
<!-- End of auto-generated description by cubic. -->
Improved filesystem error handling and added better validation for
filenames
Updated model names everywhere to gpt-4.1
Added an example of writing into csv
<!-- This is an auto-generated description by cubic. -->
## Summary by cubic
The eval service now fetches rotating authentication info from the
server and injects it into tasks that require login credentials.
- **New Features**
- Added server call to fetch auth distribution if any tasks specify
required auth keys.
- Injects relevant login credentials into task descriptions for agent
use.
<!-- End of auto-generated description by cubic. -->
- Added new file types: JsonFile and CsvFile to the file system.
- Updated read_file method to handle external files with .json and .csv extensions.
- Modified write_file action to allow .json and .csv file extensions in addition to .md and .txt.
- Introduced pypdf dependency for PDF file handling.
This update improves the flexibility of file operations within the application.
<!-- This is an auto-generated description by cubic. -->
## Summary by cubic
Added support for selecting different browsers (local, Anchor Browser,
Brightdata) in the eval script using a new --browser argument.
- **New Features**
- Users can choose the browser backend with --browser (local,
anchor-browser, brightdata, browser-use).
- Updated environment variable handling and logging for new browser
options.
<!-- End of auto-generated description by cubic. -->
<!-- This is an auto-generated description by cubic. -->
## Summary by cubic
Added support for using Anchor Browser when running evals, allowing
remote browser sessions if an API key is set.
- **New Features**
- Detects ANCHOR_BROWSER_API_KEY and connects to Anchor Browser
automatically.
- Falls back to local browser if Anchor Browser is unavailable.
<!-- End of auto-generated description by cubic. -->
- Updated the description of the `query` parameter in `GetRecentEmailsParams` for clarity.
- Refined the action result messages for better readability and consistency, including specific query details in the long-term memory response.
## Overview
Adds Gmail integration to automatically retrieve 2FA verification codes
during web automation, eliminating manual intervention for two-factor
authentication flows.
## Key Features
- **Automatic 2FA Code Extraction**: Smart regex patterns extract
verification codes from Gmail with context-aware prioritization
- **Flexible Authentication**: Supports both OAuth2 file-based auth
(development) and direct access tokens (production)
- **Agent Actions**: 3 new actions - `find_2fa_codes`,
`get_recent_emails`, `authenticate_gmail`
- **Retry Logic**: Progressive wait times handle email delivery delays
(10s, 20s, 30s)
## Usage
```python
from browser_use.integrations.gmail import register_gmail_actions
controller = Controller()
register_gmail_actions(controller) # File-based auth
# or register_gmail_actions(controller, access_token="token") # Production
# Agent automatically handles 2FA:
# 1. Login with credentials → 2FA prompt → find_2fa_codes → code extracted → login complete
```
## Technical Details
- **Files**: New `browser_use/integrations/gmail/` module with service,
actions, and examples
- **Dependencies**: Added Google API client libraries to
`pyproject.toml`
- **Security**: Read-only Gmail access, credentials gitignored, OAuth2
compliant
- **Backward Compatible**: Zero breaking changes, graceful degradation
without Gmail
## Impact
Solves the biggest friction point in web automation - manual 2FA code
entry. Enables fully autonomous login flows for services requiring email
verification.
<!-- This is an auto-generated description by cubic. -->
---
## Summary by cubic
Added Gmail API integration to automatically fetch 2FA codes and recent
emails, enabling agents to handle email-based authentication without
manual steps.
- **New Features**
- Smart extraction of 2FA codes from Gmail using regex and context.
- Supports both OAuth2 file-based and direct access token
authentication.
- Three new agent actions: find_2fa_codes, get_recent_emails,
authenticate_gmail.
- Retry logic for delayed email delivery.
- Example script for setup and usage.
- **Dependencies**
- Added Google API client libraries to project dependencies.
<!-- End of auto-generated description by cubic. -->