stagehand 3.20.0 → 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 +16 -0
- data/lib/stagehand/internal/transport/base_client.rb +2 -0
- data/lib/stagehand/internal/type/union.rb +11 -0
- 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 +663 -8
- data/lib/stagehand/models/session_extract_params.rb +344 -5
- data/lib/stagehand/models/session_observe_params.rb +340 -5
- data/lib/stagehand/version.rb +1 -1
- 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 +1412 -10
- data/rbi/stagehand/models/session_extract_params.rbi +720 -5
- data/rbi/stagehand/models/session_observe_params.rbi +718 -5
- 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 +648 -2
- data/sig/stagehand/models/session_extract_params.rbs +331 -1
- data/sig/stagehand/models/session_observe_params.rbs +331 -1
- data/sig/stagehand/models.rbs +1 -1
- metadata +2 -2
|
@@ -128,12 +128,27 @@ module Stagehand
|
|
|
128
128
|
# Model configuration object or model name string (e.g., 'openai/gpt-5-nano') for
|
|
129
129
|
# tool execution (observe/act calls within agent tools). If not specified,
|
|
130
130
|
# inherits from the main model configuration.
|
|
131
|
-
sig
|
|
131
|
+
sig do
|
|
132
|
+
returns(
|
|
133
|
+
T.nilable(
|
|
134
|
+
T.any(
|
|
135
|
+
Stagehand::SessionExecuteParams::AgentConfig::ExecutionModel::VertexModelConfigObject,
|
|
136
|
+
Stagehand::SessionExecuteParams::AgentConfig::ExecutionModel::GenericModelConfigObject,
|
|
137
|
+
String
|
|
138
|
+
)
|
|
139
|
+
)
|
|
140
|
+
)
|
|
141
|
+
end
|
|
132
142
|
attr_reader :execution_model
|
|
133
143
|
|
|
134
144
|
sig do
|
|
135
145
|
params(
|
|
136
|
-
execution_model:
|
|
146
|
+
execution_model:
|
|
147
|
+
T.any(
|
|
148
|
+
Stagehand::SessionExecuteParams::AgentConfig::ExecutionModel::VertexModelConfigObject::OrHash,
|
|
149
|
+
Stagehand::SessionExecuteParams::AgentConfig::ExecutionModel::GenericModelConfigObject::OrHash,
|
|
150
|
+
String
|
|
151
|
+
)
|
|
137
152
|
).void
|
|
138
153
|
end
|
|
139
154
|
attr_writer :execution_model
|
|
@@ -156,11 +171,28 @@ module Stagehand
|
|
|
156
171
|
attr_writer :mode
|
|
157
172
|
|
|
158
173
|
# Model configuration object or model name string (e.g., 'openai/gpt-5-nano')
|
|
159
|
-
sig
|
|
174
|
+
sig do
|
|
175
|
+
returns(
|
|
176
|
+
T.nilable(
|
|
177
|
+
T.any(
|
|
178
|
+
Stagehand::SessionExecuteParams::AgentConfig::Model::VertexModelConfigObject,
|
|
179
|
+
Stagehand::SessionExecuteParams::AgentConfig::Model::GenericModelConfigObject,
|
|
180
|
+
String
|
|
181
|
+
)
|
|
182
|
+
)
|
|
183
|
+
)
|
|
184
|
+
end
|
|
160
185
|
attr_reader :model
|
|
161
186
|
|
|
162
187
|
sig do
|
|
163
|
-
params(
|
|
188
|
+
params(
|
|
189
|
+
model:
|
|
190
|
+
T.any(
|
|
191
|
+
Stagehand::SessionExecuteParams::AgentConfig::Model::VertexModelConfigObject::OrHash,
|
|
192
|
+
Stagehand::SessionExecuteParams::AgentConfig::Model::GenericModelConfigObject::OrHash,
|
|
193
|
+
String
|
|
194
|
+
)
|
|
195
|
+
).void
|
|
164
196
|
end
|
|
165
197
|
attr_writer :model
|
|
166
198
|
|
|
@@ -192,9 +224,19 @@ module Stagehand
|
|
|
192
224
|
sig do
|
|
193
225
|
params(
|
|
194
226
|
cua: T::Boolean,
|
|
195
|
-
execution_model:
|
|
227
|
+
execution_model:
|
|
228
|
+
T.any(
|
|
229
|
+
Stagehand::SessionExecuteParams::AgentConfig::ExecutionModel::VertexModelConfigObject::OrHash,
|
|
230
|
+
Stagehand::SessionExecuteParams::AgentConfig::ExecutionModel::GenericModelConfigObject::OrHash,
|
|
231
|
+
String
|
|
232
|
+
),
|
|
196
233
|
mode: Stagehand::SessionExecuteParams::AgentConfig::Mode::OrSymbol,
|
|
197
|
-
model:
|
|
234
|
+
model:
|
|
235
|
+
T.any(
|
|
236
|
+
Stagehand::SessionExecuteParams::AgentConfig::Model::VertexModelConfigObject::OrHash,
|
|
237
|
+
Stagehand::SessionExecuteParams::AgentConfig::Model::GenericModelConfigObject::OrHash,
|
|
238
|
+
String
|
|
239
|
+
),
|
|
198
240
|
provider:
|
|
199
241
|
Stagehand::SessionExecuteParams::AgentConfig::Provider::OrSymbol,
|
|
200
242
|
system_prompt: String
|
|
@@ -223,10 +265,20 @@ module Stagehand
|
|
|
223
265
|
override.returns(
|
|
224
266
|
{
|
|
225
267
|
cua: T::Boolean,
|
|
226
|
-
execution_model:
|
|
268
|
+
execution_model:
|
|
269
|
+
T.any(
|
|
270
|
+
Stagehand::SessionExecuteParams::AgentConfig::ExecutionModel::VertexModelConfigObject,
|
|
271
|
+
Stagehand::SessionExecuteParams::AgentConfig::ExecutionModel::GenericModelConfigObject,
|
|
272
|
+
String
|
|
273
|
+
),
|
|
227
274
|
mode:
|
|
228
275
|
Stagehand::SessionExecuteParams::AgentConfig::Mode::OrSymbol,
|
|
229
|
-
model:
|
|
276
|
+
model:
|
|
277
|
+
T.any(
|
|
278
|
+
Stagehand::SessionExecuteParams::AgentConfig::Model::VertexModelConfigObject,
|
|
279
|
+
Stagehand::SessionExecuteParams::AgentConfig::Model::GenericModelConfigObject,
|
|
280
|
+
String
|
|
281
|
+
),
|
|
230
282
|
provider:
|
|
231
283
|
Stagehand::SessionExecuteParams::AgentConfig::Provider::OrSymbol,
|
|
232
284
|
system_prompt: String
|
|
@@ -242,7 +294,682 @@ module Stagehand
|
|
|
242
294
|
module ExecutionModel
|
|
243
295
|
extend Stagehand::Internal::Type::Union
|
|
244
296
|
|
|
245
|
-
Variants =
|
|
297
|
+
Variants =
|
|
298
|
+
T.type_alias do
|
|
299
|
+
T.any(
|
|
300
|
+
Stagehand::SessionExecuteParams::AgentConfig::ExecutionModel::VertexModelConfigObject,
|
|
301
|
+
Stagehand::SessionExecuteParams::AgentConfig::ExecutionModel::GenericModelConfigObject,
|
|
302
|
+
String
|
|
303
|
+
)
|
|
304
|
+
end
|
|
305
|
+
|
|
306
|
+
class VertexModelConfigObject < Stagehand::Internal::Type::BaseModel
|
|
307
|
+
OrHash =
|
|
308
|
+
T.type_alias do
|
|
309
|
+
T.any(
|
|
310
|
+
Stagehand::SessionExecuteParams::AgentConfig::ExecutionModel::VertexModelConfigObject,
|
|
311
|
+
Stagehand::Internal::AnyHash
|
|
312
|
+
)
|
|
313
|
+
end
|
|
314
|
+
|
|
315
|
+
# Vertex provider authentication configuration
|
|
316
|
+
sig do
|
|
317
|
+
returns(
|
|
318
|
+
Stagehand::SessionExecuteParams::AgentConfig::ExecutionModel::VertexModelConfigObject::Auth
|
|
319
|
+
)
|
|
320
|
+
end
|
|
321
|
+
attr_reader :auth
|
|
322
|
+
|
|
323
|
+
sig do
|
|
324
|
+
params(
|
|
325
|
+
auth:
|
|
326
|
+
Stagehand::SessionExecuteParams::AgentConfig::ExecutionModel::VertexModelConfigObject::Auth::OrHash
|
|
327
|
+
).void
|
|
328
|
+
end
|
|
329
|
+
attr_writer :auth
|
|
330
|
+
|
|
331
|
+
# Model name string with provider prefix (e.g., 'openai/gpt-5-nano')
|
|
332
|
+
sig { returns(String) }
|
|
333
|
+
attr_accessor :model_name
|
|
334
|
+
|
|
335
|
+
# Vertex AI model provider
|
|
336
|
+
sig { returns(Symbol) }
|
|
337
|
+
attr_accessor :provider
|
|
338
|
+
|
|
339
|
+
# Vertex provider-specific model configuration
|
|
340
|
+
sig do
|
|
341
|
+
returns(
|
|
342
|
+
Stagehand::SessionExecuteParams::AgentConfig::ExecutionModel::VertexModelConfigObject::ProviderOptions
|
|
343
|
+
)
|
|
344
|
+
end
|
|
345
|
+
attr_reader :provider_options
|
|
346
|
+
|
|
347
|
+
sig do
|
|
348
|
+
params(
|
|
349
|
+
provider_options:
|
|
350
|
+
Stagehand::SessionExecuteParams::AgentConfig::ExecutionModel::VertexModelConfigObject::ProviderOptions::OrHash
|
|
351
|
+
).void
|
|
352
|
+
end
|
|
353
|
+
attr_writer :provider_options
|
|
354
|
+
|
|
355
|
+
# API key for the model provider
|
|
356
|
+
sig { returns(T.nilable(String)) }
|
|
357
|
+
attr_reader :api_key
|
|
358
|
+
|
|
359
|
+
sig { params(api_key: String).void }
|
|
360
|
+
attr_writer :api_key
|
|
361
|
+
|
|
362
|
+
# Base URL for the model provider
|
|
363
|
+
sig { returns(T.nilable(String)) }
|
|
364
|
+
attr_reader :base_url
|
|
365
|
+
|
|
366
|
+
sig { params(base_url: String).void }
|
|
367
|
+
attr_writer :base_url
|
|
368
|
+
|
|
369
|
+
# Custom headers sent with every request to the model provider
|
|
370
|
+
sig { returns(T.nilable(T::Hash[Symbol, String])) }
|
|
371
|
+
attr_reader :headers
|
|
372
|
+
|
|
373
|
+
sig { params(headers: T::Hash[Symbol, String]).void }
|
|
374
|
+
attr_writer :headers
|
|
375
|
+
|
|
376
|
+
sig do
|
|
377
|
+
params(
|
|
378
|
+
auth:
|
|
379
|
+
Stagehand::SessionExecuteParams::AgentConfig::ExecutionModel::VertexModelConfigObject::Auth::OrHash,
|
|
380
|
+
model_name: String,
|
|
381
|
+
provider_options:
|
|
382
|
+
Stagehand::SessionExecuteParams::AgentConfig::ExecutionModel::VertexModelConfigObject::ProviderOptions::OrHash,
|
|
383
|
+
api_key: String,
|
|
384
|
+
base_url: String,
|
|
385
|
+
headers: T::Hash[Symbol, String],
|
|
386
|
+
provider: Symbol
|
|
387
|
+
).returns(T.attached_class)
|
|
388
|
+
end
|
|
389
|
+
def self.new(
|
|
390
|
+
# Vertex provider authentication configuration
|
|
391
|
+
auth:,
|
|
392
|
+
# Model name string with provider prefix (e.g., 'openai/gpt-5-nano')
|
|
393
|
+
model_name:,
|
|
394
|
+
# Vertex provider-specific model configuration
|
|
395
|
+
provider_options:,
|
|
396
|
+
# API key for the model provider
|
|
397
|
+
api_key: nil,
|
|
398
|
+
# Base URL for the model provider
|
|
399
|
+
base_url: nil,
|
|
400
|
+
# Custom headers sent with every request to the model provider
|
|
401
|
+
headers: nil,
|
|
402
|
+
# Vertex AI model provider
|
|
403
|
+
provider: :vertex
|
|
404
|
+
)
|
|
405
|
+
end
|
|
406
|
+
|
|
407
|
+
sig do
|
|
408
|
+
override.returns(
|
|
409
|
+
{
|
|
410
|
+
auth:
|
|
411
|
+
Stagehand::SessionExecuteParams::AgentConfig::ExecutionModel::VertexModelConfigObject::Auth,
|
|
412
|
+
model_name: String,
|
|
413
|
+
provider: Symbol,
|
|
414
|
+
provider_options:
|
|
415
|
+
Stagehand::SessionExecuteParams::AgentConfig::ExecutionModel::VertexModelConfigObject::ProviderOptions,
|
|
416
|
+
api_key: String,
|
|
417
|
+
base_url: String,
|
|
418
|
+
headers: T::Hash[Symbol, String]
|
|
419
|
+
}
|
|
420
|
+
)
|
|
421
|
+
end
|
|
422
|
+
def to_hash
|
|
423
|
+
end
|
|
424
|
+
|
|
425
|
+
class Auth < Stagehand::Internal::Type::BaseModel
|
|
426
|
+
OrHash =
|
|
427
|
+
T.type_alias do
|
|
428
|
+
T.any(
|
|
429
|
+
Stagehand::SessionExecuteParams::AgentConfig::ExecutionModel::VertexModelConfigObject::Auth,
|
|
430
|
+
Stagehand::Internal::AnyHash
|
|
431
|
+
)
|
|
432
|
+
end
|
|
433
|
+
|
|
434
|
+
# Google Cloud service account credentials
|
|
435
|
+
sig do
|
|
436
|
+
returns(
|
|
437
|
+
Stagehand::SessionExecuteParams::AgentConfig::ExecutionModel::VertexModelConfigObject::Auth::Credentials
|
|
438
|
+
)
|
|
439
|
+
end
|
|
440
|
+
attr_reader :credentials
|
|
441
|
+
|
|
442
|
+
sig do
|
|
443
|
+
params(
|
|
444
|
+
credentials:
|
|
445
|
+
Stagehand::SessionExecuteParams::AgentConfig::ExecutionModel::VertexModelConfigObject::Auth::Credentials::OrHash
|
|
446
|
+
).void
|
|
447
|
+
end
|
|
448
|
+
attr_writer :credentials
|
|
449
|
+
|
|
450
|
+
# Use inline Google Cloud service account credentials for provider authentication
|
|
451
|
+
sig { returns(Symbol) }
|
|
452
|
+
attr_accessor :type
|
|
453
|
+
|
|
454
|
+
# Google Cloud project ID used by google-auth-library
|
|
455
|
+
sig { returns(T.nilable(String)) }
|
|
456
|
+
attr_reader :project_id
|
|
457
|
+
|
|
458
|
+
sig { params(project_id: String).void }
|
|
459
|
+
attr_writer :project_id
|
|
460
|
+
|
|
461
|
+
# Google auth scopes for the desired API request
|
|
462
|
+
sig do
|
|
463
|
+
returns(
|
|
464
|
+
T.nilable(
|
|
465
|
+
Stagehand::SessionExecuteParams::AgentConfig::ExecutionModel::VertexModelConfigObject::Auth::Scopes::Variants
|
|
466
|
+
)
|
|
467
|
+
)
|
|
468
|
+
end
|
|
469
|
+
attr_reader :scopes
|
|
470
|
+
|
|
471
|
+
sig do
|
|
472
|
+
params(
|
|
473
|
+
scopes:
|
|
474
|
+
Stagehand::SessionExecuteParams::AgentConfig::ExecutionModel::VertexModelConfigObject::Auth::Scopes::Variants
|
|
475
|
+
).void
|
|
476
|
+
end
|
|
477
|
+
attr_writer :scopes
|
|
478
|
+
|
|
479
|
+
# Google Cloud universe domain
|
|
480
|
+
sig { returns(T.nilable(String)) }
|
|
481
|
+
attr_reader :universe_domain
|
|
482
|
+
|
|
483
|
+
sig { params(universe_domain: String).void }
|
|
484
|
+
attr_writer :universe_domain
|
|
485
|
+
|
|
486
|
+
# Vertex provider authentication configuration
|
|
487
|
+
sig do
|
|
488
|
+
params(
|
|
489
|
+
credentials:
|
|
490
|
+
Stagehand::SessionExecuteParams::AgentConfig::ExecutionModel::VertexModelConfigObject::Auth::Credentials::OrHash,
|
|
491
|
+
project_id: String,
|
|
492
|
+
scopes:
|
|
493
|
+
Stagehand::SessionExecuteParams::AgentConfig::ExecutionModel::VertexModelConfigObject::Auth::Scopes::Variants,
|
|
494
|
+
universe_domain: String,
|
|
495
|
+
type: Symbol
|
|
496
|
+
).returns(T.attached_class)
|
|
497
|
+
end
|
|
498
|
+
def self.new(
|
|
499
|
+
# Google Cloud service account credentials
|
|
500
|
+
credentials:,
|
|
501
|
+
# Google Cloud project ID used by google-auth-library
|
|
502
|
+
project_id: nil,
|
|
503
|
+
# Google auth scopes for the desired API request
|
|
504
|
+
scopes: nil,
|
|
505
|
+
# Google Cloud universe domain
|
|
506
|
+
universe_domain: nil,
|
|
507
|
+
# Use inline Google Cloud service account credentials for provider authentication
|
|
508
|
+
type: :googleServiceAccount
|
|
509
|
+
)
|
|
510
|
+
end
|
|
511
|
+
|
|
512
|
+
sig do
|
|
513
|
+
override.returns(
|
|
514
|
+
{
|
|
515
|
+
credentials:
|
|
516
|
+
Stagehand::SessionExecuteParams::AgentConfig::ExecutionModel::VertexModelConfigObject::Auth::Credentials,
|
|
517
|
+
type: Symbol,
|
|
518
|
+
project_id: String,
|
|
519
|
+
scopes:
|
|
520
|
+
Stagehand::SessionExecuteParams::AgentConfig::ExecutionModel::VertexModelConfigObject::Auth::Scopes::Variants,
|
|
521
|
+
universe_domain: String
|
|
522
|
+
}
|
|
523
|
+
)
|
|
524
|
+
end
|
|
525
|
+
def to_hash
|
|
526
|
+
end
|
|
527
|
+
|
|
528
|
+
class Credentials < Stagehand::Internal::Type::BaseModel
|
|
529
|
+
OrHash =
|
|
530
|
+
T.type_alias do
|
|
531
|
+
T.any(
|
|
532
|
+
Stagehand::SessionExecuteParams::AgentConfig::ExecutionModel::VertexModelConfigObject::Auth::Credentials,
|
|
533
|
+
Stagehand::Internal::AnyHash
|
|
534
|
+
)
|
|
535
|
+
end
|
|
536
|
+
|
|
537
|
+
sig { returns(String) }
|
|
538
|
+
attr_accessor :client_email
|
|
539
|
+
|
|
540
|
+
sig { returns(String) }
|
|
541
|
+
attr_accessor :private_key
|
|
542
|
+
|
|
543
|
+
sig { returns(T.nilable(String)) }
|
|
544
|
+
attr_reader :auth_provider_x509_cert_url
|
|
545
|
+
|
|
546
|
+
sig { params(auth_provider_x509_cert_url: String).void }
|
|
547
|
+
attr_writer :auth_provider_x509_cert_url
|
|
548
|
+
|
|
549
|
+
sig { returns(T.nilable(String)) }
|
|
550
|
+
attr_reader :auth_uri
|
|
551
|
+
|
|
552
|
+
sig { params(auth_uri: String).void }
|
|
553
|
+
attr_writer :auth_uri
|
|
554
|
+
|
|
555
|
+
sig { returns(T.nilable(String)) }
|
|
556
|
+
attr_reader :client_id
|
|
557
|
+
|
|
558
|
+
sig { params(client_id: String).void }
|
|
559
|
+
attr_writer :client_id
|
|
560
|
+
|
|
561
|
+
sig { returns(T.nilable(String)) }
|
|
562
|
+
attr_reader :client_x509_cert_url
|
|
563
|
+
|
|
564
|
+
sig { params(client_x509_cert_url: String).void }
|
|
565
|
+
attr_writer :client_x509_cert_url
|
|
566
|
+
|
|
567
|
+
sig { returns(T.nilable(String)) }
|
|
568
|
+
attr_reader :private_key_id
|
|
569
|
+
|
|
570
|
+
sig { params(private_key_id: String).void }
|
|
571
|
+
attr_writer :private_key_id
|
|
572
|
+
|
|
573
|
+
sig { returns(T.nilable(String)) }
|
|
574
|
+
attr_reader :project_id
|
|
575
|
+
|
|
576
|
+
sig { params(project_id: String).void }
|
|
577
|
+
attr_writer :project_id
|
|
578
|
+
|
|
579
|
+
sig { returns(T.nilable(String)) }
|
|
580
|
+
attr_reader :token_uri
|
|
581
|
+
|
|
582
|
+
sig { params(token_uri: String).void }
|
|
583
|
+
attr_writer :token_uri
|
|
584
|
+
|
|
585
|
+
sig do
|
|
586
|
+
returns(
|
|
587
|
+
T.nilable(
|
|
588
|
+
Stagehand::SessionExecuteParams::AgentConfig::ExecutionModel::VertexModelConfigObject::Auth::Credentials::Type::OrSymbol
|
|
589
|
+
)
|
|
590
|
+
)
|
|
591
|
+
end
|
|
592
|
+
attr_reader :type
|
|
593
|
+
|
|
594
|
+
sig do
|
|
595
|
+
params(
|
|
596
|
+
type:
|
|
597
|
+
Stagehand::SessionExecuteParams::AgentConfig::ExecutionModel::VertexModelConfigObject::Auth::Credentials::Type::OrSymbol
|
|
598
|
+
).void
|
|
599
|
+
end
|
|
600
|
+
attr_writer :type
|
|
601
|
+
|
|
602
|
+
sig { returns(T.nilable(String)) }
|
|
603
|
+
attr_reader :universe_domain
|
|
604
|
+
|
|
605
|
+
sig { params(universe_domain: String).void }
|
|
606
|
+
attr_writer :universe_domain
|
|
607
|
+
|
|
608
|
+
# Google Cloud service account credentials
|
|
609
|
+
sig do
|
|
610
|
+
params(
|
|
611
|
+
client_email: String,
|
|
612
|
+
private_key: String,
|
|
613
|
+
auth_provider_x509_cert_url: String,
|
|
614
|
+
auth_uri: String,
|
|
615
|
+
client_id: String,
|
|
616
|
+
client_x509_cert_url: String,
|
|
617
|
+
private_key_id: String,
|
|
618
|
+
project_id: String,
|
|
619
|
+
token_uri: String,
|
|
620
|
+
type:
|
|
621
|
+
Stagehand::SessionExecuteParams::AgentConfig::ExecutionModel::VertexModelConfigObject::Auth::Credentials::Type::OrSymbol,
|
|
622
|
+
universe_domain: String
|
|
623
|
+
).returns(T.attached_class)
|
|
624
|
+
end
|
|
625
|
+
def self.new(
|
|
626
|
+
client_email:,
|
|
627
|
+
private_key:,
|
|
628
|
+
auth_provider_x509_cert_url: nil,
|
|
629
|
+
auth_uri: nil,
|
|
630
|
+
client_id: nil,
|
|
631
|
+
client_x509_cert_url: nil,
|
|
632
|
+
private_key_id: nil,
|
|
633
|
+
project_id: nil,
|
|
634
|
+
token_uri: nil,
|
|
635
|
+
type: nil,
|
|
636
|
+
universe_domain: nil
|
|
637
|
+
)
|
|
638
|
+
end
|
|
639
|
+
|
|
640
|
+
sig do
|
|
641
|
+
override.returns(
|
|
642
|
+
{
|
|
643
|
+
client_email: String,
|
|
644
|
+
private_key: String,
|
|
645
|
+
auth_provider_x509_cert_url: String,
|
|
646
|
+
auth_uri: String,
|
|
647
|
+
client_id: String,
|
|
648
|
+
client_x509_cert_url: String,
|
|
649
|
+
private_key_id: String,
|
|
650
|
+
project_id: String,
|
|
651
|
+
token_uri: String,
|
|
652
|
+
type:
|
|
653
|
+
Stagehand::SessionExecuteParams::AgentConfig::ExecutionModel::VertexModelConfigObject::Auth::Credentials::Type::OrSymbol,
|
|
654
|
+
universe_domain: String
|
|
655
|
+
}
|
|
656
|
+
)
|
|
657
|
+
end
|
|
658
|
+
def to_hash
|
|
659
|
+
end
|
|
660
|
+
|
|
661
|
+
module Type
|
|
662
|
+
extend Stagehand::Internal::Type::Enum
|
|
663
|
+
|
|
664
|
+
TaggedSymbol =
|
|
665
|
+
T.type_alias do
|
|
666
|
+
T.all(
|
|
667
|
+
Symbol,
|
|
668
|
+
Stagehand::SessionExecuteParams::AgentConfig::ExecutionModel::VertexModelConfigObject::Auth::Credentials::Type
|
|
669
|
+
)
|
|
670
|
+
end
|
|
671
|
+
OrSymbol = T.type_alias { T.any(Symbol, String) }
|
|
672
|
+
|
|
673
|
+
SERVICE_ACCOUNT =
|
|
674
|
+
T.let(
|
|
675
|
+
:service_account,
|
|
676
|
+
Stagehand::SessionExecuteParams::AgentConfig::ExecutionModel::VertexModelConfigObject::Auth::Credentials::Type::TaggedSymbol
|
|
677
|
+
)
|
|
678
|
+
|
|
679
|
+
sig do
|
|
680
|
+
override.returns(
|
|
681
|
+
T::Array[
|
|
682
|
+
Stagehand::SessionExecuteParams::AgentConfig::ExecutionModel::VertexModelConfigObject::Auth::Credentials::Type::TaggedSymbol
|
|
683
|
+
]
|
|
684
|
+
)
|
|
685
|
+
end
|
|
686
|
+
def self.values
|
|
687
|
+
end
|
|
688
|
+
end
|
|
689
|
+
end
|
|
690
|
+
|
|
691
|
+
# Google auth scopes for the desired API request
|
|
692
|
+
module Scopes
|
|
693
|
+
extend Stagehand::Internal::Type::Union
|
|
694
|
+
|
|
695
|
+
Variants = T.type_alias { T.any(String, T::Array[String]) }
|
|
696
|
+
|
|
697
|
+
sig do
|
|
698
|
+
override.returns(
|
|
699
|
+
T::Array[
|
|
700
|
+
Stagehand::SessionExecuteParams::AgentConfig::ExecutionModel::VertexModelConfigObject::Auth::Scopes::Variants
|
|
701
|
+
]
|
|
702
|
+
)
|
|
703
|
+
end
|
|
704
|
+
def self.variants
|
|
705
|
+
end
|
|
706
|
+
|
|
707
|
+
StringArray =
|
|
708
|
+
T.let(
|
|
709
|
+
Stagehand::Internal::Type::ArrayOf[String],
|
|
710
|
+
Stagehand::Internal::Type::Converter
|
|
711
|
+
)
|
|
712
|
+
end
|
|
713
|
+
end
|
|
714
|
+
|
|
715
|
+
class ProviderOptions < Stagehand::Internal::Type::BaseModel
|
|
716
|
+
OrHash =
|
|
717
|
+
T.type_alias do
|
|
718
|
+
T.any(
|
|
719
|
+
Stagehand::SessionExecuteParams::AgentConfig::ExecutionModel::VertexModelConfigObject::ProviderOptions,
|
|
720
|
+
Stagehand::Internal::AnyHash
|
|
721
|
+
)
|
|
722
|
+
end
|
|
723
|
+
|
|
724
|
+
# Vertex AI provider-specific settings
|
|
725
|
+
sig do
|
|
726
|
+
returns(
|
|
727
|
+
Stagehand::SessionExecuteParams::AgentConfig::ExecutionModel::VertexModelConfigObject::ProviderOptions::Vertex
|
|
728
|
+
)
|
|
729
|
+
end
|
|
730
|
+
attr_reader :vertex
|
|
731
|
+
|
|
732
|
+
sig do
|
|
733
|
+
params(
|
|
734
|
+
vertex:
|
|
735
|
+
Stagehand::SessionExecuteParams::AgentConfig::ExecutionModel::VertexModelConfigObject::ProviderOptions::Vertex::OrHash
|
|
736
|
+
).void
|
|
737
|
+
end
|
|
738
|
+
attr_writer :vertex
|
|
739
|
+
|
|
740
|
+
# Vertex provider-specific model configuration
|
|
741
|
+
sig do
|
|
742
|
+
params(
|
|
743
|
+
vertex:
|
|
744
|
+
Stagehand::SessionExecuteParams::AgentConfig::ExecutionModel::VertexModelConfigObject::ProviderOptions::Vertex::OrHash
|
|
745
|
+
).returns(T.attached_class)
|
|
746
|
+
end
|
|
747
|
+
def self.new(
|
|
748
|
+
# Vertex AI provider-specific settings
|
|
749
|
+
vertex:
|
|
750
|
+
)
|
|
751
|
+
end
|
|
752
|
+
|
|
753
|
+
sig do
|
|
754
|
+
override.returns(
|
|
755
|
+
{
|
|
756
|
+
vertex:
|
|
757
|
+
Stagehand::SessionExecuteParams::AgentConfig::ExecutionModel::VertexModelConfigObject::ProviderOptions::Vertex
|
|
758
|
+
}
|
|
759
|
+
)
|
|
760
|
+
end
|
|
761
|
+
def to_hash
|
|
762
|
+
end
|
|
763
|
+
|
|
764
|
+
class Vertex < Stagehand::Internal::Type::BaseModel
|
|
765
|
+
OrHash =
|
|
766
|
+
T.type_alias do
|
|
767
|
+
T.any(
|
|
768
|
+
Stagehand::SessionExecuteParams::AgentConfig::ExecutionModel::VertexModelConfigObject::ProviderOptions::Vertex,
|
|
769
|
+
Stagehand::Internal::AnyHash
|
|
770
|
+
)
|
|
771
|
+
end
|
|
772
|
+
|
|
773
|
+
# Google Cloud location for Vertex AI models
|
|
774
|
+
sig { returns(String) }
|
|
775
|
+
attr_accessor :location
|
|
776
|
+
|
|
777
|
+
# Google Cloud project ID for Vertex AI models
|
|
778
|
+
sig { returns(String) }
|
|
779
|
+
attr_accessor :project
|
|
780
|
+
|
|
781
|
+
# Base URL for the Vertex AI provider
|
|
782
|
+
sig { returns(T.nilable(String)) }
|
|
783
|
+
attr_reader :base_url
|
|
784
|
+
|
|
785
|
+
sig { params(base_url: String).void }
|
|
786
|
+
attr_writer :base_url
|
|
787
|
+
|
|
788
|
+
# Custom headers sent with every request to the Vertex AI provider
|
|
789
|
+
sig { returns(T.nilable(T::Hash[Symbol, String])) }
|
|
790
|
+
attr_reader :headers
|
|
791
|
+
|
|
792
|
+
sig { params(headers: T::Hash[Symbol, String]).void }
|
|
793
|
+
attr_writer :headers
|
|
794
|
+
|
|
795
|
+
# Vertex AI provider-specific settings
|
|
796
|
+
sig do
|
|
797
|
+
params(
|
|
798
|
+
location: String,
|
|
799
|
+
project: String,
|
|
800
|
+
base_url: String,
|
|
801
|
+
headers: T::Hash[Symbol, String]
|
|
802
|
+
).returns(T.attached_class)
|
|
803
|
+
end
|
|
804
|
+
def self.new(
|
|
805
|
+
# Google Cloud location for Vertex AI models
|
|
806
|
+
location:,
|
|
807
|
+
# Google Cloud project ID for Vertex AI models
|
|
808
|
+
project:,
|
|
809
|
+
# Base URL for the Vertex AI provider
|
|
810
|
+
base_url: nil,
|
|
811
|
+
# Custom headers sent with every request to the Vertex AI provider
|
|
812
|
+
headers: nil
|
|
813
|
+
)
|
|
814
|
+
end
|
|
815
|
+
|
|
816
|
+
sig do
|
|
817
|
+
override.returns(
|
|
818
|
+
{
|
|
819
|
+
location: String,
|
|
820
|
+
project: String,
|
|
821
|
+
base_url: String,
|
|
822
|
+
headers: T::Hash[Symbol, String]
|
|
823
|
+
}
|
|
824
|
+
)
|
|
825
|
+
end
|
|
826
|
+
def to_hash
|
|
827
|
+
end
|
|
828
|
+
end
|
|
829
|
+
end
|
|
830
|
+
end
|
|
831
|
+
|
|
832
|
+
class GenericModelConfigObject < Stagehand::Internal::Type::BaseModel
|
|
833
|
+
OrHash =
|
|
834
|
+
T.type_alias do
|
|
835
|
+
T.any(
|
|
836
|
+
Stagehand::SessionExecuteParams::AgentConfig::ExecutionModel::GenericModelConfigObject,
|
|
837
|
+
Stagehand::Internal::AnyHash
|
|
838
|
+
)
|
|
839
|
+
end
|
|
840
|
+
|
|
841
|
+
# Model name string with provider prefix (e.g., 'openai/gpt-5-nano')
|
|
842
|
+
sig { returns(String) }
|
|
843
|
+
attr_accessor :model_name
|
|
844
|
+
|
|
845
|
+
# API key for the model provider
|
|
846
|
+
sig { returns(T.nilable(String)) }
|
|
847
|
+
attr_reader :api_key
|
|
848
|
+
|
|
849
|
+
sig { params(api_key: String).void }
|
|
850
|
+
attr_writer :api_key
|
|
851
|
+
|
|
852
|
+
# Base URL for the model provider
|
|
853
|
+
sig { returns(T.nilable(String)) }
|
|
854
|
+
attr_reader :base_url
|
|
855
|
+
|
|
856
|
+
sig { params(base_url: String).void }
|
|
857
|
+
attr_writer :base_url
|
|
858
|
+
|
|
859
|
+
# Custom headers sent with every request to the model provider
|
|
860
|
+
sig { returns(T.nilable(T::Hash[Symbol, String])) }
|
|
861
|
+
attr_reader :headers
|
|
862
|
+
|
|
863
|
+
sig { params(headers: T::Hash[Symbol, String]).void }
|
|
864
|
+
attr_writer :headers
|
|
865
|
+
|
|
866
|
+
# AI provider for the model (or provide a baseURL endpoint instead)
|
|
867
|
+
sig do
|
|
868
|
+
returns(
|
|
869
|
+
T.nilable(
|
|
870
|
+
Stagehand::SessionExecuteParams::AgentConfig::ExecutionModel::GenericModelConfigObject::Provider::OrSymbol
|
|
871
|
+
)
|
|
872
|
+
)
|
|
873
|
+
end
|
|
874
|
+
attr_reader :provider
|
|
875
|
+
|
|
876
|
+
sig do
|
|
877
|
+
params(
|
|
878
|
+
provider:
|
|
879
|
+
Stagehand::SessionExecuteParams::AgentConfig::ExecutionModel::GenericModelConfigObject::Provider::OrSymbol
|
|
880
|
+
).void
|
|
881
|
+
end
|
|
882
|
+
attr_writer :provider
|
|
883
|
+
|
|
884
|
+
sig do
|
|
885
|
+
params(
|
|
886
|
+
model_name: String,
|
|
887
|
+
api_key: String,
|
|
888
|
+
base_url: String,
|
|
889
|
+
headers: T::Hash[Symbol, String],
|
|
890
|
+
provider:
|
|
891
|
+
Stagehand::SessionExecuteParams::AgentConfig::ExecutionModel::GenericModelConfigObject::Provider::OrSymbol
|
|
892
|
+
).returns(T.attached_class)
|
|
893
|
+
end
|
|
894
|
+
def self.new(
|
|
895
|
+
# Model name string with provider prefix (e.g., 'openai/gpt-5-nano')
|
|
896
|
+
model_name:,
|
|
897
|
+
# API key for the model provider
|
|
898
|
+
api_key: nil,
|
|
899
|
+
# Base URL for the model provider
|
|
900
|
+
base_url: nil,
|
|
901
|
+
# Custom headers sent with every request to the model provider
|
|
902
|
+
headers: nil,
|
|
903
|
+
# AI provider for the model (or provide a baseURL endpoint instead)
|
|
904
|
+
provider: nil
|
|
905
|
+
)
|
|
906
|
+
end
|
|
907
|
+
|
|
908
|
+
sig do
|
|
909
|
+
override.returns(
|
|
910
|
+
{
|
|
911
|
+
model_name: String,
|
|
912
|
+
api_key: String,
|
|
913
|
+
base_url: String,
|
|
914
|
+
headers: T::Hash[Symbol, String],
|
|
915
|
+
provider:
|
|
916
|
+
Stagehand::SessionExecuteParams::AgentConfig::ExecutionModel::GenericModelConfigObject::Provider::OrSymbol
|
|
917
|
+
}
|
|
918
|
+
)
|
|
919
|
+
end
|
|
920
|
+
def to_hash
|
|
921
|
+
end
|
|
922
|
+
|
|
923
|
+
# AI provider for the model (or provide a baseURL endpoint instead)
|
|
924
|
+
module Provider
|
|
925
|
+
extend Stagehand::Internal::Type::Enum
|
|
926
|
+
|
|
927
|
+
TaggedSymbol =
|
|
928
|
+
T.type_alias do
|
|
929
|
+
T.all(
|
|
930
|
+
Symbol,
|
|
931
|
+
Stagehand::SessionExecuteParams::AgentConfig::ExecutionModel::GenericModelConfigObject::Provider
|
|
932
|
+
)
|
|
933
|
+
end
|
|
934
|
+
OrSymbol = T.type_alias { T.any(Symbol, String) }
|
|
935
|
+
|
|
936
|
+
OPENAI =
|
|
937
|
+
T.let(
|
|
938
|
+
:openai,
|
|
939
|
+
Stagehand::SessionExecuteParams::AgentConfig::ExecutionModel::GenericModelConfigObject::Provider::TaggedSymbol
|
|
940
|
+
)
|
|
941
|
+
ANTHROPIC =
|
|
942
|
+
T.let(
|
|
943
|
+
:anthropic,
|
|
944
|
+
Stagehand::SessionExecuteParams::AgentConfig::ExecutionModel::GenericModelConfigObject::Provider::TaggedSymbol
|
|
945
|
+
)
|
|
946
|
+
GOOGLE =
|
|
947
|
+
T.let(
|
|
948
|
+
:google,
|
|
949
|
+
Stagehand::SessionExecuteParams::AgentConfig::ExecutionModel::GenericModelConfigObject::Provider::TaggedSymbol
|
|
950
|
+
)
|
|
951
|
+
MICROSOFT =
|
|
952
|
+
T.let(
|
|
953
|
+
:microsoft,
|
|
954
|
+
Stagehand::SessionExecuteParams::AgentConfig::ExecutionModel::GenericModelConfigObject::Provider::TaggedSymbol
|
|
955
|
+
)
|
|
956
|
+
BEDROCK =
|
|
957
|
+
T.let(
|
|
958
|
+
:bedrock,
|
|
959
|
+
Stagehand::SessionExecuteParams::AgentConfig::ExecutionModel::GenericModelConfigObject::Provider::TaggedSymbol
|
|
960
|
+
)
|
|
961
|
+
|
|
962
|
+
sig do
|
|
963
|
+
override.returns(
|
|
964
|
+
T::Array[
|
|
965
|
+
Stagehand::SessionExecuteParams::AgentConfig::ExecutionModel::GenericModelConfigObject::Provider::TaggedSymbol
|
|
966
|
+
]
|
|
967
|
+
)
|
|
968
|
+
end
|
|
969
|
+
def self.values
|
|
970
|
+
end
|
|
971
|
+
end
|
|
972
|
+
end
|
|
246
973
|
|
|
247
974
|
sig do
|
|
248
975
|
override.returns(
|
|
@@ -296,7 +1023,682 @@ module Stagehand
|
|
|
296
1023
|
module Model
|
|
297
1024
|
extend Stagehand::Internal::Type::Union
|
|
298
1025
|
|
|
299
|
-
Variants =
|
|
1026
|
+
Variants =
|
|
1027
|
+
T.type_alias do
|
|
1028
|
+
T.any(
|
|
1029
|
+
Stagehand::SessionExecuteParams::AgentConfig::Model::VertexModelConfigObject,
|
|
1030
|
+
Stagehand::SessionExecuteParams::AgentConfig::Model::GenericModelConfigObject,
|
|
1031
|
+
String
|
|
1032
|
+
)
|
|
1033
|
+
end
|
|
1034
|
+
|
|
1035
|
+
class VertexModelConfigObject < Stagehand::Internal::Type::BaseModel
|
|
1036
|
+
OrHash =
|
|
1037
|
+
T.type_alias do
|
|
1038
|
+
T.any(
|
|
1039
|
+
Stagehand::SessionExecuteParams::AgentConfig::Model::VertexModelConfigObject,
|
|
1040
|
+
Stagehand::Internal::AnyHash
|
|
1041
|
+
)
|
|
1042
|
+
end
|
|
1043
|
+
|
|
1044
|
+
# Vertex provider authentication configuration
|
|
1045
|
+
sig do
|
|
1046
|
+
returns(
|
|
1047
|
+
Stagehand::SessionExecuteParams::AgentConfig::Model::VertexModelConfigObject::Auth
|
|
1048
|
+
)
|
|
1049
|
+
end
|
|
1050
|
+
attr_reader :auth
|
|
1051
|
+
|
|
1052
|
+
sig do
|
|
1053
|
+
params(
|
|
1054
|
+
auth:
|
|
1055
|
+
Stagehand::SessionExecuteParams::AgentConfig::Model::VertexModelConfigObject::Auth::OrHash
|
|
1056
|
+
).void
|
|
1057
|
+
end
|
|
1058
|
+
attr_writer :auth
|
|
1059
|
+
|
|
1060
|
+
# Model name string with provider prefix (e.g., 'openai/gpt-5-nano')
|
|
1061
|
+
sig { returns(String) }
|
|
1062
|
+
attr_accessor :model_name
|
|
1063
|
+
|
|
1064
|
+
# Vertex AI model provider
|
|
1065
|
+
sig { returns(Symbol) }
|
|
1066
|
+
attr_accessor :provider
|
|
1067
|
+
|
|
1068
|
+
# Vertex provider-specific model configuration
|
|
1069
|
+
sig do
|
|
1070
|
+
returns(
|
|
1071
|
+
Stagehand::SessionExecuteParams::AgentConfig::Model::VertexModelConfigObject::ProviderOptions
|
|
1072
|
+
)
|
|
1073
|
+
end
|
|
1074
|
+
attr_reader :provider_options
|
|
1075
|
+
|
|
1076
|
+
sig do
|
|
1077
|
+
params(
|
|
1078
|
+
provider_options:
|
|
1079
|
+
Stagehand::SessionExecuteParams::AgentConfig::Model::VertexModelConfigObject::ProviderOptions::OrHash
|
|
1080
|
+
).void
|
|
1081
|
+
end
|
|
1082
|
+
attr_writer :provider_options
|
|
1083
|
+
|
|
1084
|
+
# API key for the model provider
|
|
1085
|
+
sig { returns(T.nilable(String)) }
|
|
1086
|
+
attr_reader :api_key
|
|
1087
|
+
|
|
1088
|
+
sig { params(api_key: String).void }
|
|
1089
|
+
attr_writer :api_key
|
|
1090
|
+
|
|
1091
|
+
# Base URL for the model provider
|
|
1092
|
+
sig { returns(T.nilable(String)) }
|
|
1093
|
+
attr_reader :base_url
|
|
1094
|
+
|
|
1095
|
+
sig { params(base_url: String).void }
|
|
1096
|
+
attr_writer :base_url
|
|
1097
|
+
|
|
1098
|
+
# Custom headers sent with every request to the model provider
|
|
1099
|
+
sig { returns(T.nilable(T::Hash[Symbol, String])) }
|
|
1100
|
+
attr_reader :headers
|
|
1101
|
+
|
|
1102
|
+
sig { params(headers: T::Hash[Symbol, String]).void }
|
|
1103
|
+
attr_writer :headers
|
|
1104
|
+
|
|
1105
|
+
sig do
|
|
1106
|
+
params(
|
|
1107
|
+
auth:
|
|
1108
|
+
Stagehand::SessionExecuteParams::AgentConfig::Model::VertexModelConfigObject::Auth::OrHash,
|
|
1109
|
+
model_name: String,
|
|
1110
|
+
provider_options:
|
|
1111
|
+
Stagehand::SessionExecuteParams::AgentConfig::Model::VertexModelConfigObject::ProviderOptions::OrHash,
|
|
1112
|
+
api_key: String,
|
|
1113
|
+
base_url: String,
|
|
1114
|
+
headers: T::Hash[Symbol, String],
|
|
1115
|
+
provider: Symbol
|
|
1116
|
+
).returns(T.attached_class)
|
|
1117
|
+
end
|
|
1118
|
+
def self.new(
|
|
1119
|
+
# Vertex provider authentication configuration
|
|
1120
|
+
auth:,
|
|
1121
|
+
# Model name string with provider prefix (e.g., 'openai/gpt-5-nano')
|
|
1122
|
+
model_name:,
|
|
1123
|
+
# Vertex provider-specific model configuration
|
|
1124
|
+
provider_options:,
|
|
1125
|
+
# API key for the model provider
|
|
1126
|
+
api_key: nil,
|
|
1127
|
+
# Base URL for the model provider
|
|
1128
|
+
base_url: nil,
|
|
1129
|
+
# Custom headers sent with every request to the model provider
|
|
1130
|
+
headers: nil,
|
|
1131
|
+
# Vertex AI model provider
|
|
1132
|
+
provider: :vertex
|
|
1133
|
+
)
|
|
1134
|
+
end
|
|
1135
|
+
|
|
1136
|
+
sig do
|
|
1137
|
+
override.returns(
|
|
1138
|
+
{
|
|
1139
|
+
auth:
|
|
1140
|
+
Stagehand::SessionExecuteParams::AgentConfig::Model::VertexModelConfigObject::Auth,
|
|
1141
|
+
model_name: String,
|
|
1142
|
+
provider: Symbol,
|
|
1143
|
+
provider_options:
|
|
1144
|
+
Stagehand::SessionExecuteParams::AgentConfig::Model::VertexModelConfigObject::ProviderOptions,
|
|
1145
|
+
api_key: String,
|
|
1146
|
+
base_url: String,
|
|
1147
|
+
headers: T::Hash[Symbol, String]
|
|
1148
|
+
}
|
|
1149
|
+
)
|
|
1150
|
+
end
|
|
1151
|
+
def to_hash
|
|
1152
|
+
end
|
|
1153
|
+
|
|
1154
|
+
class Auth < Stagehand::Internal::Type::BaseModel
|
|
1155
|
+
OrHash =
|
|
1156
|
+
T.type_alias do
|
|
1157
|
+
T.any(
|
|
1158
|
+
Stagehand::SessionExecuteParams::AgentConfig::Model::VertexModelConfigObject::Auth,
|
|
1159
|
+
Stagehand::Internal::AnyHash
|
|
1160
|
+
)
|
|
1161
|
+
end
|
|
1162
|
+
|
|
1163
|
+
# Google Cloud service account credentials
|
|
1164
|
+
sig do
|
|
1165
|
+
returns(
|
|
1166
|
+
Stagehand::SessionExecuteParams::AgentConfig::Model::VertexModelConfigObject::Auth::Credentials
|
|
1167
|
+
)
|
|
1168
|
+
end
|
|
1169
|
+
attr_reader :credentials
|
|
1170
|
+
|
|
1171
|
+
sig do
|
|
1172
|
+
params(
|
|
1173
|
+
credentials:
|
|
1174
|
+
Stagehand::SessionExecuteParams::AgentConfig::Model::VertexModelConfigObject::Auth::Credentials::OrHash
|
|
1175
|
+
).void
|
|
1176
|
+
end
|
|
1177
|
+
attr_writer :credentials
|
|
1178
|
+
|
|
1179
|
+
# Use inline Google Cloud service account credentials for provider authentication
|
|
1180
|
+
sig { returns(Symbol) }
|
|
1181
|
+
attr_accessor :type
|
|
1182
|
+
|
|
1183
|
+
# Google Cloud project ID used by google-auth-library
|
|
1184
|
+
sig { returns(T.nilable(String)) }
|
|
1185
|
+
attr_reader :project_id
|
|
1186
|
+
|
|
1187
|
+
sig { params(project_id: String).void }
|
|
1188
|
+
attr_writer :project_id
|
|
1189
|
+
|
|
1190
|
+
# Google auth scopes for the desired API request
|
|
1191
|
+
sig do
|
|
1192
|
+
returns(
|
|
1193
|
+
T.nilable(
|
|
1194
|
+
Stagehand::SessionExecuteParams::AgentConfig::Model::VertexModelConfigObject::Auth::Scopes::Variants
|
|
1195
|
+
)
|
|
1196
|
+
)
|
|
1197
|
+
end
|
|
1198
|
+
attr_reader :scopes
|
|
1199
|
+
|
|
1200
|
+
sig do
|
|
1201
|
+
params(
|
|
1202
|
+
scopes:
|
|
1203
|
+
Stagehand::SessionExecuteParams::AgentConfig::Model::VertexModelConfigObject::Auth::Scopes::Variants
|
|
1204
|
+
).void
|
|
1205
|
+
end
|
|
1206
|
+
attr_writer :scopes
|
|
1207
|
+
|
|
1208
|
+
# Google Cloud universe domain
|
|
1209
|
+
sig { returns(T.nilable(String)) }
|
|
1210
|
+
attr_reader :universe_domain
|
|
1211
|
+
|
|
1212
|
+
sig { params(universe_domain: String).void }
|
|
1213
|
+
attr_writer :universe_domain
|
|
1214
|
+
|
|
1215
|
+
# Vertex provider authentication configuration
|
|
1216
|
+
sig do
|
|
1217
|
+
params(
|
|
1218
|
+
credentials:
|
|
1219
|
+
Stagehand::SessionExecuteParams::AgentConfig::Model::VertexModelConfigObject::Auth::Credentials::OrHash,
|
|
1220
|
+
project_id: String,
|
|
1221
|
+
scopes:
|
|
1222
|
+
Stagehand::SessionExecuteParams::AgentConfig::Model::VertexModelConfigObject::Auth::Scopes::Variants,
|
|
1223
|
+
universe_domain: String,
|
|
1224
|
+
type: Symbol
|
|
1225
|
+
).returns(T.attached_class)
|
|
1226
|
+
end
|
|
1227
|
+
def self.new(
|
|
1228
|
+
# Google Cloud service account credentials
|
|
1229
|
+
credentials:,
|
|
1230
|
+
# Google Cloud project ID used by google-auth-library
|
|
1231
|
+
project_id: nil,
|
|
1232
|
+
# Google auth scopes for the desired API request
|
|
1233
|
+
scopes: nil,
|
|
1234
|
+
# Google Cloud universe domain
|
|
1235
|
+
universe_domain: nil,
|
|
1236
|
+
# Use inline Google Cloud service account credentials for provider authentication
|
|
1237
|
+
type: :googleServiceAccount
|
|
1238
|
+
)
|
|
1239
|
+
end
|
|
1240
|
+
|
|
1241
|
+
sig do
|
|
1242
|
+
override.returns(
|
|
1243
|
+
{
|
|
1244
|
+
credentials:
|
|
1245
|
+
Stagehand::SessionExecuteParams::AgentConfig::Model::VertexModelConfigObject::Auth::Credentials,
|
|
1246
|
+
type: Symbol,
|
|
1247
|
+
project_id: String,
|
|
1248
|
+
scopes:
|
|
1249
|
+
Stagehand::SessionExecuteParams::AgentConfig::Model::VertexModelConfigObject::Auth::Scopes::Variants,
|
|
1250
|
+
universe_domain: String
|
|
1251
|
+
}
|
|
1252
|
+
)
|
|
1253
|
+
end
|
|
1254
|
+
def to_hash
|
|
1255
|
+
end
|
|
1256
|
+
|
|
1257
|
+
class Credentials < Stagehand::Internal::Type::BaseModel
|
|
1258
|
+
OrHash =
|
|
1259
|
+
T.type_alias do
|
|
1260
|
+
T.any(
|
|
1261
|
+
Stagehand::SessionExecuteParams::AgentConfig::Model::VertexModelConfigObject::Auth::Credentials,
|
|
1262
|
+
Stagehand::Internal::AnyHash
|
|
1263
|
+
)
|
|
1264
|
+
end
|
|
1265
|
+
|
|
1266
|
+
sig { returns(String) }
|
|
1267
|
+
attr_accessor :client_email
|
|
1268
|
+
|
|
1269
|
+
sig { returns(String) }
|
|
1270
|
+
attr_accessor :private_key
|
|
1271
|
+
|
|
1272
|
+
sig { returns(T.nilable(String)) }
|
|
1273
|
+
attr_reader :auth_provider_x509_cert_url
|
|
1274
|
+
|
|
1275
|
+
sig { params(auth_provider_x509_cert_url: String).void }
|
|
1276
|
+
attr_writer :auth_provider_x509_cert_url
|
|
1277
|
+
|
|
1278
|
+
sig { returns(T.nilable(String)) }
|
|
1279
|
+
attr_reader :auth_uri
|
|
1280
|
+
|
|
1281
|
+
sig { params(auth_uri: String).void }
|
|
1282
|
+
attr_writer :auth_uri
|
|
1283
|
+
|
|
1284
|
+
sig { returns(T.nilable(String)) }
|
|
1285
|
+
attr_reader :client_id
|
|
1286
|
+
|
|
1287
|
+
sig { params(client_id: String).void }
|
|
1288
|
+
attr_writer :client_id
|
|
1289
|
+
|
|
1290
|
+
sig { returns(T.nilable(String)) }
|
|
1291
|
+
attr_reader :client_x509_cert_url
|
|
1292
|
+
|
|
1293
|
+
sig { params(client_x509_cert_url: String).void }
|
|
1294
|
+
attr_writer :client_x509_cert_url
|
|
1295
|
+
|
|
1296
|
+
sig { returns(T.nilable(String)) }
|
|
1297
|
+
attr_reader :private_key_id
|
|
1298
|
+
|
|
1299
|
+
sig { params(private_key_id: String).void }
|
|
1300
|
+
attr_writer :private_key_id
|
|
1301
|
+
|
|
1302
|
+
sig { returns(T.nilable(String)) }
|
|
1303
|
+
attr_reader :project_id
|
|
1304
|
+
|
|
1305
|
+
sig { params(project_id: String).void }
|
|
1306
|
+
attr_writer :project_id
|
|
1307
|
+
|
|
1308
|
+
sig { returns(T.nilable(String)) }
|
|
1309
|
+
attr_reader :token_uri
|
|
1310
|
+
|
|
1311
|
+
sig { params(token_uri: String).void }
|
|
1312
|
+
attr_writer :token_uri
|
|
1313
|
+
|
|
1314
|
+
sig do
|
|
1315
|
+
returns(
|
|
1316
|
+
T.nilable(
|
|
1317
|
+
Stagehand::SessionExecuteParams::AgentConfig::Model::VertexModelConfigObject::Auth::Credentials::Type::OrSymbol
|
|
1318
|
+
)
|
|
1319
|
+
)
|
|
1320
|
+
end
|
|
1321
|
+
attr_reader :type
|
|
1322
|
+
|
|
1323
|
+
sig do
|
|
1324
|
+
params(
|
|
1325
|
+
type:
|
|
1326
|
+
Stagehand::SessionExecuteParams::AgentConfig::Model::VertexModelConfigObject::Auth::Credentials::Type::OrSymbol
|
|
1327
|
+
).void
|
|
1328
|
+
end
|
|
1329
|
+
attr_writer :type
|
|
1330
|
+
|
|
1331
|
+
sig { returns(T.nilable(String)) }
|
|
1332
|
+
attr_reader :universe_domain
|
|
1333
|
+
|
|
1334
|
+
sig { params(universe_domain: String).void }
|
|
1335
|
+
attr_writer :universe_domain
|
|
1336
|
+
|
|
1337
|
+
# Google Cloud service account credentials
|
|
1338
|
+
sig do
|
|
1339
|
+
params(
|
|
1340
|
+
client_email: String,
|
|
1341
|
+
private_key: String,
|
|
1342
|
+
auth_provider_x509_cert_url: String,
|
|
1343
|
+
auth_uri: String,
|
|
1344
|
+
client_id: String,
|
|
1345
|
+
client_x509_cert_url: String,
|
|
1346
|
+
private_key_id: String,
|
|
1347
|
+
project_id: String,
|
|
1348
|
+
token_uri: String,
|
|
1349
|
+
type:
|
|
1350
|
+
Stagehand::SessionExecuteParams::AgentConfig::Model::VertexModelConfigObject::Auth::Credentials::Type::OrSymbol,
|
|
1351
|
+
universe_domain: String
|
|
1352
|
+
).returns(T.attached_class)
|
|
1353
|
+
end
|
|
1354
|
+
def self.new(
|
|
1355
|
+
client_email:,
|
|
1356
|
+
private_key:,
|
|
1357
|
+
auth_provider_x509_cert_url: nil,
|
|
1358
|
+
auth_uri: nil,
|
|
1359
|
+
client_id: nil,
|
|
1360
|
+
client_x509_cert_url: nil,
|
|
1361
|
+
private_key_id: nil,
|
|
1362
|
+
project_id: nil,
|
|
1363
|
+
token_uri: nil,
|
|
1364
|
+
type: nil,
|
|
1365
|
+
universe_domain: nil
|
|
1366
|
+
)
|
|
1367
|
+
end
|
|
1368
|
+
|
|
1369
|
+
sig do
|
|
1370
|
+
override.returns(
|
|
1371
|
+
{
|
|
1372
|
+
client_email: String,
|
|
1373
|
+
private_key: String,
|
|
1374
|
+
auth_provider_x509_cert_url: String,
|
|
1375
|
+
auth_uri: String,
|
|
1376
|
+
client_id: String,
|
|
1377
|
+
client_x509_cert_url: String,
|
|
1378
|
+
private_key_id: String,
|
|
1379
|
+
project_id: String,
|
|
1380
|
+
token_uri: String,
|
|
1381
|
+
type:
|
|
1382
|
+
Stagehand::SessionExecuteParams::AgentConfig::Model::VertexModelConfigObject::Auth::Credentials::Type::OrSymbol,
|
|
1383
|
+
universe_domain: String
|
|
1384
|
+
}
|
|
1385
|
+
)
|
|
1386
|
+
end
|
|
1387
|
+
def to_hash
|
|
1388
|
+
end
|
|
1389
|
+
|
|
1390
|
+
module Type
|
|
1391
|
+
extend Stagehand::Internal::Type::Enum
|
|
1392
|
+
|
|
1393
|
+
TaggedSymbol =
|
|
1394
|
+
T.type_alias do
|
|
1395
|
+
T.all(
|
|
1396
|
+
Symbol,
|
|
1397
|
+
Stagehand::SessionExecuteParams::AgentConfig::Model::VertexModelConfigObject::Auth::Credentials::Type
|
|
1398
|
+
)
|
|
1399
|
+
end
|
|
1400
|
+
OrSymbol = T.type_alias { T.any(Symbol, String) }
|
|
1401
|
+
|
|
1402
|
+
SERVICE_ACCOUNT =
|
|
1403
|
+
T.let(
|
|
1404
|
+
:service_account,
|
|
1405
|
+
Stagehand::SessionExecuteParams::AgentConfig::Model::VertexModelConfigObject::Auth::Credentials::Type::TaggedSymbol
|
|
1406
|
+
)
|
|
1407
|
+
|
|
1408
|
+
sig do
|
|
1409
|
+
override.returns(
|
|
1410
|
+
T::Array[
|
|
1411
|
+
Stagehand::SessionExecuteParams::AgentConfig::Model::VertexModelConfigObject::Auth::Credentials::Type::TaggedSymbol
|
|
1412
|
+
]
|
|
1413
|
+
)
|
|
1414
|
+
end
|
|
1415
|
+
def self.values
|
|
1416
|
+
end
|
|
1417
|
+
end
|
|
1418
|
+
end
|
|
1419
|
+
|
|
1420
|
+
# Google auth scopes for the desired API request
|
|
1421
|
+
module Scopes
|
|
1422
|
+
extend Stagehand::Internal::Type::Union
|
|
1423
|
+
|
|
1424
|
+
Variants = T.type_alias { T.any(String, T::Array[String]) }
|
|
1425
|
+
|
|
1426
|
+
sig do
|
|
1427
|
+
override.returns(
|
|
1428
|
+
T::Array[
|
|
1429
|
+
Stagehand::SessionExecuteParams::AgentConfig::Model::VertexModelConfigObject::Auth::Scopes::Variants
|
|
1430
|
+
]
|
|
1431
|
+
)
|
|
1432
|
+
end
|
|
1433
|
+
def self.variants
|
|
1434
|
+
end
|
|
1435
|
+
|
|
1436
|
+
StringArray =
|
|
1437
|
+
T.let(
|
|
1438
|
+
Stagehand::Internal::Type::ArrayOf[String],
|
|
1439
|
+
Stagehand::Internal::Type::Converter
|
|
1440
|
+
)
|
|
1441
|
+
end
|
|
1442
|
+
end
|
|
1443
|
+
|
|
1444
|
+
class ProviderOptions < Stagehand::Internal::Type::BaseModel
|
|
1445
|
+
OrHash =
|
|
1446
|
+
T.type_alias do
|
|
1447
|
+
T.any(
|
|
1448
|
+
Stagehand::SessionExecuteParams::AgentConfig::Model::VertexModelConfigObject::ProviderOptions,
|
|
1449
|
+
Stagehand::Internal::AnyHash
|
|
1450
|
+
)
|
|
1451
|
+
end
|
|
1452
|
+
|
|
1453
|
+
# Vertex AI provider-specific settings
|
|
1454
|
+
sig do
|
|
1455
|
+
returns(
|
|
1456
|
+
Stagehand::SessionExecuteParams::AgentConfig::Model::VertexModelConfigObject::ProviderOptions::Vertex
|
|
1457
|
+
)
|
|
1458
|
+
end
|
|
1459
|
+
attr_reader :vertex
|
|
1460
|
+
|
|
1461
|
+
sig do
|
|
1462
|
+
params(
|
|
1463
|
+
vertex:
|
|
1464
|
+
Stagehand::SessionExecuteParams::AgentConfig::Model::VertexModelConfigObject::ProviderOptions::Vertex::OrHash
|
|
1465
|
+
).void
|
|
1466
|
+
end
|
|
1467
|
+
attr_writer :vertex
|
|
1468
|
+
|
|
1469
|
+
# Vertex provider-specific model configuration
|
|
1470
|
+
sig do
|
|
1471
|
+
params(
|
|
1472
|
+
vertex:
|
|
1473
|
+
Stagehand::SessionExecuteParams::AgentConfig::Model::VertexModelConfigObject::ProviderOptions::Vertex::OrHash
|
|
1474
|
+
).returns(T.attached_class)
|
|
1475
|
+
end
|
|
1476
|
+
def self.new(
|
|
1477
|
+
# Vertex AI provider-specific settings
|
|
1478
|
+
vertex:
|
|
1479
|
+
)
|
|
1480
|
+
end
|
|
1481
|
+
|
|
1482
|
+
sig do
|
|
1483
|
+
override.returns(
|
|
1484
|
+
{
|
|
1485
|
+
vertex:
|
|
1486
|
+
Stagehand::SessionExecuteParams::AgentConfig::Model::VertexModelConfigObject::ProviderOptions::Vertex
|
|
1487
|
+
}
|
|
1488
|
+
)
|
|
1489
|
+
end
|
|
1490
|
+
def to_hash
|
|
1491
|
+
end
|
|
1492
|
+
|
|
1493
|
+
class Vertex < Stagehand::Internal::Type::BaseModel
|
|
1494
|
+
OrHash =
|
|
1495
|
+
T.type_alias do
|
|
1496
|
+
T.any(
|
|
1497
|
+
Stagehand::SessionExecuteParams::AgentConfig::Model::VertexModelConfigObject::ProviderOptions::Vertex,
|
|
1498
|
+
Stagehand::Internal::AnyHash
|
|
1499
|
+
)
|
|
1500
|
+
end
|
|
1501
|
+
|
|
1502
|
+
# Google Cloud location for Vertex AI models
|
|
1503
|
+
sig { returns(String) }
|
|
1504
|
+
attr_accessor :location
|
|
1505
|
+
|
|
1506
|
+
# Google Cloud project ID for Vertex AI models
|
|
1507
|
+
sig { returns(String) }
|
|
1508
|
+
attr_accessor :project
|
|
1509
|
+
|
|
1510
|
+
# Base URL for the Vertex AI provider
|
|
1511
|
+
sig { returns(T.nilable(String)) }
|
|
1512
|
+
attr_reader :base_url
|
|
1513
|
+
|
|
1514
|
+
sig { params(base_url: String).void }
|
|
1515
|
+
attr_writer :base_url
|
|
1516
|
+
|
|
1517
|
+
# Custom headers sent with every request to the Vertex AI provider
|
|
1518
|
+
sig { returns(T.nilable(T::Hash[Symbol, String])) }
|
|
1519
|
+
attr_reader :headers
|
|
1520
|
+
|
|
1521
|
+
sig { params(headers: T::Hash[Symbol, String]).void }
|
|
1522
|
+
attr_writer :headers
|
|
1523
|
+
|
|
1524
|
+
# Vertex AI provider-specific settings
|
|
1525
|
+
sig do
|
|
1526
|
+
params(
|
|
1527
|
+
location: String,
|
|
1528
|
+
project: String,
|
|
1529
|
+
base_url: String,
|
|
1530
|
+
headers: T::Hash[Symbol, String]
|
|
1531
|
+
).returns(T.attached_class)
|
|
1532
|
+
end
|
|
1533
|
+
def self.new(
|
|
1534
|
+
# Google Cloud location for Vertex AI models
|
|
1535
|
+
location:,
|
|
1536
|
+
# Google Cloud project ID for Vertex AI models
|
|
1537
|
+
project:,
|
|
1538
|
+
# Base URL for the Vertex AI provider
|
|
1539
|
+
base_url: nil,
|
|
1540
|
+
# Custom headers sent with every request to the Vertex AI provider
|
|
1541
|
+
headers: nil
|
|
1542
|
+
)
|
|
1543
|
+
end
|
|
1544
|
+
|
|
1545
|
+
sig do
|
|
1546
|
+
override.returns(
|
|
1547
|
+
{
|
|
1548
|
+
location: String,
|
|
1549
|
+
project: String,
|
|
1550
|
+
base_url: String,
|
|
1551
|
+
headers: T::Hash[Symbol, String]
|
|
1552
|
+
}
|
|
1553
|
+
)
|
|
1554
|
+
end
|
|
1555
|
+
def to_hash
|
|
1556
|
+
end
|
|
1557
|
+
end
|
|
1558
|
+
end
|
|
1559
|
+
end
|
|
1560
|
+
|
|
1561
|
+
class GenericModelConfigObject < Stagehand::Internal::Type::BaseModel
|
|
1562
|
+
OrHash =
|
|
1563
|
+
T.type_alias do
|
|
1564
|
+
T.any(
|
|
1565
|
+
Stagehand::SessionExecuteParams::AgentConfig::Model::GenericModelConfigObject,
|
|
1566
|
+
Stagehand::Internal::AnyHash
|
|
1567
|
+
)
|
|
1568
|
+
end
|
|
1569
|
+
|
|
1570
|
+
# Model name string with provider prefix (e.g., 'openai/gpt-5-nano')
|
|
1571
|
+
sig { returns(String) }
|
|
1572
|
+
attr_accessor :model_name
|
|
1573
|
+
|
|
1574
|
+
# API key for the model provider
|
|
1575
|
+
sig { returns(T.nilable(String)) }
|
|
1576
|
+
attr_reader :api_key
|
|
1577
|
+
|
|
1578
|
+
sig { params(api_key: String).void }
|
|
1579
|
+
attr_writer :api_key
|
|
1580
|
+
|
|
1581
|
+
# Base URL for the model provider
|
|
1582
|
+
sig { returns(T.nilable(String)) }
|
|
1583
|
+
attr_reader :base_url
|
|
1584
|
+
|
|
1585
|
+
sig { params(base_url: String).void }
|
|
1586
|
+
attr_writer :base_url
|
|
1587
|
+
|
|
1588
|
+
# Custom headers sent with every request to the model provider
|
|
1589
|
+
sig { returns(T.nilable(T::Hash[Symbol, String])) }
|
|
1590
|
+
attr_reader :headers
|
|
1591
|
+
|
|
1592
|
+
sig { params(headers: T::Hash[Symbol, String]).void }
|
|
1593
|
+
attr_writer :headers
|
|
1594
|
+
|
|
1595
|
+
# AI provider for the model (or provide a baseURL endpoint instead)
|
|
1596
|
+
sig do
|
|
1597
|
+
returns(
|
|
1598
|
+
T.nilable(
|
|
1599
|
+
Stagehand::SessionExecuteParams::AgentConfig::Model::GenericModelConfigObject::Provider::OrSymbol
|
|
1600
|
+
)
|
|
1601
|
+
)
|
|
1602
|
+
end
|
|
1603
|
+
attr_reader :provider
|
|
1604
|
+
|
|
1605
|
+
sig do
|
|
1606
|
+
params(
|
|
1607
|
+
provider:
|
|
1608
|
+
Stagehand::SessionExecuteParams::AgentConfig::Model::GenericModelConfigObject::Provider::OrSymbol
|
|
1609
|
+
).void
|
|
1610
|
+
end
|
|
1611
|
+
attr_writer :provider
|
|
1612
|
+
|
|
1613
|
+
sig do
|
|
1614
|
+
params(
|
|
1615
|
+
model_name: String,
|
|
1616
|
+
api_key: String,
|
|
1617
|
+
base_url: String,
|
|
1618
|
+
headers: T::Hash[Symbol, String],
|
|
1619
|
+
provider:
|
|
1620
|
+
Stagehand::SessionExecuteParams::AgentConfig::Model::GenericModelConfigObject::Provider::OrSymbol
|
|
1621
|
+
).returns(T.attached_class)
|
|
1622
|
+
end
|
|
1623
|
+
def self.new(
|
|
1624
|
+
# Model name string with provider prefix (e.g., 'openai/gpt-5-nano')
|
|
1625
|
+
model_name:,
|
|
1626
|
+
# API key for the model provider
|
|
1627
|
+
api_key: nil,
|
|
1628
|
+
# Base URL for the model provider
|
|
1629
|
+
base_url: nil,
|
|
1630
|
+
# Custom headers sent with every request to the model provider
|
|
1631
|
+
headers: nil,
|
|
1632
|
+
# AI provider for the model (or provide a baseURL endpoint instead)
|
|
1633
|
+
provider: nil
|
|
1634
|
+
)
|
|
1635
|
+
end
|
|
1636
|
+
|
|
1637
|
+
sig do
|
|
1638
|
+
override.returns(
|
|
1639
|
+
{
|
|
1640
|
+
model_name: String,
|
|
1641
|
+
api_key: String,
|
|
1642
|
+
base_url: String,
|
|
1643
|
+
headers: T::Hash[Symbol, String],
|
|
1644
|
+
provider:
|
|
1645
|
+
Stagehand::SessionExecuteParams::AgentConfig::Model::GenericModelConfigObject::Provider::OrSymbol
|
|
1646
|
+
}
|
|
1647
|
+
)
|
|
1648
|
+
end
|
|
1649
|
+
def to_hash
|
|
1650
|
+
end
|
|
1651
|
+
|
|
1652
|
+
# AI provider for the model (or provide a baseURL endpoint instead)
|
|
1653
|
+
module Provider
|
|
1654
|
+
extend Stagehand::Internal::Type::Enum
|
|
1655
|
+
|
|
1656
|
+
TaggedSymbol =
|
|
1657
|
+
T.type_alias do
|
|
1658
|
+
T.all(
|
|
1659
|
+
Symbol,
|
|
1660
|
+
Stagehand::SessionExecuteParams::AgentConfig::Model::GenericModelConfigObject::Provider
|
|
1661
|
+
)
|
|
1662
|
+
end
|
|
1663
|
+
OrSymbol = T.type_alias { T.any(Symbol, String) }
|
|
1664
|
+
|
|
1665
|
+
OPENAI =
|
|
1666
|
+
T.let(
|
|
1667
|
+
:openai,
|
|
1668
|
+
Stagehand::SessionExecuteParams::AgentConfig::Model::GenericModelConfigObject::Provider::TaggedSymbol
|
|
1669
|
+
)
|
|
1670
|
+
ANTHROPIC =
|
|
1671
|
+
T.let(
|
|
1672
|
+
:anthropic,
|
|
1673
|
+
Stagehand::SessionExecuteParams::AgentConfig::Model::GenericModelConfigObject::Provider::TaggedSymbol
|
|
1674
|
+
)
|
|
1675
|
+
GOOGLE =
|
|
1676
|
+
T.let(
|
|
1677
|
+
:google,
|
|
1678
|
+
Stagehand::SessionExecuteParams::AgentConfig::Model::GenericModelConfigObject::Provider::TaggedSymbol
|
|
1679
|
+
)
|
|
1680
|
+
MICROSOFT =
|
|
1681
|
+
T.let(
|
|
1682
|
+
:microsoft,
|
|
1683
|
+
Stagehand::SessionExecuteParams::AgentConfig::Model::GenericModelConfigObject::Provider::TaggedSymbol
|
|
1684
|
+
)
|
|
1685
|
+
BEDROCK =
|
|
1686
|
+
T.let(
|
|
1687
|
+
:bedrock,
|
|
1688
|
+
Stagehand::SessionExecuteParams::AgentConfig::Model::GenericModelConfigObject::Provider::TaggedSymbol
|
|
1689
|
+
)
|
|
1690
|
+
|
|
1691
|
+
sig do
|
|
1692
|
+
override.returns(
|
|
1693
|
+
T::Array[
|
|
1694
|
+
Stagehand::SessionExecuteParams::AgentConfig::Model::GenericModelConfigObject::Provider::TaggedSymbol
|
|
1695
|
+
]
|
|
1696
|
+
)
|
|
1697
|
+
end
|
|
1698
|
+
def self.values
|
|
1699
|
+
end
|
|
1700
|
+
end
|
|
1701
|
+
end
|
|
300
1702
|
|
|
301
1703
|
sig do
|
|
302
1704
|
override.returns(
|