@nimbus-sh/sdk 0.3.1 → 0.4.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 +39 -33
- package/dist/sandbox.d.ts +52 -3
- package/dist/sandbox.d.ts.map +1 -1
- package/dist/sandbox.js +51 -7
- package/dist/worker.d.ts +1 -1
- package/dist/worker.d.ts.map +1 -1
- package/dist/worker.js +1 -1
- package/package.json +5 -5
package/README.md
CHANGED
|
@@ -1,7 +1,12 @@
|
|
|
1
1
|
# @nimbus-sh/sdk
|
|
2
2
|
|
|
3
|
-
|
|
4
|
-
|
|
3
|
+
Run code in a Nimbus sandbox from your own backend, and deploy the Worker
|
|
4
|
+
that hosts it.
|
|
5
|
+
|
|
6
|
+
A sandbox has a filesystem, a shell, real processes, and ports you can reach
|
|
7
|
+
from a browser. This package carries the Worker embedder, the programmatic
|
|
8
|
+
sandbox handles, token mint and verify, typed errors, and session URL
|
|
9
|
+
helpers.
|
|
5
10
|
|
|
6
11
|
## Install
|
|
7
12
|
|
|
@@ -9,10 +14,9 @@ token mint/verify, typed errors, and session URL helpers.
|
|
|
9
14
|
npm install @nimbus-sh/sdk @nimbus-sh/worker @nimbus-sh/config
|
|
10
15
|
```
|
|
11
16
|
|
|
12
|
-
|
|
13
|
-
`@nimbus-sh/worker`
|
|
14
|
-
|
|
15
|
-
deploy-time API through the SDK.
|
|
17
|
+
Import the deploy-time API from `@nimbus-sh/sdk/worker`. Install
|
|
18
|
+
`@nimbus-sh/worker` as well, because it carries the runtime assets and the
|
|
19
|
+
Durable Object implementation that entrypoint serves.
|
|
16
20
|
|
|
17
21
|
Create a deployable Nimbus Worker:
|
|
18
22
|
|
|
@@ -72,16 +76,17 @@ export default createNimbusHandler({
|
|
|
72
76
|
});
|
|
73
77
|
```
|
|
74
78
|
|
|
75
|
-
The bundled session UI
|
|
76
|
-
Configure it with Worker vars
|
|
77
|
-
`
|
|
78
|
-
`
|
|
79
|
-
`NIMBUS_AGENT_COOKIE_SECRET` or
|
|
80
|
-
|
|
81
|
-
|
|
82
|
-
|
|
79
|
+
The bundled session UI carries an agent surface in the editor workspace.
|
|
80
|
+
Configure it with the Worker vars `NIMBUS_CF_OAUTH_CLIENT_ID`,
|
|
81
|
+
`NIMBUS_CF_OAUTH_SCOPES`, `NIMBUS_AGENT_MODEL`, and
|
|
82
|
+
`NIMBUS_AGENT_GATEWAY_ID`. For Cloudflare OAuth or owner-token Workers AI
|
|
83
|
+
access, add the secret `NIMBUS_AGENT_COOKIE_SECRET` or
|
|
84
|
+
`NIMBUS_CLOUDFLARE_API_TOKEN`.
|
|
85
|
+
|
|
86
|
+
User OAuth uses Authorization Code with PKCE and encrypted browser cookies.
|
|
87
|
+
Nimbus keeps no user OAuth token in Durable Object storage.
|
|
83
88
|
|
|
84
|
-
##
|
|
89
|
+
## Sandboxes from your own code
|
|
85
90
|
|
|
86
91
|
The same sandbox handle API works in two modes:
|
|
87
92
|
|
|
@@ -157,9 +162,9 @@ export default createNimbusHandler({
|
|
|
157
162
|
```
|
|
158
163
|
|
|
159
164
|
`Nimbus.connect()` calls the versioned `/api/nimbus/v1` API internally. The
|
|
160
|
-
Worker verifies the JWT, enforces `sid` pins and `sandbox:use` scope,
|
|
161
|
-
the configured runtime policy
|
|
162
|
-
|
|
165
|
+
Worker verifies the JWT, enforces `sid` pins and `sandbox:use` scope, and
|
|
166
|
+
applies the configured runtime policy. It then delegates to the same
|
|
167
|
+
`NimbusSession` RPC methods `Nimbus.fromEnv()` uses.
|
|
163
168
|
|
|
164
169
|
Sandbox destruction is a separate lifecycle operation. Tokens that call
|
|
165
170
|
`box.destroy()` must include `session:destroy` or `session:admin` in addition
|
|
@@ -233,9 +238,9 @@ await box.ports.unexpose(3000);
|
|
|
233
238
|
```
|
|
234
239
|
|
|
235
240
|
On deployments with a preview host suffix configured (the hosted product sets
|
|
236
|
-
`NIMBUS_PREVIEW_HOST_SUFFIX=nimbus-os.dev`), `port.url`
|
|
237
|
-
`https://<port>--<session-id>.<suffix>/` instead
|
|
238
|
-
path route works on every deployment.
|
|
241
|
+
`NIMBUS_PREVIEW_HOST_SUFFIX=nimbus-os.dev`), `port.url` takes the hostname
|
|
242
|
+
form `https://<port>--<session-id>.<suffix>/` instead. The
|
|
243
|
+
`/s/<id>/port/<n>/` path route works on every deployment.
|
|
239
244
|
|
|
240
245
|
Runtime policy comes from the sandbox profile:
|
|
241
246
|
|
|
@@ -244,21 +249,23 @@ Runtime policy comes from the sandbox profile:
|
|
|
244
249
|
- `runtimes.onDemand: false` blocks installing runtimes that are not listed
|
|
245
250
|
in `preinstall`.
|
|
246
251
|
|
|
247
|
-
##
|
|
252
|
+
## Agent tool provider
|
|
248
253
|
|
|
249
254
|
`box.tools({ namespace: 'sandbox', kind: 'sandbox' })` returns a provider-like
|
|
250
|
-
object
|
|
255
|
+
object, in the shape Proteus's tool provider takes. It carries
|
|
256
|
+
`tools.exec.execute`, `runCode`, `readFile`, `writeFile`,
|
|
251
257
|
`listFiles`/`readdir`, `deleteFile`, `exists`, `startProcess`, `killProcess`,
|
|
252
258
|
`logs`, `exposePort`, `unexposePort`, `listPorts`, `installRuntime`, and
|
|
253
259
|
`listRuntimes`.
|
|
254
260
|
|
|
255
|
-
`provider.capabilities`
|
|
261
|
+
`provider.capabilities` reports what Nimbus can do. Nimbus claims shell,
|
|
256
262
|
JavaScript/TypeScript, npm, git, owned filesystem, outbound fetch, inbound
|
|
257
263
|
HTTP-like port routing, process spawn/long-running processes, Python/Ruby
|
|
258
|
-
when allowed, and clang-backed WASI/WebAssembly execution. It does not claim
|
|
259
|
-
custom Linux images, native Linux ELF execution, or raw TCP
|
|
264
|
+
when allowed, and clang-backed WASI/WebAssembly execution. It does not claim
|
|
265
|
+
Docker, apt, GPU, custom Linux images, native Linux ELF execution, or raw TCP
|
|
266
|
+
listeners.
|
|
260
267
|
|
|
261
|
-
##
|
|
268
|
+
## Mint a session token
|
|
262
269
|
|
|
263
270
|
```ts
|
|
264
271
|
import { issueNimbusToken } from '@nimbus-sh/sdk/token';
|
|
@@ -271,7 +278,7 @@ const token = await issueNimbusToken(
|
|
|
271
278
|
// → 'eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJzY29wZSI6Im5pbWJ1cyIsInRu...'
|
|
272
279
|
```
|
|
273
280
|
|
|
274
|
-
## Verify a token
|
|
281
|
+
## Verify a token
|
|
275
282
|
|
|
276
283
|
```ts
|
|
277
284
|
import { verifyNimbusToken } from '@nimbus-sh/sdk/token';
|
|
@@ -361,12 +368,11 @@ JWT (HS256) with these claims:
|
|
|
361
368
|
}
|
|
362
369
|
```
|
|
363
370
|
|
|
364
|
-
Both `tn` and `sub` must match `[A-Za-z0-9._-]{1,128}
|
|
365
|
-
`ID_COMPONENT_RE` if you need to validate user input.
|
|
371
|
+
Both `tn` and `sub` must match `[A-Za-z0-9._-]{1,128}`. The pattern is
|
|
372
|
+
exported as `ID_COMPONENT_RE` if you need to validate user input.
|
|
366
373
|
|
|
367
|
-
The `scope` discriminator
|
|
368
|
-
(e.g. Mossaic VFS, `scope: "vfs"`)
|
|
369
|
-
the same secret.
|
|
374
|
+
The `scope` discriminator rejects a token minted for another product
|
|
375
|
+
(e.g. Mossaic VFS, `scope: "vfs"`) even when the same secret signed it.
|
|
370
376
|
|
|
371
377
|
## Secret rotation
|
|
372
378
|
|
package/dist/sandbox.d.ts
CHANGED
|
@@ -251,12 +251,29 @@ interface NimbusSessionStub {
|
|
|
251
251
|
}>;
|
|
252
252
|
_rpcProcessLogs(pid: number, options?: NimbusProcessLogsOptions): Promise<NimbusProcessLogsResult>;
|
|
253
253
|
_rpcListPorts(): Promise<NimbusPort[]>;
|
|
254
|
-
_rpcExposePort(port: number
|
|
254
|
+
_rpcExposePort(port: number, options?: {
|
|
255
|
+
visibility?: 'scoped' | 'public';
|
|
256
|
+
}): Promise<{
|
|
255
257
|
port: number;
|
|
256
258
|
listening: boolean;
|
|
257
259
|
pid: number | null;
|
|
258
260
|
registeredAt: number | null;
|
|
259
261
|
capability: string | null;
|
|
262
|
+
visibility?: 'scoped' | 'public';
|
|
263
|
+
}>;
|
|
264
|
+
_rpcEnsureDurableApp(input: {
|
|
265
|
+
owner: string;
|
|
266
|
+
preferredPort?: number;
|
|
267
|
+
visibility?: 'scoped' | 'public';
|
|
268
|
+
}): Promise<{
|
|
269
|
+
port: number;
|
|
270
|
+
capability: string | null;
|
|
271
|
+
visibility: 'scoped' | 'public';
|
|
272
|
+
}>;
|
|
273
|
+
_rpcRemoveDurableApp(owner: string): Promise<{
|
|
274
|
+
owner: string;
|
|
275
|
+
removed: boolean;
|
|
276
|
+
port: number | null;
|
|
260
277
|
}>;
|
|
261
278
|
_rpcUnexposePort(port: number): Promise<{
|
|
262
279
|
port: number;
|
|
@@ -386,19 +403,50 @@ export declare class NimbusSandbox {
|
|
|
386
403
|
};
|
|
387
404
|
ports: {
|
|
388
405
|
list: () => Promise<NimbusPort[]>;
|
|
389
|
-
expose: (port: number
|
|
406
|
+
expose: (port: number, options?: {
|
|
407
|
+
visibility?: "scoped" | "public";
|
|
408
|
+
}) => Promise<{
|
|
390
409
|
url: string | undefined;
|
|
391
410
|
port: number;
|
|
392
411
|
listening: boolean;
|
|
393
412
|
pid: number | null;
|
|
394
413
|
registeredAt: number | null;
|
|
395
414
|
capability: string | null;
|
|
415
|
+
visibility?: "scoped" | "public";
|
|
396
416
|
}>;
|
|
397
417
|
unexpose: (port: number) => Promise<{
|
|
398
418
|
port: number;
|
|
399
419
|
ok: boolean;
|
|
400
420
|
}>;
|
|
401
|
-
|
|
421
|
+
/**
|
|
422
|
+
* Reserve (or re-answer) a durable application's port: the capability it
|
|
423
|
+
* answers is minted here and survives every reset, so the URL it builds
|
|
424
|
+
* is the URL the application keeps.
|
|
425
|
+
*/
|
|
426
|
+
ensureDurableApp: (input: {
|
|
427
|
+
owner: string;
|
|
428
|
+
preferredPort?: number;
|
|
429
|
+
visibility?: "scoped" | "public";
|
|
430
|
+
}) => Promise<{
|
|
431
|
+
port: number;
|
|
432
|
+
capability: string | null;
|
|
433
|
+
visibility: "scoped" | "public";
|
|
434
|
+
}>;
|
|
435
|
+
/**
|
|
436
|
+
* End a durable application's contract: its launch is killed, the journal
|
|
437
|
+
* row purged, the reserved port released, the durable slot freed. Answers
|
|
438
|
+
* the owner, whether anything was removed, and the durable port that was
|
|
439
|
+
* released — null when no reservation existed.
|
|
440
|
+
*/
|
|
441
|
+
removeDurableApp: (owner: string) => Promise<{
|
|
442
|
+
owner: string;
|
|
443
|
+
removed: boolean;
|
|
444
|
+
port: number | null;
|
|
445
|
+
}>;
|
|
446
|
+
url: (port: number, options?: {
|
|
447
|
+
visibility?: "scoped" | "public";
|
|
448
|
+
capability?: string;
|
|
449
|
+
}) => string | undefined;
|
|
402
450
|
};
|
|
403
451
|
tools(options?: {
|
|
404
452
|
namespace?: string;
|
|
@@ -506,6 +554,7 @@ export declare class NimbusSandbox {
|
|
|
506
554
|
pid: number | null;
|
|
507
555
|
registeredAt: number | null;
|
|
508
556
|
capability: string | null;
|
|
557
|
+
visibility?: "scoped" | "public";
|
|
509
558
|
}>;
|
|
510
559
|
};
|
|
511
560
|
unexposePort: {
|
package/dist/sandbox.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"sandbox.d.ts","sourceRoot":"","sources":["../src/sandbox.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"sandbox.d.ts","sourceRoot":"","sources":["../src/sandbox.ts"],"names":[],"mappings":"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"}
|
package/dist/sandbox.js
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
/**
|
|
2
2
|
* @nimbus-sh/sdk/sandbox - programmatic Nimbus sandbox handle.
|
|
3
3
|
*/
|
|
4
|
-
import { buildPreviewHost, isPreviewHostSafeSid, readPreviewHostSuffix, } from '@nimbus-sh/worker/preview-host';
|
|
4
|
+
import { buildPreviewHost, buildPublicPreviewHost, isPreviewHostSafeSid, readPreviewHostSuffix, } from '@nimbus-sh/worker/preview-host';
|
|
5
5
|
import { z } from 'zod/v4';
|
|
6
6
|
export class NimbusRemoteError extends Error {
|
|
7
7
|
status;
|
|
@@ -138,6 +138,17 @@ const ExposedPortSchema = z.object({
|
|
|
138
138
|
pid: z.number().nullable(),
|
|
139
139
|
registeredAt: z.number().nullable(),
|
|
140
140
|
capability: z.string().nullable(),
|
|
141
|
+
visibility: z.enum(['scoped', 'public']).optional(),
|
|
142
|
+
});
|
|
143
|
+
const EnsureDurableAppSchema = z.object({
|
|
144
|
+
port: z.number(),
|
|
145
|
+
capability: z.string().nullable(),
|
|
146
|
+
visibility: z.enum(['scoped', 'public']),
|
|
147
|
+
});
|
|
148
|
+
const RemoveDurableAppSchema = z.object({
|
|
149
|
+
owner: z.string(),
|
|
150
|
+
removed: z.boolean(),
|
|
151
|
+
port: z.number().nullable(),
|
|
141
152
|
});
|
|
142
153
|
const UnexposedPortSchema = z.object({
|
|
143
154
|
port: z.number(),
|
|
@@ -276,7 +287,9 @@ export class NimbusSandbox {
|
|
|
276
287
|
_rpcSignalProcess: (pid, signal) => this.remoteRpc('signalProcess', [pid, signal], ProcessControlResultSchema),
|
|
277
288
|
_rpcProcessLogs: (pid, options) => this.remoteRpc('processLogs', [pid, options], ProcessLogsResultSchema),
|
|
278
289
|
_rpcListPorts: () => this.remoteRpc('listPorts', [], z.array(PortSchema)),
|
|
279
|
-
_rpcExposePort: (port) => this.remoteRpc('exposePort', [port], ExposedPortSchema),
|
|
290
|
+
_rpcExposePort: (port, options) => this.remoteRpc('exposePort', [port, options], ExposedPortSchema),
|
|
291
|
+
_rpcEnsureDurableApp: (input) => this.remoteRpc('ensureDurableApp', [input], EnsureDurableAppSchema),
|
|
292
|
+
_rpcRemoveDurableApp: (owner) => this.remoteRpc('removeDurableApp', [{ owner }], RemoveDurableAppSchema),
|
|
280
293
|
_rpcUnexposePort: (port) => this.remoteRpc('unexposePort', [port], UnexposedPortSchema),
|
|
281
294
|
_rpcDestroy: (options) => this.remoteRpc('destroy', [options], DestroyResultSchema),
|
|
282
295
|
};
|
|
@@ -483,16 +496,41 @@ export class NimbusSandbox {
|
|
|
483
496
|
await this.ready();
|
|
484
497
|
return this.rpc(this.stub()._rpcListPorts());
|
|
485
498
|
},
|
|
486
|
-
expose: async (port) => {
|
|
499
|
+
expose: async (port, options = {}) => {
|
|
487
500
|
await this.ready();
|
|
488
|
-
const result = await this.rpc(this.stub()._rpcExposePort(port));
|
|
489
|
-
return {
|
|
501
|
+
const result = await this.rpc(this.stub()._rpcExposePort(port, options));
|
|
502
|
+
return {
|
|
503
|
+
...result,
|
|
504
|
+
url: this.portUrl(port, {
|
|
505
|
+
visibility: result.visibility ?? 'scoped',
|
|
506
|
+
capability: result.capability ?? undefined,
|
|
507
|
+
}),
|
|
508
|
+
};
|
|
490
509
|
},
|
|
491
510
|
unexpose: async (port) => {
|
|
492
511
|
await this.ready();
|
|
493
512
|
return this.rpc(this.stub()._rpcUnexposePort(port));
|
|
494
513
|
},
|
|
495
|
-
|
|
514
|
+
/**
|
|
515
|
+
* Reserve (or re-answer) a durable application's port: the capability it
|
|
516
|
+
* answers is minted here and survives every reset, so the URL it builds
|
|
517
|
+
* is the URL the application keeps.
|
|
518
|
+
*/
|
|
519
|
+
ensureDurableApp: async (input) => {
|
|
520
|
+
await this.ready();
|
|
521
|
+
return this.rpc(this.stub()._rpcEnsureDurableApp(input));
|
|
522
|
+
},
|
|
523
|
+
/**
|
|
524
|
+
* End a durable application's contract: its launch is killed, the journal
|
|
525
|
+
* row purged, the reserved port released, the durable slot freed. Answers
|
|
526
|
+
* the owner, whether anything was removed, and the durable port that was
|
|
527
|
+
* released — null when no reservation existed.
|
|
528
|
+
*/
|
|
529
|
+
removeDurableApp: async (owner) => {
|
|
530
|
+
await this.ready();
|
|
531
|
+
return this.rpc(this.stub()._rpcRemoveDurableApp(owner));
|
|
532
|
+
},
|
|
533
|
+
url: (port, options = {}) => this.portUrl(port, options),
|
|
496
534
|
};
|
|
497
535
|
tools(options = {}) {
|
|
498
536
|
const namespace = options.namespace ?? this.profile.tools?.namespace ?? 'nimbus';
|
|
@@ -613,9 +651,15 @@ export class NimbusSandbox {
|
|
|
613
651
|
* token for it at `GET /s/<id>/api/preview-url?port=<n>`, which is what the
|
|
614
652
|
* session shell opens and what an embedder should hand to a browser.
|
|
615
653
|
*/
|
|
616
|
-
portUrl(port) {
|
|
654
|
+
portUrl(port, options = {}) {
|
|
617
655
|
const hostSuffix = this.config.previewHostSuffix;
|
|
618
656
|
if (hostSuffix && !this.profile.preview?.pathStyle && isPreviewHostSafeSid(this.id)) {
|
|
657
|
+
// The public form names its bearer in the label: a public port with a
|
|
658
|
+
// capability builds the unauthenticated host, anything else keeps the
|
|
659
|
+
// session-attached one.
|
|
660
|
+
if (options.visibility === 'public' && options.capability !== undefined) {
|
|
661
|
+
return `https://${buildPublicPreviewHost(this.id, port, options.capability, hostSuffix)}/`;
|
|
662
|
+
}
|
|
619
663
|
return `https://${buildPreviewHost(this.id, port, hostSuffix)}/`;
|
|
620
664
|
}
|
|
621
665
|
const explicit = this.profile.preview?.baseUrl;
|
package/dist/worker.d.ts
CHANGED
|
@@ -6,6 +6,6 @@
|
|
|
6
6
|
* should import through the SDK so the interactive app and programmatic
|
|
7
7
|
* sandbox APIs share one public package surface.
|
|
8
8
|
*/
|
|
9
|
-
export { NimbusSession, SupervisorRPC, NimbusAssetsRPC, NimbusLoaderRPC, NimbusLoadedWorker, NimbusLoadedEntrypoint, NimbusDurableObjectNamespace, NimbusDOStub, CirrusHmrRPC, base64Utf8, base64Url, base64UrlDecode, clearNimbusAgentOAuthCookie, createNimbusHandler, createNimbusAgentOAuthCookie, decodeJsonBase64Url, encodeJsonBase64Url, fetchNimbusCloudflareAccounts, fetchNimbusCloudflareUserInfo, generateSessionId, isNimbusCloudflareAccountId, isNimbusTenantSegment, isPreviewHostRequest, isValidSessionId, issueNimbusToken, loadNimbusAgentOAuthFromRequest, nimbusAgentAuthCookiePath, nimbusAgentRouteContext, NIMBUS_AGENT_AUTH_COOKIE, NIMBUS_AGENT_AUTH_COOKIE_PURPOSE, NIMBUS_AGENT_AUTH_COOKIE_TTL_SECONDS, NIMBUS_CF_OAUTH_AUTH_URL, NIMBUS_CF_OAUTH_TOKEN_URL, NIMBUS_CF_OAUTH_USERINFO_URL, NIMBUS_CLOUDFLARE_API, pkceChallenge, randomBase64Url, readNimbusAgentCookieSecret, readNimbusCookie, requestNimbusCloudflareOAuthToken, sealJson, serializeNimbusCookie, sha256Base64Url, unsealJson, verifyNimbusToken, NimbusAuthError, } from '@nimbus-sh/worker';
|
|
9
|
+
export { NimbusSession, NimbusPublicDirectory, SupervisorRPC, NimbusAssetsRPC, NimbusLoaderRPC, NimbusLoadedWorker, NimbusLoadedEntrypoint, NimbusDurableObjectNamespace, NimbusDOStub, CirrusHmrRPC, base64Utf8, base64Url, base64UrlDecode, clearNimbusAgentOAuthCookie, createNimbusHandler, createNimbusAgentOAuthCookie, decodeJsonBase64Url, encodeJsonBase64Url, fetchNimbusCloudflareAccounts, fetchNimbusCloudflareUserInfo, generateSessionId, isNimbusCloudflareAccountId, isNimbusTenantSegment, isPreviewHostRequest, isValidSessionId, issueNimbusToken, loadNimbusAgentOAuthFromRequest, nimbusAgentAuthCookiePath, nimbusAgentRouteContext, NIMBUS_AGENT_AUTH_COOKIE, NIMBUS_AGENT_AUTH_COOKIE_PURPOSE, NIMBUS_AGENT_AUTH_COOKIE_TTL_SECONDS, NIMBUS_CF_OAUTH_AUTH_URL, NIMBUS_CF_OAUTH_TOKEN_URL, NIMBUS_CF_OAUTH_USERINFO_URL, NIMBUS_CLOUDFLARE_API, pkceChallenge, randomBase64Url, readNimbusAgentCookieSecret, readNimbusCookie, requestNimbusCloudflareOAuthToken, sealJson, serializeNimbusCookie, sha256Base64Url, unsealJson, verifyNimbusToken, NimbusAuthError, } from '@nimbus-sh/worker';
|
|
10
10
|
export type { NimbusHandler, NimbusHooks, NimbusHookContext, CustomRoutes, CreateNimbusHandlerOptions, NimbusRemoteApiConfig, NimbusRuntimePolicy, NimbusSandboxProfile, NimbusSdkConfig, NimbusSdkRouterConfig, AuthMode, NimbusAuthConfig, NimbusAuthEnv, NimbusAgentOAuthCookie, NimbusCloudflareAccount, NimbusTokenClaims, VerifiedNimbusToken, } from '@nimbus-sh/worker';
|
|
11
11
|
//# sourceMappingURL=worker.d.ts.map
|
package/dist/worker.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"worker.d.ts","sourceRoot":"","sources":["../src/worker.ts"],"names":[],"mappings":"AAAA;;;;;;;GAOG;AAEH,OAAO,EACL,aAAa,EACb,aAAa,EACb,eAAe,EACf,eAAe,EACf,kBAAkB,EAClB,sBAAsB,EACtB,4BAA4B,EAC5B,YAAY,EACZ,YAAY,EACZ,UAAU,EACV,SAAS,EACT,eAAe,EACf,2BAA2B,EAC3B,mBAAmB,EACnB,4BAA4B,EAC5B,mBAAmB,EACnB,mBAAmB,EACnB,6BAA6B,EAC7B,6BAA6B,EAC7B,iBAAiB,EACjB,2BAA2B,EAC3B,qBAAqB,EACrB,oBAAoB,EACpB,gBAAgB,EAChB,gBAAgB,EAChB,+BAA+B,EAC/B,yBAAyB,EACzB,uBAAuB,EACvB,wBAAwB,EACxB,gCAAgC,EAChC,oCAAoC,EACpC,wBAAwB,EACxB,yBAAyB,EACzB,4BAA4B,EAC5B,qBAAqB,EACrB,aAAa,EACb,eAAe,EACf,2BAA2B,EAC3B,gBAAgB,EAChB,iCAAiC,EACjC,QAAQ,EACR,qBAAqB,EACrB,eAAe,EACf,UAAU,EACV,iBAAiB,EACjB,eAAe,GAChB,MAAM,mBAAmB,CAAC;AAE3B,YAAY,EACV,aAAa,EACb,WAAW,EACX,iBAAiB,EACjB,YAAY,EACZ,0BAA0B,EAC1B,qBAAqB,EACrB,mBAAmB,EACnB,oBAAoB,EACpB,eAAe,EACf,qBAAqB,EACrB,QAAQ,EACR,gBAAgB,EAChB,aAAa,EACb,sBAAsB,EACtB,uBAAuB,EACvB,iBAAiB,EACjB,mBAAmB,GACpB,MAAM,mBAAmB,CAAC"}
|
|
1
|
+
{"version":3,"file":"worker.d.ts","sourceRoot":"","sources":["../src/worker.ts"],"names":[],"mappings":"AAAA;;;;;;;GAOG;AAEH,OAAO,EACL,aAAa,EACb,qBAAqB,EACrB,aAAa,EACb,eAAe,EACf,eAAe,EACf,kBAAkB,EAClB,sBAAsB,EACtB,4BAA4B,EAC5B,YAAY,EACZ,YAAY,EACZ,UAAU,EACV,SAAS,EACT,eAAe,EACf,2BAA2B,EAC3B,mBAAmB,EACnB,4BAA4B,EAC5B,mBAAmB,EACnB,mBAAmB,EACnB,6BAA6B,EAC7B,6BAA6B,EAC7B,iBAAiB,EACjB,2BAA2B,EAC3B,qBAAqB,EACrB,oBAAoB,EACpB,gBAAgB,EAChB,gBAAgB,EAChB,+BAA+B,EAC/B,yBAAyB,EACzB,uBAAuB,EACvB,wBAAwB,EACxB,gCAAgC,EAChC,oCAAoC,EACpC,wBAAwB,EACxB,yBAAyB,EACzB,4BAA4B,EAC5B,qBAAqB,EACrB,aAAa,EACb,eAAe,EACf,2BAA2B,EAC3B,gBAAgB,EAChB,iCAAiC,EACjC,QAAQ,EACR,qBAAqB,EACrB,eAAe,EACf,UAAU,EACV,iBAAiB,EACjB,eAAe,GAChB,MAAM,mBAAmB,CAAC;AAE3B,YAAY,EACV,aAAa,EACb,WAAW,EACX,iBAAiB,EACjB,YAAY,EACZ,0BAA0B,EAC1B,qBAAqB,EACrB,mBAAmB,EACnB,oBAAoB,EACpB,eAAe,EACf,qBAAqB,EACrB,QAAQ,EACR,gBAAgB,EAChB,aAAa,EACb,sBAAsB,EACtB,uBAAuB,EACvB,iBAAiB,EACjB,mBAAmB,GACpB,MAAM,mBAAmB,CAAC"}
|
package/dist/worker.js
CHANGED
|
@@ -6,4 +6,4 @@
|
|
|
6
6
|
* should import through the SDK so the interactive app and programmatic
|
|
7
7
|
* sandbox APIs share one public package surface.
|
|
8
8
|
*/
|
|
9
|
-
export { NimbusSession, SupervisorRPC, NimbusAssetsRPC, NimbusLoaderRPC, NimbusLoadedWorker, NimbusLoadedEntrypoint, NimbusDurableObjectNamespace, NimbusDOStub, CirrusHmrRPC, base64Utf8, base64Url, base64UrlDecode, clearNimbusAgentOAuthCookie, createNimbusHandler, createNimbusAgentOAuthCookie, decodeJsonBase64Url, encodeJsonBase64Url, fetchNimbusCloudflareAccounts, fetchNimbusCloudflareUserInfo, generateSessionId, isNimbusCloudflareAccountId, isNimbusTenantSegment, isPreviewHostRequest, isValidSessionId, issueNimbusToken, loadNimbusAgentOAuthFromRequest, nimbusAgentAuthCookiePath, nimbusAgentRouteContext, NIMBUS_AGENT_AUTH_COOKIE, NIMBUS_AGENT_AUTH_COOKIE_PURPOSE, NIMBUS_AGENT_AUTH_COOKIE_TTL_SECONDS, NIMBUS_CF_OAUTH_AUTH_URL, NIMBUS_CF_OAUTH_TOKEN_URL, NIMBUS_CF_OAUTH_USERINFO_URL, NIMBUS_CLOUDFLARE_API, pkceChallenge, randomBase64Url, readNimbusAgentCookieSecret, readNimbusCookie, requestNimbusCloudflareOAuthToken, sealJson, serializeNimbusCookie, sha256Base64Url, unsealJson, verifyNimbusToken, NimbusAuthError, } from '@nimbus-sh/worker';
|
|
9
|
+
export { NimbusSession, NimbusPublicDirectory, SupervisorRPC, NimbusAssetsRPC, NimbusLoaderRPC, NimbusLoadedWorker, NimbusLoadedEntrypoint, NimbusDurableObjectNamespace, NimbusDOStub, CirrusHmrRPC, base64Utf8, base64Url, base64UrlDecode, clearNimbusAgentOAuthCookie, createNimbusHandler, createNimbusAgentOAuthCookie, decodeJsonBase64Url, encodeJsonBase64Url, fetchNimbusCloudflareAccounts, fetchNimbusCloudflareUserInfo, generateSessionId, isNimbusCloudflareAccountId, isNimbusTenantSegment, isPreviewHostRequest, isValidSessionId, issueNimbusToken, loadNimbusAgentOAuthFromRequest, nimbusAgentAuthCookiePath, nimbusAgentRouteContext, NIMBUS_AGENT_AUTH_COOKIE, NIMBUS_AGENT_AUTH_COOKIE_PURPOSE, NIMBUS_AGENT_AUTH_COOKIE_TTL_SECONDS, NIMBUS_CF_OAUTH_AUTH_URL, NIMBUS_CF_OAUTH_TOKEN_URL, NIMBUS_CF_OAUTH_USERINFO_URL, NIMBUS_CLOUDFLARE_API, pkceChallenge, randomBase64Url, readNimbusAgentCookieSecret, readNimbusCookie, requestNimbusCloudflareOAuthToken, sealJson, serializeNimbusCookie, sha256Base64Url, unsealJson, verifyNimbusToken, NimbusAuthError, } from '@nimbus-sh/worker';
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@nimbus-sh/sdk",
|
|
3
|
-
"version": "0.
|
|
3
|
+
"version": "0.4.0",
|
|
4
4
|
"description": "Nimbus SDK — Worker embedder, programmatic sandboxes, token mint, and client helpers.",
|
|
5
5
|
"keywords": [
|
|
6
6
|
"cloudflare",
|
|
@@ -72,12 +72,12 @@
|
|
|
72
72
|
"typecheck": "tsc --noEmit"
|
|
73
73
|
},
|
|
74
74
|
"peerDependencies": {
|
|
75
|
-
"@nimbus-sh/core": "^0.
|
|
76
|
-
"@nimbus-sh/worker": "^0.
|
|
75
|
+
"@nimbus-sh/core": "^0.7.0",
|
|
76
|
+
"@nimbus-sh/worker": "^0.5.0"
|
|
77
77
|
},
|
|
78
78
|
"devDependencies": {
|
|
79
79
|
"@cloudflare/workers-types": "^4.20250327.0",
|
|
80
|
-
"@nimbus-sh/worker": "^0.
|
|
80
|
+
"@nimbus-sh/worker": "^0.5.0",
|
|
81
81
|
"typescript": "^5.7.0"
|
|
82
82
|
},
|
|
83
83
|
"publishConfig": {
|
|
@@ -85,6 +85,6 @@
|
|
|
85
85
|
},
|
|
86
86
|
"dependencies": {
|
|
87
87
|
"zod": "^4.4.3",
|
|
88
|
-
"@nimbus-sh/core": "^0.
|
|
88
|
+
"@nimbus-sh/core": "^0.7.0"
|
|
89
89
|
}
|
|
90
90
|
}
|