Skip to content
Open
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
Original file line number Diff line number Diff line change
Expand Up @@ -17434,6 +17434,24 @@
}
}
},
"AgentEndpointProtocol": {
"anyOf": [
{
"type": "string"
},
{
"type": "string",
"enum": [
"activity",
"responses",
"a2a",
"mcp",
"invocations",
"invocations_ws"
]
}
]
},
"AgentEvaluatorGenerationJobSource": {
"type": "object",
"required": [
Expand Down Expand Up @@ -54487,20 +54505,27 @@
"description": "An abstract representation of a tool stored in a toolbox."
},
"ToolboxToolType": {
"type": "string",
"enum": [
"code_interpreter",
"file_search",
"web_search",
"mcp",
"azure_ai_search",
"openapi",
"a2a_preview",
"browser_automation_preview",
"reminder_preview",
"work_iq_preview",
"fabric_iq_preview",
"toolbox_search_preview"
"anyOf": [
{
"type": "string"
},
{
"type": "string",
"enum": [
"code_interpreter",
"file_search",
"web_search",
"mcp",
"azure_ai_search",
"openapi",
"a2a_preview",
"browser_automation_preview",
"reminder_preview",
"work_iq_preview",
"fabric_iq_preview",
"toolbox_search_preview"
]
}
],
"description": "Supported tool types for tools stored in a toolbox."
},
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -11476,6 +11476,17 @@ components:
items:
$ref: '#/components/schemas/AgentEndpointAuthorizationScheme'
description: The authorization schemes supported by the agent endpoint
AgentEndpointProtocol:
anyOf:
- type: string
- type: string
enum:
- activity
- responses
- a2a
- mcp
- invocations
- invocations_ws
AgentEvaluatorGenerationJobSource:
type: object
required:
Expand Down Expand Up @@ -37305,20 +37316,22 @@ components:
toolbox_search_preview: '#/components/schemas/ToolboxSearchPreviewToolboxTool'
description: An abstract representation of a tool stored in a toolbox.
ToolboxToolType:
type: string
enum:
- code_interpreter
- file_search
- web_search
- mcp
- azure_ai_search
- openapi
- a2a_preview
- browser_automation_preview
- reminder_preview
- work_iq_preview
- fabric_iq_preview
- toolbox_search_preview
anyOf:
- type: string
- type: string
enum:
- code_interpreter
- file_search
- web_search
- mcp
- azure_ai_search
- openapi
- a2a_preview
- browser_automation_preview
- reminder_preview
- work_iq_preview
- fabric_iq_preview
- toolbox_search_preview
description: Supported tool types for tools stored in a toolbox.
ToolboxVersionObject:
type: object
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -59304,20 +59304,27 @@
"description": "An abstract representation of a tool stored in a toolbox."
},
"ToolboxToolType": {
"type": "string",
"enum": [
"code_interpreter",
"file_search",
"web_search",
"mcp",
"azure_ai_search",
"openapi",
"a2a_preview",
"browser_automation_preview",
"reminder_preview",
"work_iq_preview",
"fabric_iq_preview",
"toolbox_search_preview"
"anyOf": [
{
"type": "string"
},
{
"type": "string",
"enum": [
"code_interpreter",
"file_search",
"web_search",
"mcp",
"azure_ai_search",
"openapi",
"a2a_preview",
"browser_automation_preview",
"reminder_preview",
"work_iq_preview",
"fabric_iq_preview",
"toolbox_search_preview"
]
}
],
"description": "Supported tool types for tools stored in a toolbox."
},
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -40554,20 +40554,22 @@ components:
toolbox_search_preview: '#/components/schemas/ToolboxSearchPreviewToolboxTool'
description: An abstract representation of a tool stored in a toolbox.
ToolboxToolType:
type: string
enum:
- code_interpreter
- file_search
- web_search
- mcp
- azure_ai_search
- openapi
- a2a_preview
- browser_automation_preview
- reminder_preview
- work_iq_preview
- fabric_iq_preview
- toolbox_search_preview
anyOf:
- type: string
- type: string
enum:
- code_interpreter
- file_search
- web_search
- mcp
- azure_ai_search
- openapi
- a2a_preview
- browser_automation_preview
- reminder_preview
- work_iq_preview
- fabric_iq_preview
- toolbox_search_preview
description: Supported tool types for tools stored in a toolbox.
ToolboxVersionObject:
type: object
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -67,35 +67,23 @@ alias ToolFields<Source> = {
...OmitProperties<Source, "name" | "description" | "type">;
};

alias ToolboxCodeInterpreterToolType = "code_interpreter";
alias ToolboxFileSearchToolType = "file_search";
alias ToolboxWebSearchToolType = "web_search";
alias ToolboxMCPToolType = "mcp";
alias ToolboxAzureAISearchToolType = "azure_ai_search";
alias ToolboxOpenApiToolType = "openapi";
alias ToolboxA2APreviewToolType = "a2a_preview";
alias ToolboxBrowserAutomationPreviewToolType = "browser_automation_preview";
alias ToolboxReminderPreviewToolType = "reminder_preview";
alias ToolboxWorkIQPreviewToolType = "work_iq_preview";
alias ToolboxFabricIQPreviewToolType = "fabric_iq_preview";
alias ToolboxSearchPreviewToolType = "toolbox_search_preview";

/**
* Supported tool types for tools stored in a toolbox.
*/
union ToolboxToolType {
code_interpreter: ToolboxCodeInterpreterToolType,
file_search: ToolboxFileSearchToolType,
web_search: ToolboxWebSearchToolType,
mcp: ToolboxMCPToolType,
azure_ai_search: ToolboxAzureAISearchToolType,
openapi: ToolboxOpenApiToolType,
a2a_preview: ToolboxA2APreviewToolType,
browser_automation_preview: ToolboxBrowserAutomationPreviewToolType,
reminder_preview: ToolboxReminderPreviewToolType,
work_iq_preview: ToolboxWorkIQPreviewToolType,
fabric_iq_preview: ToolboxFabricIQPreviewToolType,
toolbox_search_preview: ToolboxSearchPreviewToolType,
string,
code_interpreter: "code_interpreter",

Copy link
Copy Markdown
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Can't we re-use the string value defined for tool type?

Copy link
Copy Markdown
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Use ToolType.code_interpreter instead of "code_interpreter"?

Copy link
Copy Markdown
Member Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

that does not really work as ToolType.code_interpreter is not technically a string but rather a UnionVariant

file_search: "file_search",
web_search: "web_search",
mcp: "mcp",
azure_ai_search: "azure_ai_search",
openapi: "openapi",
a2a_preview: "a2a_preview",
browser_automation_preview: "browser_automation_preview",
reminder_preview: "reminder_preview",
work_iq_preview: "work_iq_preview",
fabric_iq_preview: "fabric_iq_preview",
toolbox_search_preview: "toolbox_search_preview",
}

/**
Expand All @@ -116,99 +104,86 @@ model ToolboxTool {
* A code interpreter tool stored in a toolbox.
*/
model CodeInterpreterToolboxTool extends ToolboxTool {
type: ToolboxCodeInterpreterToolType;

type: ToolboxToolType.code_interpreter;
...ToolFields<OpenAI.CodeInterpreterTool>;
}

/**
* A file search tool stored in a toolbox.
*/
model FileSearchToolboxTool extends ToolboxTool {
type: ToolboxFileSearchToolType;

...WithFieldsOptional<
ToolFields<OpenAI.FileSearchTool>,
"vector_store_ids"
>;
type: ToolboxToolType.file_search;
...WithFieldsOptional<ToolFields<OpenAI.FileSearchTool>, "vector_store_ids">;
}

/**
* A web search tool stored in a toolbox.
*/
model WebSearchToolboxTool extends ToolboxTool {
type: ToolboxWebSearchToolType;

type: ToolboxToolType.web_search;
...ToolFields<OpenAI.WebSearchTool>;
}

/**
* An MCP tool stored in a toolbox.
*/
model MCPToolboxTool extends ToolboxTool {
type: ToolboxMCPToolType;

type: ToolboxToolType.mcp;
...ToolFields<OpenAI.MCPTool>;
}

/**
* An Azure AI Search tool stored in a toolbox.
*/
model AzureAISearchToolboxTool extends ToolboxTool {
type: ToolboxAzureAISearchToolType;

type: ToolboxToolType.azure_ai_search;
...ToolFields<AzureAISearchTool>;
}

/**
* An OpenAPI tool stored in a toolbox.
*/
model OpenApiToolboxTool extends ToolboxTool {
type: ToolboxOpenApiToolType;

type: ToolboxToolType.openapi;
...ToolFields<OpenApiTool>;
}

/**
* An A2A tool stored in a toolbox.
*/
model A2APreviewToolboxTool extends ToolboxTool {
type: ToolboxA2APreviewToolType;

type: ToolboxToolType.a2a_preview;
...ToolFields<A2APreviewTool>;
}

/**
* A browser automation tool stored in a toolbox.
*/
model BrowserAutomationPreviewToolboxTool extends ToolboxTool {
type: ToolboxBrowserAutomationPreviewToolType;

type: ToolboxToolType.browser_automation_preview;
...ToolFields<BrowserAutomationPreviewTool>;
}

/**
* A reminder tool stored in a toolbox.
*/
model ReminderPreviewToolboxTool extends ToolboxTool {
type: ToolboxReminderPreviewToolType;
type: ToolboxToolType.reminder_preview;
}

/**
* A WorkIQ tool stored in a toolbox.
*/
model WorkIQPreviewToolboxTool extends ToolboxTool {
type: ToolboxWorkIQPreviewToolType;

type: ToolboxToolType.work_iq_preview;
...ToolFields<WorkIQPreviewTool>;
}

/**
* A FabricIQ tool stored in a toolbox.
*/
model FabricIQPreviewToolboxTool extends ToolboxTool {
type: ToolboxFabricIQPreviewToolType;

type: ToolboxToolType.fabric_iq_preview;
...ToolFields<FabricIQPreviewTool>;
}

Expand All @@ -219,7 +194,7 @@ model ToolboxSearchPreviewToolboxTool extends ToolboxTool {
/**
* The type of the tool. Always `toolbox_search_preview`.
*/
type: ToolboxSearchPreviewToolType;
type: ToolboxToolType.toolbox_search_preview;
}
@doc("Policy configuration for a toolbox, including content safety and other governance settings.")
model ToolboxPolicies {
Expand Down
Loading