@moxt-ai/mobius-sdk 0.0.53 → 0.0.54
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 +1 -38
- package/dist/index.d.ts +0 -1
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +0 -1
- package/dist/index.js.map +1 -1
- package/package.json +1 -5
- package/dist/standalone.d.ts +0 -20
- package/dist/standalone.d.ts.map +0 -1
- package/dist/standalone.js +0 -32
- package/dist/standalone.js.map +0 -1
package/README.md
CHANGED
|
@@ -6,49 +6,12 @@ The SDK connects browser and server clients to a Mobius Relay. It supports Runti
|
|
|
6
6
|
pnpm add @moxt-ai/mobius-sdk
|
|
7
7
|
```
|
|
8
8
|
|
|
9
|
-
Use `@moxt-ai/mobius-sdk/channel` for the live browser channel, `@moxt-ai/mobius-sdk/server` for project Runtime and pairing operations, and `@moxt-ai/mobius-sdk/platform` for Platform provisioning.
|
|
9
|
+
Use `@moxt-ai/mobius-sdk/channel` for the live browser channel, `@moxt-ai/mobius-sdk/server` for project Runtime and pairing operations, and `@moxt-ai/mobius-sdk/platform` for Platform provisioning.
|
|
10
10
|
|
|
11
11
|
Server clients use `HttpTransport` by default. A shared `WsTransport` can tunnel HTTP requests through the Relay's `/mobius/api/v1/transport` endpoint; its owner closes the transport when finished. The channel client manages its own WebSocket connection.
|
|
12
12
|
|
|
13
13
|
Agent catalogs belong to a Runtime. Read one with `client.runtimes.getAgents(runtimeId, signal)`. Agent settings belong to the selected Runtime and Agent. Discover them with `client.runtimes.discoverAgentSettings(runtimeId, agentId, request, signal)` and pass the selected values to the live channel when prompting.
|
|
14
14
|
|
|
15
|
-
## Standalone browser apps
|
|
16
|
-
|
|
17
|
-
Use `MobiusStandaloneCredentialProvider` in a browser served by the Standalone
|
|
18
|
-
Worker. It exchanges the public bootstrap endpoint for a short-lived credential and
|
|
19
|
-
keeps the deployment owner credential inside the Worker. All Mobius HTTP operations
|
|
20
|
-
then go through the ordinary SDK client:
|
|
21
|
-
|
|
22
|
-
```ts
|
|
23
|
-
import {
|
|
24
|
-
MobiusClient,
|
|
25
|
-
MobiusRuntimePairingRequest,
|
|
26
|
-
MobiusStandaloneCredentialProvider,
|
|
27
|
-
} from "@moxt-ai/mobius-sdk";
|
|
28
|
-
|
|
29
|
-
const endpoint = window.location.origin;
|
|
30
|
-
const credentials = new MobiusStandaloneCredentialProvider({ endpoint });
|
|
31
|
-
const mobius = new MobiusClient({
|
|
32
|
-
credentialProvider: credentials,
|
|
33
|
-
endpoint,
|
|
34
|
-
projectId: "standalone",
|
|
35
|
-
});
|
|
36
|
-
|
|
37
|
-
const pairing = await mobius.runtimePairings.create(
|
|
38
|
-
new MobiusRuntimePairingRequest(`web-${crypto.randomUUID()}`),
|
|
39
|
-
AbortSignal.timeout(15_000),
|
|
40
|
-
);
|
|
41
|
-
|
|
42
|
-
const runtimes = await mobius.runtimes.list(AbortSignal.timeout(15_000));
|
|
43
|
-
```
|
|
44
|
-
|
|
45
|
-
The provider refreshes its cached credential before expiry. Keep one provider for the
|
|
46
|
-
browser app and pass cancellation signals to every operation. Do not call the
|
|
47
|
-
Standalone bootstrap endpoint directly or copy the deployment owner credential into
|
|
48
|
-
browser configuration. Apps that hold a channel-owner credential can manage channel
|
|
49
|
-
access grants through `client.channels`; one-time grant redemption uses
|
|
50
|
-
`MobiusChannelAccessClient`.
|
|
51
|
-
|
|
52
15
|
For a live Runtime connection, pass an asynchronous `relayUrl` provider to
|
|
53
16
|
`connectMobiusChannelClient`. The SDK evaluates it for the initial connection and
|
|
54
17
|
again before every reconnect, so the callback can call `credentials.credential(signal)`
|
package/dist/index.d.ts
CHANGED
|
@@ -4,7 +4,6 @@ export * from "./errors.ts";
|
|
|
4
4
|
export * from "./project-authentication.ts";
|
|
5
5
|
export * from "./resources.ts";
|
|
6
6
|
export * from "./service-client.ts";
|
|
7
|
-
export * from "./standalone.ts";
|
|
8
7
|
export * from "./transport/http-transport.ts";
|
|
9
8
|
export * from "./transport/ws-transport.ts";
|
|
10
9
|
//# sourceMappingURL=index.d.ts.map
|
package/dist/index.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,YAAY,EACR,kBAAkB,EAClB,iBAAiB,EACjB,mBAAmB,EACnB,2BAA2B,EAC3B,sBAAsB,EACtB,0BAA0B,EAC1B,0BAA0B,EAC1B,uBAAuB,EACvB,yBAAyB,EACzB,wBAAwB,EACxB,gBAAgB,EAChB,YAAY,EACZ,4BAA4B,EAC5B,WAAW,EACX,oBAAoB,EACpB,kBAAkB,EAClB,oBAAoB,EACpB,mBAAmB,EACnB,WAAW,EACX,cAAc,EACd,mBAAmB,EACnB,cAAc,EACd,2BAA2B,EAC3B,mBAAmB,EACnB,yBAAyB,EACzB,6BAA6B,EAC7B,+BAA+B,EAC/B,uBAAuB,EACvB,gCAAgC,EAChC,+BAA+B,EAC/B,uBAAuB,EACvB,eAAe,EACf,+BAA+B,EAC/B,8BAA8B,EAC9B,8BAA8B,EAC9B,iBAAiB,EACjB,yBAAyB,EACzB,qBAAqB,EACrB,uBAAuB,EACvB,uBAAuB,EACvB,wBAAwB,EACxB,WAAW,EACX,qBAAqB,EACrB,cAAc,GACjB,MAAM,0BAA0B,CAAC;AAClC,OAAO,EACH,2BAA2B,EAC3B,+BAA+B,EAC/B,+BAA+B,EAC/B,sBAAsB,EACtB,yBAAyB,EACzB,qCAAqC,EACrC,uBAAuB,EACvB,8BAA8B,EAC9B,iCAAiC,EACjC,kCAAkC,EAClC,iBAAiB,EACjB,0BAA0B,EAC1B,uBAAuB,EACvB,0BAA0B,EAC1B,+BAA+B,EAC/B,0BAA0B,EAC1B,iCAAiC,EACjC,sCAAsC,EACtC,qCAAqC,EACrC,6BAA6B,EAC7B,qCAAqC,EACrC,oCAAoC,EACpC,uBAAuB,EACvB,+BAA+B,EAC/B,6BAA6B,EAC7B,8BAA8B,EAC9B,iCAAiC,EACjC,iBAAiB,EACjB,2BAA2B,EAC3B,aAAa,EACb,YAAY,EACZ,KAAK,oBAAoB,EACzB,oBAAoB,EACpB,sBAAsB,EACtB,4BAA4B,EAC5B,qCAAqC,EACrC,wBAAwB,GAC3B,MAAM,0BAA0B,CAAC;AAClC,cAAc,aAAa,CAAC;AAC5B,cAAc,6BAA6B,CAAC;AAC5C,cAAc,gBAAgB,CAAC;AAC/B,cAAc,qBAAqB,CAAC;AACpC,cAAc
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,YAAY,EACR,kBAAkB,EAClB,iBAAiB,EACjB,mBAAmB,EACnB,2BAA2B,EAC3B,sBAAsB,EACtB,0BAA0B,EAC1B,0BAA0B,EAC1B,uBAAuB,EACvB,yBAAyB,EACzB,wBAAwB,EACxB,gBAAgB,EAChB,YAAY,EACZ,4BAA4B,EAC5B,WAAW,EACX,oBAAoB,EACpB,kBAAkB,EAClB,oBAAoB,EACpB,mBAAmB,EACnB,WAAW,EACX,cAAc,EACd,mBAAmB,EACnB,cAAc,EACd,2BAA2B,EAC3B,mBAAmB,EACnB,yBAAyB,EACzB,6BAA6B,EAC7B,+BAA+B,EAC/B,uBAAuB,EACvB,gCAAgC,EAChC,+BAA+B,EAC/B,uBAAuB,EACvB,eAAe,EACf,+BAA+B,EAC/B,8BAA8B,EAC9B,8BAA8B,EAC9B,iBAAiB,EACjB,yBAAyB,EACzB,qBAAqB,EACrB,uBAAuB,EACvB,uBAAuB,EACvB,wBAAwB,EACxB,WAAW,EACX,qBAAqB,EACrB,cAAc,GACjB,MAAM,0BAA0B,CAAC;AAClC,OAAO,EACH,2BAA2B,EAC3B,+BAA+B,EAC/B,+BAA+B,EAC/B,sBAAsB,EACtB,yBAAyB,EACzB,qCAAqC,EACrC,uBAAuB,EACvB,8BAA8B,EAC9B,iCAAiC,EACjC,kCAAkC,EAClC,iBAAiB,EACjB,0BAA0B,EAC1B,uBAAuB,EACvB,0BAA0B,EAC1B,+BAA+B,EAC/B,0BAA0B,EAC1B,iCAAiC,EACjC,sCAAsC,EACtC,qCAAqC,EACrC,6BAA6B,EAC7B,qCAAqC,EACrC,oCAAoC,EACpC,uBAAuB,EACvB,+BAA+B,EAC/B,6BAA6B,EAC7B,8BAA8B,EAC9B,iCAAiC,EACjC,iBAAiB,EACjB,2BAA2B,EAC3B,aAAa,EACb,YAAY,EACZ,KAAK,oBAAoB,EACzB,oBAAoB,EACpB,sBAAsB,EACtB,4BAA4B,EAC5B,qCAAqC,EACrC,wBAAwB,GAC3B,MAAM,0BAA0B,CAAC;AAClC,cAAc,aAAa,CAAC;AAC5B,cAAc,6BAA6B,CAAC;AAC5C,cAAc,gBAAgB,CAAC;AAC/B,cAAc,qBAAqB,CAAC;AACpC,cAAc,+BAA+B,CAAC;AAC9C,cAAc,6BAA6B,CAAC"}
|
package/dist/index.js
CHANGED
|
@@ -3,7 +3,6 @@ export * from "./errors.js";
|
|
|
3
3
|
export * from "./project-authentication.js";
|
|
4
4
|
export * from "./resources.js";
|
|
5
5
|
export * from "./service-client.js";
|
|
6
|
-
export * from "./standalone.js";
|
|
7
6
|
export * from "./transport/http-transport.js";
|
|
8
7
|
export * from "./transport/ws-transport.js";
|
|
9
8
|
//# sourceMappingURL=index.js.map
|
package/dist/index.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AA8CA,OAAO,EACH,2BAA2B,EAC3B,+BAA+B,EAC/B,+BAA+B,EAC/B,sBAAsB,EACtB,yBAAyB,EACzB,qCAAqC,EACrC,uBAAuB,EACvB,8BAA8B,EAC9B,iCAAiC,EACjC,kCAAkC,EAClC,iBAAiB,EACjB,0BAA0B,EAC1B,uBAAuB,EACvB,0BAA0B,EAC1B,+BAA+B,EAC/B,0BAA0B,EAC1B,iCAAiC,EACjC,sCAAsC,EACtC,qCAAqC,EACrC,6BAA6B,EAC7B,qCAAqC,EACrC,oCAAoC,EACpC,uBAAuB,EACvB,+BAA+B,EAC/B,6BAA6B,EAC7B,8BAA8B,EAC9B,iCAAiC,EACjC,iBAAiB,EACjB,2BAA2B,EAC3B,aAAa,EACb,YAAY,EAEZ,oBAAoB,EACpB,sBAAsB,EACtB,4BAA4B,EAC5B,qCAAqC,EACrC,wBAAwB,GAC3B,MAAM,0BAA0B,CAAC;AAClC,cAAc,aAAa,CAAC;AAC5B,cAAc,6BAA6B,CAAC;AAC5C,cAAc,gBAAgB,CAAC;AAC/B,cAAc,qBAAqB,CAAC;AACpC,cAAc
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AA8CA,OAAO,EACH,2BAA2B,EAC3B,+BAA+B,EAC/B,+BAA+B,EAC/B,sBAAsB,EACtB,yBAAyB,EACzB,qCAAqC,EACrC,uBAAuB,EACvB,8BAA8B,EAC9B,iCAAiC,EACjC,kCAAkC,EAClC,iBAAiB,EACjB,0BAA0B,EAC1B,uBAAuB,EACvB,0BAA0B,EAC1B,+BAA+B,EAC/B,0BAA0B,EAC1B,iCAAiC,EACjC,sCAAsC,EACtC,qCAAqC,EACrC,6BAA6B,EAC7B,qCAAqC,EACrC,oCAAoC,EACpC,uBAAuB,EACvB,+BAA+B,EAC/B,6BAA6B,EAC7B,8BAA8B,EAC9B,iCAAiC,EACjC,iBAAiB,EACjB,2BAA2B,EAC3B,aAAa,EACb,YAAY,EAEZ,oBAAoB,EACpB,sBAAsB,EACtB,4BAA4B,EAC5B,qCAAqC,EACrC,wBAAwB,GAC3B,MAAM,0BAA0B,CAAC;AAClC,cAAc,aAAa,CAAC;AAC5B,cAAc,6BAA6B,CAAC;AAC5C,cAAc,gBAAgB,CAAC;AAC/B,cAAc,qBAAqB,CAAC;AACpC,cAAc,+BAA+B,CAAC;AAC9C,cAAc,6BAA6B,CAAC"}
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@moxt-ai/mobius-sdk",
|
|
3
|
-
"version": "0.0.
|
|
3
|
+
"version": "0.0.54",
|
|
4
4
|
"description": "Unified Mobius TypeScript SDK for browsers and Node.js.",
|
|
5
5
|
"type": "module",
|
|
6
6
|
"types": "./dist/index.d.ts",
|
|
@@ -20,10 +20,6 @@
|
|
|
20
20
|
"./server": {
|
|
21
21
|
"types": "./dist/server.d.ts",
|
|
22
22
|
"import": "./dist/server.js"
|
|
23
|
-
},
|
|
24
|
-
"./standalone": {
|
|
25
|
-
"types": "./dist/standalone.d.ts",
|
|
26
|
-
"import": "./dist/standalone.js"
|
|
27
23
|
}
|
|
28
24
|
},
|
|
29
25
|
"files": [
|
package/dist/standalone.d.ts
DELETED
|
@@ -1,20 +0,0 @@
|
|
|
1
|
-
import { type MobiusBrowserCredential } from "./resources.ts";
|
|
2
|
-
import type { MobiusCredentialProvider, MobiusResponseMetadata } from "./service-client.ts";
|
|
3
|
-
import type { MobiusHttpTransport } from "./transport/http-transport.ts";
|
|
4
|
-
export interface MobiusStandaloneCredentialProviderOptions {
|
|
5
|
-
readonly endpoint: string;
|
|
6
|
-
readonly observeResponse?: (metadata: MobiusResponseMetadata) => void;
|
|
7
|
-
readonly operationTimeoutMilliseconds?: number;
|
|
8
|
-
readonly transport?: MobiusHttpTransport;
|
|
9
|
-
}
|
|
10
|
-
/**
|
|
11
|
-
* Exchanges the Standalone Relay's public bootstrap endpoint for a short-lived,
|
|
12
|
-
* scoped browser credential. The deployment owner credential never enters the browser.
|
|
13
|
-
*/
|
|
14
|
-
export declare class MobiusStandaloneCredentialProvider implements MobiusCredentialProvider {
|
|
15
|
-
#private;
|
|
16
|
-
constructor(options: MobiusStandaloneCredentialProviderOptions);
|
|
17
|
-
readonly browserCredential: (signal: AbortSignal) => Promise<MobiusBrowserCredential>;
|
|
18
|
-
readonly credential: (signal: AbortSignal) => Promise<string>;
|
|
19
|
-
}
|
|
20
|
-
//# sourceMappingURL=standalone.d.ts.map
|
package/dist/standalone.d.ts.map
DELETED
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"standalone.d.ts","sourceRoot":"","sources":["../src/standalone.ts"],"names":[],"mappings":"AAEA,OAAO,EAAiC,KAAK,uBAAuB,EAAE,MAAM,gBAAgB,CAAC;AAC7F,OAAO,KAAK,EAAE,wBAAwB,EAAE,sBAAsB,EAAE,MAAM,qBAAqB,CAAC;AAC5F,OAAO,KAAK,EAAE,mBAAmB,EAAE,MAAM,+BAA+B,CAAC;AAIzE,MAAM,WAAW,yCAAyC;IACtD,QAAQ,CAAC,QAAQ,EAAE,MAAM,CAAC;IAC1B,QAAQ,CAAC,eAAe,CAAC,EAAE,CAAC,QAAQ,EAAE,sBAAsB,KAAK,IAAI,CAAC;IACtE,QAAQ,CAAC,4BAA4B,CAAC,EAAE,MAAM,CAAC;IAC/C,QAAQ,CAAC,SAAS,CAAC,EAAE,mBAAmB,CAAC;CAC5C;AAED;;;GAGG;AACH,qBAAa,kCAAmC,YAAW,wBAAwB;;IAI/E,YAAY,OAAO,EAAE,yCAAyC,EAE7D;IAED,QAAQ,CAAC,iBAAiB,WAAkB,WAAW,KAAG,OAAO,CAAC,uBAAuB,CAAC,CAkBxF;IAEF,QAAQ,CAAC,UAAU,WAAkB,WAAW,KAAG,OAAO,CAAC,MAAM,CAAC,CAAiD;CACtH"}
|
package/dist/standalone.js
DELETED
|
@@ -1,32 +0,0 @@
|
|
|
1
|
-
import { MobiusCancellationError, MobiusProtocolError } from "./errors.js";
|
|
2
|
-
import { MobiusPublicRequestExecutor } from "./public-request.js";
|
|
3
|
-
import { decodeMobiusBrowserCredential } from "./resources.js";
|
|
4
|
-
const CREDENTIAL_EXPIRY_MARGIN_MILLISECONDS = 30_000;
|
|
5
|
-
/**
|
|
6
|
-
* Exchanges the Standalone Relay's public bootstrap endpoint for a short-lived,
|
|
7
|
-
* scoped browser credential. The deployment owner credential never enters the browser.
|
|
8
|
-
*/
|
|
9
|
-
export class MobiusStandaloneCredentialProvider {
|
|
10
|
-
#requests;
|
|
11
|
-
#current = null;
|
|
12
|
-
constructor(options) {
|
|
13
|
-
this.#requests = new MobiusPublicRequestExecutor(options);
|
|
14
|
-
}
|
|
15
|
-
browserCredential = async (signal) => {
|
|
16
|
-
if (signal.aborted) {
|
|
17
|
-
throw new MobiusCancellationError({ cause: signal.reason });
|
|
18
|
-
}
|
|
19
|
-
if (this.#current !== null &&
|
|
20
|
-
Date.parse(this.#current.expiresAt) - Date.now() > CREDENTIAL_EXPIRY_MARGIN_MILLISECONDS) {
|
|
21
|
-
return this.#current;
|
|
22
|
-
}
|
|
23
|
-
const credential = decodeMobiusBrowserCredential(await this.#requests.post("v1/standalone/browser-credentials", {}, signal));
|
|
24
|
-
if (credential.projectId !== "standalone") {
|
|
25
|
-
throw new MobiusProtocolError("The service returned a credential for another Project");
|
|
26
|
-
}
|
|
27
|
-
this.#current = credential;
|
|
28
|
-
return credential;
|
|
29
|
-
};
|
|
30
|
-
credential = async (signal) => (await this.browserCredential(signal)).token;
|
|
31
|
-
}
|
|
32
|
-
//# sourceMappingURL=standalone.js.map
|
package/dist/standalone.js.map
DELETED
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"standalone.js","sourceRoot":"","sources":["../src/standalone.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,uBAAuB,EAAE,mBAAmB,EAAE,MAAM,aAAa,CAAC;AAC3E,OAAO,EAAE,2BAA2B,EAAE,MAAM,qBAAqB,CAAC;AAClE,OAAO,EAAE,6BAA6B,EAAgC,MAAM,gBAAgB,CAAC;AAI7F,MAAM,qCAAqC,GAAG,MAAM,CAAC;AASrD;;;GAGG;AACH,MAAM,OAAO,kCAAkC;IAClC,SAAS,CAA8B;IAChD,QAAQ,GAAmC,IAAI,CAAC;IAEhD,YAAY,OAAkD;QAC1D,IAAI,CAAC,SAAS,GAAG,IAAI,2BAA2B,CAAC,OAAO,CAAC,CAAC;IAC9D,CAAC;IAEQ,iBAAiB,GAAG,KAAK,EAAE,MAAmB,EAAoC,EAAE;QACzF,IAAI,MAAM,CAAC,OAAO,EAAE,CAAC;YACjB,MAAM,IAAI,uBAAuB,CAAC,EAAE,KAAK,EAAE,MAAM,CAAC,MAAM,EAAE,CAAC,CAAC;QAChE,CAAC;QACD,IACI,IAAI,CAAC,QAAQ,KAAK,IAAI;YACtB,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,QAAQ,CAAC,SAAS,CAAC,GAAG,IAAI,CAAC,GAAG,EAAE,GAAG,qCAAqC,EAC1F,CAAC;YACC,OAAO,IAAI,CAAC,QAAQ,CAAC;QACzB,CAAC;QACD,MAAM,UAAU,GAAG,6BAA6B,CAC5C,MAAM,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC,mCAAmC,EAAE,EAAE,EAAE,MAAM,CAAC,CAC7E,CAAC;QACF,IAAI,UAAU,CAAC,SAAS,KAAK,YAAY,EAAE,CAAC;YACxC,MAAM,IAAI,mBAAmB,CAAC,uDAAuD,CAAC,CAAC;QAC3F,CAAC;QACD,IAAI,CAAC,QAAQ,GAAG,UAAU,CAAC;QAC3B,OAAO,UAAU,CAAC;IACtB,CAAC,CAAC;IAEO,UAAU,GAAG,KAAK,EAAE,MAAmB,EAAmB,EAAE,CAAC,CAAC,MAAM,IAAI,CAAC,iBAAiB,CAAC,MAAM,CAAC,CAAC,CAAC,KAAK,CAAC;CACtH"}
|