import * as z from "zod/v4"; import { SubagentNestedTool, SubagentNestedTool$Outbound } from "./subagentnestedtool.js"; import { SubagentReasoning, SubagentReasoning$Outbound } from "./subagentreasoning.js"; /** * Configuration for one openrouter:subagent server tool entry. */ export type SubagentServerToolConfig = { /** * EXPERIMENTAL — subject to change without notice. When true, the subagent inherits every client function defined in the request's top-level `tools` list. Supported on the Responses API (`/api/v1/responses`) only; other APIs reject it with a `400`. */ inheritFunctions?: boolean | undefined; /** * EXPERIMENTAL — subject to change without notice. Names of the top-level function tools that the subagent will inherit. Any tool that matches by name will be copied fully into the tools array of the subagent. When `inherit_functions` is `true`, this list does nothing, because every client function will be inherited by default. Names are trimmed before validation, so a whitespace-only name is rejected with a `400`. Supported on the Responses API (`/api/v1/responses`) only; other APIs reject it with a `400`. */ inheritedFunctionNames?: Array | undefined; /** * System instructions for the subagent. When omitted, the subagent responds with no system prompt of its own. */ instructions?: string | undefined; /** * Maximum number of output tokens (including reasoning) the subagent may produce. When omitted, the provider's default applies. */ maxCompletionTokens?: number | undefined; /** * Maximum number of tool-calling steps the subagent may take during its agentic loop. Capped at 25. Only relevant when the subagent is given tools. Forwarded to the subagent call as `max_tool_calls`. */ maxToolCalls?: number | undefined; /** * Slug of the model that executes delegated tasks (any OpenRouter model). Typically a smaller, cheaper, faster model than the one delegating. When omitted, the model from the outer API request is used. The subagent tool itself cannot be the subagent model. */ model?: string | undefined; /** * Optional name for this subagent. The model sees one tool per named subagent (and one default for an unnamed entry). Names must be unique across subagent entries. Letters, digits, spaces, underscores, and dashes; trimmed; 1–64 chars. */ name?: string | undefined; /** * Reasoning configuration forwarded to the subagent call. Use this to control reasoning effort and token budget for models that support extended thinking. */ reasoning?: SubagentReasoning | undefined; /** * Sampling temperature forwarded to the subagent call. When omitted, the provider's default applies. */ temperature?: number | undefined; /** * Tools the subagent may use while executing a delegated task. The subagent runs as an agentic sub-agent over these tools, then returns its outcome. Only OpenRouter server tools are supported — function tools are rejected — and the list must not include the subagent tool itself. */ tools?: Array | undefined; }; /** @internal */ export type SubagentServerToolConfig$Outbound = { inherit_functions?: boolean | undefined; inherited_function_names?: Array | undefined; instructions?: string | undefined; max_completion_tokens?: number | undefined; max_tool_calls?: number | undefined; model?: string | undefined; name?: string | undefined; reasoning?: SubagentReasoning$Outbound | undefined; temperature?: number | undefined; tools?: Array | undefined; }; /** @internal */ export declare const SubagentServerToolConfig$outboundSchema: z.ZodType; export declare function subagentServerToolConfigToJSON(subagentServerToolConfig: SubagentServerToolConfig): string; //# sourceMappingURL=subagentservertoolconfig.d.ts.map