@keystrokehq/keystroke 0.1.24 → 0.1.25
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.
- package/dist/agent.cjs +47 -8
- package/dist/agent.cjs.map +1 -1
- package/dist/agent.d.cts +1 -1
- package/dist/agent.d.mts +1 -1
- package/dist/agent.mjs +47 -8
- package/dist/agent.mjs.map +1 -1
- package/dist/{dist-8lWsO4r8.cjs → dist-C8V-TQaa.cjs} +7 -4
- package/dist/{dist-8lWsO4r8.cjs.map → dist-C8V-TQaa.cjs.map} +1 -1
- package/dist/{dist-CkW_0ydn.mjs → dist-DXQ9dYvL.mjs} +7 -4
- package/dist/{dist-CkW_0ydn.mjs.map → dist-DXQ9dYvL.mjs.map} +1 -1
- package/dist/{index-D4OqVz9B.d.mts → index-BboH3db0.d.mts} +15 -4
- package/dist/index-BboH3db0.d.mts.map +1 -0
- package/dist/{index-DAbG7A9m.d.cts → index-DHCs9z3O.d.cts} +15 -4
- package/dist/index-DHCs9z3O.d.cts.map +1 -0
- package/dist/{index-CYrYmgtQ.d.cts → index-RQo-Cn3t.d.cts} +15 -2
- package/dist/index-RQo-Cn3t.d.cts.map +1 -0
- package/dist/{index-DPKSoH6A.d.mts → index-aos8ZlFk.d.mts} +15 -2
- package/dist/index-aos8ZlFk.d.mts.map +1 -0
- package/dist/{token-aMT15EKk.cjs → token-BgVDRLkZ.cjs} +2 -2
- package/dist/{token-aMT15EKk.cjs.map → token-BgVDRLkZ.cjs.map} +1 -1
- package/dist/{token-Basg5yOB.mjs → token-C_E59byl.mjs} +2 -2
- package/dist/{token-Basg5yOB.mjs.map → token-C_E59byl.mjs.map} +1 -1
- package/dist/trigger.cjs +1 -1
- package/dist/trigger.d.cts +2 -2
- package/dist/trigger.d.mts +2 -2
- package/dist/trigger.mjs +1 -1
- package/dist/workflow.cjs +1 -1
- package/dist/workflow.d.cts +2 -2
- package/dist/workflow.d.mts +2 -2
- package/dist/workflow.mjs +1 -1
- package/package.json +2 -2
- package/dist/index-CYrYmgtQ.d.cts.map +0 -1
- package/dist/index-D4OqVz9B.d.mts.map +0 -1
- package/dist/index-DAbG7A9m.d.cts.map +0 -1
- package/dist/index-DPKSoH6A.d.mts.map +0 -1
package/dist/agent.d.cts
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
import { A as defineTool, M as modelSupportsMediaType, v as ModelCapabilities } from "./index-DHLs5qPc.cjs";
|
|
2
2
|
import { n as AgentStreamEvent, r as ThinkingLevel, t as AgentMessage } from "./types-ZU829C7A.cjs";
|
|
3
|
-
import { A as resolveAgentWorkspaceRoot, B as ThinkingLevelSchema, C as defineAgent, D as resolveAgentAssets, E as prepareAgentSession, F as AgentCreateInput, H as resolveAgentModel, I as AgentCreateInputSchema, L as AgentModelId, M as runLlm, N as streamAgentPrompt, O as resolveAgentId, P as validateAgentModelIds, R as AgentModelIdSchema, S as buildAgentRuntime, T as normalizeAgentDefinition, U as resolveModelCapabilities, V as parseAgentCreateInput, W as resolveThinkingLevel, _ as SessionLifecycleContext, a as AgentDefinitionInput, b as WebToolsOptions, c as AgentToolInput, d as PromptResponse, f as ResolvedAgentAssets, g as SessionLifecycle, h as SessionAgentMismatchError, i as AgentDefinition, j as runAgentPrompt, k as resolveAgentTools, l as BuildAgentRuntimeContext, m as SandboxedAgentRuntime, n as Agent, o as AgentExperimentalDownload, p as RunAgentPromptOptions, r as AgentAssetInput, s as AgentRunConfig, t as AGENT, u as PromptInput, v as StreamAgentPromptOptions, w as isAgent, x as agentModelIdsFromStoredManifest, y as StreamAgentPromptResult, z as DEFAULT_THINKING_LEVEL } from "./index-
|
|
3
|
+
import { A as resolveAgentWorkspaceRoot, B as ThinkingLevelSchema, C as defineAgent, D as resolveAgentAssets, E as prepareAgentSession, F as AgentCreateInput, H as resolveAgentModel, I as AgentCreateInputSchema, L as AgentModelId, M as runLlm, N as streamAgentPrompt, O as resolveAgentId, P as validateAgentModelIds, R as AgentModelIdSchema, S as buildAgentRuntime, T as normalizeAgentDefinition, U as resolveModelCapabilities, V as parseAgentCreateInput, W as resolveThinkingLevel, _ as SessionLifecycleContext, a as AgentDefinitionInput, b as WebToolsOptions, c as AgentToolInput, d as PromptResponse, f as ResolvedAgentAssets, g as SessionLifecycle, h as SessionAgentMismatchError, i as AgentDefinition, j as runAgentPrompt, k as resolveAgentTools, l as BuildAgentRuntimeContext, m as SandboxedAgentRuntime, n as Agent, o as AgentExperimentalDownload, p as RunAgentPromptOptions, r as AgentAssetInput, s as AgentRunConfig, t as AGENT, u as PromptInput, v as StreamAgentPromptOptions, w as isAgent, x as agentModelIdsFromStoredManifest, y as StreamAgentPromptResult, z as DEFAULT_THINKING_LEVEL } from "./index-RQo-Cn3t.cjs";
|
|
4
4
|
import { a as McpDefinitionInput, c as McpStdioOptions, d as McpTransport, f as connectMcpDefinition, g as isMcp, h as defineMcp, i as McpDefinition, l as McpStdioTransport, m as connectMcpStdio, n as McpAuthOptions, o as McpHttpTransport, p as connectMcpServer, r as McpClient, s as McpServerOptions, t as ToolCredentialResolver, u as McpToolConnection } from "./index-JFo1zRHh.cjs";
|
|
5
5
|
import { R as loadAssetManifest } from "./index-BSerz4I0.cjs";
|
|
6
6
|
export { AGENT, type Agent, type AgentAssetInput, type AgentCreateInput, AgentCreateInputSchema, type AgentDefinition, type AgentDefinitionInput, type AgentExperimentalDownload, type AgentMessage, type AgentModelId, AgentModelIdSchema, type AgentRunConfig, type AgentStreamEvent, type AgentToolInput, type BuildAgentRuntimeContext, DEFAULT_THINKING_LEVEL, type McpAuthOptions, type McpClient, type McpDefinition, type McpDefinitionInput, type McpHttpTransport, type McpServerOptions, type McpStdioOptions, type McpStdioTransport, type McpToolConnection, type McpTransport, type ModelCapabilities, type PromptInput, type PromptResponse, type ResolvedAgentAssets, type RunAgentPromptOptions, type SandboxedAgentRuntime, SessionAgentMismatchError, type SessionLifecycle, type SessionLifecycleContext, type StreamAgentPromptOptions, type StreamAgentPromptResult, type ThinkingLevel, ThinkingLevelSchema, type ToolCredentialResolver, type WebToolsOptions, agentModelIdsFromStoredManifest, buildAgentRuntime, connectMcpDefinition, connectMcpServer, connectMcpStdio, defineAgent, defineMcp, defineTool, isAgent, isMcp, loadAssetManifest, modelSupportsMediaType, normalizeAgentDefinition, parseAgentCreateInput, prepareAgentSession, resolveAgentAssets, resolveAgentId, resolveAgentModel, resolveAgentTools, resolveAgentWorkspaceRoot, resolveModelCapabilities, resolveThinkingLevel, runAgentPrompt, runLlm, streamAgentPrompt, validateAgentModelIds };
|
package/dist/agent.d.mts
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
import { A as defineTool, M as modelSupportsMediaType, v as ModelCapabilities } from "./index-DHLs5qPc.mjs";
|
|
2
2
|
import { n as AgentStreamEvent, r as ThinkingLevel, t as AgentMessage } from "./types-DpYxSJ5x.mjs";
|
|
3
|
-
import { A as resolveAgentWorkspaceRoot, B as ThinkingLevelSchema, C as defineAgent, D as resolveAgentAssets, E as prepareAgentSession, F as AgentCreateInput, H as resolveAgentModel, I as AgentCreateInputSchema, L as AgentModelId, M as runLlm, N as streamAgentPrompt, O as resolveAgentId, P as validateAgentModelIds, R as AgentModelIdSchema, S as buildAgentRuntime, T as normalizeAgentDefinition, U as resolveModelCapabilities, V as parseAgentCreateInput, W as resolveThinkingLevel, _ as SessionLifecycleContext, a as AgentDefinitionInput, b as WebToolsOptions, c as AgentToolInput, d as PromptResponse, f as ResolvedAgentAssets, g as SessionLifecycle, h as SessionAgentMismatchError, i as AgentDefinition, j as runAgentPrompt, k as resolveAgentTools, l as BuildAgentRuntimeContext, m as SandboxedAgentRuntime, n as Agent, o as AgentExperimentalDownload, p as RunAgentPromptOptions, r as AgentAssetInput, s as AgentRunConfig, t as AGENT, u as PromptInput, v as StreamAgentPromptOptions, w as isAgent, x as agentModelIdsFromStoredManifest, y as StreamAgentPromptResult, z as DEFAULT_THINKING_LEVEL } from "./index-
|
|
3
|
+
import { A as resolveAgentWorkspaceRoot, B as ThinkingLevelSchema, C as defineAgent, D as resolveAgentAssets, E as prepareAgentSession, F as AgentCreateInput, H as resolveAgentModel, I as AgentCreateInputSchema, L as AgentModelId, M as runLlm, N as streamAgentPrompt, O as resolveAgentId, P as validateAgentModelIds, R as AgentModelIdSchema, S as buildAgentRuntime, T as normalizeAgentDefinition, U as resolveModelCapabilities, V as parseAgentCreateInput, W as resolveThinkingLevel, _ as SessionLifecycleContext, a as AgentDefinitionInput, b as WebToolsOptions, c as AgentToolInput, d as PromptResponse, f as ResolvedAgentAssets, g as SessionLifecycle, h as SessionAgentMismatchError, i as AgentDefinition, j as runAgentPrompt, k as resolveAgentTools, l as BuildAgentRuntimeContext, m as SandboxedAgentRuntime, n as Agent, o as AgentExperimentalDownload, p as RunAgentPromptOptions, r as AgentAssetInput, s as AgentRunConfig, t as AGENT, u as PromptInput, v as StreamAgentPromptOptions, w as isAgent, x as agentModelIdsFromStoredManifest, y as StreamAgentPromptResult, z as DEFAULT_THINKING_LEVEL } from "./index-aos8ZlFk.mjs";
|
|
4
4
|
import { a as McpDefinitionInput, c as McpStdioOptions, d as McpTransport, f as connectMcpDefinition, g as isMcp, h as defineMcp, i as McpDefinition, l as McpStdioTransport, m as connectMcpStdio, n as McpAuthOptions, o as McpHttpTransport, p as connectMcpServer, r as McpClient, s as McpServerOptions, t as ToolCredentialResolver, u as McpToolConnection } from "./index-BWOPtMGc.mjs";
|
|
5
5
|
import { R as loadAssetManifest } from "./index-CuX_PFQi.mjs";
|
|
6
6
|
export { AGENT, type Agent, type AgentAssetInput, type AgentCreateInput, AgentCreateInputSchema, type AgentDefinition, type AgentDefinitionInput, type AgentExperimentalDownload, type AgentMessage, type AgentModelId, AgentModelIdSchema, type AgentRunConfig, type AgentStreamEvent, type AgentToolInput, type BuildAgentRuntimeContext, DEFAULT_THINKING_LEVEL, type McpAuthOptions, type McpClient, type McpDefinition, type McpDefinitionInput, type McpHttpTransport, type McpServerOptions, type McpStdioOptions, type McpStdioTransport, type McpToolConnection, type McpTransport, type ModelCapabilities, type PromptInput, type PromptResponse, type ResolvedAgentAssets, type RunAgentPromptOptions, type SandboxedAgentRuntime, SessionAgentMismatchError, type SessionLifecycle, type SessionLifecycleContext, type StreamAgentPromptOptions, type StreamAgentPromptResult, type ThinkingLevel, ThinkingLevelSchema, type ToolCredentialResolver, type WebToolsOptions, agentModelIdsFromStoredManifest, buildAgentRuntime, connectMcpDefinition, connectMcpServer, connectMcpStdio, defineAgent, defineMcp, defineTool, isAgent, isMcp, loadAssetManifest, modelSupportsMediaType, normalizeAgentDefinition, parseAgentCreateInput, prepareAgentSession, resolveAgentAssets, resolveAgentId, resolveAgentModel, resolveAgentTools, resolveAgentWorkspaceRoot, resolveModelCapabilities, resolveThinkingLevel, runAgentPrompt, runLlm, streamAgentPrompt, validateAgentModelIds };
|
package/dist/agent.mjs
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
import { f as isRedundantMcpJsonText, g as modelSupportsMediaType, i as PublicModelsResponseSchema, l as defineTool, m as mcpContentBlocksToAiSdkParts, n as DEFAULT_CLOUD_PLATFORM_ORIGIN, p as mcpContentBlocksFromToolOutput, v as parseChatAttachmentServePath, y as requiredDisplayTextSchema } from "./dist-DpOqlEKr.mjs";
|
|
2
2
|
import { c as getRunSignal, f as isWithinActionExecution, h as resolveActionTool, l as getWorkflowRunHandle, u as isAction } from "./dist-ShPO38SW.mjs";
|
|
3
|
-
import { A as output_exports, B as getProjectScopeId, C as defineMcp, D as generateObject, E as convertToModelMessages, F as appendEvent, G as setSessionLiveMessage, H as listMessageEvents, I as clearLiveMessage, J as captureConsole, K as setSessionTitle, L as createSession, M as toUIMessageStream, N as MESSAGE_EVENT_TYPE, O as generateText, P as addAgentSessionDuration, R as failAgentSession, S as connectMcpStdio, T as ToolLoopAgent, U as recordLlmUsageFromAssistantMessage, V as getSession, W as resolveRunSourceFromTraceContext, X as withSpan, Y as getTraceContext, Z as createGateway, _ as resolveActionCredentials, b as connectMcpDefinition, et as generateId, f as buildCredentialRunContext, g as isCredentialError, h as enrichCredentialError, j as readUIMessageStream, k as isFileUIPart, m as createCredentialResolver, nt as tool, p as captureCredentialToolErrors, q as touchSession, s as isWorkflow, tt as jsonSchema, u as resolveWorkflowTool, v as resolveMcpTools, w as isMcp, x as connectMcpServer, y as withCredentialAssignments, z as getAgentByRoute } from "./dist-
|
|
3
|
+
import { A as output_exports, B as getProjectScopeId, C as defineMcp, D as generateObject, E as convertToModelMessages, F as appendEvent, G as setSessionLiveMessage, H as listMessageEvents, I as clearLiveMessage, J as captureConsole, K as setSessionTitle, L as createSession, M as toUIMessageStream, N as MESSAGE_EVENT_TYPE, O as generateText, P as addAgentSessionDuration, R as failAgentSession, S as connectMcpStdio, T as ToolLoopAgent, U as recordLlmUsageFromAssistantMessage, V as getSession, W as resolveRunSourceFromTraceContext, X as withSpan, Y as getTraceContext, Z as createGateway, _ as resolveActionCredentials, b as connectMcpDefinition, et as generateId, f as buildCredentialRunContext, g as isCredentialError, h as enrichCredentialError, j as readUIMessageStream, k as isFileUIPart, m as createCredentialResolver, nt as tool, p as captureCredentialToolErrors, q as touchSession, s as isWorkflow, tt as jsonSchema, u as resolveWorkflowTool, v as resolveMcpTools, w as isMcp, x as connectMcpServer, y as withCredentialAssignments, z as getAgentByRoute } from "./dist-DXQ9dYvL.mjs";
|
|
4
4
|
import { J as getBoundAppRoot, X as materializeSandbox, Y as loadAssetManifest, a as defaultWorkspacesRoot, ct as resolveAgentRoot, i as createSandbox, l as materializeSkills, n as createInvokeToolBridge, o as defineSkill, p as sandboxSystemPromptInjection, st as ensureWorkspaceDir, tt as resolveSandboxDefinition, ut as resolveSessionRoot } from "./dist-BhRN0eMQ.mjs";
|
|
5
5
|
import { z } from "zod";
|
|
6
6
|
import { AsyncLocalStorage } from "node:async_hooks";
|
|
@@ -1122,6 +1122,25 @@ function llmUsageFromLanguageModelUsage(usage, resolved) {
|
|
|
1122
1122
|
}
|
|
1123
1123
|
};
|
|
1124
1124
|
}
|
|
1125
|
+
/**
|
|
1126
|
+
* Baked-in AI SDK `providerOptions` a model needs for structured output.
|
|
1127
|
+
*
|
|
1128
|
+
* Anthropic-only today: the AI SDK default (`structuredOutputMode: "auto"`) falls back to a
|
|
1129
|
+
* forced `json` tool, which Anthropic rejects while extended thinking is enabled
|
|
1130
|
+
* ("Thinking may not be enabled when tool_choice forces tool use"). Since our agents default to
|
|
1131
|
+
* `thinkingLevel: "medium"`, every structured `agent.prompt`/`promptLlm` call hits that conflict
|
|
1132
|
+
* and stalls. Forcing `"outputFormat"` uses Anthropic's native JSON-schema output (no forced
|
|
1133
|
+
* tool), which is reasoning-compatible. The AI SDK provider docs do not warn about this, so the
|
|
1134
|
+
* rationale lives here. See vercel/ai#7220, #9351. Origin: changeset `8eaf54a` shipped
|
|
1135
|
+
* `Output.object` + always-on `reasoning` together with no guard.
|
|
1136
|
+
*
|
|
1137
|
+
* OpenAI/Google/xAI use native, reasoning-compatible structured output and need nothing here.
|
|
1138
|
+
*/
|
|
1139
|
+
function resolveProviderOptions(args) {
|
|
1140
|
+
if (!args.structuredOutput) return;
|
|
1141
|
+
const { vendor } = splitAgentModelId(args.modelId);
|
|
1142
|
+
if (vendor === "anthropic") return { anthropic: { structuredOutputMode: "outputFormat" } };
|
|
1143
|
+
}
|
|
1125
1144
|
function buildUserMessageParts(text, files) {
|
|
1126
1145
|
const parts = [];
|
|
1127
1146
|
const trimmed = text.trim();
|
|
@@ -1159,13 +1178,18 @@ async function streamAgentPrompt(config, input, options) {
|
|
|
1159
1178
|
let messagesForModel = await applyCapabilityPlaceholderToMessages(priorMessages, config.resolvedModel.capabilities);
|
|
1160
1179
|
if (config.experimentalDownload) messagesForModel = await hydrateChatAttachmentMessages(messagesForModel, config.experimentalDownload);
|
|
1161
1180
|
const modelMessages = await convertToModelMessages(messagesForModel);
|
|
1181
|
+
const providerOptions = resolveProviderOptions({
|
|
1182
|
+
modelId: config.resolvedModel.modelId,
|
|
1183
|
+
structuredOutput: Boolean(options.outputSchema)
|
|
1184
|
+
});
|
|
1162
1185
|
const streamResult = await new ToolLoopAgent({
|
|
1163
1186
|
model: config.resolvedModel.languageModel,
|
|
1164
1187
|
instructions: config.systemPrompt,
|
|
1165
1188
|
tools: aiTools,
|
|
1166
1189
|
reasoning: config.thinkingLevel,
|
|
1167
1190
|
...config.experimentalDownload ? { experimental_download: config.experimentalDownload } : {},
|
|
1168
|
-
...options.outputSchema ? { output: output_exports.object({ schema: options.outputSchema }) } : {}
|
|
1191
|
+
...options.outputSchema ? { output: output_exports.object({ schema: options.outputSchema }) } : {},
|
|
1192
|
+
...providerOptions ? { providerOptions } : {}
|
|
1169
1193
|
}).stream({
|
|
1170
1194
|
messages: modelMessages,
|
|
1171
1195
|
abortSignal: options.signal,
|
|
@@ -1616,7 +1640,7 @@ function defaultToMessage(params) {
|
|
|
1616
1640
|
}
|
|
1617
1641
|
throw new Error("Subagent tool params must include a non-empty \"message\" string.");
|
|
1618
1642
|
}
|
|
1619
|
-
function toSubagentTool(agent) {
|
|
1643
|
+
function toSubagentTool(agent, context = {}) {
|
|
1620
1644
|
const name = agent.slug;
|
|
1621
1645
|
return defineTool({
|
|
1622
1646
|
name,
|
|
@@ -1633,7 +1657,11 @@ function toSubagentTool(agent) {
|
|
|
1633
1657
|
tool: name,
|
|
1634
1658
|
type: "subagent"
|
|
1635
1659
|
}
|
|
1636
|
-
}, async () => runDirectAgentPrompt(agent, agent.slug, { message: defaultToMessage(params) }, {
|
|
1660
|
+
}, async () => runDirectAgentPrompt(agent, agent.slug, { message: defaultToMessage(params) }, {
|
|
1661
|
+
tracing: { trigger: "subagent" },
|
|
1662
|
+
...context.credentials ? { credentials: context.credentials } : {},
|
|
1663
|
+
...context.oauthAdapter ? { oauthAdapter: context.oauthAdapter } : {}
|
|
1664
|
+
}));
|
|
1637
1665
|
if (result.error) throw new Error(result.error);
|
|
1638
1666
|
return {
|
|
1639
1667
|
content: [{
|
|
@@ -1683,13 +1711,13 @@ async function resolveAgentTools(tools, resolver, options) {
|
|
|
1683
1711
|
continue;
|
|
1684
1712
|
}
|
|
1685
1713
|
if (isWorkflow(item)) {
|
|
1686
|
-
const tool = resolveWorkflowTool(item);
|
|
1714
|
+
const tool = resolveWorkflowTool(item, options?.childContext);
|
|
1687
1715
|
assertUniqueToolName(seenNames, tool);
|
|
1688
1716
|
prepared.push(tool);
|
|
1689
1717
|
continue;
|
|
1690
1718
|
}
|
|
1691
1719
|
if (isAgent(item)) {
|
|
1692
|
-
const tool = toSubagentTool(item);
|
|
1720
|
+
const tool = toSubagentTool(item, options?.childContext);
|
|
1693
1721
|
assertUniqueToolName(seenNames, tool);
|
|
1694
1722
|
prepared.push(tool);
|
|
1695
1723
|
continue;
|
|
@@ -1745,7 +1773,13 @@ async function buildAgentRuntime(def, ctx, runPrompt = {}, agentSlug) {
|
|
|
1745
1773
|
type: "agent",
|
|
1746
1774
|
key: assignmentTargetKey
|
|
1747
1775
|
} } : void 0;
|
|
1748
|
-
const resolved = await resolveAgentTools(def.tools ?? [], resolver, {
|
|
1776
|
+
const resolved = await resolveAgentTools(def.tools ?? [], resolver, {
|
|
1777
|
+
mcpCredentialContext,
|
|
1778
|
+
childContext: {
|
|
1779
|
+
credentials: runPrompt.credentials,
|
|
1780
|
+
oauthAdapter: runPrompt.oauthAdapter
|
|
1781
|
+
}
|
|
1782
|
+
});
|
|
1749
1783
|
const captured = captureCredentialToolErrors([
|
|
1750
1784
|
...memoryTools,
|
|
1751
1785
|
...resolved.tools,
|
|
@@ -2271,6 +2305,10 @@ async function runPromptObject(opts, hooks) {
|
|
|
2271
2305
|
const schema = opts.outputSchema;
|
|
2272
2306
|
if (!schema) throw new Error("outputSchema is required for structured LLM output");
|
|
2273
2307
|
const resolved = await resolvePromptModel(opts.model);
|
|
2308
|
+
const providerOptions = resolveProviderOptions({
|
|
2309
|
+
modelId: resolved.modelId,
|
|
2310
|
+
structuredOutput: true
|
|
2311
|
+
});
|
|
2274
2312
|
const result = await generateObject({
|
|
2275
2313
|
model: resolved.languageModel,
|
|
2276
2314
|
system: opts.system,
|
|
@@ -2278,7 +2316,8 @@ async function runPromptObject(opts, hooks) {
|
|
|
2278
2316
|
schema,
|
|
2279
2317
|
...opts.temperature !== void 0 ? { temperature: opts.temperature } : {},
|
|
2280
2318
|
...opts.maxTokens !== void 0 ? { maxOutputTokens: opts.maxTokens } : {},
|
|
2281
|
-
...reasoningCallOption(opts.thinkingLevel)
|
|
2319
|
+
...reasoningCallOption(opts.thinkingLevel),
|
|
2320
|
+
...providerOptions ? { providerOptions } : {}
|
|
2282
2321
|
});
|
|
2283
2322
|
await recordUsage(resolved, result.usage, hooks);
|
|
2284
2323
|
return result.object;
|