@zhivex-ai/openai 0.14.1 → 0.15.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.
package/README.md CHANGED
@@ -443,3 +443,25 @@ const provider = createOpenAI({
443
443
  capabilities for unrecognized IDs during migration. Exact per-ID declarations take
444
444
  precedence over the selected defaults; nested `agentCapabilities` declarations merge
445
445
  with the profile. Known profiles keep their existing behavior.
446
+
447
+ ### Computer execution safety
448
+
449
+ `openAIComputerTool` accepts `approveSafetyChecks(input, context)` in addition to
450
+ `execute(input, context)`. Inputs preserve `call_id` and `pending_safety_checks`.
451
+ When checks exist, the safety callback must explicitly return true for the frozen
452
+ call before execution; generic tool approval alone is insufficient. The result
453
+ acknowledges the exact checks and preserves call correlation. Both callbacks
454
+ receive `abortSignal` and `deadline`; `callbackTimeoutMs` defaults to 60 seconds.
455
+ Native unknown outcomes are not safe to retry without session reconciliation.
456
+ Only known, nonempty GA action batches are accepted; the app owns the executor,
457
+ origin/session policy, coordinate bounds and screenshots. See the
458
+ [computer-use guide](../../docs/COMPUTER_USE.md) for provider and durability limits.
459
+ These changes describe this source branch, not previously published packages.
460
+
461
+ ## Experimental Decisions
462
+
463
+ `openai.experimentalDecisionModel('gpt-6-luna')` implements the portable
464
+ `DecisionModel` contract using `/decisions`, independently of chat. It supports
465
+ predicate, typed string/boolean choice, fractional score, inline images and
466
+ per-question refusal. See [portable Decisions](../../docs/DECISIONS.md) for the
467
+ contract, explicit gateway fallback and separate Decisions pricing.
@@ -0,0 +1,141 @@
1
+ import { z } from "zod";
2
+ import { type JsonValue, type ToolDefinition, type ToolExecutionContext } from "@zhivex-ai/core/provider";
3
+ export interface OpenAIComputerSafetyCheck {
4
+ id: string;
5
+ code?: string | null;
6
+ message?: string | null;
7
+ [key: string]: JsonValue | undefined;
8
+ }
9
+ export interface OpenAIComputerCallInput {
10
+ actions: JsonValue[];
11
+ /** Provider call identity, included in approvals and correlated with the result. */
12
+ call_id?: string;
13
+ pending_safety_checks?: OpenAIComputerSafetyCheck[];
14
+ }
15
+ export interface OpenAIComputerScreenshotOutput {
16
+ type: "computer_screenshot";
17
+ image_url: string;
18
+ detail?: "original";
19
+ }
20
+ export interface OpenAIComputerExecutionContext extends Partial<ToolExecutionContext> {
21
+ abortSignal: AbortSignal;
22
+ deadline: number;
23
+ }
24
+ export interface OpenAIComputerToolConfig {
25
+ name?: string;
26
+ requiresApproval?: boolean;
27
+ /** Per callback deadline; defaults to 60 seconds. Cancellation cannot undo effects. */
28
+ callbackTimeoutMs?: number;
29
+ /** Explicitly confirm every supplied provider warning for this immutable call. */
30
+ approveSafetyChecks?: (input: OpenAIComputerCallInput, context: OpenAIComputerExecutionContext) => boolean | Promise<boolean>;
31
+ execute: (input: OpenAIComputerCallInput, context: OpenAIComputerExecutionContext) => Promise<OpenAIComputerScreenshotOutput> | OpenAIComputerScreenshotOutput;
32
+ }
33
+ declare const action: z.ZodDiscriminatedUnion<[z.ZodObject<{
34
+ x: z.ZodNumber;
35
+ y: z.ZodNumber;
36
+ type: z.ZodLiteral<"click">;
37
+ button: z.ZodOptional<z.ZodEnum<{
38
+ back: "back";
39
+ forward: "forward";
40
+ left: "left";
41
+ right: "right";
42
+ wheel: "wheel";
43
+ }>>;
44
+ }, z.core.$strict>, z.ZodObject<{
45
+ x: z.ZodNumber;
46
+ y: z.ZodNumber;
47
+ type: z.ZodLiteral<"double_click">;
48
+ }, z.core.$strict>, z.ZodObject<{
49
+ x: z.ZodNumber;
50
+ y: z.ZodNumber;
51
+ type: z.ZodLiteral<"move">;
52
+ }, z.core.$strict>, z.ZodObject<{
53
+ type: z.ZodLiteral<"drag">;
54
+ path: z.ZodArray<z.ZodObject<{
55
+ x: z.ZodNumber;
56
+ y: z.ZodNumber;
57
+ }, z.core.$strict>>;
58
+ }, z.core.$strict>, z.ZodObject<{
59
+ x: z.ZodNumber;
60
+ y: z.ZodNumber;
61
+ type: z.ZodLiteral<"scroll">;
62
+ scroll_x: z.ZodNumber;
63
+ scroll_y: z.ZodNumber;
64
+ }, z.core.$strict>, z.ZodObject<{
65
+ type: z.ZodLiteral<"keypress">;
66
+ keys: z.ZodArray<z.ZodString>;
67
+ }, z.core.$strict>, z.ZodObject<{
68
+ type: z.ZodLiteral<"type">;
69
+ text: z.ZodString;
70
+ }, z.core.$strict>, z.ZodObject<{
71
+ type: z.ZodLiteral<"wait">;
72
+ }, z.core.$strict>, z.ZodObject<{
73
+ type: z.ZodLiteral<"screenshot">;
74
+ }, z.core.$strict>], "type">;
75
+ export type OpenAIComputerAction = z.infer<typeof action>;
76
+ export declare const computerInputSchema: z.ZodObject<{
77
+ actions: z.ZodArray<z.ZodDiscriminatedUnion<[z.ZodObject<{
78
+ x: z.ZodNumber;
79
+ y: z.ZodNumber;
80
+ type: z.ZodLiteral<"click">;
81
+ button: z.ZodOptional<z.ZodEnum<{
82
+ back: "back";
83
+ forward: "forward";
84
+ left: "left";
85
+ right: "right";
86
+ wheel: "wheel";
87
+ }>>;
88
+ }, z.core.$strict>, z.ZodObject<{
89
+ x: z.ZodNumber;
90
+ y: z.ZodNumber;
91
+ type: z.ZodLiteral<"double_click">;
92
+ }, z.core.$strict>, z.ZodObject<{
93
+ x: z.ZodNumber;
94
+ y: z.ZodNumber;
95
+ type: z.ZodLiteral<"move">;
96
+ }, z.core.$strict>, z.ZodObject<{
97
+ type: z.ZodLiteral<"drag">;
98
+ path: z.ZodArray<z.ZodObject<{
99
+ x: z.ZodNumber;
100
+ y: z.ZodNumber;
101
+ }, z.core.$strict>>;
102
+ }, z.core.$strict>, z.ZodObject<{
103
+ x: z.ZodNumber;
104
+ y: z.ZodNumber;
105
+ type: z.ZodLiteral<"scroll">;
106
+ scroll_x: z.ZodNumber;
107
+ scroll_y: z.ZodNumber;
108
+ }, z.core.$strict>, z.ZodObject<{
109
+ type: z.ZodLiteral<"keypress">;
110
+ keys: z.ZodArray<z.ZodString>;
111
+ }, z.core.$strict>, z.ZodObject<{
112
+ type: z.ZodLiteral<"type">;
113
+ text: z.ZodString;
114
+ }, z.core.$strict>, z.ZodObject<{
115
+ type: z.ZodLiteral<"wait">;
116
+ }, z.core.$strict>, z.ZodObject<{
117
+ type: z.ZodLiteral<"screenshot">;
118
+ }, z.core.$strict>], "type">>;
119
+ call_id: z.ZodOptional<z.ZodString>;
120
+ pending_safety_checks: z.ZodOptional<z.ZodArray<z.ZodObject<{
121
+ id: z.ZodString;
122
+ code: z.ZodOptional<z.ZodNullable<z.ZodString>>;
123
+ message: z.ZodOptional<z.ZodNullable<z.ZodString>>;
124
+ }, z.core.$catchall<z.ZodJSONSchema>>>>;
125
+ }, z.core.$strip>;
126
+ export declare const computerScreenshotSchema: z.ZodObject<{
127
+ type: z.ZodLiteral<"computer_screenshot">;
128
+ image_url: z.ZodString;
129
+ detail: z.ZodOptional<z.ZodLiteral<"original">>;
130
+ }, z.core.$strip>;
131
+ /** External effects may have occurred: reconcile the application session before retrying. */
132
+ export declare class OpenAIComputerExecutionError extends Error {
133
+ readonly callId: string | undefined;
134
+ readonly effectsPossible = true;
135
+ readonly retryable = false;
136
+ readonly outcome = "unknown";
137
+ constructor(callId: string | undefined, cause: unknown);
138
+ }
139
+ export declare const openAIComputerTool: (config: OpenAIComputerToolConfig) => ToolDefinition<z.ZodType<OpenAIComputerCallInput>, JsonValue>;
140
+ export {};
141
+ //# sourceMappingURL=computer.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"computer.d.ts","sourceRoot":"","sources":["../src/computer.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AACxB,OAAO,EAAsB,KAAK,SAAS,EAAE,KAAK,cAAc,EAAE,KAAK,oBAAoB,EAAE,MAAM,0BAA0B,CAAC;AAE9H,MAAM,WAAW,yBAAyB;IACxC,EAAE,EAAE,MAAM,CAAC;IACX,IAAI,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;IACrB,OAAO,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;IACxB,CAAC,GAAG,EAAE,MAAM,GAAG,SAAS,GAAG,SAAS,CAAC;CACtC;AAED,MAAM,WAAW,uBAAuB;IACtC,OAAO,EAAE,SAAS,EAAE,CAAC;IACrB,oFAAoF;IACpF,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,qBAAqB,CAAC,EAAE,yBAAyB,EAAE,CAAC;CACrD;AAED,MAAM,WAAW,8BAA8B;IAC7C,IAAI,EAAE,qBAAqB,CAAC;IAC5B,SAAS,EAAE,MAAM,CAAC;IAClB,MAAM,CAAC,EAAE,UAAU,CAAC;CACrB;AAED,MAAM,WAAW,8BAA+B,SAAQ,OAAO,CAAC,oBAAoB,CAAC;IACnF,WAAW,EAAE,WAAW,CAAC;IACzB,QAAQ,EAAE,MAAM,CAAC;CAClB;AAED,MAAM,WAAW,wBAAwB;IACvC,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,gBAAgB,CAAC,EAAE,OAAO,CAAC;IAC3B,uFAAuF;IACvF,iBAAiB,CAAC,EAAE,MAAM,CAAC;IAC3B,kFAAkF;IAClF,mBAAmB,CAAC,EAAE,CAAC,KAAK,EAAE,uBAAuB,EAAE,OAAO,EAAE,8BAA8B,KAAK,OAAO,GAAG,OAAO,CAAC,OAAO,CAAC,CAAC;IAC9H,OAAO,EAAE,CAAC,KAAK,EAAE,uBAAuB,EAAE,OAAO,EAAE,8BAA8B,KAAK,OAAO,CAAC,8BAA8B,CAAC,GAAG,8BAA8B,CAAC;CAChK;AAGD,QAAA,MAAM,MAAM;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;4BAUV,CAAC;AACH,MAAM,MAAM,oBAAoB,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,MAAM,CAAC,CAAC;AAE1D,eAAO,MAAM,mBAAmB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;iBAO9B,CAAC;AAEH,eAAO,MAAM,wBAAwB;;;;iBAInC,CAAC;AAUH,6FAA6F;AAC7F,qBAAa,4BAA6B,SAAQ,KAAK;IAIzC,QAAQ,CAAC,MAAM,EAAE,MAAM,GAAG,SAAS;IAH/C,QAAQ,CAAC,eAAe,QAAQ;IAChC,QAAQ,CAAC,SAAS,SAAS;IAC3B,QAAQ,CAAC,OAAO,aAAa;IAC7B,YAAqB,MAAM,EAAE,MAAM,GAAG,SAAS,EAAE,KAAK,EAAE,OAAO,EAG9D;CACF;AAuBD,eAAO,MAAM,kBAAkB,WAAY,wBAAwB,KAAG,cAAc,CAAC,CAAC,CAAC,OAAO,CAAC,uBAAuB,CAAC,EAAE,SAAS,CAyDjI,CAAC"}
@@ -0,0 +1,151 @@
1
+ import { z } from "zod";
2
+ import { ConfigurationError } from "@zhivex-ai/core/provider";
3
+ const point = { x: z.number().int().nonnegative(), y: z.number().int().nonnegative() };
4
+ const action = z.discriminatedUnion("type", [
5
+ z.object({ type: z.literal("click"), ...point, button: z.enum(["left", "right", "wheel", "back", "forward"]).optional() }).strict(),
6
+ z.object({ type: z.literal("double_click"), ...point }).strict(),
7
+ z.object({ type: z.literal("move"), ...point }).strict(),
8
+ z.object({ type: z.literal("drag"), path: z.array(z.object(point).strict()).min(1).max(1000) }).strict(),
9
+ z.object({ type: z.literal("scroll"), ...point, scroll_x: z.number().int(), scroll_y: z.number().int() }).strict(),
10
+ z.object({ type: z.literal("keypress"), keys: z.array(z.string().min(1).max(128)).min(1).max(16) }).strict(),
11
+ z.object({ type: z.literal("type"), text: z.string().max(16000) }).strict(),
12
+ z.object({ type: z.literal("wait") }).strict(),
13
+ z.object({ type: z.literal("screenshot") }).strict()
14
+ ]);
15
+ const check = z.object({ id: z.string().min(1), code: z.string().nullable().optional(), message: z.string().nullable().optional() }).catchall(z.json());
16
+ export const computerInputSchema = z.object({
17
+ actions: z.array(action).min(1).max(100),
18
+ call_id: z.string().min(1).optional(),
19
+ pending_safety_checks: z.array(check).max(100).optional()
20
+ }).superRefine((input, ctx) => {
21
+ const ids = input.pending_safety_checks?.map((entry) => entry.id) ?? [];
22
+ if (new Set(ids).size !== ids.length)
23
+ ctx.addIssue({ code: "custom", message: "Duplicate computer safety check identifiers." });
24
+ });
25
+ export const computerScreenshotSchema = z.object({
26
+ type: z.literal("computer_screenshot"),
27
+ image_url: z.string().max(12 * 1024 * 1024).refine((value) => /^data:image\/(png|jpeg|webp);base64,[A-Za-z0-9+/]+={0,2}$/.test(value) || /^https:\/\/\S+$/.test(value), "Expected an image data URL or HTTPS URL."),
28
+ detail: z.literal("original").optional()
29
+ });
30
+ const freeze = (value) => {
31
+ if (value && typeof value === "object") {
32
+ for (const child of Object.values(value))
33
+ freeze(child);
34
+ Object.freeze(value);
35
+ }
36
+ return value;
37
+ };
38
+ /** External effects may have occurred: reconcile the application session before retrying. */
39
+ export class OpenAIComputerExecutionError extends Error {
40
+ callId;
41
+ effectsPossible = true;
42
+ retryable = false;
43
+ outcome = "unknown";
44
+ constructor(callId, cause) {
45
+ super("OpenAI computer execution outcome is unknown; reconcile the session before retrying.", { cause });
46
+ this.callId = callId;
47
+ this.name = "OpenAIComputerExecutionError";
48
+ }
49
+ }
50
+ const callback = async (operation, timeoutMs, parent) => {
51
+ const controller = new AbortController();
52
+ let timer;
53
+ let abort = () => { };
54
+ try {
55
+ return await new Promise((resolve, reject) => {
56
+ abort = () => { controller.abort(parent?.reason); reject(parent?.reason ?? new Error("Computer callback aborted.")); };
57
+ if (parent?.aborted) {
58
+ abort();
59
+ return;
60
+ }
61
+ parent?.addEventListener("abort", abort, { once: true });
62
+ timer = setTimeout(() => { const error = new Error("Computer callback timed out."); controller.abort(error); reject(error); }, timeoutMs);
63
+ Promise.resolve().then(() => {
64
+ controller.signal.throwIfAborted();
65
+ return operation(controller.signal);
66
+ }).then(resolve, reject);
67
+ });
68
+ }
69
+ finally {
70
+ clearTimeout(timer);
71
+ parent?.removeEventListener("abort", abort);
72
+ }
73
+ };
74
+ export const openAIComputerTool = (config) => {
75
+ const timeout = config.callbackTimeoutMs ?? 60_000;
76
+ if (!Number.isSafeInteger(timeout) || timeout < 1 || timeout > 86_400_000)
77
+ throw new ConfigurationError("computer callbackTimeoutMs must be a positive integer no greater than 86400000.");
78
+ if (typeof config.execute !== "function")
79
+ throw new ConfigurationError("OpenAI computer requires an application-owned executor.");
80
+ // Retain completed IDs only while their invocation context remains reachable.
81
+ // Direct execute calls have no invocation lifecycle; guard only overlapping work.
82
+ const scopedCalls = new WeakMap();
83
+ const inFlightCalls = new Set();
84
+ return {
85
+ name: config.name ?? "computer",
86
+ description: "Execute authorized ordered OpenAI computer actions and return the same session's screenshot.",
87
+ requiresApproval: config.requiresApproval ?? true,
88
+ metadata: { "openai.responses_tool_type": "computer", "openai.responses_tool_config": {} },
89
+ schema: computerInputSchema,
90
+ execute: async (input, context) => {
91
+ const snapshot = freeze(computerInputSchema.parse(input));
92
+ if (context && context.toolCall.providerMetadata?.responsesToolType !== "computer")
93
+ throw new ConfigurationError("Computer executor requires a native OpenAI computer call.");
94
+ if (context && snapshot.call_id !== context.toolCall.id)
95
+ throw new ConfigurationError("Computer call identity mismatch.");
96
+ const original = context?.toolCall.providerMetadata?.computerCallInput;
97
+ if (context && (typeof original !== "string" || original !== JSON.stringify(snapshot)))
98
+ throw new ConfigurationError("Computer actions or safety checks changed after provider generation.");
99
+ context?.abortSignal?.throwIfAborted();
100
+ const runtimeContext = { ...context, ...(context?.toolCall ? { toolCall: freeze(structuredClone(context.toolCall)) } : {}) };
101
+ const executionContext = (abortSignal) => ({ ...runtimeContext, abortSignal, deadline: Date.now() + timeout });
102
+ const scope = context && context[Symbol.for("@zhivex-ai/core/tool-execution-scope")];
103
+ let startedCalls = scope ? scopedCalls.get(scope) : inFlightCalls;
104
+ if (!startedCalls) {
105
+ startedCalls = new Set();
106
+ scopedCalls.set(scope, startedCalls);
107
+ }
108
+ const callKey = snapshot.call_id;
109
+ const hasPriorResult = callKey && context?.request?.messages.some(message => message.parts.some(part => part.type === "tool-result" && part.toolResult.toolCallId === callKey));
110
+ if (callKey && (startedCalls.has(callKey) || hasPriorResult))
111
+ throw new ConfigurationError("Computer call was already started; reconcile before retrying.");
112
+ const checks = snapshot.pending_safety_checks ?? [];
113
+ if (checks.length) {
114
+ if (!snapshot.call_id || !config.approveSafetyChecks)
115
+ throw new ConfigurationError("OpenAI computer pending safety checks require explicit approval.");
116
+ const approved = await callback((abortSignal) => config.approveSafetyChecks(snapshot, executionContext(abortSignal)), timeout, context?.abortSignal);
117
+ if (approved !== true)
118
+ throw new ConfigurationError("OpenAI computer safety approval denied.");
119
+ }
120
+ context?.abortSignal?.throwIfAborted();
121
+ if (callKey && startedCalls.has(callKey))
122
+ throw new ConfigurationError("Computer call was already started; reconcile before retrying.");
123
+ if (callKey)
124
+ startedCalls.add(callKey);
125
+ let enteredExecutor = false;
126
+ try {
127
+ const output = await callback(async (abortSignal) => {
128
+ enteredExecutor = true;
129
+ try {
130
+ return await config.execute(snapshot, executionContext(abortSignal));
131
+ }
132
+ finally {
133
+ // An outer timeout cannot release a still-running direct executor.
134
+ if (!scope && callKey)
135
+ inFlightCalls.delete(callKey);
136
+ }
137
+ }, timeout, context?.abortSignal);
138
+ const screenshot = computerScreenshotSchema.parse(output);
139
+ return { ...screenshot, detail: "original", ...(snapshot.call_id ? { call_id: snapshot.call_id } : {}), ...(checks.length ? { acknowledged_safety_checks: checks } : {}) };
140
+ }
141
+ catch (error) {
142
+ throw new OpenAIComputerExecutionError(snapshot.call_id, error);
143
+ }
144
+ finally {
145
+ if (!scope && callKey && !enteredExecutor)
146
+ inFlightCalls.delete(callKey);
147
+ }
148
+ }
149
+ };
150
+ };
151
+ //# sourceMappingURL=computer.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"computer.js","sourceRoot":"","sources":["../src/computer.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,8 @@
1
+ import { type DecisionModel } from '@zhivex-ai/core/provider';
2
+ export declare function createOpenAIDecisionModel(modelId: string, options: {
3
+ apiKey: string;
4
+ baseURL: string;
5
+ fetch?: typeof globalThis.fetch;
6
+ allowUnsafeEndpoints?: boolean;
7
+ }): DecisionModel;
8
+ //# sourceMappingURL=decision.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"decision.d.ts","sourceRoot":"","sources":["../src/decision.ts"],"names":[],"mappings":"AAAA,OAAO,EAEL,KAAK,aAAa,EACnB,MAAM,0BAA0B,CAAC;AAelC,wBAAgB,yBAAyB,CAAC,OAAO,EAAE,MAAM,EAAE,OAAO,EAAE;IAAE,MAAM,EAAE,MAAM,CAAC;IAAC,OAAO,EAAE,MAAM,CAAC;IAAC,KAAK,CAAC,EAAE,OAAO,UAAU,CAAC,KAAK,CAAC;IAAC,oBAAoB,CAAC,EAAE,OAAO,CAAA;CAAE,GAAG,aAAa,CA+DvL"}
@@ -0,0 +1,98 @@
1
+ import { experimentalDecisionHelpers, ConfigurationError, ProviderHTTPError, assertTrustedEndpoint, readJsonWithLimit } from '@zhivex-ai/core/provider';
2
+ const decisionRecord = experimentalDecisionHelpers.decisionRecord;
3
+ const decisionProbability = experimentalDecisionHelpers.decisionProbability;
4
+ const decisionTokenCount = experimentalDecisionHelpers.decisionTokenCount;
5
+ const invalidDecision = experimentalDecisionHelpers.invalidDecision;
6
+ const snapshotDecision = experimentalDecisionHelpers.snapshotDecision;
7
+ const validateDecision = experimentalDecisionHelpers.validateDecision;
8
+ const validateDecisionAnswers = experimentalDecisionHelpers.validateDecisionAnswers;
9
+ const decisionOperation = experimentalDecisionHelpers.decisionOperation;
10
+ const capabilities = Object.freeze({
11
+ questionTypes: Object.freeze(['predicate', 'choice', 'score']),
12
+ inputTypes: Object.freeze(['text', 'image']),
13
+ choiceValueTypes: Object.freeze(['string', 'boolean']), perQuestionRefusal: true, textParts: true
14
+ });
15
+ export function createOpenAIDecisionModel(modelId, options) {
16
+ if (modelId !== 'gpt-6-luna')
17
+ throw new ConfigurationError('OpenAI Decisions currently supports gpt-6-luna only.');
18
+ // A linear suffix scan avoids backtracking on long slash-filled paths.
19
+ let end = options.baseURL.length;
20
+ while (end > 0 && options.baseURL.charCodeAt(end - 1) === 47)
21
+ end--;
22
+ const endpoint = `${options.baseURL.slice(0, end)}/decisions`;
23
+ assertTrustedEndpoint(endpoint, { protocols: ['https:'], allowUnsafe: options.allowUnsafeEndpoints, label: 'OpenAI decision endpoint' });
24
+ const prepare = (input) => {
25
+ validateDecision(input, capabilities);
26
+ const snapshot = snapshotDecision(input);
27
+ if (Array.isArray(snapshot.input) && snapshot.input.filter(part => part.type === "image").length > 128)
28
+ invalidDecision();
29
+ const questions = Object.entries(snapshot.questions).map(([name, q]) => q.type === 'score'
30
+ ? { name, type: q.type, instructions: q.instructions, levels: q.levels.map(label => ({ label })) }
31
+ : { name, ...q });
32
+ const evidence = typeof snapshot.input === 'string' ? snapshot.input : [{ role: 'user', content: snapshot.input.map(p => p.type === 'text' ? { type: 'input_text', text: p.text } : { type: 'input_image', image_url: p.dataURL }) }];
33
+ const body = JSON.stringify({ model: modelId, input: evidence, questions });
34
+ if (new TextEncoder().encode(body).byteLength > 1024 * 1024)
35
+ invalidDecision();
36
+ return { snapshot, body, questions };
37
+ };
38
+ const validate = (input) => { prepare(input); };
39
+ return Object.freeze({
40
+ provider: 'openai', modelId, endpoint, capabilities, validate,
41
+ async decide(input) {
42
+ const { snapshot, body, questions } = prepare(input);
43
+ return decisionOperation(snapshot, async (signal) => {
44
+ const response = await (options.fetch ?? globalThis.fetch)(endpoint, { method: 'POST', redirect: 'error', signal, headers: { authorization: `Bearer ${options.apiKey}`, 'content-type': 'application/json' }, body });
45
+ if (!response.ok) {
46
+ await response.body?.cancel();
47
+ throw new ProviderHTTPError('Decision request failed.', response.status);
48
+ }
49
+ const json = await readJsonWithLimit(response, { maxBytes: 1024 * 1024, provider: 'openai', endpoint: 'decisions' });
50
+ if (!decisionRecord(json) || json.model !== modelId || !Array.isArray(json.answers) || json.answers.length !== questions.length || !decisionRecord(json.usage))
51
+ invalidDecision();
52
+ const answers = Object.create(null);
53
+ for (const a of json.answers) {
54
+ if (!decisionRecord(a) || typeof a.name !== 'string' || !Object.hasOwn(snapshot.questions, a.name) || Object.hasOwn(answers, a.name))
55
+ invalidDecision();
56
+ if (a.type === 'refusal') {
57
+ if (Object.keys(a).some(k => !['type', 'name'].includes(k)))
58
+ invalidDecision();
59
+ answers[a.name] = { type: 'refusal' };
60
+ }
61
+ else if (a.type === 'predicate')
62
+ answers[a.name] = { type: 'predicate', probability: a.probability };
63
+ else if (a.type === 'choice' || a.type === 'score') {
64
+ if (!decisionProbability(a.confidence))
65
+ invalidDecision();
66
+ answers[a.name] = (a.type === 'choice'
67
+ ? { type: 'choice', choice: a.choice, probabilities: a.probabilities, providerConfidence: a.confidence }
68
+ : { type: 'score', score: a.score, probabilities: a.probabilities, providerConfidence: a.confidence });
69
+ }
70
+ else
71
+ invalidDecision();
72
+ }
73
+ validateDecisionAnswers(answers, snapshot.questions, true);
74
+ for (const a of Object.values(answers)) {
75
+ if (a.type === 'choice')
76
+ a.probabilities = a.probabilities.map(p => ({ value: p.value, probability: p.probability }));
77
+ if (a.type === 'score') {
78
+ a.probabilities = a.probabilities.map(p => ({ value: p.value, label: p.label, probability: p.probability }));
79
+ const weighted = a.probabilities.reduce((sum, p) => sum + p.value * p.probability, 0);
80
+ if (Math.abs(a.score - weighted) > 0.01 * a.probabilities.length)
81
+ invalidDecision();
82
+ }
83
+ }
84
+ const u = json.usage;
85
+ if (!decisionRecord(u.input_tokens_details) || !decisionRecord(u.output_tokens_details))
86
+ invalidDecision();
87
+ const usage = {
88
+ inputTokens: decisionTokenCount(u.input_tokens), outputTokens: decisionTokenCount(u.output_tokens), totalTokens: decisionTokenCount(u.total_tokens),
89
+ cachedInputTokens: decisionTokenCount(u.input_tokens_details.cached_tokens), cacheWriteTokens: decisionTokenCount(u.input_tokens_details.cache_write_tokens), reasoningTokens: decisionTokenCount(u.output_tokens_details.reasoning_tokens)
90
+ };
91
+ if (usage.totalTokens !== usage.inputTokens + usage.outputTokens || usage.cachedInputTokens + usage.cacheWriteTokens > usage.inputTokens || usage.reasoningTokens > usage.outputTokens)
92
+ invalidDecision();
93
+ return { answers, provenance: { provider: 'openai', modelId, endpoint, protocol: 'openai.decisions' }, usage };
94
+ });
95
+ }
96
+ });
97
+ }
98
+ //# sourceMappingURL=decision.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"decision.js","sourceRoot":"","sources":["../src/decision.ts"],"names":[],"mappings":"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"}
package/dist/index.d.ts CHANGED
@@ -1,3 +1,5 @@
1
+ export { openAIComputerTool, OpenAIComputerExecutionError } from "./computer.js";
2
+ export type { OpenAIComputerExecutionContext, OpenAIComputerAction, OpenAIComputerSafetyCheck, OpenAIComputerCallInput, OpenAIComputerScreenshotOutput, OpenAIComputerToolConfig } from "./computer.js";
1
3
  export { openAIRealtimeMcpMetadataKey } from "./realtime.js";
2
4
  import { OpenAIAgentsClient } from "./agents.js";
3
5
  export { OpenAIAgentsClient } from "./agents.js";
@@ -96,19 +98,6 @@ export interface OpenAIComputerUseToolConfig {
96
98
  display_width?: number;
97
99
  display_height?: number;
98
100
  }
99
- export interface OpenAIComputerCallInput {
100
- actions: JsonValue[];
101
- }
102
- export interface OpenAIComputerScreenshotOutput {
103
- type: "computer_screenshot";
104
- image_url: string;
105
- detail?: "original";
106
- }
107
- export interface OpenAIComputerToolConfig {
108
- name?: string;
109
- requiresApproval?: boolean;
110
- execute: (input: OpenAIComputerCallInput) => Promise<OpenAIComputerScreenshotOutput> | OpenAIComputerScreenshotOutput;
111
- }
112
101
  export interface OpenAICodeInterpreterToolConfig {
113
102
  container: string | {
114
103
  type: "auto";
@@ -321,20 +310,20 @@ export interface OpenAILanguageModelOptions {
321
310
  export declare const createOpenAI: (options?: OpenAIProviderOptions) => CallableProviderAdapter<LanguageModel<OpenAILanguageModelOptions>> & {
322
311
  rawFetch: typeof globalThis.fetch;
323
312
  agents: OpenAIAgentsClient;
313
+ experimentalDecisionModel(modelId?: string): import("@zhivex-ai/core").DecisionModel;
324
314
  };
325
- export declare const openAIWebSearchTool: (config?: OpenAIWebSearchToolConfig) => import("@zhivex-ai/core/provider").HostedToolDefinition<JsonValue>;
326
- export declare const openAIFileSearchTool: (config?: OpenAIFileSearchToolConfig) => import("@zhivex-ai/core/provider").HostedToolDefinition<JsonValue>;
327
- export declare const openAICodeInterpreterTool: (config: OpenAICodeInterpreterToolConfig) => import("@zhivex-ai/core/provider").HostedToolDefinition<JsonValue>;
328
- export declare const openAIToolSearchTool: (config?: OpenAIToolSearchToolConfig) => import("@zhivex-ai/core/provider").HostedToolDefinition<JsonValue>;
329
- export declare const openAIProgrammaticToolCallingTool: () => import("@zhivex-ai/core/provider").HostedToolDefinition<JsonValue>;
315
+ export declare const openAIWebSearchTool: (config?: OpenAIWebSearchToolConfig) => import("@zhivex-ai/core").HostedToolDefinition<JsonValue>;
316
+ export declare const openAIFileSearchTool: (config?: OpenAIFileSearchToolConfig) => import("@zhivex-ai/core").HostedToolDefinition<JsonValue>;
317
+ export declare const openAICodeInterpreterTool: (config: OpenAICodeInterpreterToolConfig) => import("@zhivex-ai/core").HostedToolDefinition<JsonValue>;
318
+ export declare const openAIToolSearchTool: (config?: OpenAIToolSearchToolConfig) => import("@zhivex-ai/core").HostedToolDefinition<JsonValue>;
319
+ export declare const openAIProgrammaticToolCallingTool: () => import("@zhivex-ai/core").HostedToolDefinition<JsonValue>;
330
320
  export declare const openAIProgrammaticTool: <TSchema extends z.ZodTypeAny, TResult>(definition: ToolDefinition<TSchema, TResult>, options?: OpenAIProgrammaticToolOptions) => ToolDefinition<TSchema, TResult>;
331
- export declare const openAIRemoteMcpTool: (config: OpenAIRemoteMcpToolConfig) => import("@zhivex-ai/core/provider").HostedToolDefinition<JsonValue>;
332
- export declare const openAIMcpApprovalResponse: (response: Omit<OpenAIMcpApprovalResponse, "type">) => import("@zhivex-ai/core/provider").ContentPart;
321
+ export declare const openAIRemoteMcpTool: (config: OpenAIRemoteMcpToolConfig) => import("@zhivex-ai/core").HostedToolDefinition<JsonValue>;
322
+ export declare const openAIMcpApprovalResponse: (response: Omit<OpenAIMcpApprovalResponse, "type">) => import("@zhivex-ai/core").ContentPart;
333
323
  export declare const openAIRealtimeMcpApprovalResult: (response: OpenAIRealtimeMcpApprovalResultOptions) => ToolExecutionResult;
334
- export declare const openAIPromptCacheBreakpoint: () => import("@zhivex-ai/core/provider").ContentPart;
335
- export declare const openAIComputerUseTool: (config: OpenAIComputerUseToolConfig) => import("@zhivex-ai/core/provider").HostedToolDefinition<JsonValue>;
336
- export declare const openAIComputerTool: (config: OpenAIComputerToolConfig) => ToolDefinition<z.ZodType<OpenAIComputerCallInput>, JsonValue>;
337
- export declare const openAIHostedShellTool: (config: OpenAIHostedShellToolConfig) => import("@zhivex-ai/core/provider").HostedToolDefinition<JsonValue>;
324
+ export declare const openAIPromptCacheBreakpoint: () => import("@zhivex-ai/core").ContentPart;
325
+ export declare const openAIComputerUseTool: (config: OpenAIComputerUseToolConfig) => import("@zhivex-ai/core").HostedToolDefinition<JsonValue>;
326
+ export declare const openAIHostedShellTool: (config: OpenAIHostedShellToolConfig) => import("@zhivex-ai/core").HostedToolDefinition<JsonValue>;
338
327
  export declare const openAIShellTool: (config?: OpenAIShellToolConfig) => ToolDefinition<z.ZodType<OpenAIShellToolInput>, JsonValue>;
339
328
  export declare const openAIApplyPatchTool: (config: OpenAIApplyPatchToolConfig) => ToolDefinition<z.ZodType<OpenAIApplyPatchToolInput>, JsonValue>;
340
329
  export * from "./image-generation.js";
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"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"}
package/dist/index.js CHANGED
@@ -1,3 +1,6 @@
1
+ import { createOpenAIDecisionModel } from "./decision.js";
2
+ import { computerInputSchema, computerScreenshotSchema } from "./computer.js";
3
+ export { openAIComputerTool, OpenAIComputerExecutionError } from "./computer.js";
1
4
  import { jsonHeaders, parseJson, RESERVED_REQUEST_HEADERS } from "./http.js";
2
5
  import { OpenAIRealtimeModel, openAIRealtimeMcpMetadataKey, resolveOpenAIRealtimeHeaders } from "./realtime.js";
3
6
  export { openAIRealtimeMcpMetadataKey } from "./realtime.js";
@@ -462,6 +465,11 @@ const getProviderResponseId = (messages) => {
462
465
  }
463
466
  return undefined;
464
467
  };
468
+ const parseComputerCallInput = (item) => computerInputSchema.parse({
469
+ call_id: item.call_id,
470
+ actions: item.actions ?? (item.action ? [item.action] : undefined),
471
+ ...(item.pending_safety_checks !== undefined ? { pending_safety_checks: item.pending_safety_checks } : {})
472
+ });
465
473
  const serializeToolOutput = (message, format, calls) => message.parts
466
474
  .filter((part) => part.type === "tool-result")
467
475
  .map((part) => {
@@ -535,10 +543,21 @@ const serializeToolOutput = (message, format, calls) => message.parts
535
543
  if (part.toolResult.isError) {
536
544
  throw new Error(`OpenAI computer action execution failed: ${part.toolResult.error?.message ?? "unknown error"}`);
537
545
  }
546
+ const raw = part.toolResult.output;
547
+ const input = call ? computerInputSchema.parse(call.input) : undefined;
548
+ if ((input && input.call_id !== part.toolResult.toolCallId) || (raw?.call_id !== undefined && raw.call_id !== part.toolResult.toolCallId) || (!input && (raw?.call_id !== undefined || raw?.acknowledged_safety_checks !== undefined))) {
549
+ throw new ConfigurationError("OpenAI computer result is missing its correlated call identity.");
550
+ }
551
+ const pending = input?.pending_safety_checks ?? [];
552
+ const acknowledged = raw?.acknowledged_safety_checks ?? [];
553
+ if (JSON.stringify(pending) !== JSON.stringify(acknowledged)) {
554
+ throw new ConfigurationError("OpenAI computer safety acknowledgements do not match the pending checks.");
555
+ }
538
556
  return {
539
557
  type: "computer_call_output",
540
558
  call_id: part.toolResult.toolCallId,
541
- output: part.toolResult.output
559
+ output: computerScreenshotSchema.parse(raw),
560
+ ...(pending.length ? { acknowledged_safety_checks: pending } : {})
542
561
  };
543
562
  }
544
563
  return {
@@ -760,7 +779,7 @@ const parseResponsesAssistantMessage = (json, multiAgentEnabled = false, localTo
760
779
  const isExecutableToolOutput = (item) => item?.type === "function_call" ||
761
780
  (item?.type === "shell_call" && localTools.has("shell")) ||
762
781
  (item?.type === "apply_patch_call" && localTools.has("apply_patch")) ||
763
- (item?.type === "computer_call" && localTools.has("computer"));
782
+ (item?.type === "computer_call");
764
783
  const hasExecutableToolOutput = output.some(isExecutableToolOutput);
765
784
  if (hasExecutableToolOutput && responseStatus !== "completed") {
766
785
  throw openAIResponsesToolCallError(responseStatus === "failed"
@@ -837,16 +856,14 @@ const parseResponsesAssistantMessage = (json, multiAgentEnabled = false, localTo
837
856
  });
838
857
  continue;
839
858
  }
840
- if (item?.type === "computer_call" && localTools.has("computer")) {
859
+ if (item?.type === "computer_call") {
841
860
  parts.push({
842
861
  type: "tool-call",
843
862
  toolCall: {
844
863
  id: item.call_id ?? item.id ?? `computer-${index}`,
845
- name: localTools.get("computer"),
846
- input: {
847
- actions: Array.isArray(item.actions) ? item.actions : []
848
- },
849
- providerMetadata: { responsesToolType: "computer" }
864
+ name: localTools.get("computer") ?? "computer",
865
+ input: parseComputerCallInput(item),
866
+ providerMetadata: { responsesToolType: "computer", computerCallInput: JSON.stringify(parseComputerCallInput(item)) }
850
867
  }
851
868
  });
852
869
  continue;
@@ -1167,7 +1184,7 @@ const streamResponses = async function* (response, multiAgentEnabled = false, lo
1167
1184
  const isLocalExecutableItem = item?.type === "function_call" ||
1168
1185
  (item?.type === "shell_call" && localTools.has("shell")) ||
1169
1186
  (item?.type === "apply_patch_call" && localTools.has("apply_patch")) ||
1170
- (item?.type === "computer_call" && localTools.has("computer"));
1187
+ (item?.type === "computer_call");
1171
1188
  if (type === "response.output_item.done" &&
1172
1189
  isLocalExecutableItem &&
1173
1190
  typeof item.status === "string" &&
@@ -1237,16 +1254,14 @@ const streamResponses = async function* (response, multiAgentEnabled = false, lo
1237
1254
  });
1238
1255
  handledLocalToolCall = true;
1239
1256
  }
1240
- if (item?.type === "computer_call" && type === "response.output_item.done" && localTools.has("computer")) {
1257
+ if (item?.type === "computer_call" && type === "response.output_item.done") {
1241
1258
  pendingExecutableEvents.push({
1242
1259
  type: "tool-call",
1243
1260
  toolCall: {
1244
1261
  id: item.call_id ?? item.id ?? `${json.output_index ?? "computer"}`,
1245
- name: localTools.get("computer"),
1246
- input: {
1247
- actions: Array.isArray(item.actions) ? item.actions : []
1248
- },
1249
- providerMetadata: { responsesToolType: "computer" }
1262
+ name: localTools.get("computer") ?? "computer",
1263
+ input: parseComputerCallInput(item),
1264
+ providerMetadata: { responsesToolType: "computer", computerCallInput: JSON.stringify(parseComputerCallInput(item)) }
1250
1265
  }
1251
1266
  });
1252
1267
  handledLocalToolCall = true;
@@ -1789,6 +1804,7 @@ export const createOpenAI = (options = {}) => {
1789
1804
  const responseLimits = resolveOpenAIResponseLimits(options.responseLimits);
1790
1805
  return createProviderAdapter({
1791
1806
  name: "openai",
1807
+ experimentalDecisionModel: (modelId = "gpt-6-luna") => createOpenAIDecisionModel(modelId, { apiKey, baseURL, fetch: fetcher, allowUnsafeEndpoints: options.allowUnsafeEndpoints }),
1792
1808
  languageModel: (modelId) => {
1793
1809
  if (modelId.startsWith("gpt-live-"))
1794
1810
  throw new UnsupportedFeatureError("GPT-Live is a voice model; use openai.realtimeModel(modelId).");
@@ -1902,25 +1918,6 @@ export const openAIComputerUseTool = (config) => hostedTool({
1902
1918
  toolClass: "computer-use",
1903
1919
  config: config
1904
1920
  });
1905
- export const openAIComputerTool = (config) => ({
1906
- name: config.name ?? "computer",
1907
- description: "Execute batched actions requested by the OpenAI Responses computer tool and return a screenshot.",
1908
- requiresApproval: config.requiresApproval ?? true,
1909
- metadata: {
1910
- [openAIResponsesToolMetadataKey]: "computer",
1911
- "openai.responses_tool_config": {}
1912
- },
1913
- schema: z.object({
1914
- actions: z.array(z.record(z.string(), z.unknown()))
1915
- }),
1916
- execute: async (input) => {
1917
- const output = await config.execute(input);
1918
- return {
1919
- ...output,
1920
- detail: "original"
1921
- };
1922
- }
1923
- });
1924
1921
  const runOpenAIShellCommand = async (input, config) => {
1925
1922
  if (config.execute) {
1926
1923
  const result = await config.execute(input);
package/dist/index.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"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"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@zhivex-ai/openai",
3
- "version": "0.14.1",
3
+ "version": "0.15.0",
4
4
  "description": "OpenAI adapter for Zhivex AI SDK.",
5
5
  "license": "MIT",
6
6
  "type": "module",
@@ -41,7 +41,7 @@
41
41
  "access": "public"
42
42
  },
43
43
  "dependencies": {
44
- "@zhivex-ai/core": "^1.30.0",
44
+ "@zhivex-ai/core": "^1.31.0",
45
45
  "zod": "^4.6.3"
46
46
  }
47
47
  }