--- title: "Observability" description: "Trace Browser Use's agent execution steps and capture browser session recording" icon: "eye" mode: "wide" --- ## Overview Browser Use has a native integration with [Laminar](https://laminar.sh) - open-source platform for monitoring and analyzing error patterns in AI agents. Laminar SDK automatically captures **agent execution steps, costs and browser session recordings** of Browser Use agent. Browser session recordings allows developers to see full video replay of the browser session, which is useful for debugging Browser Use agent. ## Setup Install Laminar python SDK. ```bash pip install lmnr ``` Register on [Laminar Cloud](https://laminar.sh) or [self-host Laminar](https://github.com/lmnr-ai/lmnr), create a project and get the project API key from your project settings. Set the `LMNR_PROJECT_API_KEY` environment variable. ```bash export LMNR_PROJECT_API_KEY= ``` ## Usage Then, you simply initialize the Laminar at the top of your project and both Browser Use agent traces and session recordings will be automatically captured. ```python {7-9} from browser_use import Agent, ChatGoogle import asyncio from lmnr import Laminar import os # At initialization time, Laminar auto-instruments # Browser Use and any browser you use (local or remote) Laminar.initialize(project_api_key=os.getenv('LMNR_PROJECT_API_KEY')) async def main(): agent = Agent( task="go to ycombinator.com, summarize 3 startups from the latest batch", llm=ChatGoogle(model="gemini-2.5-flash"), ) await agent.run() asyncio.run(main()) ``` ## Viewing Traces You can view traces in the Laminar UI by going to the traces tab in your project. When you select a trace, you can see both the browser session recording and the agent execution steps. Timeline of the browser session is synced with the agent execution steps. In the trace view, you can also see the agent's current step, the tool it's using, and the tool's input and output. Laminar ## Laminar To learn more about how you can trace and evaluate your Browser Use agent with Laminar, check out [Laminar docs](https://docs.lmnr.ai). ## Browser Use Cloud Authentication Browser Use can sync your agent runs to the cloud for easy viewing and sharing. Authentication is required to protect your data. ### Quick Setup ```bash # Authenticate once to enable cloud sync for all future runs browser-use auth # Or if using module directly: python -m browser_use.cli auth ``` **Note**: Cloud sync is enabled by default. If you've disabled it, you can re-enable with `export BROWSER_USE_CLOUD_SYNC=true`. ### Manual Authentication ```python # Authenticate from code after task completion from browser_use import Agent agent = Agent(task="your task") await agent.run() # Later, authenticate for future runs await agent.authenticate_cloud_sync() ``` ### Reset Authentication ```bash # Force re-authentication with a different account rm ~/.config/browseruse/cloud_auth.json browser-use auth ``` **Note**: Authentication uses OAuth Device Flow - you must complete the auth process while the command is running. Links expire when the polling stops.