stagehand 3.19.3 → 3.21.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- checksums.yaml +4 -4
- data/CHANGELOG.md +41 -0
- data/README.md +2 -3
- data/lib/stagehand/client.rb +25 -13
- data/lib/stagehand/internal/transport/base_client.rb +2 -0
- data/lib/stagehand/internal/type/union.rb +11 -0
- data/lib/stagehand/internal/util.rb +3 -1
- data/lib/stagehand/local.rb +3 -12
- data/lib/stagehand/models/model_config.rb +326 -56
- data/lib/stagehand/models/session_act_params.rb +331 -4
- data/lib/stagehand/models/session_execute_params.rb +719 -9
- data/lib/stagehand/models/session_extract_params.rb +352 -5
- data/lib/stagehand/models/session_observe_params.rb +340 -5
- data/lib/stagehand/models/session_start_params.rb +56 -2
- data/lib/stagehand/resources/sessions.rb +16 -4
- data/lib/stagehand/version.rb +1 -1
- data/rbi/stagehand/client.rbi +6 -6
- data/rbi/stagehand/models/model_config.rbi +644 -69
- data/rbi/stagehand/models/session_act_params.rbi +707 -5
- data/rbi/stagehand/models/session_execute_params.rbi +1556 -13
- data/rbi/stagehand/models/session_extract_params.rbi +731 -5
- data/rbi/stagehand/models/session_observe_params.rbi +718 -5
- data/rbi/stagehand/models/session_start_params.rbi +102 -0
- data/sig/stagehand/models/model_config.rbs +310 -42
- data/sig/stagehand/models/session_act_params.rbs +324 -1
- data/sig/stagehand/models/session_execute_params.rbs +704 -5
- data/sig/stagehand/models/session_extract_params.rbs +338 -1
- data/sig/stagehand/models/session_observe_params.rbs +331 -1
- data/sig/stagehand/models/session_start_params.rbs +44 -0
- data/sig/stagehand/models.rbs +1 -1
- metadata +2 -2
|
@@ -52,10 +52,16 @@ module Stagehand
|
|
|
52
52
|
# @param request_options [Stagehand::RequestOptions, Hash{Symbol=>Object}]
|
|
53
53
|
|
|
54
54
|
class Options < Stagehand::Internal::Type::BaseModel
|
|
55
|
+
# @!attribute ignore_selectors
|
|
56
|
+
# Selectors for elements and subtrees that should be excluded from observation
|
|
57
|
+
#
|
|
58
|
+
# @return [Array<String>, nil]
|
|
59
|
+
optional :ignore_selectors, Stagehand::Internal::Type::ArrayOf[String], api_name: :ignoreSelectors
|
|
60
|
+
|
|
55
61
|
# @!attribute model
|
|
56
62
|
# Model configuration object or model name string (e.g., 'openai/gpt-5-nano')
|
|
57
63
|
#
|
|
58
|
-
# @return [Stagehand::Models::
|
|
64
|
+
# @return [Stagehand::Models::SessionObserveParams::Options::Model::VertexModelConfigObject, Stagehand::Models::SessionObserveParams::Options::Model::GenericModelConfigObject, String, nil]
|
|
59
65
|
optional :model, union: -> { Stagehand::SessionObserveParams::Options::Model }
|
|
60
66
|
|
|
61
67
|
# @!attribute selector
|
|
@@ -79,11 +85,13 @@ module Stagehand
|
|
|
79
85
|
optional :variables,
|
|
80
86
|
-> { Stagehand::Internal::Type::HashOf[union: Stagehand::SessionObserveParams::Options::Variable] }
|
|
81
87
|
|
|
82
|
-
# @!method initialize(model: nil, selector: nil, timeout: nil, variables: nil)
|
|
88
|
+
# @!method initialize(ignore_selectors: nil, model: nil, selector: nil, timeout: nil, variables: nil)
|
|
83
89
|
# Some parameter documentations has been truncated, see
|
|
84
90
|
# {Stagehand::Models::SessionObserveParams::Options} for more details.
|
|
85
91
|
#
|
|
86
|
-
# @param
|
|
92
|
+
# @param ignore_selectors [Array<String>] Selectors for elements and subtrees that should be excluded from observation
|
|
93
|
+
#
|
|
94
|
+
# @param model [Stagehand::Models::SessionObserveParams::Options::Model::VertexModelConfigObject, Stagehand::Models::SessionObserveParams::Options::Model::GenericModelConfigObject, String] Model configuration object or model name string (e.g., 'openai/gpt-5-nano')
|
|
87
95
|
#
|
|
88
96
|
# @param selector [String] CSS selector to scope observation to a specific element
|
|
89
97
|
#
|
|
@@ -97,12 +105,339 @@ module Stagehand
|
|
|
97
105
|
module Model
|
|
98
106
|
extend Stagehand::Internal::Type::Union
|
|
99
107
|
|
|
100
|
-
variant -> { Stagehand::
|
|
108
|
+
variant -> { Stagehand::SessionObserveParams::Options::Model::VertexModelConfigObject }
|
|
109
|
+
|
|
110
|
+
variant -> { Stagehand::SessionObserveParams::Options::Model::GenericModelConfigObject }
|
|
101
111
|
|
|
102
112
|
variant String
|
|
103
113
|
|
|
114
|
+
class VertexModelConfigObject < Stagehand::Internal::Type::BaseModel
|
|
115
|
+
# @!attribute auth
|
|
116
|
+
# Vertex provider authentication configuration
|
|
117
|
+
#
|
|
118
|
+
# @return [Stagehand::Models::SessionObserveParams::Options::Model::VertexModelConfigObject::Auth]
|
|
119
|
+
required :auth, -> { Stagehand::SessionObserveParams::Options::Model::VertexModelConfigObject::Auth }
|
|
120
|
+
|
|
121
|
+
# @!attribute model_name
|
|
122
|
+
# Model name string with provider prefix (e.g., 'openai/gpt-5-nano')
|
|
123
|
+
#
|
|
124
|
+
# @return [String]
|
|
125
|
+
required :model_name, String, api_name: :modelName
|
|
126
|
+
|
|
127
|
+
# @!attribute provider
|
|
128
|
+
# Vertex AI model provider
|
|
129
|
+
#
|
|
130
|
+
# @return [Symbol, :vertex]
|
|
131
|
+
required :provider, const: :vertex
|
|
132
|
+
|
|
133
|
+
# @!attribute provider_options
|
|
134
|
+
# Vertex provider-specific model configuration
|
|
135
|
+
#
|
|
136
|
+
# @return [Stagehand::Models::SessionObserveParams::Options::Model::VertexModelConfigObject::ProviderOptions]
|
|
137
|
+
required :provider_options,
|
|
138
|
+
-> {
|
|
139
|
+
Stagehand::SessionObserveParams::Options::Model::VertexModelConfigObject::ProviderOptions
|
|
140
|
+
},
|
|
141
|
+
api_name: :providerOptions
|
|
142
|
+
|
|
143
|
+
# @!attribute api_key
|
|
144
|
+
# API key for the model provider
|
|
145
|
+
#
|
|
146
|
+
# @return [String, nil]
|
|
147
|
+
optional :api_key, String, api_name: :apiKey
|
|
148
|
+
|
|
149
|
+
# @!attribute base_url
|
|
150
|
+
# Base URL for the model provider
|
|
151
|
+
#
|
|
152
|
+
# @return [String, nil]
|
|
153
|
+
optional :base_url, String, api_name: :baseURL
|
|
154
|
+
|
|
155
|
+
# @!attribute headers
|
|
156
|
+
# Custom headers sent with every request to the model provider
|
|
157
|
+
#
|
|
158
|
+
# @return [Hash{Symbol=>String}, nil]
|
|
159
|
+
optional :headers, Stagehand::Internal::Type::HashOf[String]
|
|
160
|
+
|
|
161
|
+
# @!method initialize(auth:, model_name:, provider_options:, api_key: nil, base_url: nil, headers: nil, provider: :vertex)
|
|
162
|
+
# @param auth [Stagehand::Models::SessionObserveParams::Options::Model::VertexModelConfigObject::Auth] Vertex provider authentication configuration
|
|
163
|
+
#
|
|
164
|
+
# @param model_name [String] Model name string with provider prefix (e.g., 'openai/gpt-5-nano')
|
|
165
|
+
#
|
|
166
|
+
# @param provider_options [Stagehand::Models::SessionObserveParams::Options::Model::VertexModelConfigObject::ProviderOptions] Vertex provider-specific model configuration
|
|
167
|
+
#
|
|
168
|
+
# @param api_key [String] API key for the model provider
|
|
169
|
+
#
|
|
170
|
+
# @param base_url [String] Base URL for the model provider
|
|
171
|
+
#
|
|
172
|
+
# @param headers [Hash{Symbol=>String}] Custom headers sent with every request to the model provider
|
|
173
|
+
#
|
|
174
|
+
# @param provider [Symbol, :vertex] Vertex AI model provider
|
|
175
|
+
|
|
176
|
+
# @see Stagehand::Models::SessionObserveParams::Options::Model::VertexModelConfigObject#auth
|
|
177
|
+
class Auth < Stagehand::Internal::Type::BaseModel
|
|
178
|
+
# @!attribute credentials
|
|
179
|
+
# Google Cloud service account credentials
|
|
180
|
+
#
|
|
181
|
+
# @return [Stagehand::Models::SessionObserveParams::Options::Model::VertexModelConfigObject::Auth::Credentials]
|
|
182
|
+
required :credentials,
|
|
183
|
+
-> { Stagehand::SessionObserveParams::Options::Model::VertexModelConfigObject::Auth::Credentials }
|
|
184
|
+
|
|
185
|
+
# @!attribute type
|
|
186
|
+
# Use inline Google Cloud service account credentials for provider authentication
|
|
187
|
+
#
|
|
188
|
+
# @return [Symbol, :googleServiceAccount]
|
|
189
|
+
required :type, const: :googleServiceAccount
|
|
190
|
+
|
|
191
|
+
# @!attribute project_id
|
|
192
|
+
# Google Cloud project ID used by google-auth-library
|
|
193
|
+
#
|
|
194
|
+
# @return [String, nil]
|
|
195
|
+
optional :project_id, String, api_name: :projectId
|
|
196
|
+
|
|
197
|
+
# @!attribute scopes
|
|
198
|
+
# Google auth scopes for the desired API request
|
|
199
|
+
#
|
|
200
|
+
# @return [String, Array<String>, nil]
|
|
201
|
+
optional :scopes,
|
|
202
|
+
union: -> { Stagehand::SessionObserveParams::Options::Model::VertexModelConfigObject::Auth::Scopes }
|
|
203
|
+
|
|
204
|
+
# @!attribute universe_domain
|
|
205
|
+
# Google Cloud universe domain
|
|
206
|
+
#
|
|
207
|
+
# @return [String, nil]
|
|
208
|
+
optional :universe_domain, String, api_name: :universeDomain
|
|
209
|
+
|
|
210
|
+
# @!method initialize(credentials:, project_id: nil, scopes: nil, universe_domain: nil, type: :googleServiceAccount)
|
|
211
|
+
# Vertex provider authentication configuration
|
|
212
|
+
#
|
|
213
|
+
# @param credentials [Stagehand::Models::SessionObserveParams::Options::Model::VertexModelConfigObject::Auth::Credentials] Google Cloud service account credentials
|
|
214
|
+
#
|
|
215
|
+
# @param project_id [String] Google Cloud project ID used by google-auth-library
|
|
216
|
+
#
|
|
217
|
+
# @param scopes [String, Array<String>] Google auth scopes for the desired API request
|
|
218
|
+
#
|
|
219
|
+
# @param universe_domain [String] Google Cloud universe domain
|
|
220
|
+
#
|
|
221
|
+
# @param type [Symbol, :googleServiceAccount] Use inline Google Cloud service account credentials for provider authentication
|
|
222
|
+
|
|
223
|
+
# @see Stagehand::Models::SessionObserveParams::Options::Model::VertexModelConfigObject::Auth#credentials
|
|
224
|
+
class Credentials < Stagehand::Internal::Type::BaseModel
|
|
225
|
+
# @!attribute client_email
|
|
226
|
+
#
|
|
227
|
+
# @return [String]
|
|
228
|
+
required :client_email, String
|
|
229
|
+
|
|
230
|
+
# @!attribute private_key
|
|
231
|
+
#
|
|
232
|
+
# @return [String]
|
|
233
|
+
required :private_key, String
|
|
234
|
+
|
|
235
|
+
# @!attribute auth_provider_x509_cert_url
|
|
236
|
+
#
|
|
237
|
+
# @return [String, nil]
|
|
238
|
+
optional :auth_provider_x509_cert_url, String
|
|
239
|
+
|
|
240
|
+
# @!attribute auth_uri
|
|
241
|
+
#
|
|
242
|
+
# @return [String, nil]
|
|
243
|
+
optional :auth_uri, String
|
|
244
|
+
|
|
245
|
+
# @!attribute client_id
|
|
246
|
+
#
|
|
247
|
+
# @return [String, nil]
|
|
248
|
+
optional :client_id, String
|
|
249
|
+
|
|
250
|
+
# @!attribute client_x509_cert_url
|
|
251
|
+
#
|
|
252
|
+
# @return [String, nil]
|
|
253
|
+
optional :client_x509_cert_url, String
|
|
254
|
+
|
|
255
|
+
# @!attribute private_key_id
|
|
256
|
+
#
|
|
257
|
+
# @return [String, nil]
|
|
258
|
+
optional :private_key_id, String
|
|
259
|
+
|
|
260
|
+
# @!attribute project_id
|
|
261
|
+
#
|
|
262
|
+
# @return [String, nil]
|
|
263
|
+
optional :project_id, String
|
|
264
|
+
|
|
265
|
+
# @!attribute token_uri
|
|
266
|
+
#
|
|
267
|
+
# @return [String, nil]
|
|
268
|
+
optional :token_uri, String
|
|
269
|
+
|
|
270
|
+
# @!attribute type
|
|
271
|
+
#
|
|
272
|
+
# @return [Symbol, Stagehand::Models::SessionObserveParams::Options::Model::VertexModelConfigObject::Auth::Credentials::Type, nil]
|
|
273
|
+
optional :type,
|
|
274
|
+
enum: -> { Stagehand::SessionObserveParams::Options::Model::VertexModelConfigObject::Auth::Credentials::Type }
|
|
275
|
+
|
|
276
|
+
# @!attribute universe_domain
|
|
277
|
+
#
|
|
278
|
+
# @return [String, nil]
|
|
279
|
+
optional :universe_domain, String
|
|
280
|
+
|
|
281
|
+
# @!method initialize(client_email:, private_key:, auth_provider_x509_cert_url: nil, auth_uri: nil, client_id: nil, client_x509_cert_url: nil, private_key_id: nil, project_id: nil, token_uri: nil, type: nil, universe_domain: nil)
|
|
282
|
+
# Google Cloud service account credentials
|
|
283
|
+
#
|
|
284
|
+
# @param client_email [String]
|
|
285
|
+
# @param private_key [String]
|
|
286
|
+
# @param auth_provider_x509_cert_url [String]
|
|
287
|
+
# @param auth_uri [String]
|
|
288
|
+
# @param client_id [String]
|
|
289
|
+
# @param client_x509_cert_url [String]
|
|
290
|
+
# @param private_key_id [String]
|
|
291
|
+
# @param project_id [String]
|
|
292
|
+
# @param token_uri [String]
|
|
293
|
+
# @param type [Symbol, Stagehand::Models::SessionObserveParams::Options::Model::VertexModelConfigObject::Auth::Credentials::Type]
|
|
294
|
+
# @param universe_domain [String]
|
|
295
|
+
|
|
296
|
+
# @see Stagehand::Models::SessionObserveParams::Options::Model::VertexModelConfigObject::Auth::Credentials#type
|
|
297
|
+
module Type
|
|
298
|
+
extend Stagehand::Internal::Type::Enum
|
|
299
|
+
|
|
300
|
+
SERVICE_ACCOUNT = :service_account
|
|
301
|
+
|
|
302
|
+
# @!method self.values
|
|
303
|
+
# @return [Array<Symbol>]
|
|
304
|
+
end
|
|
305
|
+
end
|
|
306
|
+
|
|
307
|
+
# Google auth scopes for the desired API request
|
|
308
|
+
#
|
|
309
|
+
# @see Stagehand::Models::SessionObserveParams::Options::Model::VertexModelConfigObject::Auth#scopes
|
|
310
|
+
module Scopes
|
|
311
|
+
extend Stagehand::Internal::Type::Union
|
|
312
|
+
|
|
313
|
+
variant String
|
|
314
|
+
|
|
315
|
+
variant -> { Stagehand::Models::SessionObserveParams::Options::Model::VertexModelConfigObject::Auth::Scopes::StringArray }
|
|
316
|
+
|
|
317
|
+
# @!method self.variants
|
|
318
|
+
# @return [Array(String, Array<String>)]
|
|
319
|
+
|
|
320
|
+
# @type [Stagehand::Internal::Type::Converter]
|
|
321
|
+
StringArray = Stagehand::Internal::Type::ArrayOf[String]
|
|
322
|
+
end
|
|
323
|
+
end
|
|
324
|
+
|
|
325
|
+
# @see Stagehand::Models::SessionObserveParams::Options::Model::VertexModelConfigObject#provider_options
|
|
326
|
+
class ProviderOptions < Stagehand::Internal::Type::BaseModel
|
|
327
|
+
# @!attribute vertex
|
|
328
|
+
# Vertex AI provider-specific settings
|
|
329
|
+
#
|
|
330
|
+
# @return [Stagehand::Models::SessionObserveParams::Options::Model::VertexModelConfigObject::ProviderOptions::Vertex]
|
|
331
|
+
required :vertex,
|
|
332
|
+
-> { Stagehand::SessionObserveParams::Options::Model::VertexModelConfigObject::ProviderOptions::Vertex }
|
|
333
|
+
|
|
334
|
+
# @!method initialize(vertex:)
|
|
335
|
+
# Vertex provider-specific model configuration
|
|
336
|
+
#
|
|
337
|
+
# @param vertex [Stagehand::Models::SessionObserveParams::Options::Model::VertexModelConfigObject::ProviderOptions::Vertex] Vertex AI provider-specific settings
|
|
338
|
+
|
|
339
|
+
# @see Stagehand::Models::SessionObserveParams::Options::Model::VertexModelConfigObject::ProviderOptions#vertex
|
|
340
|
+
class Vertex < Stagehand::Internal::Type::BaseModel
|
|
341
|
+
# @!attribute location
|
|
342
|
+
# Google Cloud location for Vertex AI models
|
|
343
|
+
#
|
|
344
|
+
# @return [String]
|
|
345
|
+
required :location, String
|
|
346
|
+
|
|
347
|
+
# @!attribute project
|
|
348
|
+
# Google Cloud project ID for Vertex AI models
|
|
349
|
+
#
|
|
350
|
+
# @return [String]
|
|
351
|
+
required :project, String
|
|
352
|
+
|
|
353
|
+
# @!attribute base_url
|
|
354
|
+
# Base URL for the Vertex AI provider
|
|
355
|
+
#
|
|
356
|
+
# @return [String, nil]
|
|
357
|
+
optional :base_url, String, api_name: :baseURL
|
|
358
|
+
|
|
359
|
+
# @!attribute headers
|
|
360
|
+
# Custom headers sent with every request to the Vertex AI provider
|
|
361
|
+
#
|
|
362
|
+
# @return [Hash{Symbol=>String}, nil]
|
|
363
|
+
optional :headers, Stagehand::Internal::Type::HashOf[String]
|
|
364
|
+
|
|
365
|
+
# @!method initialize(location:, project:, base_url: nil, headers: nil)
|
|
366
|
+
# Vertex AI provider-specific settings
|
|
367
|
+
#
|
|
368
|
+
# @param location [String] Google Cloud location for Vertex AI models
|
|
369
|
+
#
|
|
370
|
+
# @param project [String] Google Cloud project ID for Vertex AI models
|
|
371
|
+
#
|
|
372
|
+
# @param base_url [String] Base URL for the Vertex AI provider
|
|
373
|
+
#
|
|
374
|
+
# @param headers [Hash{Symbol=>String}] Custom headers sent with every request to the Vertex AI provider
|
|
375
|
+
end
|
|
376
|
+
end
|
|
377
|
+
end
|
|
378
|
+
|
|
379
|
+
class GenericModelConfigObject < Stagehand::Internal::Type::BaseModel
|
|
380
|
+
# @!attribute model_name
|
|
381
|
+
# Model name string with provider prefix (e.g., 'openai/gpt-5-nano')
|
|
382
|
+
#
|
|
383
|
+
# @return [String]
|
|
384
|
+
required :model_name, String, api_name: :modelName
|
|
385
|
+
|
|
386
|
+
# @!attribute api_key
|
|
387
|
+
# API key for the model provider
|
|
388
|
+
#
|
|
389
|
+
# @return [String, nil]
|
|
390
|
+
optional :api_key, String, api_name: :apiKey
|
|
391
|
+
|
|
392
|
+
# @!attribute base_url
|
|
393
|
+
# Base URL for the model provider
|
|
394
|
+
#
|
|
395
|
+
# @return [String, nil]
|
|
396
|
+
optional :base_url, String, api_name: :baseURL
|
|
397
|
+
|
|
398
|
+
# @!attribute headers
|
|
399
|
+
# Custom headers sent with every request to the model provider
|
|
400
|
+
#
|
|
401
|
+
# @return [Hash{Symbol=>String}, nil]
|
|
402
|
+
optional :headers, Stagehand::Internal::Type::HashOf[String]
|
|
403
|
+
|
|
404
|
+
# @!attribute provider
|
|
405
|
+
# AI provider for the model (or provide a baseURL endpoint instead)
|
|
406
|
+
#
|
|
407
|
+
# @return [Symbol, Stagehand::Models::SessionObserveParams::Options::Model::GenericModelConfigObject::Provider, nil]
|
|
408
|
+
optional :provider,
|
|
409
|
+
enum: -> { Stagehand::SessionObserveParams::Options::Model::GenericModelConfigObject::Provider }
|
|
410
|
+
|
|
411
|
+
# @!method initialize(model_name:, api_key: nil, base_url: nil, headers: nil, provider: nil)
|
|
412
|
+
# @param model_name [String] Model name string with provider prefix (e.g., 'openai/gpt-5-nano')
|
|
413
|
+
#
|
|
414
|
+
# @param api_key [String] API key for the model provider
|
|
415
|
+
#
|
|
416
|
+
# @param base_url [String] Base URL for the model provider
|
|
417
|
+
#
|
|
418
|
+
# @param headers [Hash{Symbol=>String}] Custom headers sent with every request to the model provider
|
|
419
|
+
#
|
|
420
|
+
# @param provider [Symbol, Stagehand::Models::SessionObserveParams::Options::Model::GenericModelConfigObject::Provider] AI provider for the model (or provide a baseURL endpoint instead)
|
|
421
|
+
|
|
422
|
+
# AI provider for the model (or provide a baseURL endpoint instead)
|
|
423
|
+
#
|
|
424
|
+
# @see Stagehand::Models::SessionObserveParams::Options::Model::GenericModelConfigObject#provider
|
|
425
|
+
module Provider
|
|
426
|
+
extend Stagehand::Internal::Type::Enum
|
|
427
|
+
|
|
428
|
+
OPENAI = :openai
|
|
429
|
+
ANTHROPIC = :anthropic
|
|
430
|
+
GOOGLE = :google
|
|
431
|
+
MICROSOFT = :microsoft
|
|
432
|
+
BEDROCK = :bedrock
|
|
433
|
+
|
|
434
|
+
# @!method self.values
|
|
435
|
+
# @return [Array<Symbol>]
|
|
436
|
+
end
|
|
437
|
+
end
|
|
438
|
+
|
|
104
439
|
# @!method self.variants
|
|
105
|
-
# @return [Array(Stagehand::Models::
|
|
440
|
+
# @return [Array(Stagehand::Models::SessionObserveParams::Options::Model::VertexModelConfigObject, Stagehand::Models::SessionObserveParams::Options::Model::GenericModelConfigObject, String)]
|
|
106
441
|
end
|
|
107
442
|
|
|
108
443
|
module Variable
|
|
@@ -353,6 +353,10 @@ module Stagehand
|
|
|
353
353
|
optional :keep_alive, Stagehand::Internal::Type::Boolean, api_name: :keepAlive
|
|
354
354
|
|
|
355
355
|
# @!attribute project_id
|
|
356
|
+
# @deprecated
|
|
357
|
+
#
|
|
358
|
+
# Deprecated. Browserbase API keys are now project-scoped, so this field is no
|
|
359
|
+
# longer required.
|
|
356
360
|
#
|
|
357
361
|
# @return [String, nil]
|
|
358
362
|
optional :project_id, String, api_name: :projectId
|
|
@@ -380,13 +384,24 @@ module Stagehand
|
|
|
380
384
|
api_name: :userMetadata
|
|
381
385
|
|
|
382
386
|
# @!method initialize(browser_settings: nil, extension_id: nil, keep_alive: nil, project_id: nil, proxies: nil, region: nil, timeout: nil, user_metadata: nil)
|
|
387
|
+
# Some parameter documentations has been truncated, see
|
|
388
|
+
# {Stagehand::Models::SessionStartParams::BrowserbaseSessionCreateParams} for more
|
|
389
|
+
# details.
|
|
390
|
+
#
|
|
383
391
|
# @param browser_settings [Stagehand::Models::SessionStartParams::BrowserbaseSessionCreateParams::BrowserSettings]
|
|
392
|
+
#
|
|
384
393
|
# @param extension_id [String]
|
|
394
|
+
#
|
|
385
395
|
# @param keep_alive [Boolean]
|
|
386
|
-
#
|
|
396
|
+
#
|
|
397
|
+
# @param project_id [String] Deprecated. Browserbase API keys are now project-scoped, so this field is no lon
|
|
398
|
+
#
|
|
387
399
|
# @param proxies [Boolean, Array<Stagehand::Models::SessionStartParams::BrowserbaseSessionCreateParams::Proxies::ProxyConfigList::Browserbase, Stagehand::Models::SessionStartParams::BrowserbaseSessionCreateParams::Proxies::ProxyConfigList::External>]
|
|
400
|
+
#
|
|
388
401
|
# @param region [Symbol, Stagehand::Models::SessionStartParams::BrowserbaseSessionCreateParams::Region]
|
|
402
|
+
#
|
|
389
403
|
# @param timeout [Float]
|
|
404
|
+
#
|
|
390
405
|
# @param user_metadata [Hash{Symbol=>Object}]
|
|
391
406
|
|
|
392
407
|
# @see Stagehand::Models::SessionStartParams::BrowserbaseSessionCreateParams#browser_settings
|
|
@@ -401,6 +416,16 @@ module Stagehand
|
|
|
401
416
|
# @return [Boolean, nil]
|
|
402
417
|
optional :block_ads, Stagehand::Internal::Type::Boolean, api_name: :blockAds
|
|
403
418
|
|
|
419
|
+
# @!attribute captcha_image_selector
|
|
420
|
+
#
|
|
421
|
+
# @return [String, nil]
|
|
422
|
+
optional :captcha_image_selector, String, api_name: :captchaImageSelector
|
|
423
|
+
|
|
424
|
+
# @!attribute captcha_input_selector
|
|
425
|
+
#
|
|
426
|
+
# @return [String, nil]
|
|
427
|
+
optional :captcha_input_selector, String, api_name: :captchaInputSelector
|
|
428
|
+
|
|
404
429
|
# @!attribute context
|
|
405
430
|
#
|
|
406
431
|
# @return [Stagehand::Models::SessionStartParams::BrowserbaseSessionCreateParams::BrowserSettings::Context, nil]
|
|
@@ -423,6 +448,12 @@ module Stagehand
|
|
|
423
448
|
# @return [Boolean, nil]
|
|
424
449
|
optional :log_session, Stagehand::Internal::Type::Boolean, api_name: :logSession
|
|
425
450
|
|
|
451
|
+
# @!attribute os
|
|
452
|
+
#
|
|
453
|
+
# @return [Symbol, Stagehand::Models::SessionStartParams::BrowserbaseSessionCreateParams::BrowserSettings::Os, nil]
|
|
454
|
+
optional :os,
|
|
455
|
+
enum: -> { Stagehand::SessionStartParams::BrowserbaseSessionCreateParams::BrowserSettings::Os }
|
|
456
|
+
|
|
426
457
|
# @!attribute record_session
|
|
427
458
|
#
|
|
428
459
|
# @return [Boolean, nil]
|
|
@@ -433,21 +464,30 @@ module Stagehand
|
|
|
433
464
|
# @return [Boolean, nil]
|
|
434
465
|
optional :solve_captchas, Stagehand::Internal::Type::Boolean, api_name: :solveCaptchas
|
|
435
466
|
|
|
467
|
+
# @!attribute verified
|
|
468
|
+
#
|
|
469
|
+
# @return [Boolean, nil]
|
|
470
|
+
optional :verified, Stagehand::Internal::Type::Boolean
|
|
471
|
+
|
|
436
472
|
# @!attribute viewport
|
|
437
473
|
#
|
|
438
474
|
# @return [Stagehand::Models::SessionStartParams::BrowserbaseSessionCreateParams::BrowserSettings::Viewport, nil]
|
|
439
475
|
optional :viewport,
|
|
440
476
|
-> { Stagehand::SessionStartParams::BrowserbaseSessionCreateParams::BrowserSettings::Viewport }
|
|
441
477
|
|
|
442
|
-
# @!method initialize(advanced_stealth: nil, block_ads: nil, context: nil, extension_id: nil, fingerprint: nil, log_session: nil, record_session: nil, solve_captchas: nil, viewport: nil)
|
|
478
|
+
# @!method initialize(advanced_stealth: nil, block_ads: nil, captcha_image_selector: nil, captcha_input_selector: nil, context: nil, extension_id: nil, fingerprint: nil, log_session: nil, os: nil, record_session: nil, solve_captchas: nil, verified: nil, viewport: nil)
|
|
443
479
|
# @param advanced_stealth [Boolean]
|
|
444
480
|
# @param block_ads [Boolean]
|
|
481
|
+
# @param captcha_image_selector [String]
|
|
482
|
+
# @param captcha_input_selector [String]
|
|
445
483
|
# @param context [Stagehand::Models::SessionStartParams::BrowserbaseSessionCreateParams::BrowserSettings::Context]
|
|
446
484
|
# @param extension_id [String]
|
|
447
485
|
# @param fingerprint [Stagehand::Models::SessionStartParams::BrowserbaseSessionCreateParams::BrowserSettings::Fingerprint]
|
|
448
486
|
# @param log_session [Boolean]
|
|
487
|
+
# @param os [Symbol, Stagehand::Models::SessionStartParams::BrowserbaseSessionCreateParams::BrowserSettings::Os]
|
|
449
488
|
# @param record_session [Boolean]
|
|
450
489
|
# @param solve_captchas [Boolean]
|
|
490
|
+
# @param verified [Boolean]
|
|
451
491
|
# @param viewport [Stagehand::Models::SessionStartParams::BrowserbaseSessionCreateParams::BrowserSettings::Viewport]
|
|
452
492
|
|
|
453
493
|
# @see Stagehand::Models::SessionStartParams::BrowserbaseSessionCreateParams::BrowserSettings#context
|
|
@@ -596,6 +636,20 @@ module Stagehand
|
|
|
596
636
|
end
|
|
597
637
|
end
|
|
598
638
|
|
|
639
|
+
# @see Stagehand::Models::SessionStartParams::BrowserbaseSessionCreateParams::BrowserSettings#os
|
|
640
|
+
module Os
|
|
641
|
+
extend Stagehand::Internal::Type::Enum
|
|
642
|
+
|
|
643
|
+
WINDOWS = :windows
|
|
644
|
+
MAC = :mac
|
|
645
|
+
LINUX = :linux
|
|
646
|
+
MOBILE = :mobile
|
|
647
|
+
TABLET = :tablet
|
|
648
|
+
|
|
649
|
+
# @!method self.values
|
|
650
|
+
# @return [Array<Symbol>]
|
|
651
|
+
end
|
|
652
|
+
|
|
599
653
|
# @see Stagehand::Models::SessionStartParams::BrowserbaseSessionCreateParams::BrowserSettings#viewport
|
|
600
654
|
class Viewport < Stagehand::Internal::Type::BaseModel
|
|
601
655
|
# @!attribute height
|
|
@@ -77,8 +77,11 @@ module Stagehand
|
|
|
77
77
|
path: ["v1/sessions/%1$s/act", id],
|
|
78
78
|
headers: {
|
|
79
79
|
"accept" => "text/event-stream",
|
|
80
|
+
"accept-encoding" => "identity",
|
|
80
81
|
**parsed.slice(*header_params.keys)
|
|
81
|
-
}.transform_keys(
|
|
82
|
+
}.transform_keys(
|
|
83
|
+
header_params
|
|
84
|
+
),
|
|
82
85
|
body: parsed.except(*header_params.keys),
|
|
83
86
|
stream: Stagehand::Internal::Stream,
|
|
84
87
|
model: Stagehand::StreamEvent,
|
|
@@ -193,8 +196,11 @@ module Stagehand
|
|
|
193
196
|
path: ["v1/sessions/%1$s/agentExecute", id],
|
|
194
197
|
headers: {
|
|
195
198
|
"accept" => "text/event-stream",
|
|
199
|
+
"accept-encoding" => "identity",
|
|
196
200
|
**parsed.slice(*header_params.keys)
|
|
197
|
-
}.transform_keys(
|
|
201
|
+
}.transform_keys(
|
|
202
|
+
header_params
|
|
203
|
+
),
|
|
198
204
|
body: parsed.except(*header_params.keys),
|
|
199
205
|
stream: Stagehand::Internal::Stream,
|
|
200
206
|
model: Stagehand::StreamEvent,
|
|
@@ -279,8 +285,11 @@ module Stagehand
|
|
|
279
285
|
path: ["v1/sessions/%1$s/extract", id],
|
|
280
286
|
headers: {
|
|
281
287
|
"accept" => "text/event-stream",
|
|
288
|
+
"accept-encoding" => "identity",
|
|
282
289
|
**parsed.slice(*header_params.keys)
|
|
283
|
-
}.transform_keys(
|
|
290
|
+
}.transform_keys(
|
|
291
|
+
header_params
|
|
292
|
+
),
|
|
284
293
|
body: parsed.except(*header_params.keys),
|
|
285
294
|
stream: Stagehand::Internal::Stream,
|
|
286
295
|
model: Stagehand::StreamEvent,
|
|
@@ -397,8 +406,11 @@ module Stagehand
|
|
|
397
406
|
path: ["v1/sessions/%1$s/observe", id],
|
|
398
407
|
headers: {
|
|
399
408
|
"accept" => "text/event-stream",
|
|
409
|
+
"accept-encoding" => "identity",
|
|
400
410
|
**parsed.slice(*header_params.keys)
|
|
401
|
-
}.transform_keys(
|
|
411
|
+
}.transform_keys(
|
|
412
|
+
header_params
|
|
413
|
+
),
|
|
402
414
|
body: parsed.except(*header_params.keys),
|
|
403
415
|
stream: Stagehand::Internal::Stream,
|
|
404
416
|
model: Stagehand::StreamEvent,
|
data/lib/stagehand/version.rb
CHANGED
data/rbi/stagehand/client.rbi
CHANGED
|
@@ -14,7 +14,7 @@ module Stagehand
|
|
|
14
14
|
sig { returns(String) }
|
|
15
15
|
attr_reader :browserbase_api_key
|
|
16
16
|
|
|
17
|
-
#
|
|
17
|
+
# Deprecated. Browserbase API keys are now project-scoped, so this value is accepted for backwards compatibility and ignored.
|
|
18
18
|
sig { returns(String) }
|
|
19
19
|
attr_reader :browserbase_project_id
|
|
20
20
|
|
|
@@ -63,17 +63,17 @@ module Stagehand
|
|
|
63
63
|
# Your [Browserbase API Key](https://www.browserbase.com/settings) Defaults to
|
|
64
64
|
# `ENV["BROWSERBASE_API_KEY"]`
|
|
65
65
|
browserbase_api_key: ENV["BROWSERBASE_API_KEY"],
|
|
66
|
-
#
|
|
67
|
-
|
|
68
|
-
browserbase_project_id: ENV["BROWSERBASE_PROJECT_ID"],
|
|
66
|
+
# Deprecated. Browserbase API keys are now project-scoped, so this value is accepted for backwards compatibility and ignored.
|
|
67
|
+
browserbase_project_id: nil,
|
|
69
68
|
# Your LLM provider API key (e.g. OPENAI_API_KEY, ANTHROPIC_API_KEY, etc.)
|
|
70
69
|
# Defaults to `ENV["MODEL_API_KEY"]`
|
|
71
70
|
model_api_key: ENV["MODEL_API_KEY"],
|
|
72
71
|
# Server mode to use ("remote" or "local"). Defaults to "remote"
|
|
73
72
|
server: "remote",
|
|
74
73
|
# Override the default base URL for the API, e.g.,
|
|
75
|
-
# `"https://api.example.com/v2/"`. Defaults to `ENV["
|
|
76
|
-
|
|
74
|
+
# `"https://api.example.com/v2/"`. Defaults to `ENV["STAGEHAND_API_URL"]`,
|
|
75
|
+
# then `ENV["STAGEHAND_BASE_URL"]`
|
|
76
|
+
base_url: ENV["STAGEHAND_API_URL"] || ENV["STAGEHAND_BASE_URL"],
|
|
77
77
|
# Max number of retries to attempt after a failed retryable request.
|
|
78
78
|
max_retries: Stagehand::Client::DEFAULT_MAX_RETRIES,
|
|
79
79
|
timeout: Stagehand::Client::DEFAULT_TIMEOUT_IN_SECONDS,
|