openai 0.96.0 → 0.97.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 +7 -0
- data/README.md +1 -1
- data/lib/openai/models/beta/agent.rb +2 -2
- data/lib/openai/models/beta/agent_browser_authentication_cancel_param.rb +23 -0
- data/lib/openai/models/beta/agent_browser_authentication_submit_param.rb +70 -0
- data/lib/openai/models/beta/agent_browser_origin_access_param.rb +45 -0
- data/lib/openai/models/beta/agent_create_params.rb +2 -2
- data/lib/openai/models/beta/agent_output_item.rb +276 -1
- data/lib/openai/models/beta/agent_session.rb +251 -5
- data/lib/openai/models/beta/agent_session_input_param.rb +64 -1
- data/lib/openai/models/beta/agent_session_item.rb +391 -1
- data/lib/openai/models/beta/agent_session_turn_item_added_event.rb +2 -2
- data/lib/openai/models/beta/agent_session_turn_item_done_event.rb +2 -2
- data/lib/openai/models/beta/agent_tool.rb +27 -1
- data/lib/openai/models/beta/agent_tool_param.rb +27 -1
- data/lib/openai/models/beta/agent_update_params.rb +2 -2
- data/lib/openai/models/beta/agents/environments/environment_template.rb +26 -2
- data/lib/openai/models/beta/agents/environments/template_create_params.rb +48 -3
- data/lib/openai/models/beta/agents/environments/template_update_params.rb +45 -3
- data/lib/openai/models/beta/agents/session_create_params.rb +2 -2
- data/lib/openai/models/beta/agents/sessions/event_create_params.rb +2 -2
- data/lib/openai/models/beta/environment.rb +26 -2
- data/lib/openai/models/beta/environment_param.rb +43 -3
- data/lib/openai/models/beta/persisted_agent_tool.rb +27 -1
- data/lib/openai/models/beta/persisted_agent_tool_param.rb +27 -1
- data/lib/openai/resources/beta/agents/environments/templates.rb +9 -2
- data/lib/openai/resources/beta/agents/sessions/events.rb +1 -1
- data/lib/openai/resources/beta/agents/sessions/items.rb +1 -1
- data/lib/openai/resources/beta/agents/sessions/subagents/items.rb +1 -1
- data/lib/openai/resources/beta/agents/sessions/subagents/turns/items.rb +1 -1
- data/lib/openai/resources/beta/agents.rb +2 -2
- data/lib/openai/version.rb +1 -1
- data/lib/openai.rb +3 -0
- data/rbi/openai/models/beta/agent.rbi +2 -1
- data/rbi/openai/models/beta/agent_browser_authentication_cancel_param.rbi +53 -0
- data/rbi/openai/models/beta/agent_browser_authentication_submit_param.rbi +125 -0
- data/rbi/openai/models/beta/agent_browser_origin_access_param.rbi +76 -0
- data/rbi/openai/models/beta/agent_create_params.rbi +6 -3
- data/rbi/openai/models/beta/agent_output_item.rbi +422 -0
- data/rbi/openai/models/beta/agent_session.rbi +373 -1
- data/rbi/openai/models/beta/agent_session_input_param.rbi +102 -0
- data/rbi/openai/models/beta/agent_session_item.rbi +614 -0
- data/rbi/openai/models/beta/agent_session_turn_item_added_event.rbi +3 -0
- data/rbi/openai/models/beta/agent_session_turn_item_done_event.rbi +2 -0
- data/rbi/openai/models/beta/agent_tool.rbi +49 -1
- data/rbi/openai/models/beta/agent_tool_param.rbi +52 -1
- data/rbi/openai/models/beta/agent_update_params.rbi +6 -3
- data/rbi/openai/models/beta/agents/environments/environment_template.rbi +53 -2
- data/rbi/openai/models/beta/agents/environments/template_create_params.rbi +74 -4
- data/rbi/openai/models/beta/agents/environments/template_update_params.rbi +71 -4
- data/rbi/openai/models/beta/agents/session_create_params.rbi +6 -3
- data/rbi/openai/models/beta/agents/sessions/event_create_params.rbi +3 -0
- data/rbi/openai/models/beta/environment.rbi +53 -2
- data/rbi/openai/models/beta/environment_param.rbi +72 -4
- data/rbi/openai/models/beta/persisted_agent_tool.rbi +49 -1
- data/rbi/openai/models/beta/persisted_agent_tool_param.rbi +52 -1
- data/rbi/openai/resources/beta/agents/environments/templates.rbi +7 -0
- data/rbi/openai/resources/beta/agents/sessions/events.rbi +1 -0
- data/rbi/openai/resources/beta/agents.rbi +4 -2
- data/sig/openai/models/beta/agent_browser_authentication_cancel_param.rbs +21 -0
- data/sig/openai/models/beta/agent_browser_authentication_submit_param.rbs +63 -0
- data/sig/openai/models/beta/agent_browser_origin_access_param.rbs +47 -0
- data/sig/openai/models/beta/agent_output_item.rbs +254 -0
- data/sig/openai/models/beta/agent_session.rbs +215 -1
- data/sig/openai/models/beta/agent_session_input_param.rbs +51 -1
- data/sig/openai/models/beta/agent_session_item.rbs +362 -0
- data/sig/openai/models/beta/agent_tool.rbs +22 -0
- data/sig/openai/models/beta/agent_tool_param.rbs +25 -0
- data/sig/openai/models/beta/agents/environments/environment_template.rbs +29 -3
- data/sig/openai/models/beta/agents/environments/template_create_params.rbs +39 -4
- data/sig/openai/models/beta/agents/environments/template_update_params.rbs +37 -4
- data/sig/openai/models/beta/environment.rbs +29 -3
- data/sig/openai/models/beta/environment_param.rbs +39 -4
- data/sig/openai/models/beta/persisted_agent_tool.rbs +22 -0
- data/sig/openai/models/beta/persisted_agent_tool_param.rbs +25 -0
- data/sig/openai/resources/beta/agents/environments/templates.rbs +2 -0
- metadata +10 -1
|
@@ -15,7 +15,8 @@ module OpenAI
|
|
|
15
15
|
OpenAI::Beta::AgentToolParam::ToolSearch,
|
|
16
16
|
OpenAI::Beta::AgentToolParam::ProgrammaticToolCalling,
|
|
17
17
|
OpenAI::Beta::AgentToolParam::Mcp,
|
|
18
|
-
OpenAI::Beta::AgentToolParam::WebSearch
|
|
18
|
+
OpenAI::Beta::AgentToolParam::WebSearch,
|
|
19
|
+
OpenAI::Beta::AgentToolParam::ComputerUse
|
|
19
20
|
)
|
|
20
21
|
end
|
|
21
22
|
|
|
@@ -524,6 +525,56 @@ module OpenAI
|
|
|
524
525
|
end
|
|
525
526
|
end
|
|
526
527
|
|
|
528
|
+
class ComputerUse < OpenAI::Internal::Type::BaseModel
|
|
529
|
+
OrHash = T.type_alias do
|
|
530
|
+
T.any(
|
|
531
|
+
OpenAI::Beta::AgentToolParam::ComputerUse,
|
|
532
|
+
OpenAI::Internal::AnyHash
|
|
533
|
+
)
|
|
534
|
+
end
|
|
535
|
+
|
|
536
|
+
# The type of the object. Always `computer_use`.
|
|
537
|
+
sig { returns(Symbol) }
|
|
538
|
+
attr_accessor :type
|
|
539
|
+
|
|
540
|
+
# Whether computer tool outputs include screenshots. Defaults to `false`.
|
|
541
|
+
sig { returns(T.nilable(T::Boolean)) }
|
|
542
|
+
attr_reader :include_screenshots
|
|
543
|
+
|
|
544
|
+
sig { params(include_screenshots: T::Boolean).void }
|
|
545
|
+
attr_writer :include_screenshots
|
|
546
|
+
|
|
547
|
+
# Browser use in an OpenAI-hosted session.
|
|
548
|
+
sig do
|
|
549
|
+
params(
|
|
550
|
+
|
|
551
|
+
include_screenshots: T::Boolean,
|
|
552
|
+
|
|
553
|
+
type: Symbol
|
|
554
|
+
)
|
|
555
|
+
.returns(T.attached_class)
|
|
556
|
+
end
|
|
557
|
+
def self.new(
|
|
558
|
+
|
|
559
|
+
# Whether computer tool outputs include screenshots. Defaults to `false`.
|
|
560
|
+
include_screenshots: nil,
|
|
561
|
+
|
|
562
|
+
# The type of the object. Always `computer_use`.
|
|
563
|
+
|
|
564
|
+
type: :computer_use
|
|
565
|
+
)
|
|
566
|
+
end
|
|
567
|
+
|
|
568
|
+
sig do
|
|
569
|
+
override.returns(
|
|
570
|
+
{type: Symbol, include_screenshots: T::Boolean}
|
|
571
|
+
)
|
|
572
|
+
end
|
|
573
|
+
def to_hash
|
|
574
|
+
end
|
|
575
|
+
|
|
576
|
+
end
|
|
577
|
+
|
|
527
578
|
sig { override.returns(T::Array[OpenAI::Beta::AgentToolParam::Variants]) }
|
|
528
579
|
def self.variants
|
|
529
580
|
end
|
|
@@ -78,7 +78,8 @@ module OpenAI
|
|
|
78
78
|
OpenAI::Beta::PersistedAgentToolParam::ToolSearch,
|
|
79
79
|
OpenAI::Beta::PersistedAgentToolParam::ProgrammaticToolCalling,
|
|
80
80
|
OpenAI::Beta::PersistedAgentToolParam::Mcp,
|
|
81
|
-
OpenAI::Beta::PersistedAgentToolParam::WebSearch
|
|
81
|
+
OpenAI::Beta::PersistedAgentToolParam::WebSearch,
|
|
82
|
+
OpenAI::Beta::PersistedAgentToolParam::ComputerUse
|
|
82
83
|
)
|
|
83
84
|
]
|
|
84
85
|
)
|
|
@@ -114,7 +115,8 @@ module OpenAI
|
|
|
114
115
|
OpenAI::Beta::PersistedAgentToolParam::ToolSearch::OrHash,
|
|
115
116
|
OpenAI::Beta::PersistedAgentToolParam::ProgrammaticToolCalling::OrHash,
|
|
116
117
|
OpenAI::Beta::PersistedAgentToolParam::Mcp::OrHash,
|
|
117
|
-
OpenAI::Beta::PersistedAgentToolParam::WebSearch::OrHash
|
|
118
|
+
OpenAI::Beta::PersistedAgentToolParam::WebSearch::OrHash,
|
|
119
|
+
OpenAI::Beta::PersistedAgentToolParam::ComputerUse::OrHash
|
|
118
120
|
)
|
|
119
121
|
]
|
|
120
122
|
),
|
|
@@ -181,7 +183,8 @@ module OpenAI
|
|
|
181
183
|
OpenAI::Beta::PersistedAgentToolParam::ToolSearch,
|
|
182
184
|
OpenAI::Beta::PersistedAgentToolParam::ProgrammaticToolCalling,
|
|
183
185
|
OpenAI::Beta::PersistedAgentToolParam::Mcp,
|
|
184
|
-
OpenAI::Beta::PersistedAgentToolParam::WebSearch
|
|
186
|
+
OpenAI::Beta::PersistedAgentToolParam::WebSearch,
|
|
187
|
+
OpenAI::Beta::PersistedAgentToolParam::ComputerUse
|
|
185
188
|
)
|
|
186
189
|
]
|
|
187
190
|
),
|
|
@@ -70,6 +70,13 @@ module OpenAI
|
|
|
70
70
|
sig { returns(Integer) }
|
|
71
71
|
attr_accessor :updated_at
|
|
72
72
|
|
|
73
|
+
# Desktop configuration for each OpenAI-hosted environment.
|
|
74
|
+
sig { returns(T.nilable(OpenAI::Beta::Agents::Environments::EnvironmentTemplate::Desktop)) }
|
|
75
|
+
attr_reader :desktop
|
|
76
|
+
|
|
77
|
+
sig { params(desktop: OpenAI::Beta::Agents::Environments::EnvironmentTemplate::Desktop::OrHash).void }
|
|
78
|
+
attr_writer :desktop
|
|
79
|
+
|
|
73
80
|
# Reusable configuration that provisions a fresh OpenAI-hosted environment for
|
|
74
81
|
# each session.
|
|
75
82
|
sig do
|
|
@@ -105,6 +112,8 @@ module OpenAI
|
|
|
105
112
|
|
|
106
113
|
updated_at: Integer,
|
|
107
114
|
|
|
115
|
+
desktop: OpenAI::Beta::Agents::Environments::EnvironmentTemplate::Desktop::OrHash,
|
|
116
|
+
|
|
108
117
|
object: Symbol
|
|
109
118
|
)
|
|
110
119
|
.returns(T.attached_class)
|
|
@@ -141,6 +150,9 @@ module OpenAI
|
|
|
141
150
|
# The Unix timestamp, in seconds, when the template was last updated.
|
|
142
151
|
updated_at:,
|
|
143
152
|
|
|
153
|
+
# Desktop configuration for each OpenAI-hosted environment.
|
|
154
|
+
desktop: nil,
|
|
155
|
+
|
|
144
156
|
# The object type. Always `agent.environment.template`.
|
|
145
157
|
|
|
146
158
|
object: :"agent.environment.template"
|
|
@@ -160,7 +172,8 @@ module OpenAI
|
|
|
160
172
|
packages: OpenAI::Beta::Agents::Environments::EnvironmentTemplate::Packages,
|
|
161
173
|
plugins: T::Array[OpenAI::Beta::HostedPlugin],
|
|
162
174
|
skills: T::Array[OpenAI::Beta::Agents::Environments::EnvironmentTemplate::Skill::Variants],
|
|
163
|
-
updated_at: Integer
|
|
175
|
+
updated_at: Integer,
|
|
176
|
+
desktop: OpenAI::Beta::Agents::Environments::EnvironmentTemplate::Desktop
|
|
164
177
|
}
|
|
165
178
|
)
|
|
166
179
|
end
|
|
@@ -367,7 +380,7 @@ module OpenAI
|
|
|
367
380
|
OpenAI::Beta::Agents::Environments::EnvironmentTemplate::Network::Access::TaggedSymbol
|
|
368
381
|
)
|
|
369
382
|
|
|
370
|
-
#
|
|
383
|
+
# Applies the configured domain restrictions.
|
|
371
384
|
RESTRICTED = T.let(
|
|
372
385
|
:restricted,
|
|
373
386
|
OpenAI::Beta::Agents::Environments::EnvironmentTemplate::Network::Access::TaggedSymbol
|
|
@@ -570,6 +583,44 @@ module OpenAI
|
|
|
570
583
|
|
|
571
584
|
end
|
|
572
585
|
|
|
586
|
+
class Desktop < OpenAI::Internal::Type::BaseModel
|
|
587
|
+
OrHash = T.type_alias do
|
|
588
|
+
T.any(
|
|
589
|
+
OpenAI::Beta::Agents::Environments::EnvironmentTemplate::Desktop,
|
|
590
|
+
OpenAI::Internal::AnyHash
|
|
591
|
+
)
|
|
592
|
+
end
|
|
593
|
+
|
|
594
|
+
# Whether the environment provisions a desktop and browser proxy.
|
|
595
|
+
sig { returns(T::Boolean) }
|
|
596
|
+
attr_accessor :enabled
|
|
597
|
+
|
|
598
|
+
# Desktop configuration for each OpenAI-hosted environment.
|
|
599
|
+
sig do
|
|
600
|
+
params(
|
|
601
|
+
|
|
602
|
+
enabled: T::Boolean
|
|
603
|
+
)
|
|
604
|
+
.returns(T.attached_class)
|
|
605
|
+
end
|
|
606
|
+
def self.new(
|
|
607
|
+
|
|
608
|
+
# Whether the environment provisions a desktop and browser proxy.
|
|
609
|
+
|
|
610
|
+
enabled:
|
|
611
|
+
)
|
|
612
|
+
end
|
|
613
|
+
|
|
614
|
+
sig do
|
|
615
|
+
override.returns(
|
|
616
|
+
{enabled: T::Boolean}
|
|
617
|
+
)
|
|
618
|
+
end
|
|
619
|
+
def to_hash
|
|
620
|
+
end
|
|
621
|
+
|
|
622
|
+
end
|
|
623
|
+
|
|
573
624
|
end
|
|
574
625
|
|
|
575
626
|
end
|
|
@@ -26,6 +26,16 @@ module OpenAI
|
|
|
26
26
|
sig { returns(T.nilable(T::Array[String])) }
|
|
27
27
|
attr_accessor :capability_directories
|
|
28
28
|
|
|
29
|
+
# Desktop provisioning. Omission or null inherits the template setting, or
|
|
30
|
+
# defaults to disabled.
|
|
31
|
+
sig { returns(T.nilable(OpenAI::Beta::Agents::Environments::TemplateCreateParams::Desktop)) }
|
|
32
|
+
attr_reader :desktop
|
|
33
|
+
|
|
34
|
+
sig {
|
|
35
|
+
params(desktop: T.nilable(OpenAI::Beta::Agents::Environments::TemplateCreateParams::Desktop::OrHash)).void
|
|
36
|
+
}
|
|
37
|
+
attr_writer :desktop
|
|
38
|
+
|
|
29
39
|
# Environment variables made available to the agent.
|
|
30
40
|
sig { returns(T.nilable(T::Hash[Symbol, String])) }
|
|
31
41
|
attr_accessor :env
|
|
@@ -95,6 +105,8 @@ module OpenAI
|
|
|
95
105
|
|
|
96
106
|
capability_directories: T.nilable(T::Array[String]),
|
|
97
107
|
|
|
108
|
+
desktop: T.nilable(OpenAI::Beta::Agents::Environments::TemplateCreateParams::Desktop::OrHash),
|
|
109
|
+
|
|
98
110
|
env: T.nilable(T::Hash[Symbol, String]),
|
|
99
111
|
|
|
100
112
|
files: T.nilable(
|
|
@@ -135,6 +147,10 @@ module OpenAI
|
|
|
135
147
|
# list.
|
|
136
148
|
capability_directories: nil,
|
|
137
149
|
|
|
150
|
+
# Desktop provisioning. Omission or null inherits the template setting, or
|
|
151
|
+
# defaults to disabled.
|
|
152
|
+
desktop: nil,
|
|
153
|
+
|
|
138
154
|
# Environment variables made available to the agent.
|
|
139
155
|
env: nil,
|
|
140
156
|
|
|
@@ -169,6 +185,7 @@ module OpenAI
|
|
|
169
185
|
override.returns(
|
|
170
186
|
{
|
|
171
187
|
capability_directories: T.nilable(T::Array[String]),
|
|
188
|
+
desktop: T.nilable(OpenAI::Beta::Agents::Environments::TemplateCreateParams::Desktop),
|
|
172
189
|
env: T.nilable(T::Hash[Symbol, String]),
|
|
173
190
|
files: T.nilable(
|
|
174
191
|
T::Array[
|
|
@@ -195,6 +212,45 @@ module OpenAI
|
|
|
195
212
|
def to_hash
|
|
196
213
|
end
|
|
197
214
|
|
|
215
|
+
class Desktop < OpenAI::Internal::Type::BaseModel
|
|
216
|
+
OrHash = T.type_alias do
|
|
217
|
+
T.any(
|
|
218
|
+
OpenAI::Beta::Agents::Environments::TemplateCreateParams::Desktop,
|
|
219
|
+
OpenAI::Internal::AnyHash
|
|
220
|
+
)
|
|
221
|
+
end
|
|
222
|
+
|
|
223
|
+
# Whether to provision the desktop and its browser proxy.
|
|
224
|
+
sig { returns(T::Boolean) }
|
|
225
|
+
attr_accessor :enabled
|
|
226
|
+
|
|
227
|
+
# Desktop provisioning. Omission or null inherits the template setting, or
|
|
228
|
+
# defaults to disabled.
|
|
229
|
+
sig do
|
|
230
|
+
params(
|
|
231
|
+
|
|
232
|
+
enabled: T::Boolean
|
|
233
|
+
)
|
|
234
|
+
.returns(T.attached_class)
|
|
235
|
+
end
|
|
236
|
+
def self.new(
|
|
237
|
+
|
|
238
|
+
# Whether to provision the desktop and its browser proxy.
|
|
239
|
+
|
|
240
|
+
enabled:
|
|
241
|
+
)
|
|
242
|
+
end
|
|
243
|
+
|
|
244
|
+
sig do
|
|
245
|
+
override.returns(
|
|
246
|
+
{enabled: T::Boolean}
|
|
247
|
+
)
|
|
248
|
+
end
|
|
249
|
+
def to_hash
|
|
250
|
+
end
|
|
251
|
+
|
|
252
|
+
end
|
|
253
|
+
|
|
198
254
|
class Network < OpenAI::Internal::Type::BaseModel
|
|
199
255
|
OrHash = T.type_alias do
|
|
200
256
|
T.any(
|
|
@@ -211,6 +267,12 @@ module OpenAI
|
|
|
211
267
|
sig { returns(T.nilable(T::Array[String])) }
|
|
212
268
|
attr_accessor :allowed_domains
|
|
213
269
|
|
|
270
|
+
# Domains blocked for both executor and browser when access is restricted. A
|
|
271
|
+
# nonempty list requires `access: restricted` and cannot be combined with nonempty
|
|
272
|
+
# `allowed_domains`. Wildcard domains are not supported.
|
|
273
|
+
sig { returns(T.nilable(T::Array[String])) }
|
|
274
|
+
attr_accessor :blocked_domains
|
|
275
|
+
|
|
214
276
|
# Network access policy for the environment. Defaults to disabled for GA requests
|
|
215
277
|
# and enabled for beta requests.
|
|
216
278
|
sig do
|
|
@@ -218,7 +280,9 @@ module OpenAI
|
|
|
218
280
|
|
|
219
281
|
access: OpenAI::Beta::Agents::Environments::TemplateCreateParams::Network::Access::OrSymbol,
|
|
220
282
|
|
|
221
|
-
allowed_domains: T.nilable(T::Array[String])
|
|
283
|
+
allowed_domains: T.nilable(T::Array[String]),
|
|
284
|
+
|
|
285
|
+
blocked_domains: T.nilable(T::Array[String])
|
|
222
286
|
)
|
|
223
287
|
.returns(T.attached_class)
|
|
224
288
|
end
|
|
@@ -228,8 +292,13 @@ module OpenAI
|
|
|
228
292
|
access:,
|
|
229
293
|
|
|
230
294
|
# Domains the environment may access when network access is restricted.
|
|
295
|
+
allowed_domains: nil,
|
|
296
|
+
|
|
297
|
+
# Domains blocked for both executor and browser when access is restricted. A
|
|
298
|
+
# nonempty list requires `access: restricted` and cannot be combined with nonempty
|
|
299
|
+
# `allowed_domains`. Wildcard domains are not supported.
|
|
231
300
|
|
|
232
|
-
|
|
301
|
+
blocked_domains: nil
|
|
233
302
|
)
|
|
234
303
|
end
|
|
235
304
|
|
|
@@ -237,7 +306,8 @@ module OpenAI
|
|
|
237
306
|
override.returns(
|
|
238
307
|
{
|
|
239
308
|
access: OpenAI::Beta::Agents::Environments::TemplateCreateParams::Network::Access::OrSymbol,
|
|
240
|
-
allowed_domains: T.nilable(T::Array[String])
|
|
309
|
+
allowed_domains: T.nilable(T::Array[String]),
|
|
310
|
+
blocked_domains: T.nilable(T::Array[String])
|
|
241
311
|
}
|
|
242
312
|
)
|
|
243
313
|
end
|
|
@@ -265,7 +335,7 @@ module OpenAI
|
|
|
265
335
|
OpenAI::Beta::Agents::Environments::TemplateCreateParams::Network::Access::TaggedSymbol
|
|
266
336
|
)
|
|
267
337
|
|
|
268
|
-
#
|
|
338
|
+
# Applies the configured domain restrictions.
|
|
269
339
|
RESTRICTED = T.let(
|
|
270
340
|
:restricted,
|
|
271
341
|
OpenAI::Beta::Agents::Environments::TemplateCreateParams::Network::Access::TaggedSymbol
|
|
@@ -28,6 +28,15 @@ module OpenAI
|
|
|
28
28
|
sig { returns(T.nilable(T::Array[String])) }
|
|
29
29
|
attr_accessor :capability_directories
|
|
30
30
|
|
|
31
|
+
# Replacement desktop configuration, or null to disable the desktop.
|
|
32
|
+
sig { returns(T.nilable(OpenAI::Beta::Agents::Environments::TemplateUpdateParams::Desktop)) }
|
|
33
|
+
attr_reader :desktop
|
|
34
|
+
|
|
35
|
+
sig {
|
|
36
|
+
params(desktop: T.nilable(OpenAI::Beta::Agents::Environments::TemplateUpdateParams::Desktop::OrHash)).void
|
|
37
|
+
}
|
|
38
|
+
attr_writer :desktop
|
|
39
|
+
|
|
31
40
|
# Replacement confidential environment values.
|
|
32
41
|
sig { returns(T.nilable(T::Hash[Symbol, String])) }
|
|
33
42
|
attr_accessor :env
|
|
@@ -99,6 +108,8 @@ module OpenAI
|
|
|
99
108
|
|
|
100
109
|
capability_directories: T.nilable(T::Array[String]),
|
|
101
110
|
|
|
111
|
+
desktop: T.nilable(OpenAI::Beta::Agents::Environments::TemplateUpdateParams::Desktop::OrHash),
|
|
112
|
+
|
|
102
113
|
env: T.nilable(T::Hash[Symbol, String]),
|
|
103
114
|
|
|
104
115
|
files: T.nilable(
|
|
@@ -140,6 +151,9 @@ module OpenAI
|
|
|
140
151
|
# Directories that expose capabilities to the agent.
|
|
141
152
|
capability_directories: nil,
|
|
142
153
|
|
|
154
|
+
# Replacement desktop configuration, or null to disable the desktop.
|
|
155
|
+
desktop: nil,
|
|
156
|
+
|
|
143
157
|
# Replacement confidential environment values.
|
|
144
158
|
env: nil,
|
|
145
159
|
|
|
@@ -175,6 +189,7 @@ module OpenAI
|
|
|
175
189
|
{
|
|
176
190
|
environment_template_id: String,
|
|
177
191
|
capability_directories: T.nilable(T::Array[String]),
|
|
192
|
+
desktop: T.nilable(OpenAI::Beta::Agents::Environments::TemplateUpdateParams::Desktop),
|
|
178
193
|
env: T.nilable(T::Hash[Symbol, String]),
|
|
179
194
|
files: T.nilable(
|
|
180
195
|
T::Array[
|
|
@@ -201,6 +216,44 @@ module OpenAI
|
|
|
201
216
|
def to_hash
|
|
202
217
|
end
|
|
203
218
|
|
|
219
|
+
class Desktop < OpenAI::Internal::Type::BaseModel
|
|
220
|
+
OrHash = T.type_alias do
|
|
221
|
+
T.any(
|
|
222
|
+
OpenAI::Beta::Agents::Environments::TemplateUpdateParams::Desktop,
|
|
223
|
+
OpenAI::Internal::AnyHash
|
|
224
|
+
)
|
|
225
|
+
end
|
|
226
|
+
|
|
227
|
+
# Whether to provision the desktop and its browser proxy.
|
|
228
|
+
sig { returns(T::Boolean) }
|
|
229
|
+
attr_accessor :enabled
|
|
230
|
+
|
|
231
|
+
# Replacement desktop configuration, or null to disable the desktop.
|
|
232
|
+
sig do
|
|
233
|
+
params(
|
|
234
|
+
|
|
235
|
+
enabled: T::Boolean
|
|
236
|
+
)
|
|
237
|
+
.returns(T.attached_class)
|
|
238
|
+
end
|
|
239
|
+
def self.new(
|
|
240
|
+
|
|
241
|
+
# Whether to provision the desktop and its browser proxy.
|
|
242
|
+
|
|
243
|
+
enabled:
|
|
244
|
+
)
|
|
245
|
+
end
|
|
246
|
+
|
|
247
|
+
sig do
|
|
248
|
+
override.returns(
|
|
249
|
+
{enabled: T::Boolean}
|
|
250
|
+
)
|
|
251
|
+
end
|
|
252
|
+
def to_hash
|
|
253
|
+
end
|
|
254
|
+
|
|
255
|
+
end
|
|
256
|
+
|
|
204
257
|
class Network < OpenAI::Internal::Type::BaseModel
|
|
205
258
|
OrHash = T.type_alias do
|
|
206
259
|
T.any(
|
|
@@ -217,6 +270,12 @@ module OpenAI
|
|
|
217
270
|
sig { returns(T.nilable(T::Array[String])) }
|
|
218
271
|
attr_accessor :allowed_domains
|
|
219
272
|
|
|
273
|
+
# Domains blocked for both executor and browser when access is restricted. A
|
|
274
|
+
# nonempty list requires `access: restricted` and cannot be combined with nonempty
|
|
275
|
+
# `allowed_domains`. Wildcard domains are not supported.
|
|
276
|
+
sig { returns(T.nilable(T::Array[String])) }
|
|
277
|
+
attr_accessor :blocked_domains
|
|
278
|
+
|
|
220
279
|
# Network access available after setup completes. Omit to preserve the current
|
|
221
280
|
# policy, or pass `null` to reset to disabled for GA requests or enabled for beta
|
|
222
281
|
# requests.
|
|
@@ -225,7 +284,9 @@ module OpenAI
|
|
|
225
284
|
|
|
226
285
|
access: OpenAI::Beta::Agents::Environments::TemplateUpdateParams::Network::Access::OrSymbol,
|
|
227
286
|
|
|
228
|
-
allowed_domains: T.nilable(T::Array[String])
|
|
287
|
+
allowed_domains: T.nilable(T::Array[String]),
|
|
288
|
+
|
|
289
|
+
blocked_domains: T.nilable(T::Array[String])
|
|
229
290
|
)
|
|
230
291
|
.returns(T.attached_class)
|
|
231
292
|
end
|
|
@@ -235,8 +296,13 @@ module OpenAI
|
|
|
235
296
|
access:,
|
|
236
297
|
|
|
237
298
|
# Domains the environment may access when network access is restricted.
|
|
299
|
+
allowed_domains: nil,
|
|
300
|
+
|
|
301
|
+
# Domains blocked for both executor and browser when access is restricted. A
|
|
302
|
+
# nonempty list requires `access: restricted` and cannot be combined with nonempty
|
|
303
|
+
# `allowed_domains`. Wildcard domains are not supported.
|
|
238
304
|
|
|
239
|
-
|
|
305
|
+
blocked_domains: nil
|
|
240
306
|
)
|
|
241
307
|
end
|
|
242
308
|
|
|
@@ -244,7 +310,8 @@ module OpenAI
|
|
|
244
310
|
override.returns(
|
|
245
311
|
{
|
|
246
312
|
access: OpenAI::Beta::Agents::Environments::TemplateUpdateParams::Network::Access::OrSymbol,
|
|
247
|
-
allowed_domains: T.nilable(T::Array[String])
|
|
313
|
+
allowed_domains: T.nilable(T::Array[String]),
|
|
314
|
+
blocked_domains: T.nilable(T::Array[String])
|
|
248
315
|
}
|
|
249
316
|
)
|
|
250
317
|
end
|
|
@@ -272,7 +339,7 @@ module OpenAI
|
|
|
272
339
|
OpenAI::Beta::Agents::Environments::TemplateUpdateParams::Network::Access::TaggedSymbol
|
|
273
340
|
)
|
|
274
341
|
|
|
275
|
-
#
|
|
342
|
+
# Applies the configured domain restrictions.
|
|
276
343
|
RESTRICTED = T.let(
|
|
277
344
|
:restricted,
|
|
278
345
|
OpenAI::Beta::Agents::Environments::TemplateUpdateParams::Network::Access::TaggedSymbol
|
|
@@ -192,7 +192,8 @@ module OpenAI
|
|
|
192
192
|
OpenAI::Beta::AgentToolParam::ToolSearch,
|
|
193
193
|
OpenAI::Beta::AgentToolParam::ProgrammaticToolCalling,
|
|
194
194
|
OpenAI::Beta::AgentToolParam::Mcp,
|
|
195
|
-
OpenAI::Beta::AgentToolParam::WebSearch
|
|
195
|
+
OpenAI::Beta::AgentToolParam::WebSearch,
|
|
196
|
+
OpenAI::Beta::AgentToolParam::ComputerUse
|
|
196
197
|
)
|
|
197
198
|
]
|
|
198
199
|
)
|
|
@@ -224,7 +225,8 @@ module OpenAI
|
|
|
224
225
|
OpenAI::Beta::AgentToolParam::ToolSearch::OrHash,
|
|
225
226
|
OpenAI::Beta::AgentToolParam::ProgrammaticToolCalling::OrHash,
|
|
226
227
|
OpenAI::Beta::AgentToolParam::Mcp::OrHash,
|
|
227
|
-
OpenAI::Beta::AgentToolParam::WebSearch::OrHash
|
|
228
|
+
OpenAI::Beta::AgentToolParam::WebSearch::OrHash,
|
|
229
|
+
OpenAI::Beta::AgentToolParam::ComputerUse::OrHash
|
|
228
230
|
)
|
|
229
231
|
]
|
|
230
232
|
)
|
|
@@ -275,7 +277,8 @@ module OpenAI
|
|
|
275
277
|
OpenAI::Beta::AgentToolParam::ToolSearch,
|
|
276
278
|
OpenAI::Beta::AgentToolParam::ProgrammaticToolCalling,
|
|
277
279
|
OpenAI::Beta::AgentToolParam::Mcp,
|
|
278
|
-
OpenAI::Beta::AgentToolParam::WebSearch
|
|
280
|
+
OpenAI::Beta::AgentToolParam::WebSearch,
|
|
281
|
+
OpenAI::Beta::AgentToolParam::ComputerUse
|
|
279
282
|
)
|
|
280
283
|
]
|
|
281
284
|
)
|
|
@@ -29,6 +29,7 @@ module OpenAI
|
|
|
29
29
|
returns(
|
|
30
30
|
T::Array[
|
|
31
31
|
T.any(
|
|
32
|
+
OpenAI::Beta::AgentSessionInputParam::AgentSessionInputComputerUseApprovalRequestResult,
|
|
32
33
|
OpenAI::Beta::AgentSessionInputParam::AgentSessionInputMessage,
|
|
33
34
|
OpenAI::Beta::AgentSessionInputParam::AgentSessionInputCancel,
|
|
34
35
|
OpenAI::Beta::AgentSessionInputParam::AgentSessionInputToolResult
|
|
@@ -51,6 +52,7 @@ module OpenAI
|
|
|
51
52
|
|
|
52
53
|
events: T::Array[
|
|
53
54
|
T.any(
|
|
55
|
+
OpenAI::Beta::AgentSessionInputParam::AgentSessionInputComputerUseApprovalRequestResult::OrHash,
|
|
54
56
|
OpenAI::Beta::AgentSessionInputParam::AgentSessionInputMessage::OrHash,
|
|
55
57
|
OpenAI::Beta::AgentSessionInputParam::AgentSessionInputCancel::OrHash,
|
|
56
58
|
OpenAI::Beta::AgentSessionInputParam::AgentSessionInputToolResult::OrHash
|
|
@@ -82,6 +84,7 @@ module OpenAI
|
|
|
82
84
|
session_id: String,
|
|
83
85
|
events: T::Array[
|
|
84
86
|
T.any(
|
|
87
|
+
OpenAI::Beta::AgentSessionInputParam::AgentSessionInputComputerUseApprovalRequestResult,
|
|
85
88
|
OpenAI::Beta::AgentSessionInputParam::AgentSessionInputMessage,
|
|
86
89
|
OpenAI::Beta::AgentSessionInputParam::AgentSessionInputCancel,
|
|
87
90
|
OpenAI::Beta::AgentSessionInputParam::AgentSessionInputToolResult
|
|
@@ -102,6 +102,13 @@ module OpenAI
|
|
|
102
102
|
sig { returns(Symbol) }
|
|
103
103
|
attr_accessor :type
|
|
104
104
|
|
|
105
|
+
# The effective desktop configuration.
|
|
106
|
+
sig { returns(T.nilable(OpenAI::Beta::Environment::OpenAIHosted::Desktop)) }
|
|
107
|
+
attr_reader :desktop
|
|
108
|
+
|
|
109
|
+
sig { params(desktop: OpenAI::Beta::Environment::OpenAIHosted::Desktop::OrHash).void }
|
|
110
|
+
attr_writer :desktop
|
|
111
|
+
|
|
105
112
|
# An environment hosted by OpenAI.
|
|
106
113
|
sig do
|
|
107
114
|
params(
|
|
@@ -127,6 +134,8 @@ module OpenAI
|
|
|
127
134
|
T.any(OpenAI::Beta::HostedSkillReference::OrHash, OpenAI::Beta::HostedSkill::Inline::OrHash)
|
|
128
135
|
],
|
|
129
136
|
|
|
137
|
+
desktop: OpenAI::Beta::Environment::OpenAIHosted::Desktop::OrHash,
|
|
138
|
+
|
|
130
139
|
type: Symbol
|
|
131
140
|
)
|
|
132
141
|
.returns(T.attached_class)
|
|
@@ -154,6 +163,9 @@ module OpenAI
|
|
|
154
163
|
# Skills installed in the environment, excluding their archive contents.
|
|
155
164
|
skills:,
|
|
156
165
|
|
|
166
|
+
# The effective desktop configuration.
|
|
167
|
+
desktop: nil,
|
|
168
|
+
|
|
157
169
|
# The type of the object. Always `openai_hosted`.
|
|
158
170
|
|
|
159
171
|
type: :openai_hosted
|
|
@@ -170,7 +182,8 @@ module OpenAI
|
|
|
170
182
|
packages: OpenAI::Beta::Environment::OpenAIHosted::Packages,
|
|
171
183
|
plugins: T::Array[OpenAI::Beta::HostedPlugin],
|
|
172
184
|
skills: T::Array[OpenAI::Beta::HostedSkill::Variants],
|
|
173
|
-
type: Symbol
|
|
185
|
+
type: Symbol,
|
|
186
|
+
desktop: OpenAI::Beta::Environment::OpenAIHosted::Desktop
|
|
174
187
|
}
|
|
175
188
|
)
|
|
176
189
|
end
|
|
@@ -238,7 +251,7 @@ module OpenAI
|
|
|
238
251
|
# Disables network access.
|
|
239
252
|
DISABLED = T.let(:disabled, OpenAI::Beta::Environment::OpenAIHosted::Network::Access::TaggedSymbol)
|
|
240
253
|
|
|
241
|
-
#
|
|
254
|
+
# Applies the configured domain restrictions.
|
|
242
255
|
RESTRICTED = T.let(:restricted, OpenAI::Beta::Environment::OpenAIHosted::Network::Access::TaggedSymbol)
|
|
243
256
|
|
|
244
257
|
sig {
|
|
@@ -304,6 +317,44 @@ module OpenAI
|
|
|
304
317
|
end
|
|
305
318
|
|
|
306
319
|
end
|
|
320
|
+
|
|
321
|
+
class Desktop < OpenAI::Internal::Type::BaseModel
|
|
322
|
+
OrHash = T.type_alias do
|
|
323
|
+
T.any(
|
|
324
|
+
OpenAI::Beta::Environment::OpenAIHosted::Desktop,
|
|
325
|
+
OpenAI::Internal::AnyHash
|
|
326
|
+
)
|
|
327
|
+
end
|
|
328
|
+
|
|
329
|
+
# Whether the environment provisions a desktop and browser proxy.
|
|
330
|
+
sig { returns(T::Boolean) }
|
|
331
|
+
attr_accessor :enabled
|
|
332
|
+
|
|
333
|
+
# The effective desktop configuration.
|
|
334
|
+
sig do
|
|
335
|
+
params(
|
|
336
|
+
|
|
337
|
+
enabled: T::Boolean
|
|
338
|
+
)
|
|
339
|
+
.returns(T.attached_class)
|
|
340
|
+
end
|
|
341
|
+
def self.new(
|
|
342
|
+
|
|
343
|
+
# Whether the environment provisions a desktop and browser proxy.
|
|
344
|
+
|
|
345
|
+
enabled:
|
|
346
|
+
)
|
|
347
|
+
end
|
|
348
|
+
|
|
349
|
+
sig do
|
|
350
|
+
override.returns(
|
|
351
|
+
{enabled: T::Boolean}
|
|
352
|
+
)
|
|
353
|
+
end
|
|
354
|
+
def to_hash
|
|
355
|
+
end
|
|
356
|
+
|
|
357
|
+
end
|
|
307
358
|
end
|
|
308
359
|
|
|
309
360
|
class SelfHosted < OpenAI::Internal::Type::BaseModel
|