3030 SyncAPIClient ,
3131 AsyncAPIClient ,
3232)
33+
34+ ### <CUSTOM CODE HANDWRITTEN BY STAGEHAND TEAM (not codegen)>
3335from ._custom .session import install_stainless_session_patches
3436from ._custom .sea_server import (
3537 copy_local_mode_kwargs ,
4042 prepare_async_client_base_url ,
4143)
4244
45+ ### </END CUSTOM CODE>
46+
4347if TYPE_CHECKING :
4448 from .resources import sessions
49+
50+ ### <CUSTOM CODE HANDWRITTEN BY STAGEHAND TEAM (not codegen)>
4551 from ._custom .sea_server import SeaServerManager
52+ ### </END CUSTOM CODE>
4653
4754__all__ = [
4855 "Timeout" ,
5562 "AsyncClient" ,
5663]
5764
65+ ### <CUSTOM CODE HANDWRITTEN BY STAGEHAND TEAM (not codegen)>
5866install_stainless_session_patches ()
67+ ### </END CUSTOM CODE>
5968
6069
6170class Stagehand (SyncAPIClient ):
6271 # client options
6372 browserbase_api_key : str | None
6473 browserbase_project_id : str | None
6574 model_api_key : str | None
75+ ### <CUSTOM CODE HANDWRITTEN BY STAGEHAND TEAM (not codegen)>
6676 _server_mode : Literal ["remote" , "local" ]
6777 _local_stagehand_binary_path : str | os .PathLike [str ] | None
6878 _local_host : str
@@ -72,6 +82,7 @@ class Stagehand(SyncAPIClient):
7282 _local_ready_timeout_s : float
7383 _local_shutdown_on_close : bool
7484 _sea_server : SeaServerManager | None
85+ ### </END CUSTOM CODE>
7586
7687 def __init__ (
7788 self ,
@@ -126,6 +137,7 @@ def __init__(
126137
127138 self .model_api_key = model_api_key
128139
140+ ### <CUSTOM CODE HANDWRITTEN BY STAGEHAND TEAM (not codegen)>
129141 base_url = configure_client_base_url (
130142 self ,
131143 server = server ,
@@ -139,6 +151,7 @@ def __init__(
139151 base_url = base_url ,
140152 model_api_key = model_api_key ,
141153 )
154+ ### </END CUSTOM CODE>
142155
143156 super ().__init__ (
144157 version = __version__ ,
@@ -155,23 +168,29 @@ def __init__(
155168
156169 @override
157170 def _prepare_options (self , options : FinalRequestOptions ) -> FinalRequestOptions :
171+ ### <CUSTOM CODE HANDWRITTEN BY STAGEHAND TEAM (not codegen)>
158172 local_base_url = prepare_sync_client_base_url (self )
159173 if local_base_url is not None :
160174 self .base_url = local_base_url
175+ ### </END CUSTOM CODE>
161176 return super ()._prepare_options (options )
162177
163178 @override
164179 def close (self ) -> None :
165180 try :
166181 super ().close ()
167182 finally :
183+ ### <CUSTOM CODE HANDWRITTEN BY STAGEHAND TEAM (not codegen)>
168184 close_sync_client_sea_server (self )
185+ ### </END CUSTOM CODE>
169186
187+ ### <CUSTOM CODE HANDWRITTEN BY STAGEHAND TEAM (not codegen)>
170188 @cached_property
171189 def sessions (self ) -> sessions .SessionsResource :
172190 from .resources .sessions import SessionsResource
173191
174192 return SessionsResource (self )
193+ ### </END CUSTOM CODE>
175194
176195 @cached_property
177196 def with_raw_response (self ) -> StagehandWithRawResponse :
@@ -273,6 +292,7 @@ def copy(
273292 max_retries = max_retries if is_given (max_retries ) else self .max_retries ,
274293 default_headers = headers ,
275294 default_query = params ,
295+ ### <CUSTOM CODE HANDWRITTEN BY STAGEHAND TEAM (not codegen)>
276296 ** copy_local_mode_kwargs (
277297 self ,
278298 server = server ,
@@ -284,6 +304,7 @@ def copy(
284304 local_ready_timeout_s = local_ready_timeout_s ,
285305 local_shutdown_on_close = local_shutdown_on_close ,
286306 ),
307+ ### </END CUSTOM CODE>
287308 ** _extra_kwargs ,
288309 )
289310
@@ -330,6 +351,7 @@ class AsyncStagehand(AsyncAPIClient):
330351 browserbase_api_key : str | None
331352 browserbase_project_id : str | None
332353 model_api_key : str | None
354+ ### <CUSTOM CODE HANDWRITTEN BY STAGEHAND TEAM (not codegen)>
333355 _server_mode : Literal ["remote" , "local" ]
334356 _local_stagehand_binary_path : str | os .PathLike [str ] | None
335357 _local_host : str
@@ -339,6 +361,7 @@ class AsyncStagehand(AsyncAPIClient):
339361 _local_ready_timeout_s : float
340362 _local_shutdown_on_close : bool
341363 _sea_server : SeaServerManager | None
364+ ### </END CUSTOM CODE>
342365
343366 def __init__ (
344367 self ,
@@ -393,6 +416,7 @@ def __init__(
393416
394417 self .model_api_key = model_api_key
395418
419+ ### <CUSTOM CODE HANDWRITTEN BY STAGEHAND TEAM (not codegen)>
396420 base_url = configure_client_base_url (
397421 self ,
398422 server = server ,
@@ -406,6 +430,7 @@ def __init__(
406430 base_url = base_url ,
407431 model_api_key = model_api_key ,
408432 )
433+ ### </END CUSTOM CODE>
409434
410435 super ().__init__ (
411436 version = __version__ ,
@@ -422,23 +447,29 @@ def __init__(
422447
423448 @override
424449 async def _prepare_options (self , options : FinalRequestOptions ) -> FinalRequestOptions :
450+ ### <CUSTOM CODE HANDWRITTEN BY STAGEHAND TEAM (not codegen)>
425451 local_base_url = await prepare_async_client_base_url (self )
426452 if local_base_url is not None :
427453 self .base_url = local_base_url
454+ ### </END CUSTOM CODE>
428455 return await super ()._prepare_options (options )
429456
430457 @override
431458 async def close (self ) -> None :
432459 try :
433460 await super ().close ()
434461 finally :
462+ ### <CUSTOM CODE HANDWRITTEN BY STAGEHAND TEAM (not codegen)>
435463 await close_async_client_sea_server (self )
464+ ### </END CUSTOM CODE>
436465
466+ ### <CUSTOM CODE HANDWRITTEN BY STAGEHAND TEAM (not codegen)>
437467 @cached_property
438468 def sessions (self ) -> sessions .AsyncSessionsResource :
439469 from .resources .sessions import AsyncSessionsResource
440470
441471 return AsyncSessionsResource (self )
472+ ### </END CUSTOM CODE>
442473
443474 @cached_property
444475 def with_raw_response (self ) -> AsyncStagehandWithRawResponse :
@@ -540,6 +571,7 @@ def copy(
540571 max_retries = max_retries if is_given (max_retries ) else self .max_retries ,
541572 default_headers = headers ,
542573 default_query = params ,
574+ ### <CUSTOM CODE HANDWRITTEN BY STAGEHAND TEAM (not codegen)>
543575 ** copy_local_mode_kwargs (
544576 self ,
545577 server = server ,
@@ -551,6 +583,7 @@ def copy(
551583 local_ready_timeout_s = local_ready_timeout_s ,
552584 local_shutdown_on_close = local_shutdown_on_close ,
553585 ),
586+ ### </END CUSTOM CODE>
554587 ** _extra_kwargs ,
555588 )
556589
0 commit comments