openai 7.26.0 → 7.27.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.
Files changed (67) hide show
  1. package/CHANGELOG.md +9 -0
  2. package/helpers/beta/agents/filesystem.d.mts +17 -0
  3. package/helpers/beta/agents/filesystem.d.mts.map +1 -0
  4. package/helpers/beta/agents/filesystem.d.ts +17 -0
  5. package/helpers/beta/agents/filesystem.d.ts.map +1 -0
  6. package/helpers/beta/agents/filesystem.js +168 -0
  7. package/helpers/beta/agents/filesystem.js.map +1 -0
  8. package/helpers/beta/agents/filesystem.mjs +162 -0
  9. package/helpers/beta/agents/filesystem.mjs.map +1 -0
  10. package/internal/shim-types.d.mts +9 -0
  11. package/internal/shim-types.d.mts.map +1 -1
  12. package/internal/shim-types.d.ts +9 -0
  13. package/internal/shim-types.d.ts.map +1 -1
  14. package/internal/tslib.js +4 -0
  15. package/lib/beta/agents/files.d.mts +33 -0
  16. package/lib/beta/agents/files.d.mts.map +1 -0
  17. package/lib/beta/agents/files.d.ts +33 -0
  18. package/lib/beta/agents/files.d.ts.map +1 -0
  19. package/lib/beta/agents/files.js +93 -0
  20. package/lib/beta/agents/files.js.map +1 -0
  21. package/lib/beta/agents/files.mjs +86 -0
  22. package/lib/beta/agents/files.mjs.map +1 -0
  23. package/lib/beta/agents/pages.d.mts +9 -0
  24. package/lib/beta/agents/pages.d.mts.map +1 -0
  25. package/lib/beta/agents/pages.d.ts +9 -0
  26. package/lib/beta/agents/pages.d.ts.map +1 -0
  27. package/lib/beta/agents/pages.js +32 -0
  28. package/lib/beta/agents/pages.js.map +1 -0
  29. package/lib/beta/agents/pages.mjs +29 -0
  30. package/lib/beta/agents/pages.mjs.map +1 -0
  31. package/lib/beta/agents/result-artifacts.d.mts +19 -0
  32. package/lib/beta/agents/result-artifacts.d.mts.map +1 -0
  33. package/lib/beta/agents/result-artifacts.d.ts +19 -0
  34. package/lib/beta/agents/result-artifacts.d.ts.map +1 -0
  35. package/lib/beta/agents/result-artifacts.js +67 -0
  36. package/lib/beta/agents/result-artifacts.js.map +1 -0
  37. package/lib/beta/agents/result-artifacts.mjs +63 -0
  38. package/lib/beta/agents/result-artifacts.mjs.map +1 -0
  39. package/package.json +1 -1
  40. package/resources/beta/agents/environments/files.d.mts +12 -0
  41. package/resources/beta/agents/environments/files.d.mts.map +1 -1
  42. package/resources/beta/agents/environments/files.d.ts +12 -0
  43. package/resources/beta/agents/environments/files.d.ts.map +1 -1
  44. package/resources/beta/agents/environments/files.js +9 -0
  45. package/resources/beta/agents/environments/files.js.map +1 -1
  46. package/resources/beta/agents/environments/files.mjs +9 -0
  47. package/resources/beta/agents/environments/files.mjs.map +1 -1
  48. package/resources/beta/agents/sessions/artifacts.d.mts +4 -0
  49. package/resources/beta/agents/sessions/artifacts.d.mts.map +1 -1
  50. package/resources/beta/agents/sessions/artifacts.d.ts +4 -0
  51. package/resources/beta/agents/sessions/artifacts.d.ts.map +1 -1
  52. package/resources/beta/agents/sessions/artifacts.js +5 -0
  53. package/resources/beta/agents/sessions/artifacts.js.map +1 -1
  54. package/resources/beta/agents/sessions/artifacts.mjs +5 -0
  55. package/resources/beta/agents/sessions/artifacts.mjs.map +1 -1
  56. package/src/helpers/beta/agents/filesystem.ts +187 -0
  57. package/src/internal/shim-types.ts +17 -0
  58. package/src/lib/beta/agents/files.ts +119 -0
  59. package/src/lib/beta/agents/pages.ts +32 -0
  60. package/src/lib/beta/agents/result-artifacts.ts +76 -0
  61. package/src/resources/beta/agents/environments/files.ts +16 -0
  62. package/src/resources/beta/agents/sessions/artifacts.ts +7 -0
  63. package/src/version.ts +1 -1
  64. package/version.d.mts +1 -1
  65. package/version.d.ts +1 -1
  66. package/version.js +1 -1
  67. package/version.mjs +1 -1
@@ -0,0 +1,93 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.AgentFileUploadError = void 0;
4
+ exports.validateAgentFilePath = validateAgentFilePath;
5
+ exports.prepareAgentFiles = prepareAgentFiles;
6
+ exports.uploadAgentFile = uploadAgentFile;
7
+ const error_1 = require("../../../core/error.js");
8
+ const headers_1 = require("../../../internal/headers.js");
9
+ /** Beta: uploaded file IDs remain available after partial preparation or staging failure. */
10
+ class AgentFileUploadError extends error_1.OpenAIError {
11
+ constructor(uploadedFiles, cause) {
12
+ super('Agent file preparation or staging failed; uploaded files remain caller-owned.');
13
+ this.name = 'AgentFileUploadError';
14
+ this.uploadedFiles = uploadedFiles;
15
+ Object.defineProperty(this, 'cause', { value: cause, configurable: true });
16
+ }
17
+ }
18
+ exports.AgentFileUploadError = AgentFileUploadError;
19
+ /** @internal */
20
+ function validateAgentFilePath(path) {
21
+ const parts = path.split('/');
22
+ const root = parts[2] ?? '';
23
+ if (!path.startsWith('/workspace/') ||
24
+ path.includes('\\') ||
25
+ path.includes('\0') ||
26
+ parts.slice(1).some((part) => part === '' || part === '.' || part === '..') ||
27
+ root === '.codex' ||
28
+ root === '.managed-agents' ||
29
+ root.startsWith('.managed-agents-') ||
30
+ path === '/workspace/outputs') {
31
+ throw new error_1.OpenAIError('Agent files require a non-reserved absolute file path inside /workspace');
32
+ }
33
+ }
34
+ function preflight(files, options) {
35
+ const entries = Object.entries(files);
36
+ const headers = (0, headers_1.buildHeaders)([options.headers]);
37
+ if (entries.length > 1 &&
38
+ (headers.values.has('idempotency-key') ||
39
+ (!headers.nulls.has('idempotency-key') && options?.idempotencyKey !== undefined))) {
40
+ throw new error_1.OpenAIError('Do not reuse an Idempotency-Key across multiple file uploads');
41
+ }
42
+ const paths = new Set(entries.map(([path]) => path));
43
+ for (const [path] of entries) {
44
+ validateAgentFilePath(path);
45
+ for (let slash = path.lastIndexOf('/'); slash > 0; slash = path.lastIndexOf('/', slash - 1)) {
46
+ if (paths.has(path.slice(0, slash))) {
47
+ throw new error_1.OpenAIError('Agent file destinations conflict');
48
+ }
49
+ }
50
+ }
51
+ return entries;
52
+ }
53
+ /** @internal */
54
+ async function prepareAgentFiles(client, files, options) {
55
+ const requestOptions = { ...options };
56
+ // Internal SDK read: capture effective headers once, including defaults and explicit omissions.
57
+ const headers = (0, headers_1.buildHeaders)([client['_options'].defaultHeaders, requestOptions.headers]);
58
+ requestOptions.headers = headers;
59
+ const entries = preflight(files, requestOptions);
60
+ if (entries.length > 1) {
61
+ // Keep a later mutation of client defaults from adding one key to this entire batch.
62
+ headers.nulls.add('idempotency-key');
63
+ }
64
+ const prepared = { files: [], uploadedFiles: [] };
65
+ try {
66
+ for (const [path, file] of entries) {
67
+ // oxlint-disable-next-line no-await-in-loop -- Stop on the first failure and expose precisely the uploads already created.
68
+ const uploaded = await client.files.create({ file, purpose: 'user_data' }, requestOptions);
69
+ prepared.uploadedFiles.push(uploaded);
70
+ prepared.files.push({ type: 'file_id', file_id: uploaded.id, path });
71
+ }
72
+ return prepared;
73
+ }
74
+ catch (error) {
75
+ throw new AgentFileUploadError(prepared.uploadedFiles, error);
76
+ }
77
+ }
78
+ /** @internal */
79
+ async function uploadAgentFile(client, resource, environmentID, params, options) {
80
+ const prepared = await prepareAgentFiles(client, { [params.path]: params.file }, options);
81
+ const [reference] = prepared.files;
82
+ const [uploadedFile] = prepared.uploadedFiles;
83
+ if (!reference || !uploadedFile) {
84
+ throw new error_1.OpenAIError('Missing prepared agent file');
85
+ }
86
+ try {
87
+ return { uploadedFile, environmentFile: await resource.create(environmentID, reference, options) };
88
+ }
89
+ catch (error) {
90
+ throw new AgentFileUploadError(prepared.uploadedFiles, error);
91
+ }
92
+ }
93
+ //# sourceMappingURL=files.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"files.js","sourceRoot":"","sources":["../../../src/lib/beta/agents/files.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,86 @@
1
+ import { OpenAIError } from "../../../core/error.mjs";
2
+ import { buildHeaders } from "../../../internal/headers.mjs";
3
+ /** Beta: uploaded file IDs remain available after partial preparation or staging failure. */
4
+ export class AgentFileUploadError extends OpenAIError {
5
+ constructor(uploadedFiles, cause) {
6
+ super('Agent file preparation or staging failed; uploaded files remain caller-owned.');
7
+ this.name = 'AgentFileUploadError';
8
+ this.uploadedFiles = uploadedFiles;
9
+ Object.defineProperty(this, 'cause', { value: cause, configurable: true });
10
+ }
11
+ }
12
+ /** @internal */
13
+ export function validateAgentFilePath(path) {
14
+ const parts = path.split('/');
15
+ const root = parts[2] ?? '';
16
+ if (!path.startsWith('/workspace/') ||
17
+ path.includes('\\') ||
18
+ path.includes('\0') ||
19
+ parts.slice(1).some((part) => part === '' || part === '.' || part === '..') ||
20
+ root === '.codex' ||
21
+ root === '.managed-agents' ||
22
+ root.startsWith('.managed-agents-') ||
23
+ path === '/workspace/outputs') {
24
+ throw new OpenAIError('Agent files require a non-reserved absolute file path inside /workspace');
25
+ }
26
+ }
27
+ function preflight(files, options) {
28
+ const entries = Object.entries(files);
29
+ const headers = buildHeaders([options.headers]);
30
+ if (entries.length > 1 &&
31
+ (headers.values.has('idempotency-key') ||
32
+ (!headers.nulls.has('idempotency-key') && options?.idempotencyKey !== undefined))) {
33
+ throw new OpenAIError('Do not reuse an Idempotency-Key across multiple file uploads');
34
+ }
35
+ const paths = new Set(entries.map(([path]) => path));
36
+ for (const [path] of entries) {
37
+ validateAgentFilePath(path);
38
+ for (let slash = path.lastIndexOf('/'); slash > 0; slash = path.lastIndexOf('/', slash - 1)) {
39
+ if (paths.has(path.slice(0, slash))) {
40
+ throw new OpenAIError('Agent file destinations conflict');
41
+ }
42
+ }
43
+ }
44
+ return entries;
45
+ }
46
+ /** @internal */
47
+ export async function prepareAgentFiles(client, files, options) {
48
+ const requestOptions = { ...options };
49
+ // Internal SDK read: capture effective headers once, including defaults and explicit omissions.
50
+ const headers = buildHeaders([client['_options'].defaultHeaders, requestOptions.headers]);
51
+ requestOptions.headers = headers;
52
+ const entries = preflight(files, requestOptions);
53
+ if (entries.length > 1) {
54
+ // Keep a later mutation of client defaults from adding one key to this entire batch.
55
+ headers.nulls.add('idempotency-key');
56
+ }
57
+ const prepared = { files: [], uploadedFiles: [] };
58
+ try {
59
+ for (const [path, file] of entries) {
60
+ // oxlint-disable-next-line no-await-in-loop -- Stop on the first failure and expose precisely the uploads already created.
61
+ const uploaded = await client.files.create({ file, purpose: 'user_data' }, requestOptions);
62
+ prepared.uploadedFiles.push(uploaded);
63
+ prepared.files.push({ type: 'file_id', file_id: uploaded.id, path });
64
+ }
65
+ return prepared;
66
+ }
67
+ catch (error) {
68
+ throw new AgentFileUploadError(prepared.uploadedFiles, error);
69
+ }
70
+ }
71
+ /** @internal */
72
+ export async function uploadAgentFile(client, resource, environmentID, params, options) {
73
+ const prepared = await prepareAgentFiles(client, { [params.path]: params.file }, options);
74
+ const [reference] = prepared.files;
75
+ const [uploadedFile] = prepared.uploadedFiles;
76
+ if (!reference || !uploadedFile) {
77
+ throw new OpenAIError('Missing prepared agent file');
78
+ }
79
+ try {
80
+ return { uploadedFile, environmentFile: await resource.create(environmentID, reference, options) };
81
+ }
82
+ catch (error) {
83
+ throw new AgentFileUploadError(prepared.uploadedFiles, error);
84
+ }
85
+ }
86
+ //# sourceMappingURL=files.mjs.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"files.mjs","sourceRoot":"","sources":["../../../src/lib/beta/agents/files.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,9 @@
1
+ import type { CursorPage } from "../../../core/pagination.mjs";
2
+ /** Retain server cursor metadata for legacy Agents items with nullable IDs.
3
+ * @internal
4
+ * @yields {T} Each item in server order, failing if pagination cannot advance.
5
+ */
6
+ export declare function agentItems<T extends {
7
+ id?: string | null;
8
+ }>(load: (after: string | undefined) => PromiseLike<CursorPage<T>>): AsyncGenerator<T, void, undefined>;
9
+ //# sourceMappingURL=pages.d.mts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"pages.d.mts","sourceRoot":"","sources":["../../../src/lib/beta/agents/pages.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,UAAU,EAAE,qCAAiC;AAG3D;;;GAGG;AACH,wBAAuB,UAAU,CAAC,CAAC,SAAS;IAAE,EAAE,CAAC,EAAE,MAAM,GAAG,IAAI,CAAA;CAAE,EAChE,IAAI,EAAE,CAAC,KAAK,EAAE,MAAM,GAAG,SAAS,KAAK,WAAW,CAAC,UAAU,CAAC,CAAC,CAAC,CAAC,GAC9D,cAAc,CAAC,CAAC,EAAE,IAAI,EAAE,SAAS,CAAC,CAqBpC"}
@@ -0,0 +1,9 @@
1
+ import type { CursorPage } from "../../../core/pagination.js";
2
+ /** Retain server cursor metadata for legacy Agents items with nullable IDs.
3
+ * @internal
4
+ * @yields {T} Each item in server order, failing if pagination cannot advance.
5
+ */
6
+ export declare function agentItems<T extends {
7
+ id?: string | null;
8
+ }>(load: (after: string | undefined) => PromiseLike<CursorPage<T>>): AsyncGenerator<T, void, undefined>;
9
+ //# sourceMappingURL=pages.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"pages.d.ts","sourceRoot":"","sources":["../../../src/lib/beta/agents/pages.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,UAAU,EAAE,oCAAiC;AAG3D;;;GAGG;AACH,wBAAuB,UAAU,CAAC,CAAC,SAAS;IAAE,EAAE,CAAC,EAAE,MAAM,GAAG,IAAI,CAAA;CAAE,EAChE,IAAI,EAAE,CAAC,KAAK,EAAE,MAAM,GAAG,SAAS,KAAK,WAAW,CAAC,UAAU,CAAC,CAAC,CAAC,CAAC,GAC9D,cAAc,CAAC,CAAC,EAAE,IAAI,EAAE,SAAS,CAAC,CAqBpC"}
@@ -0,0 +1,32 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.agentItems = agentItems;
4
+ const error_1 = require("../../../core/error.js");
5
+ const values_1 = require("../../../internal/utils/values.js");
6
+ /** Retain server cursor metadata for legacy Agents items with nullable IDs.
7
+ * @internal
8
+ * @yields {T} Each item in server order, failing if pagination cannot advance.
9
+ */
10
+ async function* agentItems(load) {
11
+ let after;
12
+ while (true) {
13
+ // oxlint-disable-next-line no-await-in-loop -- Each page determines the next cursor.
14
+ const page = await load(after);
15
+ yield* page.data;
16
+ if (!page.has_more) {
17
+ return;
18
+ }
19
+ // Internal SDK read: CursorPage keeps raw metadata but does not expose last_id.
20
+ // oxlint-disable-next-line prefer-destructuring -- Bracket access intentionally reads a protected internal field.
21
+ const body = page['body'];
22
+ // oxlint-disable-next-line unicorn/prefer-at -- Keep published source compatible with ES2020 declarations.
23
+ const last = page.data[page.data.length - 1];
24
+ // oxlint-disable-next-line anti-slop/no-runtime-typeof -- Validate only the opaque cursor from response metadata.
25
+ const cursor = (0, values_1.isObj)(body) && typeof body['last_id'] === 'string' ? body['last_id'] : last?.id;
26
+ if (!cursor || cursor === after) {
27
+ throw new error_1.OpenAIError('Agent pagination cannot advance to the next page');
28
+ }
29
+ after = cursor;
30
+ }
31
+ }
32
+ //# sourceMappingURL=pages.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"pages.js","sourceRoot":"","sources":["../../../src/lib/beta/agents/pages.ts"],"names":[],"mappings":";;AAQA,gCAuBC;AA/BD,kDAAkD;AAElD,8DAAuD;AAEvD;;;GAGG;AACI,KAAK,SAAS,CAAC,CAAC,UAAU,CAC/B,IAA+D;IAE/D,IAAI,KAAyB,CAAC;IAC9B,OAAO,IAAI,EAAE,CAAC;QACZ,qFAAqF;QACrF,MAAM,IAAI,GAAG,MAAM,IAAI,CAAC,KAAK,CAAC,CAAC;QAC/B,KAAK,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC;QACjB,IAAI,CAAC,IAAI,CAAC,QAAQ,EAAE,CAAC;YACnB,OAAO;QACT,CAAC;QACD,gFAAgF;QAChF,kHAAkH;QAClH,MAAM,IAAI,GAAG,IAAI,CAAC,MAAM,CAAC,CAAC;QAC1B,2GAA2G;QAC3G,MAAM,IAAI,GAAG,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC;QAC7C,kHAAkH;QAClH,MAAM,MAAM,GAAG,IAAA,cAAK,EAAC,IAAI,CAAC,IAAI,OAAO,IAAI,CAAC,SAAS,CAAC,KAAK,QAAQ,CAAC,CAAC,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC;QAC/F,IAAI,CAAC,MAAM,IAAI,MAAM,KAAK,KAAK,EAAE,CAAC;YAChC,MAAM,IAAI,mBAAW,CAAC,kDAAkD,CAAC,CAAC;QAC5E,CAAC;QACD,KAAK,GAAG,MAAM,CAAC;IACjB,CAAC;AACH,CAAC"}
@@ -0,0 +1,29 @@
1
+ import { OpenAIError } from "../../../core/error.mjs";
2
+ import { isObj } from "../../../internal/utils/values.mjs";
3
+ /** Retain server cursor metadata for legacy Agents items with nullable IDs.
4
+ * @internal
5
+ * @yields {T} Each item in server order, failing if pagination cannot advance.
6
+ */
7
+ export async function* agentItems(load) {
8
+ let after;
9
+ while (true) {
10
+ // oxlint-disable-next-line no-await-in-loop -- Each page determines the next cursor.
11
+ const page = await load(after);
12
+ yield* page.data;
13
+ if (!page.has_more) {
14
+ return;
15
+ }
16
+ // Internal SDK read: CursorPage keeps raw metadata but does not expose last_id.
17
+ // oxlint-disable-next-line prefer-destructuring -- Bracket access intentionally reads a protected internal field.
18
+ const body = page['body'];
19
+ // oxlint-disable-next-line unicorn/prefer-at -- Keep published source compatible with ES2020 declarations.
20
+ const last = page.data[page.data.length - 1];
21
+ // oxlint-disable-next-line anti-slop/no-runtime-typeof -- Validate only the opaque cursor from response metadata.
22
+ const cursor = isObj(body) && typeof body['last_id'] === 'string' ? body['last_id'] : last?.id;
23
+ if (!cursor || cursor === after) {
24
+ throw new OpenAIError('Agent pagination cannot advance to the next page');
25
+ }
26
+ after = cursor;
27
+ }
28
+ }
29
+ //# sourceMappingURL=pages.mjs.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"pages.mjs","sourceRoot":"","sources":["../../../src/lib/beta/agents/pages.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,WAAW,EAAE,gCAA4B;AAElD,OAAO,EAAE,KAAK,EAAE,2CAAuC;AAEvD;;;GAGG;AACH,MAAM,CAAC,KAAK,SAAS,CAAC,CAAC,UAAU,CAC/B,IAA+D;IAE/D,IAAI,KAAyB,CAAC;IAC9B,OAAO,IAAI,EAAE,CAAC;QACZ,qFAAqF;QACrF,MAAM,IAAI,GAAG,MAAM,IAAI,CAAC,KAAK,CAAC,CAAC;QAC/B,KAAK,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC;QACjB,IAAI,CAAC,IAAI,CAAC,QAAQ,EAAE,CAAC;YACnB,OAAO;QACT,CAAC;QACD,gFAAgF;QAChF,kHAAkH;QAClH,MAAM,IAAI,GAAG,IAAI,CAAC,MAAM,CAAC,CAAC;QAC1B,2GAA2G;QAC3G,MAAM,IAAI,GAAG,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC;QAC7C,kHAAkH;QAClH,MAAM,MAAM,GAAG,KAAK,CAAC,IAAI,CAAC,IAAI,OAAO,IAAI,CAAC,SAAS,CAAC,KAAK,QAAQ,CAAC,CAAC,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC;QAC/F,IAAI,CAAC,MAAM,IAAI,MAAM,KAAK,KAAK,EAAE,CAAC;YAChC,MAAM,IAAI,WAAW,CAAC,kDAAkD,CAAC,CAAC;QAC5E,CAAC;QACD,KAAK,GAAG,MAAM,CAAC;IACjB,CAAC;AACH,CAAC"}
@@ -0,0 +1,19 @@
1
+ import type { WritableStream } from "../../../internal/shim-types.mjs";
2
+ import type { RequestOptions } from "../../../internal/request-options.mjs";
3
+ import type { Artifacts, SessionArtifact } from "../../../resources/beta/agents/sessions/artifacts.mjs";
4
+ import type { AgentTurnResult } from "./agent-turn-result.mjs";
5
+ /** Beta: artifacts from the exact session and turn represented by a result. */
6
+ export declare class AgentResultArtifacts {
7
+ #private;
8
+ constructor(resource: Artifacts, result: AgentTurnResult);
9
+ /** Find one immutable artifact by its exact hosted path, across all pages. */
10
+ retrieve(path: string, options?: RequestOptions): Promise<SessionArtifact>;
11
+ /** Return the native binary response for this result's exact artifact path. */
12
+ content(path: string, options?: RequestOptions): Promise<Response>;
13
+ /** Stream bytes to a caller-chosen destination; the hosted path never selects a local path. */
14
+ download(params: {
15
+ path: string;
16
+ to: WritableStream<Uint8Array>;
17
+ }, options?: RequestOptions): Promise<SessionArtifact>;
18
+ }
19
+ //# sourceMappingURL=result-artifacts.d.mts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"result-artifacts.d.mts","sourceRoot":"","sources":["../../../src/lib/beta/agents/result-artifacts.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,cAAc,EAAE,yCAAqC;AAGnE,OAAO,KAAK,EAAE,cAAc,EAAE,8CAA0C;AACxE,OAAO,KAAK,EAAE,SAAS,EAAE,eAAe,EAAE,8DAA0D;AACpG,OAAO,KAAK,EAAE,eAAe,EAAE,gCAA4B;AAE3D,+EAA+E;AAC/E,qBAAa,oBAAoB;;gBAInB,QAAQ,EAAE,SAAS,EAAE,MAAM,EAAE,eAAe;IAMxD,8EAA8E;IACxE,QAAQ,CAAC,IAAI,EAAE,MAAM,EAAE,OAAO,CAAC,EAAE,cAAc,GAAG,OAAO,CAAC,eAAe,CAAC;IA0BhF,+EAA+E;IACzE,OAAO,CAAC,IAAI,EAAE,MAAM,EAAE,OAAO,CAAC,EAAE,cAAc,GAAG,OAAO,CAAC,QAAQ,CAAC;IAKxE,+FAA+F;IACzF,QAAQ,CACZ,MAAM,EAAE;QAAE,IAAI,EAAE,MAAM,CAAC;QAAC,EAAE,EAAE,cAAc,CAAC,UAAU,CAAC,CAAA;KAAE,EACxD,OAAO,CAAC,EAAE,cAAc,GACvB,OAAO,CAAC,eAAe,CAAC;CAoB5B"}
@@ -0,0 +1,19 @@
1
+ import type { WritableStream } from "../../../internal/shim-types.js";
2
+ import type { RequestOptions } from "../../../internal/request-options.js";
3
+ import type { Artifacts, SessionArtifact } from "../../../resources/beta/agents/sessions/artifacts.js";
4
+ import type { AgentTurnResult } from "./agent-turn-result.js";
5
+ /** Beta: artifacts from the exact session and turn represented by a result. */
6
+ export declare class AgentResultArtifacts {
7
+ #private;
8
+ constructor(resource: Artifacts, result: AgentTurnResult);
9
+ /** Find one immutable artifact by its exact hosted path, across all pages. */
10
+ retrieve(path: string, options?: RequestOptions): Promise<SessionArtifact>;
11
+ /** Return the native binary response for this result's exact artifact path. */
12
+ content(path: string, options?: RequestOptions): Promise<Response>;
13
+ /** Stream bytes to a caller-chosen destination; the hosted path never selects a local path. */
14
+ download(params: {
15
+ path: string;
16
+ to: WritableStream<Uint8Array>;
17
+ }, options?: RequestOptions): Promise<SessionArtifact>;
18
+ }
19
+ //# sourceMappingURL=result-artifacts.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"result-artifacts.d.ts","sourceRoot":"","sources":["../../../src/lib/beta/agents/result-artifacts.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,cAAc,EAAE,wCAAqC;AAGnE,OAAO,KAAK,EAAE,cAAc,EAAE,6CAA0C;AACxE,OAAO,KAAK,EAAE,SAAS,EAAE,eAAe,EAAE,6DAA0D;AACpG,OAAO,KAAK,EAAE,eAAe,EAAE,+BAA4B;AAE3D,+EAA+E;AAC/E,qBAAa,oBAAoB;;gBAInB,QAAQ,EAAE,SAAS,EAAE,MAAM,EAAE,eAAe;IAMxD,8EAA8E;IACxE,QAAQ,CAAC,IAAI,EAAE,MAAM,EAAE,OAAO,CAAC,EAAE,cAAc,GAAG,OAAO,CAAC,eAAe,CAAC;IA0BhF,+EAA+E;IACzE,OAAO,CAAC,IAAI,EAAE,MAAM,EAAE,OAAO,CAAC,EAAE,cAAc,GAAG,OAAO,CAAC,QAAQ,CAAC;IAKxE,+FAA+F;IACzF,QAAQ,CACZ,MAAM,EAAE;QAAE,IAAI,EAAE,MAAM,CAAC;QAAC,EAAE,EAAE,cAAc,CAAC,UAAU,CAAC,CAAA;KAAE,EACxD,OAAO,CAAC,EAAE,cAAc,GACvB,OAAO,CAAC,eAAe,CAAC;CAoB5B"}
@@ -0,0 +1,67 @@
1
+ "use strict";
2
+ var _AgentResultArtifacts_resource, _AgentResultArtifacts_sessionID, _AgentResultArtifacts_turnID;
3
+ Object.defineProperty(exports, "__esModule", { value: true });
4
+ exports.AgentResultArtifacts = void 0;
5
+ const tslib_1 = require("../../../internal/tslib.js");
6
+ const pages_1 = require("./pages.js");
7
+ const error_1 = require("../../../core/error.js");
8
+ /** Beta: artifacts from the exact session and turn represented by a result. */
9
+ class AgentResultArtifacts {
10
+ constructor(resource, result) {
11
+ _AgentResultArtifacts_resource.set(this, void 0);
12
+ _AgentResultArtifacts_sessionID.set(this, void 0);
13
+ _AgentResultArtifacts_turnID.set(this, void 0);
14
+ tslib_1.__classPrivateFieldSet(this, _AgentResultArtifacts_resource, resource, "f");
15
+ tslib_1.__classPrivateFieldSet(this, _AgentResultArtifacts_sessionID, result.session_id, "f");
16
+ tslib_1.__classPrivateFieldSet(this, _AgentResultArtifacts_turnID, result.turn_id, "f");
17
+ }
18
+ /** Find one immutable artifact by its exact hosted path, across all pages. */
19
+ async retrieve(path, options) {
20
+ let selected;
21
+ for await (const artifact of (0, pages_1.agentItems)((after) => tslib_1.__classPrivateFieldGet(this, _AgentResultArtifacts_resource, "f").list(tslib_1.__classPrivateFieldGet(this, _AgentResultArtifacts_sessionID, "f"), {}, { ...options, query: { ...options?.query, after, environment_id: undefined } }))) {
22
+ if (artifact.session_id === tslib_1.__classPrivateFieldGet(this, _AgentResultArtifacts_sessionID, "f") &&
23
+ artifact.turn_id === tslib_1.__classPrivateFieldGet(this, _AgentResultArtifacts_turnID, "f") &&
24
+ artifact.path === path) {
25
+ if (selected) {
26
+ throw new error_1.OpenAIError('Multiple artifacts match this result and path');
27
+ }
28
+ selected = artifact;
29
+ }
30
+ }
31
+ if (!selected) {
32
+ throw new error_1.OpenAIError('No artifact matches this result and path');
33
+ }
34
+ return selected;
35
+ }
36
+ /** Return the native binary response for this result's exact artifact path. */
37
+ async content(path, options) {
38
+ const artifact = await this.retrieve(path, options);
39
+ return tslib_1.__classPrivateFieldGet(this, _AgentResultArtifacts_resource, "f").content(artifact.id, { session_id: tslib_1.__classPrivateFieldGet(this, _AgentResultArtifacts_sessionID, "f") }, options);
40
+ }
41
+ /** Stream bytes to a caller-chosen destination; the hosted path never selects a local path. */
42
+ async download(params, options) {
43
+ const { path, to } = params;
44
+ const artifact = await this.retrieve(path, options);
45
+ const response = await tslib_1.__classPrivateFieldGet(this, _AgentResultArtifacts_resource, "f").content(artifact.id, { session_id: tslib_1.__classPrivateFieldGet(this, _AgentResultArtifacts_sessionID, "f") }, options);
46
+ if (!response.body) {
47
+ throw new error_1.OpenAIError('Artifact response has no content stream');
48
+ }
49
+ try {
50
+ await response.body.pipeTo(to, options?.signal ? { signal: options.signal } : {});
51
+ }
52
+ catch (error) {
53
+ // pipeTo can reject before acquiring a reader, for example when the destination is locked.
54
+ try {
55
+ await response.body.cancel();
56
+ }
57
+ catch {
58
+ /* already cancelled or owned by pipeTo */
59
+ }
60
+ throw error;
61
+ }
62
+ return artifact;
63
+ }
64
+ }
65
+ exports.AgentResultArtifacts = AgentResultArtifacts;
66
+ _AgentResultArtifacts_resource = new WeakMap(), _AgentResultArtifacts_sessionID = new WeakMap(), _AgentResultArtifacts_turnID = new WeakMap();
67
+ //# sourceMappingURL=result-artifacts.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"result-artifacts.js","sourceRoot":"","sources":["../../../src/lib/beta/agents/result-artifacts.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,63 @@
1
+ var _AgentResultArtifacts_resource, _AgentResultArtifacts_sessionID, _AgentResultArtifacts_turnID;
2
+ import { __classPrivateFieldGet, __classPrivateFieldSet } from "../../../internal/tslib.mjs";
3
+ import { agentItems } from "./pages.mjs";
4
+ import { OpenAIError } from "../../../core/error.mjs";
5
+ /** Beta: artifacts from the exact session and turn represented by a result. */
6
+ export class AgentResultArtifacts {
7
+ constructor(resource, result) {
8
+ _AgentResultArtifacts_resource.set(this, void 0);
9
+ _AgentResultArtifacts_sessionID.set(this, void 0);
10
+ _AgentResultArtifacts_turnID.set(this, void 0);
11
+ __classPrivateFieldSet(this, _AgentResultArtifacts_resource, resource, "f");
12
+ __classPrivateFieldSet(this, _AgentResultArtifacts_sessionID, result.session_id, "f");
13
+ __classPrivateFieldSet(this, _AgentResultArtifacts_turnID, result.turn_id, "f");
14
+ }
15
+ /** Find one immutable artifact by its exact hosted path, across all pages. */
16
+ async retrieve(path, options) {
17
+ let selected;
18
+ for await (const artifact of agentItems((after) => __classPrivateFieldGet(this, _AgentResultArtifacts_resource, "f").list(__classPrivateFieldGet(this, _AgentResultArtifacts_sessionID, "f"), {}, { ...options, query: { ...options?.query, after, environment_id: undefined } }))) {
19
+ if (artifact.session_id === __classPrivateFieldGet(this, _AgentResultArtifacts_sessionID, "f") &&
20
+ artifact.turn_id === __classPrivateFieldGet(this, _AgentResultArtifacts_turnID, "f") &&
21
+ artifact.path === path) {
22
+ if (selected) {
23
+ throw new OpenAIError('Multiple artifacts match this result and path');
24
+ }
25
+ selected = artifact;
26
+ }
27
+ }
28
+ if (!selected) {
29
+ throw new OpenAIError('No artifact matches this result and path');
30
+ }
31
+ return selected;
32
+ }
33
+ /** Return the native binary response for this result's exact artifact path. */
34
+ async content(path, options) {
35
+ const artifact = await this.retrieve(path, options);
36
+ return __classPrivateFieldGet(this, _AgentResultArtifacts_resource, "f").content(artifact.id, { session_id: __classPrivateFieldGet(this, _AgentResultArtifacts_sessionID, "f") }, options);
37
+ }
38
+ /** Stream bytes to a caller-chosen destination; the hosted path never selects a local path. */
39
+ async download(params, options) {
40
+ const { path, to } = params;
41
+ const artifact = await this.retrieve(path, options);
42
+ const response = await __classPrivateFieldGet(this, _AgentResultArtifacts_resource, "f").content(artifact.id, { session_id: __classPrivateFieldGet(this, _AgentResultArtifacts_sessionID, "f") }, options);
43
+ if (!response.body) {
44
+ throw new OpenAIError('Artifact response has no content stream');
45
+ }
46
+ try {
47
+ await response.body.pipeTo(to, options?.signal ? { signal: options.signal } : {});
48
+ }
49
+ catch (error) {
50
+ // pipeTo can reject before acquiring a reader, for example when the destination is locked.
51
+ try {
52
+ await response.body.cancel();
53
+ }
54
+ catch {
55
+ /* already cancelled or owned by pipeTo */
56
+ }
57
+ throw error;
58
+ }
59
+ return artifact;
60
+ }
61
+ }
62
+ _AgentResultArtifacts_resource = new WeakMap(), _AgentResultArtifacts_sessionID = new WeakMap(), _AgentResultArtifacts_turnID = new WeakMap();
63
+ //# sourceMappingURL=result-artifacts.mjs.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"result-artifacts.mjs","sourceRoot":"","sources":["../../../src/lib/beta/agents/result-artifacts.ts"],"names":[],"mappings":"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"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "openai",
3
- "version": "7.26.0",
3
+ "version": "7.27.0",
4
4
  "description": "The official TypeScript library for the OpenAI API",
5
5
  "author": "OpenAI <support@openai.com>",
6
6
  "types": "./index.d.ts",
@@ -1,8 +1,20 @@
1
+ import { type PreparedAgentFiles } from "../../../../lib/beta/agents/files.mjs";
2
+ import type { Uploadable } from "../../../../internal/uploads.mjs";
1
3
  import { APIResource } from "../../../../core/resource.mjs";
2
4
  import { APIPromise } from "../../../../core/api-promise.mjs";
3
5
  import { PagePromise, TokenPage, type TokenPageParams } from "../../../../core/pagination.mjs";
4
6
  import { RequestOptions } from "../../../../internal/request-options.mjs";
5
7
  export declare class Files extends APIResource {
8
+ /** Beta: prepare initial hosted file references; uploaded Files API objects remain caller-owned. */
9
+ prepare(files: Record<string, Uploadable>, options?: RequestOptions): Promise<PreparedAgentFiles>;
10
+ /** Beta: upload one local file and stage its reference in a live environment. */
11
+ upload(environmentID: string, params: {
12
+ file: Uploadable;
13
+ path: string;
14
+ }, options?: RequestOptions): Promise<{
15
+ uploadedFile: import("../../../index.mjs").FileObject;
16
+ environmentFile: EnvironmentFile;
17
+ }>;
6
18
  /**
7
19
  * Copies inline bytes or a Files API file into a connected execution environment.
8
20
  * See
@@ -1 +1 @@
1
- {"version":3,"file":"files.d.mts","sourceRoot":"","sources":["../../../../src/resources/beta/agents/environments/files.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,WAAW,EAAE,sCAAkC;AACxD,OAAO,EAAE,UAAU,EAAE,yCAAqC;AAC1D,OAAO,EAAE,WAAW,EAAE,SAAS,EAAE,KAAK,eAAe,EAAE,wCAAoC;AAE3F,OAAO,EAAE,cAAc,EAAE,iDAA6C;AAUtE,qBAAa,KAAM,SAAQ,WAAW;IACpC;;;;;;;;;;;;;;;;;OAiBG;IACH,MAAM,CACJ,aAAa,EAAE,MAAM,EACrB,IAAI,EAAE,gBAAgB,EACtB,OAAO,CAAC,EAAE,cAAc,GACvB,UAAU,CAAC,eAAe,CAAC;IAY9B;;;;;;;;;;;;;;OAcG;IACH,IAAI,CACF,aAAa,EAAE,MAAM,EACrB,KAAK,GAAE,cAAc,GAAG,IAAI,GAAG,SAAc,EAC7C,OAAO,CAAC,EAAE,cAAc,GACvB,WAAW,CAAC,oBAAoB,EAAE,eAAe,CAAC;CAYtD;AAED,MAAM,MAAM,oBAAoB,GAAG,SAAS,CAAC,eAAe,CAAC,CAAC;AAE9D;;GAEG;AACH,MAAM,WAAW,eAAe;IAC9B;;OAEG;IACH,cAAc,EAAE,MAAM,CAAC;IAEvB;;OAEG;IACH,MAAM,EAAE,wBAAwB,CAAC;IAEjC;;OAEG;IACH,IAAI,EAAE,MAAM,CAAC;IAEb;;OAEG;IACH,UAAU,EAAE,MAAM,CAAC;CACpB;AAED,MAAM,MAAM,gBAAgB,GACxB,gBAAgB,CAAC,gCAAgC,GACjD,gBAAgB,CAAC,gCAAgC,CAAC;AAEtD,MAAM,CAAC,OAAO,WAAW,gBAAgB,CAAC;IACxC,UAAiB,gCAAgC;QAC/C;;WAEG;QACH,OAAO,EAAE,MAAM,CAAC;QAEhB;;WAEG;QACH,IAAI,EAAE,MAAM,CAAC;QAEb;;WAEG;QACH,IAAI,EAAE,SAAS,CAAC;KACjB;IAED,UAAiB,gCAAgC;QAC/C;;WAEG;QACH,IAAI,EAAE,MAAM,CAAC;QAEb;;WAEG;QACH,IAAI,EAAE,MAAM,CAAC;QAEb;;WAEG;QACH,IAAI,EAAE,QAAQ,CAAC;KAChB;CACF;AAED,MAAM,WAAW,cAAe,SAAQ,IAAI,CAAC,eAAe,EAAE,OAAO,CAAC;IACpE;;OAEG;IACH,KAAK,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;IAEtB;;;;;OAKG;IACH,KAAK,CAAC,EAAE,KAAK,GAAG,MAAM,CAAC;IAEvB;;OAEG;IACH,IAAI,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;CACtB;AAED,MAAM,CAAC,OAAO,WAAW,KAAK,CAAC;IAC7B,OAAO,EACL,KAAK,eAAe,IAAI,eAAe,EACvC,KAAK,oBAAoB,IAAI,oBAAoB,EACjD,KAAK,gBAAgB,IAAI,gBAAgB,EACzC,KAAK,cAAc,IAAI,cAAc,GACtC,CAAC;CACH"}
1
+ {"version":3,"file":"files.d.mts","sourceRoot":"","sources":["../../../../src/resources/beta/agents/environments/files.ts"],"names":[],"mappings":"AAEA,OAAO,EAGL,KAAK,kBAAkB,EACxB,8CAA0C;AAC3C,OAAO,KAAK,EAAE,UAAU,EAAE,yCAAqC;AAC/D,OAAO,EAAE,WAAW,EAAE,sCAAkC;AACxD,OAAO,EAAE,UAAU,EAAE,yCAAqC;AAC1D,OAAO,EAAE,WAAW,EAAE,SAAS,EAAE,KAAK,eAAe,EAAE,wCAAoC;AAE3F,OAAO,EAAE,cAAc,EAAE,iDAA6C;AAUtE,qBAAa,KAAM,SAAQ,WAAW;IACpC,oGAAoG;IACpG,OAAO,CAAC,KAAK,EAAE,MAAM,CAAC,MAAM,EAAE,UAAU,CAAC,EAAE,OAAO,CAAC,EAAE,cAAc,GAAG,OAAO,CAAC,kBAAkB,CAAC;IAIjG,iFAAiF;IACjF,MAAM,CAAC,aAAa,EAAE,MAAM,EAAE,MAAM,EAAE;QAAE,IAAI,EAAE,UAAU,CAAC;QAAC,IAAI,EAAE,MAAM,CAAA;KAAE,EAAE,OAAO,CAAC,EAAE,cAAc;;;;IAIlG;;;;;;;;;;;;;;;;;OAiBG;IACH,MAAM,CACJ,aAAa,EAAE,MAAM,EACrB,IAAI,EAAE,gBAAgB,EACtB,OAAO,CAAC,EAAE,cAAc,GACvB,UAAU,CAAC,eAAe,CAAC;IAY9B;;;;;;;;;;;;;;OAcG;IACH,IAAI,CACF,aAAa,EAAE,MAAM,EACrB,KAAK,GAAE,cAAc,GAAG,IAAI,GAAG,SAAc,EAC7C,OAAO,CAAC,EAAE,cAAc,GACvB,WAAW,CAAC,oBAAoB,EAAE,eAAe,CAAC;CAYtD;AAED,MAAM,MAAM,oBAAoB,GAAG,SAAS,CAAC,eAAe,CAAC,CAAC;AAE9D;;GAEG;AACH,MAAM,WAAW,eAAe;IAC9B;;OAEG;IACH,cAAc,EAAE,MAAM,CAAC;IAEvB;;OAEG;IACH,MAAM,EAAE,wBAAwB,CAAC;IAEjC;;OAEG;IACH,IAAI,EAAE,MAAM,CAAC;IAEb;;OAEG;IACH,UAAU,EAAE,MAAM,CAAC;CACpB;AAED,MAAM,MAAM,gBAAgB,GACxB,gBAAgB,CAAC,gCAAgC,GACjD,gBAAgB,CAAC,gCAAgC,CAAC;AAEtD,MAAM,CAAC,OAAO,WAAW,gBAAgB,CAAC;IACxC,UAAiB,gCAAgC;QAC/C;;WAEG;QACH,OAAO,EAAE,MAAM,CAAC;QAEhB;;WAEG;QACH,IAAI,EAAE,MAAM,CAAC;QAEb;;WAEG;QACH,IAAI,EAAE,SAAS,CAAC;KACjB;IAED,UAAiB,gCAAgC;QAC/C;;WAEG;QACH,IAAI,EAAE,MAAM,CAAC;QAEb;;WAEG;QACH,IAAI,EAAE,MAAM,CAAC;QAEb;;WAEG;QACH,IAAI,EAAE,QAAQ,CAAC;KAChB;CACF;AAED,MAAM,WAAW,cAAe,SAAQ,IAAI,CAAC,eAAe,EAAE,OAAO,CAAC;IACpE;;OAEG;IACH,KAAK,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;IAEtB;;;;;OAKG;IACH,KAAK,CAAC,EAAE,KAAK,GAAG,MAAM,CAAC;IAEvB;;OAEG;IACH,IAAI,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;CACtB;AAED,MAAM,CAAC,OAAO,WAAW,KAAK,CAAC;IAC7B,OAAO,EACL,KAAK,eAAe,IAAI,eAAe,EACvC,KAAK,oBAAoB,IAAI,oBAAoB,EACjD,KAAK,gBAAgB,IAAI,gBAAgB,EACzC,KAAK,cAAc,IAAI,cAAc,GACtC,CAAC;CACH"}
@@ -1,8 +1,20 @@
1
+ import { type PreparedAgentFiles } from "../../../../lib/beta/agents/files.js";
2
+ import type { Uploadable } from "../../../../internal/uploads.js";
1
3
  import { APIResource } from "../../../../core/resource.js";
2
4
  import { APIPromise } from "../../../../core/api-promise.js";
3
5
  import { PagePromise, TokenPage, type TokenPageParams } from "../../../../core/pagination.js";
4
6
  import { RequestOptions } from "../../../../internal/request-options.js";
5
7
  export declare class Files extends APIResource {
8
+ /** Beta: prepare initial hosted file references; uploaded Files API objects remain caller-owned. */
9
+ prepare(files: Record<string, Uploadable>, options?: RequestOptions): Promise<PreparedAgentFiles>;
10
+ /** Beta: upload one local file and stage its reference in a live environment. */
11
+ upload(environmentID: string, params: {
12
+ file: Uploadable;
13
+ path: string;
14
+ }, options?: RequestOptions): Promise<{
15
+ uploadedFile: import("../../../index.js").FileObject;
16
+ environmentFile: EnvironmentFile;
17
+ }>;
6
18
  /**
7
19
  * Copies inline bytes or a Files API file into a connected execution environment.
8
20
  * See
@@ -1 +1 @@
1
- {"version":3,"file":"files.d.ts","sourceRoot":"","sources":["../../../../src/resources/beta/agents/environments/files.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,WAAW,EAAE,qCAAkC;AACxD,OAAO,EAAE,UAAU,EAAE,wCAAqC;AAC1D,OAAO,EAAE,WAAW,EAAE,SAAS,EAAE,KAAK,eAAe,EAAE,uCAAoC;AAE3F,OAAO,EAAE,cAAc,EAAE,gDAA6C;AAUtE,qBAAa,KAAM,SAAQ,WAAW;IACpC;;;;;;;;;;;;;;;;;OAiBG;IACH,MAAM,CACJ,aAAa,EAAE,MAAM,EACrB,IAAI,EAAE,gBAAgB,EACtB,OAAO,CAAC,EAAE,cAAc,GACvB,UAAU,CAAC,eAAe,CAAC;IAY9B;;;;;;;;;;;;;;OAcG;IACH,IAAI,CACF,aAAa,EAAE,MAAM,EACrB,KAAK,GAAE,cAAc,GAAG,IAAI,GAAG,SAAc,EAC7C,OAAO,CAAC,EAAE,cAAc,GACvB,WAAW,CAAC,oBAAoB,EAAE,eAAe,CAAC;CAYtD;AAED,MAAM,MAAM,oBAAoB,GAAG,SAAS,CAAC,eAAe,CAAC,CAAC;AAE9D;;GAEG;AACH,MAAM,WAAW,eAAe;IAC9B;;OAEG;IACH,cAAc,EAAE,MAAM,CAAC;IAEvB;;OAEG;IACH,MAAM,EAAE,wBAAwB,CAAC;IAEjC;;OAEG;IACH,IAAI,EAAE,MAAM,CAAC;IAEb;;OAEG;IACH,UAAU,EAAE,MAAM,CAAC;CACpB;AAED,MAAM,MAAM,gBAAgB,GACxB,gBAAgB,CAAC,gCAAgC,GACjD,gBAAgB,CAAC,gCAAgC,CAAC;AAEtD,MAAM,CAAC,OAAO,WAAW,gBAAgB,CAAC;IACxC,UAAiB,gCAAgC;QAC/C;;WAEG;QACH,OAAO,EAAE,MAAM,CAAC;QAEhB;;WAEG;QACH,IAAI,EAAE,MAAM,CAAC;QAEb;;WAEG;QACH,IAAI,EAAE,SAAS,CAAC;KACjB;IAED,UAAiB,gCAAgC;QAC/C;;WAEG;QACH,IAAI,EAAE,MAAM,CAAC;QAEb;;WAEG;QACH,IAAI,EAAE,MAAM,CAAC;QAEb;;WAEG;QACH,IAAI,EAAE,QAAQ,CAAC;KAChB;CACF;AAED,MAAM,WAAW,cAAe,SAAQ,IAAI,CAAC,eAAe,EAAE,OAAO,CAAC;IACpE;;OAEG;IACH,KAAK,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;IAEtB;;;;;OAKG;IACH,KAAK,CAAC,EAAE,KAAK,GAAG,MAAM,CAAC;IAEvB;;OAEG;IACH,IAAI,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;CACtB;AAED,MAAM,CAAC,OAAO,WAAW,KAAK,CAAC;IAC7B,OAAO,EACL,KAAK,eAAe,IAAI,eAAe,EACvC,KAAK,oBAAoB,IAAI,oBAAoB,EACjD,KAAK,gBAAgB,IAAI,gBAAgB,EACzC,KAAK,cAAc,IAAI,cAAc,GACtC,CAAC;CACH"}
1
+ {"version":3,"file":"files.d.ts","sourceRoot":"","sources":["../../../../src/resources/beta/agents/environments/files.ts"],"names":[],"mappings":"AAEA,OAAO,EAGL,KAAK,kBAAkB,EACxB,6CAA0C;AAC3C,OAAO,KAAK,EAAE,UAAU,EAAE,wCAAqC;AAC/D,OAAO,EAAE,WAAW,EAAE,qCAAkC;AACxD,OAAO,EAAE,UAAU,EAAE,wCAAqC;AAC1D,OAAO,EAAE,WAAW,EAAE,SAAS,EAAE,KAAK,eAAe,EAAE,uCAAoC;AAE3F,OAAO,EAAE,cAAc,EAAE,gDAA6C;AAUtE,qBAAa,KAAM,SAAQ,WAAW;IACpC,oGAAoG;IACpG,OAAO,CAAC,KAAK,EAAE,MAAM,CAAC,MAAM,EAAE,UAAU,CAAC,EAAE,OAAO,CAAC,EAAE,cAAc,GAAG,OAAO,CAAC,kBAAkB,CAAC;IAIjG,iFAAiF;IACjF,MAAM,CAAC,aAAa,EAAE,MAAM,EAAE,MAAM,EAAE;QAAE,IAAI,EAAE,UAAU,CAAC;QAAC,IAAI,EAAE,MAAM,CAAA;KAAE,EAAE,OAAO,CAAC,EAAE,cAAc;;;;IAIlG;;;;;;;;;;;;;;;;;OAiBG;IACH,MAAM,CACJ,aAAa,EAAE,MAAM,EACrB,IAAI,EAAE,gBAAgB,EACtB,OAAO,CAAC,EAAE,cAAc,GACvB,UAAU,CAAC,eAAe,CAAC;IAY9B;;;;;;;;;;;;;;OAcG;IACH,IAAI,CACF,aAAa,EAAE,MAAM,EACrB,KAAK,GAAE,cAAc,GAAG,IAAI,GAAG,SAAc,EAC7C,OAAO,CAAC,EAAE,cAAc,GACvB,WAAW,CAAC,oBAAoB,EAAE,eAAe,CAAC;CAYtD;AAED,MAAM,MAAM,oBAAoB,GAAG,SAAS,CAAC,eAAe,CAAC,CAAC;AAE9D;;GAEG;AACH,MAAM,WAAW,eAAe;IAC9B;;OAEG;IACH,cAAc,EAAE,MAAM,CAAC;IAEvB;;OAEG;IACH,MAAM,EAAE,wBAAwB,CAAC;IAEjC;;OAEG;IACH,IAAI,EAAE,MAAM,CAAC;IAEb;;OAEG;IACH,UAAU,EAAE,MAAM,CAAC;CACpB;AAED,MAAM,MAAM,gBAAgB,GACxB,gBAAgB,CAAC,gCAAgC,GACjD,gBAAgB,CAAC,gCAAgC,CAAC;AAEtD,MAAM,CAAC,OAAO,WAAW,gBAAgB,CAAC;IACxC,UAAiB,gCAAgC;QAC/C;;WAEG;QACH,OAAO,EAAE,MAAM,CAAC;QAEhB;;WAEG;QACH,IAAI,EAAE,MAAM,CAAC;QAEb;;WAEG;QACH,IAAI,EAAE,SAAS,CAAC;KACjB;IAED,UAAiB,gCAAgC;QAC/C;;WAEG;QACH,IAAI,EAAE,MAAM,CAAC;QAEb;;WAEG;QACH,IAAI,EAAE,MAAM,CAAC;QAEb;;WAEG;QACH,IAAI,EAAE,QAAQ,CAAC;KAChB;CACF;AAED,MAAM,WAAW,cAAe,SAAQ,IAAI,CAAC,eAAe,EAAE,OAAO,CAAC;IACpE;;OAEG;IACH,KAAK,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;IAEtB;;;;;OAKG;IACH,KAAK,CAAC,EAAE,KAAK,GAAG,MAAM,CAAC;IAEvB;;OAEG;IACH,IAAI,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;CACtB;AAED,MAAM,CAAC,OAAO,WAAW,KAAK,CAAC;IAC7B,OAAO,EACL,KAAK,eAAe,IAAI,eAAe,EACvC,KAAK,oBAAoB,IAAI,oBAAoB,EACjD,KAAK,gBAAgB,IAAI,gBAAgB,EACzC,KAAK,cAAc,IAAI,cAAc,GACtC,CAAC;CACH"}
@@ -2,6 +2,7 @@
2
2
  // File generated from our OpenAPI spec by Castiron. See CONTRIBUTING.md for details.
3
3
  Object.defineProperty(exports, "__esModule", { value: true });
4
4
  exports.Files = void 0;
5
+ const files_1 = require("../../../../lib/beta/agents/files.js");
5
6
  const resource_1 = require("../../../../core/resource.js");
6
7
  const pagination_1 = require("../../../../core/pagination.js");
7
8
  const headers_1 = require("../../../../internal/headers.js");
@@ -10,6 +11,14 @@ function resolveResourceRequestOptions(options, buildOptions) {
10
11
  return Promise.resolve(options).then(buildOptions);
11
12
  }
12
13
  class Files extends resource_1.APIResource {
14
+ /** Beta: prepare initial hosted file references; uploaded Files API objects remain caller-owned. */
15
+ prepare(files, options) {
16
+ return (0, files_1.prepareAgentFiles)(this._client, files, options);
17
+ }
18
+ /** Beta: upload one local file and stage its reference in a live environment. */
19
+ upload(environmentID, params, options) {
20
+ return (0, files_1.uploadAgentFile)(this._client, this, environmentID, params, options);
21
+ }
13
22
  /**
14
23
  * Copies inline bytes or a Files API file into a connected execution environment.
15
24
  * See
@@ -1 +1 @@
1
- {"version":3,"file":"files.js","sourceRoot":"","sources":["../../../../src/resources/beta/agents/environments/files.ts"],"names":[],"mappings":";AAAA,qFAAqF;;;AAErF,2DAAwD;AAExD,+DAA2F;AAC3F,6DAA4D;AAE5D,6DAAuD;AAEvD,SAAS,6BAA6B,CACpC,OAAmC,EACnC,YAA+F;IAE/F,OAAO,OAAO,CAAC,OAAO,CAAC,OAAO,CAAC,CAAC,IAAI,CAAC,YAAY,CAAC,CAAC;AACrD,CAAC;AAED,MAAa,KAAM,SAAQ,sBAAW;IACpC;;;;;;;;;;;;;;;;;OAiBG;IACH,MAAM,CACJ,aAAqB,EACrB,IAAsB,EACtB,OAAwB;QAExB,OAAO,IAAI,CAAC,OAAO,CAAC,IAAI,CACtB,IAAA,WAAI,EAAA,wBAAwB,aAAa,QAAQ,EACjD,6BAA6B,CAAC,OAAO,EAAE,CAAC,OAAO,EAAE,EAAE,CAAC,CAAC;YACnD,IAAI;YACJ,GAAG,OAAO;YACV,OAAO,EAAE,IAAA,sBAAY,EAAC,CAAC,EAAE,aAAa,EAAE,WAAW,EAAE,EAAE,OAAO,EAAE,OAAO,CAAC,CAAC;YACzE,UAAU,EAAE,EAAE,UAAU,EAAE,IAAI,EAAE;SACjC,CAAC,CAAC,CACJ,CAAC;IACJ,CAAC;IAED;;;;;;;;;;;;;;OAcG;IACH,IAAI,CACF,aAAqB,EACrB,QAA2C,EAAE,EAC7C,OAAwB;QAExB,OAAO,IAAI,CAAC,OAAO,CAAC,UAAU,CAC5B,IAAA,WAAI,EAAA,wBAAwB,aAAa,QAAQ,EACjD,CAAA,sBAA0B,CAAA,EAC1B,6BAA6B,CAAC,OAAO,EAAE,CAAC,OAAO,EAAE,EAAE,CAAC,CAAC;YACnD,KAAK;YACL,GAAG,OAAO;YACV,OAAO,EAAE,IAAA,sBAAY,EAAC,CAAC,EAAE,aAAa,EAAE,WAAW,EAAE,EAAE,OAAO,EAAE,OAAO,CAAC,CAAC;YACzE,UAAU,EAAE,EAAE,UAAU,EAAE,IAAI,EAAE;SACjC,CAAC,CAAC,CACJ,CAAC;IACJ,CAAC;CACF;AAlED,sBAkEC"}
1
+ {"version":3,"file":"files.js","sourceRoot":"","sources":["../../../../src/resources/beta/agents/environments/files.ts"],"names":[],"mappings":";AAAA,qFAAqF;;;AAErF,gEAI2C;AAE3C,2DAAwD;AAExD,+DAA2F;AAC3F,6DAA4D;AAE5D,6DAAuD;AAEvD,SAAS,6BAA6B,CACpC,OAAmC,EACnC,YAA+F;IAE/F,OAAO,OAAO,CAAC,OAAO,CAAC,OAAO,CAAC,CAAC,IAAI,CAAC,YAAY,CAAC,CAAC;AACrD,CAAC;AAED,MAAa,KAAM,SAAQ,sBAAW;IACpC,oGAAoG;IACpG,OAAO,CAAC,KAAiC,EAAE,OAAwB;QACjE,OAAO,IAAA,yBAAiB,EAAC,IAAI,CAAC,OAAO,EAAE,KAAK,EAAE,OAAO,CAAC,CAAC;IACzD,CAAC;IAED,iFAAiF;IACjF,MAAM,CAAC,aAAqB,EAAE,MAA0C,EAAE,OAAwB;QAChG,OAAO,IAAA,uBAAe,EAAC,IAAI,CAAC,OAAO,EAAE,IAAI,EAAE,aAAa,EAAE,MAAM,EAAE,OAAO,CAAC,CAAC;IAC7E,CAAC;IAED;;;;;;;;;;;;;;;;;OAiBG;IACH,MAAM,CACJ,aAAqB,EACrB,IAAsB,EACtB,OAAwB;QAExB,OAAO,IAAI,CAAC,OAAO,CAAC,IAAI,CACtB,IAAA,WAAI,EAAA,wBAAwB,aAAa,QAAQ,EACjD,6BAA6B,CAAC,OAAO,EAAE,CAAC,OAAO,EAAE,EAAE,CAAC,CAAC;YACnD,IAAI;YACJ,GAAG,OAAO;YACV,OAAO,EAAE,IAAA,sBAAY,EAAC,CAAC,EAAE,aAAa,EAAE,WAAW,EAAE,EAAE,OAAO,EAAE,OAAO,CAAC,CAAC;YACzE,UAAU,EAAE,EAAE,UAAU,EAAE,IAAI,EAAE;SACjC,CAAC,CAAC,CACJ,CAAC;IACJ,CAAC;IAED;;;;;;;;;;;;;;OAcG;IACH,IAAI,CACF,aAAqB,EACrB,QAA2C,EAAE,EAC7C,OAAwB;QAExB,OAAO,IAAI,CAAC,OAAO,CAAC,UAAU,CAC5B,IAAA,WAAI,EAAA,wBAAwB,aAAa,QAAQ,EACjD,CAAA,sBAA0B,CAAA,EAC1B,6BAA6B,CAAC,OAAO,EAAE,CAAC,OAAO,EAAE,EAAE,CAAC,CAAC;YACnD,KAAK;YACL,GAAG,OAAO;YACV,OAAO,EAAE,IAAA,sBAAY,EAAC,CAAC,EAAE,aAAa,EAAE,WAAW,EAAE,EAAE,OAAO,EAAE,OAAO,CAAC,CAAC;YACzE,UAAU,EAAE,EAAE,UAAU,EAAE,IAAI,EAAE;SACjC,CAAC,CAAC,CACJ,CAAC;IACJ,CAAC;CACF;AA5ED,sBA4EC"}