From 382242ff5f58d2b3ff09de6fa469f4d66cb5ab5d Mon Sep 17 00:00:00 2001 From: miguel Date: Wed, 2 Jul 2025 23:53:01 -0700 Subject: [PATCH] allow observe result dict in act --- stagehand/page.py | 6 +++++- 1 file changed, 5 insertions(+), 1 deletion(-) diff --git a/stagehand/page.py b/stagehand/page.py index c0b83d46..efa8fa1a 100644 --- a/stagehand/page.py +++ b/stagehand/page.py @@ -104,7 +104,7 @@ async def goto( return result async def act( - self, action_or_result: Union[str, ObserveResult], **kwargs + self, action_or_result: Union[str, ObserveResult, dict], **kwargs ) -> ActResult: """ Execute an AI action or a pre-observed action via the Stagehand server. @@ -136,6 +136,10 @@ async def act( payload = options.model_dump(exclude_none=True, by_alias=True) elif isinstance(action_or_result, ActOptions): payload = action_or_result.model_dump(exclude_none=True, by_alias=True) + elif isinstance(action_or_result, dict): + payload = ObserveResult(**action_or_result).model_dump( + exclude_none=True, by_alias=True + ) else: raise TypeError( "Invalid arguments for 'act'. Expected str, ObserveResult, or ActOptions."