From 7af712254c8cf8fb13006c86265d5f4a81ad6d9c Mon Sep 17 00:00:00 2001 From: Shrey Pandya Date: Wed, 19 Nov 2025 16:55:31 -0800 Subject: [PATCH 1/2] fix Stagehand headless mode --- stagehand/browser.py | 2 +- stagehand/config.py | 1 + 2 files changed, 2 insertions(+), 1 deletion(-) diff --git a/stagehand/browser.py b/stagehand/browser.py index e7f985e..e8bd023 100644 --- a/stagehand/browser.py +++ b/stagehand/browser.py @@ -182,7 +182,7 @@ async def connect_local_browser( # Prepare Launch Options (translate keys if needed) launch_options = { - "headless": local_browser_launch_options.get("headless", False), + "headless": local_browser_launch_options.get("headless", stagehand_instance.config.headless), "accept_downloads": local_browser_launch_options.get( "acceptDownloads", True ), diff --git a/stagehand/config.py b/stagehand/config.py index 2135c7c..9724823 100644 --- a/stagehand/config.py +++ b/stagehand/config.py @@ -70,6 +70,7 @@ class StagehandConfig(BaseModel): alias="domSettleTimeoutMs", description="Timeout for DOM to settle (in ms)", ) + headless: bool = Field(False, description="Run browser in headless mode") browserbase_session_create_params: Optional[dict[str, Any]] = Field( None, alias="browserbaseSessionCreateParams", From ca4a70750bdce95d7f123ddfe09fecbd9126dd91 Mon Sep 17 00:00:00 2001 From: Shrey Pandya Date: Wed, 19 Nov 2025 18:30:36 -0800 Subject: [PATCH 2/2] fix formatting --- stagehand/browser.py | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) diff --git a/stagehand/browser.py b/stagehand/browser.py index e8bd023..f240aee 100644 --- a/stagehand/browser.py +++ b/stagehand/browser.py @@ -182,7 +182,9 @@ async def connect_local_browser( # Prepare Launch Options (translate keys if needed) launch_options = { - "headless": local_browser_launch_options.get("headless", stagehand_instance.config.headless), + "headless": local_browser_launch_options.get( + "headless", stagehand_instance.config.headless + ), "accept_downloads": local_browser_launch_options.get( "acceptDownloads", True ),