@motebit/sdk 0.7.0 → 0.8.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 +1 -1
- package/dist/__tests__/appearance-config.test.d.ts +2 -0
- package/dist/__tests__/appearance-config.test.d.ts.map +1 -0
- package/dist/__tests__/appearance-config.test.js +104 -0
- package/dist/__tests__/appearance-config.test.js.map +1 -0
- package/dist/__tests__/branded-ids.test.d.ts +2 -0
- package/dist/__tests__/branded-ids.test.d.ts.map +1 -0
- package/dist/__tests__/branded-ids.test.js +70 -0
- package/dist/__tests__/branded-ids.test.js.map +1 -0
- package/dist/__tests__/index.test.d.ts +2 -0
- package/dist/__tests__/index.test.d.ts.map +1 -0
- package/dist/__tests__/index.test.js +194 -0
- package/dist/__tests__/index.test.js.map +1 -0
- package/dist/__tests__/provider-mode.test.d.ts +2 -0
- package/dist/__tests__/provider-mode.test.d.ts.map +1 -0
- package/dist/__tests__/provider-mode.test.js +180 -0
- package/dist/__tests__/provider-mode.test.js.map +1 -0
- package/dist/__tests__/provider-resolver.test.d.ts +2 -0
- package/dist/__tests__/provider-resolver.test.d.ts.map +1 -0
- package/dist/__tests__/provider-resolver.test.js +353 -0
- package/dist/__tests__/provider-resolver.test.js.map +1 -0
- package/dist/__tests__/voice-config.test.d.ts +2 -0
- package/dist/__tests__/voice-config.test.d.ts.map +1 -0
- package/dist/__tests__/voice-config.test.js +98 -0
- package/dist/__tests__/voice-config.test.js.map +1 -0
- package/dist/appearance-config.d.ts +55 -0
- package/dist/appearance-config.d.ts.map +1 -0
- package/dist/appearance-config.js +79 -0
- package/dist/appearance-config.js.map +1 -0
- package/dist/credential-types-doc.d.ts +73 -0
- package/dist/credential-types-doc.d.ts.map +1 -0
- package/dist/credential-types-doc.js +2 -0
- package/dist/credential-types-doc.js.map +1 -0
- package/dist/governance-config.d.ts +5 -0
- package/dist/governance-config.d.ts.map +1 -1
- package/dist/governance-config.js +8 -1
- package/dist/governance-config.js.map +1 -1
- package/dist/index.d.ts +55 -4
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +10 -4
- package/dist/index.js.map +1 -1
- package/dist/models.d.ts +44 -14
- package/dist/models.d.ts.map +1 -1
- package/dist/models.js +55 -18
- package/dist/models.js.map +1 -1
- package/dist/provider-mode.d.ts +109 -0
- package/dist/provider-mode.d.ts.map +1 -0
- package/dist/provider-mode.js +179 -0
- package/dist/provider-mode.js.map +1 -0
- package/dist/provider-resolver.d.ts +179 -0
- package/dist/provider-resolver.d.ts.map +1 -0
- package/dist/provider-resolver.js +224 -0
- package/dist/provider-resolver.js.map +1 -0
- package/dist/risk-labels.d.ts +22 -0
- package/dist/risk-labels.d.ts.map +1 -0
- package/dist/risk-labels.js +28 -0
- package/dist/risk-labels.js.map +1 -0
- package/dist/surface-options.d.ts +34 -0
- package/dist/surface-options.d.ts.map +1 -0
- package/dist/surface-options.js +36 -0
- package/dist/surface-options.js.map +1 -0
- package/dist/voice-config.d.ts +52 -0
- package/dist/voice-config.d.ts.map +1 -0
- package/dist/voice-config.js +61 -0
- package/dist/voice-config.js.map +1 -0
- package/package.json +7 -7
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"appearance-config.js","sourceRoot":"","sources":["../src/appearance-config.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;GAcG;AAoBH,+EAA+E;AAC/E,MAAM,CAAC,MAAM,yBAAyB,GAAqB;IACzD,WAAW,EAAE,WAAW;IACxB,SAAS,EAAE,GAAG;IACd,gBAAgB,EAAE,GAAG;IACrB,KAAK,EAAE,QAAQ;CAChB,CAAC;AAEF;;;;;;;;;;;;;;;;;;GAkBG;AACH,MAAM,UAAU,uBAAuB,CAAC,GAAY;IAClD,IAAI,GAAG,IAAI,IAAI,IAAI,OAAO,GAAG,KAAK,QAAQ;QAAE,OAAO,EAAE,GAAG,yBAAyB,EAAE,CAAC;IACpF,MAAM,GAAG,GAAG,GAA8B,CAAC;IAE3C,MAAM,KAAK,GAAG,CAAC,CAAU,EAAe,EAAE,CAAC,OAAO,CAAC,KAAK,QAAQ,CAAC;IACjE,MAAM,KAAK,GAAG,CAAC,CAAU,EAAe,EAAE,CAAC,OAAO,CAAC,KAAK,QAAQ,CAAC;IAEjE,mEAAmE;IACnE,sEAAsE;IACtE,MAAM,WAAW,GACf,CAAC,KAAK,CAAC,GAAG,CAAC,WAAW,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,WAAW,CAAC,CAAC,CAAC,SAAS,CAAC;QACtD,CAAC,KAAK,CAAC,GAAG,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,MAAM,CAAC,CAAC,CAAC,SAAS,CAAC;QAC5C,CAAC,KAAK,CAAC,GAAG,CAAC,qBAAqB,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,qBAAqB,CAAC,CAAC,CAAC,SAAS,CAAC;QAC1E,yBAAyB,CAAC,WAAW,CAAC;IAExC,gEAAgE;IAChE,gDAAgD;IAChD,IAAI,SAA6B,CAAC;IAClC,IAAI,gBAAoC,CAAC;IACzC,IAAI,KAAK,CAAC,GAAG,CAAC,SAAS,CAAC;QAAE,SAAS,GAAG,GAAG,CAAC,SAAS,CAAC;IACpD,IAAI,KAAK,CAAC,GAAG,CAAC,gBAAgB,CAAC;QAAE,gBAAgB,GAAG,GAAG,CAAC,gBAAgB,CAAC;IACzE,MAAM,aAAa,GAAG,GAAG,CAAC,iBAAsE,CAAC;IACjG,IAAI,SAAS,KAAK,SAAS,IAAI,aAAa,IAAI,IAAI,IAAI,KAAK,CAAC,aAAa,CAAC,GAAG,CAAC,EAAE,CAAC;QACjF,SAAS,GAAG,aAAa,CAAC,GAAG,CAAC;IAChC,CAAC;IACD,IAAI,gBAAgB,KAAK,SAAS,IAAI,aAAa,IAAI,IAAI,IAAI,KAAK,CAAC,aAAa,CAAC,UAAU,CAAC,EAAE,CAAC;QAC/F,gBAAgB,GAAG,aAAa,CAAC,UAAU,CAAC;IAC9C,CAAC;IAED,mEAAmE;IACnE,MAAM,QAAQ,GAAG,GAAG,CAAC,KAAK,CAAC;IAC3B,MAAM,KAAK,GACT,QAAQ,KAAK,OAAO,IAAI,QAAQ,KAAK,MAAM,IAAI,QAAQ,KAAK,QAAQ,CAAC,CAAC,CAAC,QAAQ,CAAC,CAAC,CAAC,SAAS,CAAC;IAE9F,OAAO;QACL,WAAW;QACX,SAAS,EAAE,SAAS,IAAI,yBAAyB,CAAC,SAAS;QAC3D,gBAAgB,EAAE,gBAAgB,IAAI,yBAAyB,CAAC,gBAAgB;QAChF,KAAK,EAAE,KAAK,IAAI,yBAAyB,CAAC,KAAK;KAChD,CAAC;AACJ,CAAC"}
|
|
@@ -0,0 +1,73 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* @fileoverview Credential-shaped type family (documentation module).
|
|
3
|
+
*
|
|
4
|
+
* The monorepo has four "Credential/Verifier"-shaped types that are easy to
|
|
5
|
+
* confuse at a glance but are deliberately distinct. They are complementary,
|
|
6
|
+
* not duplicates. Each addresses a different side of the trust boundary.
|
|
7
|
+
*
|
|
8
|
+
* Naming convention:
|
|
9
|
+
* - `Source` → supplies a credential (outbound)
|
|
10
|
+
* - `Verifier` → checks something (identity of a remote, or validity of a token)
|
|
11
|
+
* - `Adapter` → persistent storage
|
|
12
|
+
*
|
|
13
|
+
* ──────────────────────────────────────────────────────────────────────────
|
|
14
|
+
* 1. CredentialSource (OUTBOUND — supply)
|
|
15
|
+
* Location: `@motebit/mcp-client`
|
|
16
|
+
* Shape: `getCredential(CredentialRequest) → string | null`
|
|
17
|
+
* Role: Per-call credential supplier used when WE call a third-party
|
|
18
|
+
* MCP server. Resolved per HTTP request via custom `fetch`
|
|
19
|
+
* injection so per-tool, per-scope credentials are possible.
|
|
20
|
+
* Known implementations:
|
|
21
|
+
* - StaticCredentialSource (wraps a static bearer token)
|
|
22
|
+
* - KeyringCredentialSource (reads from OS keyring per call)
|
|
23
|
+
* - VaultCredentialSource (reads from an external vault per call)
|
|
24
|
+
* - OAuthCredentialSource (OAuth 2.0 lifecycle with refresh-ahead)
|
|
25
|
+
*
|
|
26
|
+
* ──────────────────────────────────────────────────────────────────────────
|
|
27
|
+
* 2. ServerVerifier (OUTBOUND — check remote identity)
|
|
28
|
+
* Location: `@motebit/mcp-client`
|
|
29
|
+
* Shape: `verify(config, tools) → VerificationResult`
|
|
30
|
+
* Role: Verifies the identity / integrity of a third-party MCP server
|
|
31
|
+
* we are connecting TO. Runs automatically during `connect()`
|
|
32
|
+
* after tool discovery. Fail-closed.
|
|
33
|
+
* Known implementations:
|
|
34
|
+
* - ManifestPinningVerifier (fail-closed on manifest change)
|
|
35
|
+
* - AdvisoryManifestVerifier (accepts, revokes trust on change)
|
|
36
|
+
* - TlsCertificateVerifier (pins TLS cert SHA-256 fingerprint)
|
|
37
|
+
* - CompositeServerVerifier (chains multiple verifiers)
|
|
38
|
+
*
|
|
39
|
+
* ──────────────────────────────────────────────────────────────────────────
|
|
40
|
+
* 3. InboundCredentialVerifier (INBOUND — check presented token)
|
|
41
|
+
* Location: `@motebit/mcp-server`
|
|
42
|
+
* Shape: `verify(token: string) → Promise<boolean>`
|
|
43
|
+
* Role: Checks inbound non-motebit bearer tokens when WE ARE the MCP
|
|
44
|
+
* server and a third party is calling us. Motebit-to-motebit
|
|
45
|
+
* signed-token auth is a separate, untouched path.
|
|
46
|
+
* Known implementations:
|
|
47
|
+
* - StaticTokenVerifier (constant-string comparison)
|
|
48
|
+
*
|
|
49
|
+
* (Previously named `CredentialVerifier` — renamed to make the direction
|
|
50
|
+
* explicit and avoid collision with the two outbound types above.)
|
|
51
|
+
*
|
|
52
|
+
* ──────────────────────────────────────────────────────────────────────────
|
|
53
|
+
* 4. CredentialStoreAdapter (STORAGE — persist)
|
|
54
|
+
* Location: `@motebit/protocol`
|
|
55
|
+
* Role: Persistent credential storage. The "where credentials live
|
|
56
|
+
* at rest" boundary — separate from how they are supplied on
|
|
57
|
+
* the wire (CredentialSource) or how tokens are checked at
|
|
58
|
+
* either end (ServerVerifier / InboundCredentialVerifier).
|
|
59
|
+
*
|
|
60
|
+
* ──────────────────────────────────────────────────────────────────────────
|
|
61
|
+
* Quick mental model:
|
|
62
|
+
*
|
|
63
|
+
* WE CALL OUT WE ARE CALLED
|
|
64
|
+
* ─────────── ─────────────
|
|
65
|
+
* Supply CredentialSource —
|
|
66
|
+
* Check peer ServerVerifier InboundCredentialVerifier
|
|
67
|
+
* Store CredentialStoreAdapter CredentialStoreAdapter
|
|
68
|
+
*
|
|
69
|
+
* If you find yourself reaching for "CredentialVerifier" without a direction
|
|
70
|
+
* qualifier, stop and pick the specific type above.
|
|
71
|
+
*/
|
|
72
|
+
export {};
|
|
73
|
+
//# sourceMappingURL=credential-types-doc.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"credential-types-doc.d.ts","sourceRoot":"","sources":["../src/credential-types-doc.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAsEG;AACH,OAAO,EAAE,CAAC"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"credential-types-doc.js","sourceRoot":"","sources":["../src/credential-types-doc.ts"],"names":[],"mappings":""}
|
|
@@ -9,6 +9,11 @@ export interface GovernanceConfig {
|
|
|
9
9
|
approvalPreset: ApprovalPreset;
|
|
10
10
|
persistenceThreshold: number;
|
|
11
11
|
rejectSecrets: boolean;
|
|
12
|
+
/** Max tool calls in a single agentic turn. */
|
|
12
13
|
maxCallsPerTurn: number;
|
|
14
|
+
/** Max memories the MemoryGovernor will persist in a single turn. */
|
|
15
|
+
maxMemoriesPerTurn: number;
|
|
13
16
|
}
|
|
17
|
+
/** Default governance config — matches `DEFAULT_MEMORY_GOVERNANCE` in policy. */
|
|
18
|
+
export declare const DEFAULT_GOVERNANCE_CONFIG: GovernanceConfig;
|
|
14
19
|
//# sourceMappingURL=governance-config.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"governance-config.d.ts","sourceRoot":"","sources":["../src/governance-config.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAEH,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,uBAAuB,CAAC;AAE5D,MAAM,WAAW,gBAAgB;IAC/B,cAAc,EAAE,cAAc,CAAC;IAC/B,oBAAoB,EAAE,MAAM,CAAC;IAC7B,aAAa,EAAE,OAAO,CAAC;IACvB,eAAe,EAAE,MAAM,CAAC;
|
|
1
|
+
{"version":3,"file":"governance-config.d.ts","sourceRoot":"","sources":["../src/governance-config.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAEH,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,uBAAuB,CAAC;AAE5D,MAAM,WAAW,gBAAgB;IAC/B,cAAc,EAAE,cAAc,CAAC;IAC/B,oBAAoB,EAAE,MAAM,CAAC;IAC7B,aAAa,EAAE,OAAO,CAAC;IACvB,+CAA+C;IAC/C,eAAe,EAAE,MAAM,CAAC;IACxB,qEAAqE;IACrE,kBAAkB,EAAE,MAAM,CAAC;CAC5B;AAED,iFAAiF;AACjF,eAAO,MAAM,yBAAyB,EAAE,gBAMvC,CAAC"}
|
|
@@ -4,5 +4,12 @@
|
|
|
4
4
|
* Canonical source — imported by surfaces that persist governance settings.
|
|
5
5
|
* Platform-specific persistence (localStorage, Tauri, AsyncStorage) stays in each app.
|
|
6
6
|
*/
|
|
7
|
-
|
|
7
|
+
/** Default governance config — matches `DEFAULT_MEMORY_GOVERNANCE` in policy. */
|
|
8
|
+
export const DEFAULT_GOVERNANCE_CONFIG = {
|
|
9
|
+
approvalPreset: "balanced",
|
|
10
|
+
persistenceThreshold: 0.5,
|
|
11
|
+
rejectSecrets: true,
|
|
12
|
+
maxCallsPerTurn: 10,
|
|
13
|
+
maxMemoriesPerTurn: 5,
|
|
14
|
+
};
|
|
8
15
|
//# sourceMappingURL=governance-config.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"governance-config.js","sourceRoot":"","sources":["../src/governance-config.ts"],"names":[],"mappings":"AAAA;;;;;GAKG"}
|
|
1
|
+
{"version":3,"file":"governance-config.js","sourceRoot":"","sources":["../src/governance-config.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAcH,iFAAiF;AACjF,MAAM,CAAC,MAAM,yBAAyB,GAAqB;IACzD,cAAc,EAAE,UAAU;IAC1B,oBAAoB,EAAE,GAAG;IACzB,aAAa,EAAE,IAAI;IACnB,eAAe,EAAE,EAAE;IACnB,kBAAkB,EAAE,CAAC;CACtB,CAAC"}
|
package/dist/index.d.ts
CHANGED
|
@@ -1,8 +1,14 @@
|
|
|
1
1
|
export * from "@motebit/protocol";
|
|
2
|
-
export * from "./models";
|
|
3
|
-
export * from "./
|
|
4
|
-
export * from "./
|
|
5
|
-
export * from "./
|
|
2
|
+
export * from "./models.js";
|
|
3
|
+
export * from "./provider-mode.js";
|
|
4
|
+
export * from "./provider-resolver.js";
|
|
5
|
+
export * from "./color-presets.js";
|
|
6
|
+
export * from "./approval-presets.js";
|
|
7
|
+
export * from "./risk-labels.js";
|
|
8
|
+
export * from "./surface-options.js";
|
|
9
|
+
export * from "./governance-config.js";
|
|
10
|
+
export * from "./voice-config.js";
|
|
11
|
+
export * from "./appearance-config.js";
|
|
6
12
|
import type { SensitivityLevel, NodeId, MotebitId, TrustMode, BatteryMode, EventLogEntry, MemoryContent, MemoryCandidate, ToolDefinition, AgentTrustRecord, EventStoreAdapter, IdentityStorage, AuditLogAdapter, StateSnapshotAdapter, AuditLogSink, ConversationStoreAdapter, PlanStoreAdapter, AgentTrustStoreAdapter, ServiceListingStoreAdapter, BudgetAllocationStoreAdapter, SettlementStoreAdapter, LatencyStatsStoreAdapter, CredentialStoreAdapter, ApprovalStoreAdapter, MotebitIdentity, AuditRecord } from "@motebit/protocol";
|
|
7
13
|
export declare enum RelationType {
|
|
8
14
|
Related = "related",
|
|
@@ -259,4 +265,49 @@ export interface StorageAdapters {
|
|
|
259
265
|
credentialStore?: CredentialStoreAdapter;
|
|
260
266
|
approvalStore?: ApprovalStoreAdapter;
|
|
261
267
|
}
|
|
268
|
+
/** Context passed to CredentialSource when requesting a credential. */
|
|
269
|
+
export interface CredentialRequest {
|
|
270
|
+
/** URL of the MCP server being called. */
|
|
271
|
+
serverUrl: string;
|
|
272
|
+
/** Tool name being invoked, if known at credential-acquisition time. */
|
|
273
|
+
toolName?: string;
|
|
274
|
+
/** Requested scope or audience for scoped credentials. */
|
|
275
|
+
scope?: string;
|
|
276
|
+
/** Motebit ID of the calling agent, if available. */
|
|
277
|
+
agentId?: string;
|
|
278
|
+
}
|
|
279
|
+
/**
|
|
280
|
+
* Adapter interface for obtaining credentials at tool-call time.
|
|
281
|
+
* Implementations may read from OS keyring, external vaults, or wrap static tokens.
|
|
282
|
+
*/
|
|
283
|
+
export interface CredentialSource {
|
|
284
|
+
getCredential(request: CredentialRequest): Promise<string | null>;
|
|
285
|
+
}
|
|
286
|
+
/** Config fields that server verifiers can update via VerificationResult. */
|
|
287
|
+
export interface VerifierConfigUpdates {
|
|
288
|
+
toolManifestHash?: string;
|
|
289
|
+
pinnedToolNames?: string[];
|
|
290
|
+
trusted?: boolean;
|
|
291
|
+
tlsCertFingerprint?: string;
|
|
292
|
+
}
|
|
293
|
+
/** Result of server verification. */
|
|
294
|
+
export interface VerificationResult {
|
|
295
|
+
ok: boolean;
|
|
296
|
+
error?: string;
|
|
297
|
+
configUpdates?: VerifierConfigUpdates;
|
|
298
|
+
}
|
|
299
|
+
/**
|
|
300
|
+
* Adapter interface for verifying an MCP server's integrity after connect.
|
|
301
|
+
* Fail-closed: ok:false or thrown errors should tear down the connection.
|
|
302
|
+
*/
|
|
303
|
+
export interface ServerVerifier {
|
|
304
|
+
verify(config: {
|
|
305
|
+
name: string;
|
|
306
|
+
url?: string;
|
|
307
|
+
toolManifestHash?: string;
|
|
308
|
+
pinnedToolNames?: string[];
|
|
309
|
+
trusted?: boolean;
|
|
310
|
+
tlsCertFingerprint?: string;
|
|
311
|
+
}, tools: ToolDefinition[]): Promise<VerificationResult>;
|
|
312
|
+
}
|
|
262
313
|
//# 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,cAAc,mBAAmB,CAAC;AAClC,cAAc,
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"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"}
|
package/dist/index.js
CHANGED
|
@@ -1,8 +1,14 @@
|
|
|
1
1
|
export * from "@motebit/protocol";
|
|
2
|
-
export * from "./models";
|
|
3
|
-
export * from "./
|
|
4
|
-
export * from "./
|
|
5
|
-
export * from "./
|
|
2
|
+
export * from "./models.js";
|
|
3
|
+
export * from "./provider-mode.js";
|
|
4
|
+
export * from "./provider-resolver.js";
|
|
5
|
+
export * from "./color-presets.js";
|
|
6
|
+
export * from "./approval-presets.js";
|
|
7
|
+
export * from "./risk-labels.js";
|
|
8
|
+
export * from "./surface-options.js";
|
|
9
|
+
export * from "./governance-config.js";
|
|
10
|
+
export * from "./voice-config.js";
|
|
11
|
+
export * from "./appearance-config.js";
|
|
6
12
|
// === Relation Types (product — graph semantics for memory edges) ===
|
|
7
13
|
export var RelationType;
|
|
8
14
|
(function (RelationType) {
|
package/dist/index.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,cAAc,mBAAmB,CAAC;AAClC,cAAc,
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,cAAc,mBAAmB,CAAC;AAClC,cAAc,aAAa,CAAC;AAC5B,cAAc,oBAAoB,CAAC;AACnC,cAAc,wBAAwB,CAAC;AACvC,cAAc,oBAAoB,CAAC;AACnC,cAAc,uBAAuB,CAAC;AACtC,cAAc,kBAAkB,CAAC;AACjC,cAAc,sBAAsB,CAAC;AACrC,cAAc,wBAAwB,CAAC;AACvC,cAAc,mBAAmB,CAAC;AAClC,cAAc,wBAAwB,CAAC;AA+BvC,sEAAsE;AAEtE,MAAM,CAAN,IAAY,YAQX;AARD,WAAY,YAAY;IACtB,mCAAmB,CAAA;IACnB,sCAAsB,CAAA;IACtB,0CAA0B,CAAA;IAC1B,gDAAgC,CAAA;IAChC,yCAAyB,CAAA;IACzB,kCAAkB,CAAA;IAClB,yCAAyB,CAAA;AAC3B,CAAC,EARW,YAAY,KAAZ,YAAY,QAQvB;AA2BD,uFAAuF;AAEvF,MAAM,CAAC,MAAM,mBAAmB,GAAG,MAAM,CAAC,MAAM,CAAC;IAC/C,WAAW,EAAE,IAAI;IACjB,eAAe,EAAE,IAAI;IACrB,cAAc,EAAE,IAAI;IACpB,mBAAmB,EAAE,GAAG;CAChB,CAAC,CAAC"}
|
package/dist/models.d.ts
CHANGED
|
@@ -1,26 +1,56 @@
|
|
|
1
|
-
/** Anthropic Claude models
|
|
2
|
-
export declare const ANTHROPIC_MODELS: readonly ["claude-
|
|
3
|
-
/** OpenAI models
|
|
4
|
-
export declare const OPENAI_MODELS: readonly ["gpt-
|
|
5
|
-
/** Google models
|
|
6
|
-
export declare const GOOGLE_MODELS: readonly ["gemini-2.5-pro", "gemini-2.5-flash"];
|
|
7
|
-
/**
|
|
1
|
+
/** Anthropic Claude models: opus (strongest), sonnet (default), haiku (fast). */
|
|
2
|
+
export declare const ANTHROPIC_MODELS: readonly ["claude-opus-4-6", "claude-sonnet-4-6", "claude-haiku-4-5-20251001"];
|
|
3
|
+
/** OpenAI models: gpt-5.4 (strongest), gpt-5.4-mini (default), gpt-5.4-nano (fast). */
|
|
4
|
+
export declare const OPENAI_MODELS: readonly ["gpt-5.4", "gpt-5.4-mini", "gpt-5.4-nano"];
|
|
5
|
+
/** Google models: 2.5 pro (strongest), 2.5 flash (default), 2.5 flash-lite (fast). */
|
|
6
|
+
export declare const GOOGLE_MODELS: readonly ["gemini-2.5-pro", "gemini-2.5-flash", "gemini-2.5-flash-lite"];
|
|
7
|
+
/**
|
|
8
|
+
* Common open-weights models that any local inference server can run.
|
|
9
|
+
*
|
|
10
|
+
* These identifiers are the model FAMILIES supported by every major local
|
|
11
|
+
* inference server (Ollama, LM Studio, llama.cpp, Jan, vLLM). The names are
|
|
12
|
+
* not Ollama-specific — Llama is Meta's, Mistral is Mistral AI's, Gemma is
|
|
13
|
+
* Google's, Phi is Microsoft's, Qwen is Alibaba's, Codellama is Meta's. Each
|
|
14
|
+
* server pulls them from its own catalog (Ollama from its registry, LM Studio
|
|
15
|
+
* from HuggingFace, llama.cpp from GGUF files, etc.).
|
|
16
|
+
*
|
|
17
|
+
* Use this as the dropdown source for "what model do you want to run" in
|
|
18
|
+
* any on-device / local-server UI. The user can pull any model; these are
|
|
19
|
+
* the safe defaults to surface first.
|
|
20
|
+
*/
|
|
21
|
+
export declare const LOCAL_SERVER_SUGGESTED_MODELS: readonly ["llama3.2", "llama3.1", "llama3", "mistral", "codellama", "gemma2", "phi3", "qwen2"];
|
|
22
|
+
/**
|
|
23
|
+
* @deprecated Use `LOCAL_SERVER_SUGGESTED_MODELS`. The old name implied the
|
|
24
|
+
* list was Ollama-specific; in fact every entry runs on every supported
|
|
25
|
+
* local inference server. Historical alias retained for one release cycle.
|
|
26
|
+
*/
|
|
8
27
|
export declare const OLLAMA_SUGGESTED_MODELS: readonly ["llama3.2", "llama3.1", "llama3", "mistral", "codellama", "gemma2", "phi3", "qwen2"];
|
|
9
28
|
/** Models available through the Motebit proxy (all cloud providers). */
|
|
10
|
-
export declare const PROXY_MODELS: readonly ["claude-
|
|
29
|
+
export declare const PROXY_MODELS: readonly ["claude-opus-4-6", "claude-sonnet-4-6", "claude-haiku-4-5-20251001", "gpt-5.4", "gpt-5.4-mini", "gpt-5.4-nano", "gemini-2.5-pro", "gemini-2.5-flash", "gemini-2.5-flash-lite"];
|
|
11
30
|
/** Default Anthropic model. */
|
|
12
|
-
export declare const DEFAULT_ANTHROPIC_MODEL = "claude-sonnet-4-
|
|
31
|
+
export declare const DEFAULT_ANTHROPIC_MODEL = "claude-sonnet-4-6";
|
|
13
32
|
/** Default OpenAI model. */
|
|
14
|
-
export declare const DEFAULT_OPENAI_MODEL = "gpt-
|
|
33
|
+
export declare const DEFAULT_OPENAI_MODEL = "gpt-5.4-mini";
|
|
15
34
|
/** Default Google model. */
|
|
16
|
-
export declare const DEFAULT_GOOGLE_MODEL = "gemini-2.5-
|
|
17
|
-
/** Default Ollama model. */
|
|
35
|
+
export declare const DEFAULT_GOOGLE_MODEL = "gemini-2.5-flash";
|
|
36
|
+
/** Default Ollama model — used as the `local-server` default too. */
|
|
18
37
|
export declare const DEFAULT_OLLAMA_MODEL = "llama3.2";
|
|
38
|
+
/**
|
|
39
|
+
* Canonical default model for the on-device `local-server` backend.
|
|
40
|
+
* Currently aliased to `DEFAULT_OLLAMA_MODEL` — Ollama's `llama3.2` is
|
|
41
|
+
* the sensible first-run default even for users who end up running
|
|
42
|
+
* LM Studio / llama.cpp / vLLM. Prefer this name in new code; the
|
|
43
|
+
* Ollama-specific alias is retained for places that genuinely mean
|
|
44
|
+
* the Ollama model identifier.
|
|
45
|
+
*/
|
|
46
|
+
export declare const DEFAULT_LOCAL_SERVER_MODEL = "llama3.2";
|
|
19
47
|
/** Default proxy model (used when no model is specified). */
|
|
20
|
-
export declare const DEFAULT_PROXY_MODEL = "claude-sonnet-4-
|
|
48
|
+
export declare const DEFAULT_PROXY_MODEL = "claude-sonnet-4-6";
|
|
21
49
|
export type AnthropicModel = (typeof ANTHROPIC_MODELS)[number];
|
|
22
50
|
export type OpenAIModel = (typeof OPENAI_MODELS)[number];
|
|
23
51
|
export type GoogleModel = (typeof GOOGLE_MODELS)[number];
|
|
24
|
-
export type
|
|
52
|
+
export type LocalServerSuggestedModel = (typeof LOCAL_SERVER_SUGGESTED_MODELS)[number];
|
|
53
|
+
/** @deprecated Use `LocalServerSuggestedModel`. */
|
|
54
|
+
export type OllamaSuggestedModel = LocalServerSuggestedModel;
|
|
25
55
|
export type ProxyModel = (typeof PROXY_MODELS)[number];
|
|
26
56
|
//# sourceMappingURL=models.d.ts.map
|
package/dist/models.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"models.d.ts","sourceRoot":"","sources":["../src/models.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"models.d.ts","sourceRoot":"","sources":["../src/models.ts"],"names":[],"mappings":"AASA,iFAAiF;AACjF,eAAO,MAAM,gBAAgB,gFAInB,CAAC;AAEX,uFAAuF;AACvF,eAAO,MAAM,aAAa,sDAAuD,CAAC;AAElF,sFAAsF;AACtF,eAAO,MAAM,aAAa,0EAIhB,CAAC;AAEX;;;;;;;;;;;;;GAaG;AACH,eAAO,MAAM,6BAA6B,gGAShC,CAAC;AAEX;;;;GAIG;AACH,eAAO,MAAM,uBAAuB,gGAAgC,CAAC;AAErE,wEAAwE;AACxE,eAAO,MAAM,YAAY,0LAUf,CAAC;AAIX,+BAA+B;AAC/B,eAAO,MAAM,uBAAuB,sBAAsB,CAAC;AAE3D,4BAA4B;AAC5B,eAAO,MAAM,oBAAoB,iBAAiB,CAAC;AAEnD,4BAA4B;AAC5B,eAAO,MAAM,oBAAoB,qBAAqB,CAAC;AAEvD,qEAAqE;AACrE,eAAO,MAAM,oBAAoB,aAAa,CAAC;AAE/C;;;;;;;GAOG;AACH,eAAO,MAAM,0BAA0B,aAAuB,CAAC;AAE/D,6DAA6D;AAC7D,eAAO,MAAM,mBAAmB,sBAAsB,CAAC;AAIvD,MAAM,MAAM,cAAc,GAAG,CAAC,OAAO,gBAAgB,CAAC,CAAC,MAAM,CAAC,CAAC;AAC/D,MAAM,MAAM,WAAW,GAAG,CAAC,OAAO,aAAa,CAAC,CAAC,MAAM,CAAC,CAAC;AACzD,MAAM,MAAM,WAAW,GAAG,CAAC,OAAO,aAAa,CAAC,CAAC,MAAM,CAAC,CAAC;AACzD,MAAM,MAAM,yBAAyB,GAAG,CAAC,OAAO,6BAA6B,CAAC,CAAC,MAAM,CAAC,CAAC;AACvF,mDAAmD;AACnD,MAAM,MAAM,oBAAoB,GAAG,yBAAyB,CAAC;AAC7D,MAAM,MAAM,UAAU,GAAG,CAAC,OAAO,YAAY,CAAC,CAAC,MAAM,CAAC,CAAC"}
|
package/dist/models.js
CHANGED
|
@@ -3,18 +3,38 @@
|
|
|
3
3
|
// Single source of truth for model identifiers across all surfaces.
|
|
4
4
|
// SDK is Layer 0 (MIT, no deps beyond protocol) — only string constants here.
|
|
5
5
|
// Pricing, routing, and alias resolution live in their respective packages.
|
|
6
|
-
|
|
6
|
+
//
|
|
7
|
+
// 3 tiers per provider: strongest, default, fast.
|
|
8
|
+
// When a new model ships, update the arrays — every surface picks it up.
|
|
9
|
+
/** Anthropic Claude models: opus (strongest), sonnet (default), haiku (fast). */
|
|
7
10
|
export const ANTHROPIC_MODELS = [
|
|
8
|
-
"claude-
|
|
11
|
+
"claude-opus-4-6",
|
|
12
|
+
"claude-sonnet-4-6",
|
|
9
13
|
"claude-haiku-4-5-20251001",
|
|
10
|
-
"claude-opus-4-20250115",
|
|
11
14
|
];
|
|
12
|
-
/** OpenAI models
|
|
13
|
-
export const OPENAI_MODELS = ["gpt-
|
|
14
|
-
/** Google models
|
|
15
|
-
export const GOOGLE_MODELS = [
|
|
16
|
-
|
|
17
|
-
|
|
15
|
+
/** OpenAI models: gpt-5.4 (strongest), gpt-5.4-mini (default), gpt-5.4-nano (fast). */
|
|
16
|
+
export const OPENAI_MODELS = ["gpt-5.4", "gpt-5.4-mini", "gpt-5.4-nano"];
|
|
17
|
+
/** Google models: 2.5 pro (strongest), 2.5 flash (default), 2.5 flash-lite (fast). */
|
|
18
|
+
export const GOOGLE_MODELS = [
|
|
19
|
+
"gemini-2.5-pro",
|
|
20
|
+
"gemini-2.5-flash",
|
|
21
|
+
"gemini-2.5-flash-lite",
|
|
22
|
+
];
|
|
23
|
+
/**
|
|
24
|
+
* Common open-weights models that any local inference server can run.
|
|
25
|
+
*
|
|
26
|
+
* These identifiers are the model FAMILIES supported by every major local
|
|
27
|
+
* inference server (Ollama, LM Studio, llama.cpp, Jan, vLLM). The names are
|
|
28
|
+
* not Ollama-specific — Llama is Meta's, Mistral is Mistral AI's, Gemma is
|
|
29
|
+
* Google's, Phi is Microsoft's, Qwen is Alibaba's, Codellama is Meta's. Each
|
|
30
|
+
* server pulls them from its own catalog (Ollama from its registry, LM Studio
|
|
31
|
+
* from HuggingFace, llama.cpp from GGUF files, etc.).
|
|
32
|
+
*
|
|
33
|
+
* Use this as the dropdown source for "what model do you want to run" in
|
|
34
|
+
* any on-device / local-server UI. The user can pull any model; these are
|
|
35
|
+
* the safe defaults to surface first.
|
|
36
|
+
*/
|
|
37
|
+
export const LOCAL_SERVER_SUGGESTED_MODELS = [
|
|
18
38
|
"llama3.2",
|
|
19
39
|
"llama3.1",
|
|
20
40
|
"llama3",
|
|
@@ -24,25 +44,42 @@ export const OLLAMA_SUGGESTED_MODELS = [
|
|
|
24
44
|
"phi3",
|
|
25
45
|
"qwen2",
|
|
26
46
|
];
|
|
47
|
+
/**
|
|
48
|
+
* @deprecated Use `LOCAL_SERVER_SUGGESTED_MODELS`. The old name implied the
|
|
49
|
+
* list was Ollama-specific; in fact every entry runs on every supported
|
|
50
|
+
* local inference server. Historical alias retained for one release cycle.
|
|
51
|
+
*/
|
|
52
|
+
export const OLLAMA_SUGGESTED_MODELS = LOCAL_SERVER_SUGGESTED_MODELS;
|
|
27
53
|
/** Models available through the Motebit proxy (all cloud providers). */
|
|
28
54
|
export const PROXY_MODELS = [
|
|
29
|
-
"claude-
|
|
30
|
-
"claude-
|
|
55
|
+
"claude-opus-4-6",
|
|
56
|
+
"claude-sonnet-4-6",
|
|
31
57
|
"claude-haiku-4-5-20251001",
|
|
32
|
-
"gpt-
|
|
33
|
-
"gpt-
|
|
58
|
+
"gpt-5.4",
|
|
59
|
+
"gpt-5.4-mini",
|
|
60
|
+
"gpt-5.4-nano",
|
|
34
61
|
"gemini-2.5-pro",
|
|
35
62
|
"gemini-2.5-flash",
|
|
63
|
+
"gemini-2.5-flash-lite",
|
|
36
64
|
];
|
|
37
65
|
// === Default Models ===
|
|
38
66
|
/** Default Anthropic model. */
|
|
39
|
-
export const DEFAULT_ANTHROPIC_MODEL = "claude-sonnet-4-
|
|
67
|
+
export const DEFAULT_ANTHROPIC_MODEL = "claude-sonnet-4-6";
|
|
40
68
|
/** Default OpenAI model. */
|
|
41
|
-
export const DEFAULT_OPENAI_MODEL = "gpt-
|
|
69
|
+
export const DEFAULT_OPENAI_MODEL = "gpt-5.4-mini";
|
|
42
70
|
/** Default Google model. */
|
|
43
|
-
export const DEFAULT_GOOGLE_MODEL = "gemini-2.5-
|
|
44
|
-
/** Default Ollama model. */
|
|
71
|
+
export const DEFAULT_GOOGLE_MODEL = "gemini-2.5-flash";
|
|
72
|
+
/** Default Ollama model — used as the `local-server` default too. */
|
|
45
73
|
export const DEFAULT_OLLAMA_MODEL = "llama3.2";
|
|
74
|
+
/**
|
|
75
|
+
* Canonical default model for the on-device `local-server` backend.
|
|
76
|
+
* Currently aliased to `DEFAULT_OLLAMA_MODEL` — Ollama's `llama3.2` is
|
|
77
|
+
* the sensible first-run default even for users who end up running
|
|
78
|
+
* LM Studio / llama.cpp / vLLM. Prefer this name in new code; the
|
|
79
|
+
* Ollama-specific alias is retained for places that genuinely mean
|
|
80
|
+
* the Ollama model identifier.
|
|
81
|
+
*/
|
|
82
|
+
export const DEFAULT_LOCAL_SERVER_MODEL = DEFAULT_OLLAMA_MODEL;
|
|
46
83
|
/** Default proxy model (used when no model is specified). */
|
|
47
|
-
export const DEFAULT_PROXY_MODEL = "claude-sonnet-4-
|
|
84
|
+
export const DEFAULT_PROXY_MODEL = "claude-sonnet-4-6";
|
|
48
85
|
//# sourceMappingURL=models.js.map
|
package/dist/models.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"models.js","sourceRoot":"","sources":["../src/models.ts"],"names":[],"mappings":"AAAA,6BAA6B;AAC7B,EAAE;AACF,oEAAoE;AACpE,8EAA8E;AAC9E,4EAA4E;
|
|
1
|
+
{"version":3,"file":"models.js","sourceRoot":"","sources":["../src/models.ts"],"names":[],"mappings":"AAAA,6BAA6B;AAC7B,EAAE;AACF,oEAAoE;AACpE,8EAA8E;AAC9E,4EAA4E;AAC5E,EAAE;AACF,kDAAkD;AAClD,yEAAyE;AAEzE,iFAAiF;AACjF,MAAM,CAAC,MAAM,gBAAgB,GAAG;IAC9B,iBAAiB;IACjB,mBAAmB;IACnB,2BAA2B;CACnB,CAAC;AAEX,uFAAuF;AACvF,MAAM,CAAC,MAAM,aAAa,GAAG,CAAC,SAAS,EAAE,cAAc,EAAE,cAAc,CAAU,CAAC;AAElF,sFAAsF;AACtF,MAAM,CAAC,MAAM,aAAa,GAAG;IAC3B,gBAAgB;IAChB,kBAAkB;IAClB,uBAAuB;CACf,CAAC;AAEX;;;;;;;;;;;;;GAaG;AACH,MAAM,CAAC,MAAM,6BAA6B,GAAG;IAC3C,UAAU;IACV,UAAU;IACV,QAAQ;IACR,SAAS;IACT,WAAW;IACX,QAAQ;IACR,MAAM;IACN,OAAO;CACC,CAAC;AAEX;;;;GAIG;AACH,MAAM,CAAC,MAAM,uBAAuB,GAAG,6BAA6B,CAAC;AAErE,wEAAwE;AACxE,MAAM,CAAC,MAAM,YAAY,GAAG;IAC1B,iBAAiB;IACjB,mBAAmB;IACnB,2BAA2B;IAC3B,SAAS;IACT,cAAc;IACd,cAAc;IACd,gBAAgB;IAChB,kBAAkB;IAClB,uBAAuB;CACf,CAAC;AAEX,yBAAyB;AAEzB,+BAA+B;AAC/B,MAAM,CAAC,MAAM,uBAAuB,GAAG,mBAAmB,CAAC;AAE3D,4BAA4B;AAC5B,MAAM,CAAC,MAAM,oBAAoB,GAAG,cAAc,CAAC;AAEnD,4BAA4B;AAC5B,MAAM,CAAC,MAAM,oBAAoB,GAAG,kBAAkB,CAAC;AAEvD,qEAAqE;AACrE,MAAM,CAAC,MAAM,oBAAoB,GAAG,UAAU,CAAC;AAE/C;;;;;;;GAOG;AACH,MAAM,CAAC,MAAM,0BAA0B,GAAG,oBAAoB,CAAC;AAE/D,6DAA6D;AAC7D,MAAM,CAAC,MAAM,mBAAmB,GAAG,mBAAmB,CAAC"}
|
|
@@ -0,0 +1,109 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Top-level provider mode — the user's intent, not the concrete vendor.
|
|
3
|
+
*
|
|
4
|
+
* - `on-device`: the user wants inference to run locally (privacy, offline, latency).
|
|
5
|
+
* - `motebit-cloud`: the user wants the default product experience (subscription, auto-routing).
|
|
6
|
+
* - `byok`: the user brings their own API key to a named vendor.
|
|
7
|
+
*/
|
|
8
|
+
export type ProviderMode = "on-device" | "motebit-cloud" | "byok";
|
|
9
|
+
/**
|
|
10
|
+
* On-device backend kinds. Not every backend is available on every platform:
|
|
11
|
+
*
|
|
12
|
+
* - `apple-fm`: Apple Foundation Models (iOS/macOS 26+ only).
|
|
13
|
+
* - `mlx`: MLX runtime (Apple Silicon, iOS 16+ / macOS).
|
|
14
|
+
* - `webllm`: MLC WebLLM in-browser (web surface + WebGPU only).
|
|
15
|
+
* - `local-server`: auto-detected local OpenAI-compatible server
|
|
16
|
+
* (Ollama, LM Studio, llama.cpp, Jan, vLLM, …). Vendor-agnostic.
|
|
17
|
+
*/
|
|
18
|
+
export type OnDeviceBackend = "apple-fm" | "mlx" | "webllm" | "local-server";
|
|
19
|
+
/** BYOK vendors — the only ones where the user holds the API key directly. */
|
|
20
|
+
export type ByokVendor = "anthropic" | "openai" | "google";
|
|
21
|
+
/** On-device mode config. */
|
|
22
|
+
export interface OnDeviceProviderConfig {
|
|
23
|
+
mode: "on-device";
|
|
24
|
+
backend: OnDeviceBackend;
|
|
25
|
+
/** Model identifier. Meaning depends on backend (MLX name, WebLLM id, server tag, …). */
|
|
26
|
+
model?: string;
|
|
27
|
+
/** For `local-server`: endpoint URL (e.g., http://localhost:11434). Auto-detected otherwise. */
|
|
28
|
+
endpoint?: string;
|
|
29
|
+
/** Optional temperature override. */
|
|
30
|
+
temperature?: number;
|
|
31
|
+
/** Optional max_tokens override. */
|
|
32
|
+
maxTokens?: number;
|
|
33
|
+
}
|
|
34
|
+
/** Motebit Cloud mode config — the subscription-backed product. */
|
|
35
|
+
export interface MotebitCloudProviderConfig {
|
|
36
|
+
mode: "motebit-cloud";
|
|
37
|
+
/** Optional preferred model. When omitted, the relay picks. */
|
|
38
|
+
model?: string;
|
|
39
|
+
/** Signed proxy token — included as x-proxy-token for authenticated requests. */
|
|
40
|
+
proxyToken?: string;
|
|
41
|
+
/** Override proxy base URL (dev/staging). */
|
|
42
|
+
baseUrl?: string;
|
|
43
|
+
temperature?: number;
|
|
44
|
+
maxTokens?: number;
|
|
45
|
+
}
|
|
46
|
+
/** BYOK mode config — user supplies the API key. */
|
|
47
|
+
export interface ByokProviderConfig {
|
|
48
|
+
mode: "byok";
|
|
49
|
+
vendor: ByokVendor;
|
|
50
|
+
apiKey: string;
|
|
51
|
+
model?: string;
|
|
52
|
+
/**
|
|
53
|
+
* Optional custom base URL. Used e.g. for Google via the OpenAI-compatible
|
|
54
|
+
* endpoint (`https://generativelanguage.googleapis.com/v1beta/openai`).
|
|
55
|
+
*/
|
|
56
|
+
baseUrl?: string;
|
|
57
|
+
temperature?: number;
|
|
58
|
+
maxTokens?: number;
|
|
59
|
+
}
|
|
60
|
+
/** Union of all three modes. Surfaces persist this shape. */
|
|
61
|
+
export type UnifiedProviderConfig = OnDeviceProviderConfig | MotebitCloudProviderConfig | ByokProviderConfig;
|
|
62
|
+
/**
|
|
63
|
+
* Heuristic: is this URL pointing at a local inference server?
|
|
64
|
+
* Shared across all surfaces so the migration behaves identically everywhere.
|
|
65
|
+
*/
|
|
66
|
+
export declare function isLocalServerUrl(url: string | undefined | null): boolean;
|
|
67
|
+
/**
|
|
68
|
+
* Legacy provider config shape — a superset of every surface's historical fields.
|
|
69
|
+
* Used only as the input to `migrateLegacyProvider`.
|
|
70
|
+
*/
|
|
71
|
+
export interface LegacyProviderConfig {
|
|
72
|
+
type?: string;
|
|
73
|
+
provider?: string;
|
|
74
|
+
apiKey?: string;
|
|
75
|
+
api_key?: string;
|
|
76
|
+
model?: string;
|
|
77
|
+
baseUrl?: string;
|
|
78
|
+
base_url?: string;
|
|
79
|
+
proxyToken?: string;
|
|
80
|
+
proxy_token?: string;
|
|
81
|
+
maxTokens?: number;
|
|
82
|
+
max_tokens?: number;
|
|
83
|
+
temperature?: number;
|
|
84
|
+
localBackend?: string;
|
|
85
|
+
ollamaEndpoint?: string;
|
|
86
|
+
default_provider?: string;
|
|
87
|
+
default_model?: string;
|
|
88
|
+
mode?: string;
|
|
89
|
+
backend?: string;
|
|
90
|
+
vendor?: string;
|
|
91
|
+
endpoint?: string;
|
|
92
|
+
}
|
|
93
|
+
/**
|
|
94
|
+
* Migrate any legacy provider config shape to `UnifiedProviderConfig`.
|
|
95
|
+
*
|
|
96
|
+
* Rules:
|
|
97
|
+
* - `hybrid` and `proxy` map to `motebit-cloud` (the product).
|
|
98
|
+
* - `ollama` with a localhost URL maps to `on-device/local-server`.
|
|
99
|
+
* - `ollama` with a remote URL maps to `on-device/local-server` with that endpoint preserved.
|
|
100
|
+
* - `anthropic` / `openai` / `google` map to `byok` with that vendor.
|
|
101
|
+
* - Mobile `local` with `localBackend` maps to `on-device` with that backend.
|
|
102
|
+
* - If input is already a `UnifiedProviderConfig` (has `mode`), it passes through.
|
|
103
|
+
*
|
|
104
|
+
* Returns `null` only if the input is entirely unrecognizable.
|
|
105
|
+
*/
|
|
106
|
+
export declare function migrateLegacyProvider(legacy: LegacyProviderConfig | null | undefined): UnifiedProviderConfig | null;
|
|
107
|
+
/** Sensible default when no config has ever been persisted. */
|
|
108
|
+
export declare function defaultProviderConfig(): MotebitCloudProviderConfig;
|
|
109
|
+
//# sourceMappingURL=provider-mode.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"provider-mode.d.ts","sourceRoot":"","sources":["../src/provider-mode.ts"],"names":[],"mappings":"AAYA;;;;;;GAMG;AACH,MAAM,MAAM,YAAY,GAAG,WAAW,GAAG,eAAe,GAAG,MAAM,CAAC;AAElE;;;;;;;;GAQG;AACH,MAAM,MAAM,eAAe,GAAG,UAAU,GAAG,KAAK,GAAG,QAAQ,GAAG,cAAc,CAAC;AAE7E,8EAA8E;AAC9E,MAAM,MAAM,UAAU,GAAG,WAAW,GAAG,QAAQ,GAAG,QAAQ,CAAC;AAE3D,6BAA6B;AAC7B,MAAM,WAAW,sBAAsB;IACrC,IAAI,EAAE,WAAW,CAAC;IAClB,OAAO,EAAE,eAAe,CAAC;IACzB,yFAAyF;IACzF,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,gGAAgG;IAChG,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,qCAAqC;IACrC,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,oCAAoC;IACpC,SAAS,CAAC,EAAE,MAAM,CAAC;CACpB;AAED,mEAAmE;AACnE,MAAM,WAAW,0BAA0B;IACzC,IAAI,EAAE,eAAe,CAAC;IACtB,+DAA+D;IAC/D,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,iFAAiF;IACjF,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,6CAA6C;IAC7C,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,SAAS,CAAC,EAAE,MAAM,CAAC;CACpB;AAED,oDAAoD;AACpD,MAAM,WAAW,kBAAkB;IACjC,IAAI,EAAE,MAAM,CAAC;IACb,MAAM,EAAE,UAAU,CAAC;IACnB,MAAM,EAAE,MAAM,CAAC;IACf,KAAK,CAAC,EAAE,MAAM,CAAC;IACf;;;OAGG;IACH,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,SAAS,CAAC,EAAE,MAAM,CAAC;CACpB;AAED,6DAA6D;AAC7D,MAAM,MAAM,qBAAqB,GAC7B,sBAAsB,GACtB,0BAA0B,GAC1B,kBAAkB,CAAC;AAuBvB;;;GAGG;AACH,wBAAgB,gBAAgB,CAAC,GAAG,EAAE,MAAM,GAAG,SAAS,GAAG,IAAI,GAAG,OAAO,CAkBxE;AAED;;;GAGG;AACH,MAAM,WAAW,oBAAoB;IAEnC,IAAI,CAAC,EAAE,MAAM,CAAC;IAEd,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,WAAW,CAAC,EAAE,MAAM,CAAC;IAErB,YAAY,CAAC,EAAE,MAAM,CAAC;IACtB,cAAc,CAAC,EAAE,MAAM,CAAC;IAExB,gBAAgB,CAAC,EAAE,MAAM,CAAC;IAC1B,aAAa,CAAC,EAAE,MAAM,CAAC;IAEvB,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,QAAQ,CAAC,EAAE,MAAM,CAAC;CACnB;AAED;;;;;;;;;;;;GAYG;AACH,wBAAgB,qBAAqB,CACnC,MAAM,EAAE,oBAAoB,GAAG,IAAI,GAAG,SAAS,GAC9C,qBAAqB,GAAG,IAAI,CAmH9B;AAID,+DAA+D;AAC/D,wBAAgB,qBAAqB,IAAI,0BAA0B,CAElE"}
|