@openai/agents-extensions 0.8.5 → 0.9.1

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 (213) hide show
  1. package/dist/metadata.js +2 -2
  2. package/dist/metadata.mjs +2 -2
  3. package/dist/sandbox/blaxel/index.d.ts +2 -0
  4. package/dist/sandbox/blaxel/index.js +19 -0
  5. package/dist/sandbox/blaxel/index.js.map +1 -0
  6. package/dist/sandbox/blaxel/index.mjs +3 -0
  7. package/dist/sandbox/blaxel/index.mjs.map +1 -0
  8. package/dist/sandbox/blaxel/mounts.d.ts +101 -0
  9. package/dist/sandbox/blaxel/mounts.js +542 -0
  10. package/dist/sandbox/blaxel/mounts.js.map +1 -0
  11. package/dist/sandbox/blaxel/mounts.mjs +529 -0
  12. package/dist/sandbox/blaxel/mounts.mjs.map +1 -0
  13. package/dist/sandbox/blaxel/sandbox.d.ts +155 -0
  14. package/dist/sandbox/blaxel/sandbox.js +1110 -0
  15. package/dist/sandbox/blaxel/sandbox.js.map +1 -0
  16. package/dist/sandbox/blaxel/sandbox.mjs +1072 -0
  17. package/dist/sandbox/blaxel/sandbox.mjs.map +1 -0
  18. package/dist/sandbox/cloudflare/index.d.ts +2 -0
  19. package/dist/sandbox/cloudflare/index.js +19 -0
  20. package/dist/sandbox/cloudflare/index.js.map +1 -0
  21. package/dist/sandbox/cloudflare/index.mjs +3 -0
  22. package/dist/sandbox/cloudflare/index.mjs.map +1 -0
  23. package/dist/sandbox/cloudflare/mounts.d.ts +28 -0
  24. package/dist/sandbox/cloudflare/mounts.js +150 -0
  25. package/dist/sandbox/cloudflare/mounts.js.map +1 -0
  26. package/dist/sandbox/cloudflare/mounts.mjs +143 -0
  27. package/dist/sandbox/cloudflare/mounts.mjs.map +1 -0
  28. package/dist/sandbox/cloudflare/sandbox.d.ts +91 -0
  29. package/dist/sandbox/cloudflare/sandbox.js +1163 -0
  30. package/dist/sandbox/cloudflare/sandbox.js.map +1 -0
  31. package/dist/sandbox/cloudflare/sandbox.mjs +1125 -0
  32. package/dist/sandbox/cloudflare/sandbox.mjs.map +1 -0
  33. package/dist/sandbox/daytona/index.d.ts +2 -0
  34. package/dist/sandbox/daytona/index.js +19 -0
  35. package/dist/sandbox/daytona/index.js.map +1 -0
  36. package/dist/sandbox/daytona/index.mjs +3 -0
  37. package/dist/sandbox/daytona/index.mjs.map +1 -0
  38. package/dist/sandbox/daytona/mounts.d.ts +11 -0
  39. package/dist/sandbox/daytona/mounts.js +17 -0
  40. package/dist/sandbox/daytona/mounts.js.map +1 -0
  41. package/dist/sandbox/daytona/mounts.mjs +12 -0
  42. package/dist/sandbox/daytona/mounts.mjs.map +1 -0
  43. package/dist/sandbox/daytona/sandbox.d.ts +160 -0
  44. package/dist/sandbox/daytona/sandbox.js +938 -0
  45. package/dist/sandbox/daytona/sandbox.js.map +1 -0
  46. package/dist/sandbox/daytona/sandbox.mjs +900 -0
  47. package/dist/sandbox/daytona/sandbox.mjs.map +1 -0
  48. package/dist/sandbox/e2b/index.d.ts +2 -0
  49. package/dist/sandbox/e2b/index.js +19 -0
  50. package/dist/sandbox/e2b/index.js.map +1 -0
  51. package/dist/sandbox/e2b/index.mjs +3 -0
  52. package/dist/sandbox/e2b/index.mjs.map +1 -0
  53. package/dist/sandbox/e2b/mounts.d.ts +11 -0
  54. package/dist/sandbox/e2b/mounts.js +17 -0
  55. package/dist/sandbox/e2b/mounts.js.map +1 -0
  56. package/dist/sandbox/e2b/mounts.mjs +12 -0
  57. package/dist/sandbox/e2b/mounts.mjs.map +1 -0
  58. package/dist/sandbox/e2b/sandbox.d.ts +169 -0
  59. package/dist/sandbox/e2b/sandbox.js +829 -0
  60. package/dist/sandbox/e2b/sandbox.js.map +1 -0
  61. package/dist/sandbox/e2b/sandbox.mjs +791 -0
  62. package/dist/sandbox/e2b/sandbox.mjs.map +1 -0
  63. package/dist/sandbox/modal/index.d.ts +2 -0
  64. package/dist/sandbox/modal/index.js +19 -0
  65. package/dist/sandbox/modal/index.js.map +1 -0
  66. package/dist/sandbox/modal/index.mjs +3 -0
  67. package/dist/sandbox/modal/index.mjs.map +1 -0
  68. package/dist/sandbox/modal/mounts.d.ts +24 -0
  69. package/dist/sandbox/modal/mounts.js +194 -0
  70. package/dist/sandbox/modal/mounts.js.map +1 -0
  71. package/dist/sandbox/modal/mounts.mjs +188 -0
  72. package/dist/sandbox/modal/mounts.mjs.map +1 -0
  73. package/dist/sandbox/modal/sandbox.d.ts +220 -0
  74. package/dist/sandbox/modal/sandbox.js +1621 -0
  75. package/dist/sandbox/modal/sandbox.js.map +1 -0
  76. package/dist/sandbox/modal/sandbox.mjs +1581 -0
  77. package/dist/sandbox/modal/sandbox.mjs.map +1 -0
  78. package/dist/sandbox/runloop/index.d.ts +2 -0
  79. package/dist/sandbox/runloop/index.js +19 -0
  80. package/dist/sandbox/runloop/index.js.map +1 -0
  81. package/dist/sandbox/runloop/index.mjs +3 -0
  82. package/dist/sandbox/runloop/index.mjs.map +1 -0
  83. package/dist/sandbox/runloop/mounts.d.ts +11 -0
  84. package/dist/sandbox/runloop/mounts.js +17 -0
  85. package/dist/sandbox/runloop/mounts.js.map +1 -0
  86. package/dist/sandbox/runloop/mounts.mjs +12 -0
  87. package/dist/sandbox/runloop/mounts.mjs.map +1 -0
  88. package/dist/sandbox/runloop/sandbox.d.ts +266 -0
  89. package/dist/sandbox/runloop/sandbox.js +1390 -0
  90. package/dist/sandbox/runloop/sandbox.js.map +1 -0
  91. package/dist/sandbox/runloop/sandbox.mjs +1346 -0
  92. package/dist/sandbox/runloop/sandbox.mjs.map +1 -0
  93. package/dist/sandbox/shared/archive.d.ts +34 -0
  94. package/dist/sandbox/shared/archive.js +397 -0
  95. package/dist/sandbox/shared/archive.js.map +1 -0
  96. package/dist/sandbox/shared/archive.mjs +389 -0
  97. package/dist/sandbox/shared/archive.mjs.map +1 -0
  98. package/dist/sandbox/shared/editor.d.ts +17 -0
  99. package/dist/sandbox/shared/editor.js +65 -0
  100. package/dist/sandbox/shared/editor.js.map +1 -0
  101. package/dist/sandbox/shared/editor.mjs +61 -0
  102. package/dist/sandbox/shared/editor.mjs.map +1 -0
  103. package/dist/sandbox/shared/environment.d.ts +1 -0
  104. package/dist/sandbox/shared/environment.js +13 -0
  105. package/dist/sandbox/shared/environment.js.map +1 -0
  106. package/dist/sandbox/shared/environment.mjs +2 -0
  107. package/dist/sandbox/shared/environment.mjs.map +1 -0
  108. package/dist/sandbox/shared/git.d.ts +4 -0
  109. package/dist/sandbox/shared/git.js +20 -0
  110. package/dist/sandbox/shared/git.js.map +1 -0
  111. package/dist/sandbox/shared/git.mjs +17 -0
  112. package/dist/sandbox/shared/git.mjs.map +1 -0
  113. package/dist/sandbox/shared/inContainerMounts.d.ts +40 -0
  114. package/dist/sandbox/shared/inContainerMounts.js +670 -0
  115. package/dist/sandbox/shared/inContainerMounts.js.map +1 -0
  116. package/dist/sandbox/shared/inContainerMounts.mjs +662 -0
  117. package/dist/sandbox/shared/inContainerMounts.mjs.map +1 -0
  118. package/dist/sandbox/shared/index.d.ts +23 -0
  119. package/dist/sandbox/shared/index.js +112 -0
  120. package/dist/sandbox/shared/index.js.map +1 -0
  121. package/dist/sandbox/shared/index.mjs +18 -0
  122. package/dist/sandbox/shared/index.mjs.map +1 -0
  123. package/dist/sandbox/shared/localSources.d.ts +8 -0
  124. package/dist/sandbox/shared/localSources.js +378 -0
  125. package/dist/sandbox/shared/localSources.js.map +1 -0
  126. package/dist/sandbox/shared/localSources.mjs +372 -0
  127. package/dist/sandbox/shared/localSources.mjs.map +1 -0
  128. package/dist/sandbox/shared/manifest.d.ts +38 -0
  129. package/dist/sandbox/shared/manifest.js +254 -0
  130. package/dist/sandbox/shared/manifest.js.map +1 -0
  131. package/dist/sandbox/shared/manifest.mjs +233 -0
  132. package/dist/sandbox/shared/manifest.mjs.map +1 -0
  133. package/dist/sandbox/shared/media.d.ts +1 -0
  134. package/dist/sandbox/shared/media.js +10 -0
  135. package/dist/sandbox/shared/media.js.map +1 -0
  136. package/dist/sandbox/shared/media.mjs +2 -0
  137. package/dist/sandbox/shared/media.mjs.map +1 -0
  138. package/dist/sandbox/shared/metadata.d.ts +7 -0
  139. package/dist/sandbox/shared/metadata.js +87 -0
  140. package/dist/sandbox/shared/metadata.js.map +1 -0
  141. package/dist/sandbox/shared/metadata.mjs +81 -0
  142. package/dist/sandbox/shared/metadata.mjs.map +1 -0
  143. package/dist/sandbox/shared/output.d.ts +1 -0
  144. package/dist/sandbox/shared/output.js +8 -0
  145. package/dist/sandbox/shared/output.js.map +1 -0
  146. package/dist/sandbox/shared/output.mjs +2 -0
  147. package/dist/sandbox/shared/output.mjs.map +1 -0
  148. package/dist/sandbox/shared/paths.d.ts +27 -0
  149. package/dist/sandbox/shared/paths.js +245 -0
  150. package/dist/sandbox/shared/paths.js.map +1 -0
  151. package/dist/sandbox/shared/paths.mjs +236 -0
  152. package/dist/sandbox/shared/paths.mjs.map +1 -0
  153. package/dist/sandbox/shared/ports.d.ts +14 -0
  154. package/dist/sandbox/shared/ports.js +75 -0
  155. package/dist/sandbox/shared/ports.js.map +1 -0
  156. package/dist/sandbox/shared/ports.mjs +69 -0
  157. package/dist/sandbox/shared/ports.mjs.map +1 -0
  158. package/dist/sandbox/shared/process.d.ts +16 -0
  159. package/dist/sandbox/shared/process.js +90 -0
  160. package/dist/sandbox/shared/process.js.map +1 -0
  161. package/dist/sandbox/shared/process.mjs +86 -0
  162. package/dist/sandbox/shared/process.mjs.map +1 -0
  163. package/dist/sandbox/shared/pty.d.ts +81 -0
  164. package/dist/sandbox/shared/pty.js +382 -0
  165. package/dist/sandbox/shared/pty.js.map +1 -0
  166. package/dist/sandbox/shared/pty.mjs +335 -0
  167. package/dist/sandbox/shared/pty.mjs.map +1 -0
  168. package/dist/sandbox/shared/runAs.d.ts +46 -0
  169. package/dist/sandbox/shared/runAs.js +149 -0
  170. package/dist/sandbox/shared/runAs.js.map +1 -0
  171. package/dist/sandbox/shared/runAs.mjs +141 -0
  172. package/dist/sandbox/shared/runAs.mjs.map +1 -0
  173. package/dist/sandbox/shared/session.d.ts +16 -0
  174. package/dist/sandbox/shared/session.js +138 -0
  175. package/dist/sandbox/shared/session.js.map +1 -0
  176. package/dist/sandbox/shared/session.mjs +128 -0
  177. package/dist/sandbox/shared/session.mjs.map +1 -0
  178. package/dist/sandbox/shared/sessionBase.d.ts +90 -0
  179. package/dist/sandbox/shared/sessionBase.js +446 -0
  180. package/dist/sandbox/shared/sessionBase.js.map +1 -0
  181. package/dist/sandbox/shared/sessionBase.mjs +442 -0
  182. package/dist/sandbox/shared/sessionBase.mjs.map +1 -0
  183. package/dist/sandbox/shared/sessionState.d.ts +7 -0
  184. package/dist/sandbox/shared/sessionState.js +35 -0
  185. package/dist/sandbox/shared/sessionState.js.map +1 -0
  186. package/dist/sandbox/shared/sessionState.mjs +31 -0
  187. package/dist/sandbox/shared/sessionState.mjs.map +1 -0
  188. package/dist/sandbox/shared/snapshots.d.ts +9 -0
  189. package/dist/sandbox/shared/snapshots.js +62 -0
  190. package/dist/sandbox/shared/snapshots.js.map +1 -0
  191. package/dist/sandbox/shared/snapshots.mjs +57 -0
  192. package/dist/sandbox/shared/snapshots.mjs.map +1 -0
  193. package/dist/sandbox/shared/typeGuards.d.ts +10 -0
  194. package/dist/sandbox/shared/typeGuards.js +50 -0
  195. package/dist/sandbox/shared/typeGuards.js.map +1 -0
  196. package/dist/sandbox/shared/typeGuards.mjs +38 -0
  197. package/dist/sandbox/shared/typeGuards.mjs.map +1 -0
  198. package/dist/sandbox/shared/types.d.ts +24 -0
  199. package/dist/sandbox/shared/types.js +3 -0
  200. package/dist/sandbox/shared/types.js.map +1 -0
  201. package/dist/sandbox/shared/types.mjs +2 -0
  202. package/dist/sandbox/shared/types.mjs.map +1 -0
  203. package/dist/sandbox/vercel/index.d.ts +1 -0
  204. package/dist/sandbox/vercel/index.js +18 -0
  205. package/dist/sandbox/vercel/index.js.map +1 -0
  206. package/dist/sandbox/vercel/index.mjs +2 -0
  207. package/dist/sandbox/vercel/index.mjs.map +1 -0
  208. package/dist/sandbox/vercel/sandbox.d.ts +135 -0
  209. package/dist/sandbox/vercel/sandbox.js +1001 -0
  210. package/dist/sandbox/vercel/sandbox.js.map +1 -0
  211. package/dist/sandbox/vercel/sandbox.mjs +963 -0
  212. package/dist/sandbox/vercel/sandbox.mjs.map +1 -0
  213. package/package.json +108 -4
@@ -0,0 +1 @@
1
+ {"version":3,"file":"sandbox.mjs","sourceRoot":"","sources":["../../../src/sandbox/e2b/sandbox.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,2 @@
1
+ export * from './sandbox';
2
+ export * from './mounts';
@@ -0,0 +1,19 @@
1
+ "use strict";
2
+ var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
3
+ if (k2 === undefined) k2 = k;
4
+ var desc = Object.getOwnPropertyDescriptor(m, k);
5
+ if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
6
+ desc = { enumerable: true, get: function() { return m[k]; } };
7
+ }
8
+ Object.defineProperty(o, k2, desc);
9
+ }) : (function(o, m, k, k2) {
10
+ if (k2 === undefined) k2 = k;
11
+ o[k2] = m[k];
12
+ }));
13
+ var __exportStar = (this && this.__exportStar) || function(m, exports) {
14
+ for (var p in m) if (p !== "default" && !Object.prototype.hasOwnProperty.call(exports, p)) __createBinding(exports, m, p);
15
+ };
16
+ Object.defineProperty(exports, "__esModule", { value: true });
17
+ __exportStar(require("./sandbox.js"), exports);
18
+ __exportStar(require("./mounts.js"), exports);
19
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/sandbox/modal/index.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;AAAA,+CAA0B;AAC1B,8CAAyB"}
@@ -0,0 +1,3 @@
1
+ export * from "./sandbox.mjs";
2
+ export * from "./mounts.mjs";
3
+ //# sourceMappingURL=index.mjs.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.mjs","sourceRoot":"","sources":["../../../src/sandbox/modal/index.ts"],"names":[],"mappings":""}
@@ -0,0 +1,24 @@
1
+ import { type Entry, type TypedMount } from '@openai/agents-core/sandbox';
2
+ export type ModalCloudBucketMountCredentials = Record<string, string>;
3
+ export type ModalCloudBucketMountConfig = {
4
+ bucketName: string;
5
+ bucketEndpointUrl?: string;
6
+ keyPrefix?: string;
7
+ credentials?: ModalCloudBucketMountCredentials;
8
+ secretName?: string;
9
+ secretEnvironmentName?: string;
10
+ readOnly: boolean;
11
+ };
12
+ export type ModalCloudBucketMountStrategyOptions = {
13
+ secretName?: string;
14
+ secretEnvironmentName?: string;
15
+ };
16
+ export declare class ModalCloudBucketMountStrategy {
17
+ readonly [key: string]: unknown;
18
+ readonly type = "modal_cloud_bucket";
19
+ readonly secretName?: string;
20
+ readonly secretEnvironmentName?: string;
21
+ constructor(options?: ModalCloudBucketMountStrategyOptions);
22
+ }
23
+ export declare function buildModalCloudBucketMountConfig(mount: Entry, options?: ModalCloudBucketMountStrategyOptions): ModalCloudBucketMountConfig;
24
+ export declare function isModalCloudBucketMountEntry(entry: Entry): entry is TypedMount;
@@ -0,0 +1,194 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.ModalCloudBucketMountStrategy = void 0;
4
+ exports.buildModalCloudBucketMountConfig = buildModalCloudBucketMountConfig;
5
+ exports.isModalCloudBucketMountEntry = isModalCloudBucketMountEntry;
6
+ const sandbox_1 = require("@openai/agents-core/sandbox");
7
+ const shared_1 = require("../shared/index.js");
8
+ class ModalCloudBucketMountStrategy {
9
+ type = 'modal_cloud_bucket';
10
+ secretName;
11
+ secretEnvironmentName;
12
+ constructor(options = {}) {
13
+ this.secretName = options.secretName;
14
+ this.secretEnvironmentName = options.secretEnvironmentName;
15
+ }
16
+ }
17
+ exports.ModalCloudBucketMountStrategy = ModalCloudBucketMountStrategy;
18
+ function buildModalCloudBucketMountConfig(mount, options = {}) {
19
+ validateSecretOptions(mount, options);
20
+ if (isS3Mount(mount)) {
21
+ const accessKeyId = (0, shared_1.readOptionalString)(mount, 'accessKeyId');
22
+ const secretAccessKey = (0, shared_1.readOptionalString)(mount, 'secretAccessKey');
23
+ const sessionToken = (0, shared_1.readOptionalString)(mount, 'sessionToken');
24
+ validateCredentialPair({
25
+ accessKeyId,
26
+ secretAccessKey,
27
+ mountType: mount.type,
28
+ });
29
+ validateSessionTokenCredentials({
30
+ accessKeyId,
31
+ secretAccessKey,
32
+ sessionToken,
33
+ mountType: mount.type,
34
+ });
35
+ const credentials = compactCredentials({
36
+ AWS_ACCESS_KEY_ID: accessKeyId,
37
+ AWS_SECRET_ACCESS_KEY: secretAccessKey,
38
+ AWS_SESSION_TOKEN: sessionToken,
39
+ });
40
+ assertNoInlineCredentialsWithSecret(mount, credentials, options.secretName);
41
+ return {
42
+ bucketName: mount.bucket,
43
+ bucketEndpointUrl: mount.endpointUrl,
44
+ keyPrefix: mount.prefix,
45
+ credentials,
46
+ secretName: options.secretName,
47
+ secretEnvironmentName: options.secretEnvironmentName,
48
+ readOnly: mount.readOnly ?? true,
49
+ };
50
+ }
51
+ if (isR2Mount(mount)) {
52
+ const accessKeyId = (0, shared_1.readOptionalString)(mount, 'accessKeyId');
53
+ const secretAccessKey = (0, shared_1.readOptionalString)(mount, 'secretAccessKey');
54
+ validateCredentialPair({
55
+ accessKeyId,
56
+ secretAccessKey,
57
+ mountType: mount.type,
58
+ });
59
+ const credentials = compactCredentials({
60
+ AWS_ACCESS_KEY_ID: accessKeyId,
61
+ AWS_SECRET_ACCESS_KEY: secretAccessKey,
62
+ });
63
+ assertNoInlineCredentialsWithSecret(mount, credentials, options.secretName);
64
+ const customDomain = (0, shared_1.readOptionalString)(mount, 'customDomain');
65
+ if (!customDomain && !mount.accountId) {
66
+ throw new sandbox_1.SandboxMountError('Modal R2 bucket mounts require accountId or customDomain.', {
67
+ provider: 'modal',
68
+ mountType: mount.type,
69
+ });
70
+ }
71
+ return {
72
+ bucketName: mount.bucket,
73
+ bucketEndpointUrl: customDomain ?? `https://${mount.accountId}.r2.cloudflarestorage.com`,
74
+ keyPrefix: mount.prefix,
75
+ credentials,
76
+ secretName: options.secretName,
77
+ secretEnvironmentName: options.secretEnvironmentName,
78
+ readOnly: mount.readOnly ?? true,
79
+ };
80
+ }
81
+ if (isGCSMount(mount)) {
82
+ const accessId = (0, shared_1.readOptionalString)(mount, 'accessId');
83
+ const secretAccessKey = (0, shared_1.readOptionalString)(mount, 'secretAccessKey');
84
+ const endpointUrl = (0, shared_1.readOptionalString)(mount, 'endpointUrl');
85
+ validateGcsCredentialPair({
86
+ accessId,
87
+ secretAccessKey,
88
+ mountType: mount.type,
89
+ });
90
+ if ((!accessId || !secretAccessKey) && !options.secretName) {
91
+ throw new sandbox_1.SandboxMountError('Modal GCS bucket mounts require accessId and secretAccessKey unless secretName is provided.', {
92
+ provider: 'modal',
93
+ mountType: mount.type,
94
+ });
95
+ }
96
+ const credentials = accessId && secretAccessKey
97
+ ? {
98
+ GOOGLE_ACCESS_KEY_ID: accessId,
99
+ GOOGLE_ACCESS_KEY_SECRET: secretAccessKey,
100
+ }
101
+ : undefined;
102
+ assertNoInlineCredentialsWithSecret(mount, credentials, options.secretName);
103
+ return {
104
+ bucketName: mount.bucket,
105
+ bucketEndpointUrl: endpointUrl ?? 'https://storage.googleapis.com',
106
+ keyPrefix: mount.prefix,
107
+ credentials,
108
+ secretName: options.secretName,
109
+ secretEnvironmentName: options.secretEnvironmentName,
110
+ readOnly: mount.readOnly ?? true,
111
+ };
112
+ }
113
+ throw new sandbox_1.SandboxUnsupportedFeatureError('Modal cloud bucket mounts are not supported for this mount type.', {
114
+ provider: 'modal',
115
+ feature: 'entry.mount',
116
+ mountType: String(mount.type ?? 'unknown'),
117
+ });
118
+ }
119
+ function isModalCloudBucketMountEntry(entry) {
120
+ return (isTypedBucketMount(entry) &&
121
+ entry.mountStrategy?.type === 'modal_cloud_bucket');
122
+ }
123
+ function validateSecretOptions(mount, options) {
124
+ if (options.secretName !== undefined && options.secretName.trim() === '') {
125
+ throw new sandbox_1.SandboxMountError('Modal cloud bucket secretName must be a non-empty string.', {
126
+ provider: 'modal',
127
+ mountType: mount.type,
128
+ });
129
+ }
130
+ if (options.secretEnvironmentName !== undefined &&
131
+ options.secretEnvironmentName.trim() === '') {
132
+ throw new sandbox_1.SandboxMountError('Modal cloud bucket secretEnvironmentName must be a non-empty string.', {
133
+ provider: 'modal',
134
+ mountType: mount.type,
135
+ });
136
+ }
137
+ if (options.secretEnvironmentName !== undefined && !options.secretName) {
138
+ throw new sandbox_1.SandboxMountError('Modal cloud bucket secretEnvironmentName requires secretName.', {
139
+ provider: 'modal',
140
+ mountType: mount.type,
141
+ });
142
+ }
143
+ }
144
+ function assertNoInlineCredentialsWithSecret(mount, credentials, secretName) {
145
+ if (secretName && credentials && Object.keys(credentials).length > 0) {
146
+ throw new sandbox_1.SandboxMountError('Modal cloud bucket mounts do not support both inline credentials and secretName.', {
147
+ provider: 'modal',
148
+ mountType: mount.type,
149
+ });
150
+ }
151
+ }
152
+ function compactCredentials(credentials) {
153
+ const compact = Object.fromEntries(Object.entries(credentials).filter(([, value]) => value !== undefined));
154
+ return Object.keys(compact).length > 0 ? compact : undefined;
155
+ }
156
+ function validateCredentialPair(args) {
157
+ if (Boolean(args.accessKeyId) !== Boolean(args.secretAccessKey)) {
158
+ throw new sandbox_1.SandboxMountError('Modal cloud bucket mounts require both accessKeyId and secretAccessKey when either is provided.', {
159
+ provider: 'modal',
160
+ mountType: args.mountType,
161
+ });
162
+ }
163
+ }
164
+ function validateGcsCredentialPair(args) {
165
+ if (Boolean(args.accessId) !== Boolean(args.secretAccessKey)) {
166
+ throw new sandbox_1.SandboxMountError('Modal GCS bucket mounts require both accessId and secretAccessKey when either is provided.', {
167
+ provider: 'modal',
168
+ mountType: args.mountType,
169
+ });
170
+ }
171
+ }
172
+ function validateSessionTokenCredentials(args) {
173
+ if (args.sessionToken && (!args.accessKeyId || !args.secretAccessKey)) {
174
+ throw new sandbox_1.SandboxMountError('Modal S3 bucket mounts require accessKeyId and secretAccessKey when sessionToken is provided.', {
175
+ provider: 'modal',
176
+ mountType: args.mountType,
177
+ });
178
+ }
179
+ }
180
+ function isTypedBucketMount(entry) {
181
+ return (entry.type === 's3_mount' ||
182
+ entry.type === 'r2_mount' ||
183
+ entry.type === 'gcs_mount');
184
+ }
185
+ function isS3Mount(entry) {
186
+ return entry.type === 's3_mount';
187
+ }
188
+ function isR2Mount(entry) {
189
+ return entry.type === 'r2_mount';
190
+ }
191
+ function isGCSMount(entry) {
192
+ return entry.type === 'gcs_mount';
193
+ }
194
+ //# sourceMappingURL=mounts.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"mounts.js","sourceRoot":"","sources":["../../../src/sandbox/modal/mounts.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,188 @@
1
+ import { SandboxMountError, SandboxUnsupportedFeatureError, } from '@openai/agents-core/sandbox';
2
+ import { readOptionalString } from "../shared/index.mjs";
3
+ export class ModalCloudBucketMountStrategy {
4
+ type = 'modal_cloud_bucket';
5
+ secretName;
6
+ secretEnvironmentName;
7
+ constructor(options = {}) {
8
+ this.secretName = options.secretName;
9
+ this.secretEnvironmentName = options.secretEnvironmentName;
10
+ }
11
+ }
12
+ export function buildModalCloudBucketMountConfig(mount, options = {}) {
13
+ validateSecretOptions(mount, options);
14
+ if (isS3Mount(mount)) {
15
+ const accessKeyId = readOptionalString(mount, 'accessKeyId');
16
+ const secretAccessKey = readOptionalString(mount, 'secretAccessKey');
17
+ const sessionToken = readOptionalString(mount, 'sessionToken');
18
+ validateCredentialPair({
19
+ accessKeyId,
20
+ secretAccessKey,
21
+ mountType: mount.type,
22
+ });
23
+ validateSessionTokenCredentials({
24
+ accessKeyId,
25
+ secretAccessKey,
26
+ sessionToken,
27
+ mountType: mount.type,
28
+ });
29
+ const credentials = compactCredentials({
30
+ AWS_ACCESS_KEY_ID: accessKeyId,
31
+ AWS_SECRET_ACCESS_KEY: secretAccessKey,
32
+ AWS_SESSION_TOKEN: sessionToken,
33
+ });
34
+ assertNoInlineCredentialsWithSecret(mount, credentials, options.secretName);
35
+ return {
36
+ bucketName: mount.bucket,
37
+ bucketEndpointUrl: mount.endpointUrl,
38
+ keyPrefix: mount.prefix,
39
+ credentials,
40
+ secretName: options.secretName,
41
+ secretEnvironmentName: options.secretEnvironmentName,
42
+ readOnly: mount.readOnly ?? true,
43
+ };
44
+ }
45
+ if (isR2Mount(mount)) {
46
+ const accessKeyId = readOptionalString(mount, 'accessKeyId');
47
+ const secretAccessKey = readOptionalString(mount, 'secretAccessKey');
48
+ validateCredentialPair({
49
+ accessKeyId,
50
+ secretAccessKey,
51
+ mountType: mount.type,
52
+ });
53
+ const credentials = compactCredentials({
54
+ AWS_ACCESS_KEY_ID: accessKeyId,
55
+ AWS_SECRET_ACCESS_KEY: secretAccessKey,
56
+ });
57
+ assertNoInlineCredentialsWithSecret(mount, credentials, options.secretName);
58
+ const customDomain = readOptionalString(mount, 'customDomain');
59
+ if (!customDomain && !mount.accountId) {
60
+ throw new SandboxMountError('Modal R2 bucket mounts require accountId or customDomain.', {
61
+ provider: 'modal',
62
+ mountType: mount.type,
63
+ });
64
+ }
65
+ return {
66
+ bucketName: mount.bucket,
67
+ bucketEndpointUrl: customDomain ?? `https://${mount.accountId}.r2.cloudflarestorage.com`,
68
+ keyPrefix: mount.prefix,
69
+ credentials,
70
+ secretName: options.secretName,
71
+ secretEnvironmentName: options.secretEnvironmentName,
72
+ readOnly: mount.readOnly ?? true,
73
+ };
74
+ }
75
+ if (isGCSMount(mount)) {
76
+ const accessId = readOptionalString(mount, 'accessId');
77
+ const secretAccessKey = readOptionalString(mount, 'secretAccessKey');
78
+ const endpointUrl = readOptionalString(mount, 'endpointUrl');
79
+ validateGcsCredentialPair({
80
+ accessId,
81
+ secretAccessKey,
82
+ mountType: mount.type,
83
+ });
84
+ if ((!accessId || !secretAccessKey) && !options.secretName) {
85
+ throw new SandboxMountError('Modal GCS bucket mounts require accessId and secretAccessKey unless secretName is provided.', {
86
+ provider: 'modal',
87
+ mountType: mount.type,
88
+ });
89
+ }
90
+ const credentials = accessId && secretAccessKey
91
+ ? {
92
+ GOOGLE_ACCESS_KEY_ID: accessId,
93
+ GOOGLE_ACCESS_KEY_SECRET: secretAccessKey,
94
+ }
95
+ : undefined;
96
+ assertNoInlineCredentialsWithSecret(mount, credentials, options.secretName);
97
+ return {
98
+ bucketName: mount.bucket,
99
+ bucketEndpointUrl: endpointUrl ?? 'https://storage.googleapis.com',
100
+ keyPrefix: mount.prefix,
101
+ credentials,
102
+ secretName: options.secretName,
103
+ secretEnvironmentName: options.secretEnvironmentName,
104
+ readOnly: mount.readOnly ?? true,
105
+ };
106
+ }
107
+ throw new SandboxUnsupportedFeatureError('Modal cloud bucket mounts are not supported for this mount type.', {
108
+ provider: 'modal',
109
+ feature: 'entry.mount',
110
+ mountType: String(mount.type ?? 'unknown'),
111
+ });
112
+ }
113
+ export function isModalCloudBucketMountEntry(entry) {
114
+ return (isTypedBucketMount(entry) &&
115
+ entry.mountStrategy?.type === 'modal_cloud_bucket');
116
+ }
117
+ function validateSecretOptions(mount, options) {
118
+ if (options.secretName !== undefined && options.secretName.trim() === '') {
119
+ throw new SandboxMountError('Modal cloud bucket secretName must be a non-empty string.', {
120
+ provider: 'modal',
121
+ mountType: mount.type,
122
+ });
123
+ }
124
+ if (options.secretEnvironmentName !== undefined &&
125
+ options.secretEnvironmentName.trim() === '') {
126
+ throw new SandboxMountError('Modal cloud bucket secretEnvironmentName must be a non-empty string.', {
127
+ provider: 'modal',
128
+ mountType: mount.type,
129
+ });
130
+ }
131
+ if (options.secretEnvironmentName !== undefined && !options.secretName) {
132
+ throw new SandboxMountError('Modal cloud bucket secretEnvironmentName requires secretName.', {
133
+ provider: 'modal',
134
+ mountType: mount.type,
135
+ });
136
+ }
137
+ }
138
+ function assertNoInlineCredentialsWithSecret(mount, credentials, secretName) {
139
+ if (secretName && credentials && Object.keys(credentials).length > 0) {
140
+ throw new SandboxMountError('Modal cloud bucket mounts do not support both inline credentials and secretName.', {
141
+ provider: 'modal',
142
+ mountType: mount.type,
143
+ });
144
+ }
145
+ }
146
+ function compactCredentials(credentials) {
147
+ const compact = Object.fromEntries(Object.entries(credentials).filter(([, value]) => value !== undefined));
148
+ return Object.keys(compact).length > 0 ? compact : undefined;
149
+ }
150
+ function validateCredentialPair(args) {
151
+ if (Boolean(args.accessKeyId) !== Boolean(args.secretAccessKey)) {
152
+ throw new SandboxMountError('Modal cloud bucket mounts require both accessKeyId and secretAccessKey when either is provided.', {
153
+ provider: 'modal',
154
+ mountType: args.mountType,
155
+ });
156
+ }
157
+ }
158
+ function validateGcsCredentialPair(args) {
159
+ if (Boolean(args.accessId) !== Boolean(args.secretAccessKey)) {
160
+ throw new SandboxMountError('Modal GCS bucket mounts require both accessId and secretAccessKey when either is provided.', {
161
+ provider: 'modal',
162
+ mountType: args.mountType,
163
+ });
164
+ }
165
+ }
166
+ function validateSessionTokenCredentials(args) {
167
+ if (args.sessionToken && (!args.accessKeyId || !args.secretAccessKey)) {
168
+ throw new SandboxMountError('Modal S3 bucket mounts require accessKeyId and secretAccessKey when sessionToken is provided.', {
169
+ provider: 'modal',
170
+ mountType: args.mountType,
171
+ });
172
+ }
173
+ }
174
+ function isTypedBucketMount(entry) {
175
+ return (entry.type === 's3_mount' ||
176
+ entry.type === 'r2_mount' ||
177
+ entry.type === 'gcs_mount');
178
+ }
179
+ function isS3Mount(entry) {
180
+ return entry.type === 's3_mount';
181
+ }
182
+ function isR2Mount(entry) {
183
+ return entry.type === 'r2_mount';
184
+ }
185
+ function isGCSMount(entry) {
186
+ return entry.type === 'gcs_mount';
187
+ }
188
+ //# sourceMappingURL=mounts.mjs.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"mounts.mjs","sourceRoot":"","sources":["../../../src/sandbox/modal/mounts.ts"],"names":[],"mappings":"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"}