@relayplane/proxy 0.2.1 → 1.1.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.
@@ -1,13 +1,13 @@
1
1
  /**
2
- * Brain API Client
2
+ * Swarm API Client
3
3
  *
4
- * Calls the RelayPlane Brain API for intelligent routing decisions.
4
+ * Calls the RelayPlane Swarm API for intelligent routing decisions.
5
5
  * Only used for Pro/Trial users with valid API keys.
6
6
  *
7
7
  * @packageDocumentation
8
8
  */
9
9
  /**
10
- * Route request to Brain API
10
+ * Route request to Swarm API
11
11
  */
12
12
  export interface BrainRouteRequest {
13
13
  taskType: string;
@@ -21,7 +21,7 @@ export interface BrainRouteRequest {
21
21
  prioritizeQuality?: boolean;
22
22
  }
23
23
  /**
24
- * Route response from Brain API
24
+ * Route response from Swarm API
25
25
  */
26
26
  export interface BrainRouteResponse {
27
27
  success: boolean;
@@ -59,7 +59,7 @@ export declare function getApiKey(): string | null;
59
59
  */
60
60
  export declare function setApiKey(apiKey: string): void;
61
61
  /**
62
- * Get routing recommendation from Brain API
62
+ * Get routing recommendation from Swarm API
63
63
  *
64
64
  * Falls back to static routing if Brain is unavailable.
65
65
  */
@@ -67,7 +67,7 @@ export declare function getRouteRecommendation(request: BrainRouteRequest): Prom
67
67
  /**
68
68
  * Get routing recommendation for a request
69
69
  *
70
- * Analyzes the request and calls Brain API to get the optimal model.
70
+ * Analyzes the request and calls Swarm API to get the optimal model.
71
71
  */
72
72
  export declare function getBrainRouting(inputTokens: number, outputTokens: number, currentModel: string, hasTools?: boolean, hasVision?: boolean): Promise<{
73
73
  model: string;
@@ -75,7 +75,7 @@ export declare function getBrainRouting(inputTokens: number, outputTokens: numbe
75
75
  isBrain: boolean;
76
76
  }>;
77
77
  /**
78
- * Get provider status from Brain API
78
+ * Get provider status from Swarm API
79
79
  */
80
80
  export declare function getProviderStatus(): Promise<Array<{
81
81
  provider: string;
@@ -84,4 +84,4 @@ export declare function getProviderStatus(): Promise<Array<{
84
84
  latencyP99Ms: number;
85
85
  successRate: number;
86
86
  }> | null>;
87
- //# sourceMappingURL=brain-client.d.ts.map
87
+ //# sourceMappingURL=swarm-client.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"brain-client.d.ts","sourceRoot":"","sources":["../src/brain-client.ts"],"names":[],"mappings":"AAAA;;;;;;;GAOG;AAUH;;GAEG;AACH,MAAM,WAAW,iBAAiB;IAChC,QAAQ,EAAE,MAAM,CAAC;IACjB,oBAAoB,CAAC,EAAE,MAAM,CAAC;IAC9B,qBAAqB,CAAC,EAAE,MAAM,CAAC;IAC/B,cAAc,CAAC,EAAE,OAAO,CAAC;IACzB,eAAe,CAAC,EAAE,OAAO,CAAC;IAC1B,gBAAgB,CAAC,EAAE,OAAO,CAAC;IAC3B,YAAY,CAAC,EAAE,MAAM,CAAC;IACtB,eAAe,CAAC,EAAE,OAAO,CAAC;IAC1B,iBAAiB,CAAC,EAAE,OAAO,CAAC;CAC7B;AAED;;GAEG;AACH,MAAM,WAAW,kBAAkB;IACjC,OAAO,EAAE,OAAO,CAAC;IACjB,gBAAgB,EAAE,MAAM,CAAC;IACzB,UAAU,EAAE,MAAM,CAAC;IACnB,gBAAgB,EAAE,MAAM,CAAC;IACzB,iBAAiB,EAAE,MAAM,CAAC;IAC1B,aAAa,EAAE,MAAM,CAAC;IACtB,UAAU,EAAE,MAAM,CAAC;IACnB,WAAW,EAAE;QACX,MAAM,EAAE,MAAM,CAAC;QACf,OAAO,EAAE,KAAK,CAAC;YACb,IAAI,EAAE,MAAM,CAAC;YACb,KAAK,EAAE,MAAM,CAAC;YACd,MAAM,EAAE,UAAU,GAAG,UAAU,GAAG,SAAS,CAAC;YAC5C,MAAM,EAAE,MAAM,CAAC;SAChB,CAAC,CAAC;QACH,WAAW,CAAC,EAAE;YACZ,sBAAsB,EAAE,MAAM,CAAC;YAC/B,iBAAiB,EAAE,MAAM,CAAC;SAC3B,CAAC;KACH,CAAC;IACF,gBAAgB,EAAE,MAAM,CAAC;CAC1B;AAED;;GAEG;AACH,wBAAgB,cAAc,IAAI,OAAO,CAQxC;AAED;;GAEG;AACH,wBAAgB,SAAS,IAAI,MAAM,GAAG,IAAI,CAWzC;AAED;;GAEG;AACH,wBAAgB,SAAS,CAAC,MAAM,EAAE,MAAM,GAAG,IAAI,CAmB9C;AAED;;;;GAIG;AACH,wBAAsB,sBAAsB,CAC1C,OAAO,EAAE,iBAAiB,GACzB,OAAO,CAAC,kBAAkB,GAAG,IAAI,CAAC,CAwCpC;AAED;;;;GAIG;AACH,wBAAsB,eAAe,CACnC,WAAW,EAAE,MAAM,EACnB,YAAY,EAAE,MAAM,EACpB,YAAY,EAAE,MAAM,EACpB,QAAQ,GAAE,OAAe,EACzB,SAAS,GAAE,OAAe,GACzB,OAAO,CAAC;IAAE,KAAK,EAAE,MAAM,CAAC;IAAC,MAAM,EAAE,MAAM,CAAC;IAAC,OAAO,EAAE,OAAO,CAAA;CAAE,CAAC,CA4B9D;AAED;;GAEG;AACH,wBAAsB,iBAAiB,IAAI,OAAO,CAAC,KAAK,CAAC;IACvD,QAAQ,EAAE,MAAM,CAAC;IACjB,MAAM,EAAE,SAAS,GAAG,UAAU,GAAG,MAAM,CAAC;IACxC,YAAY,EAAE,MAAM,CAAC;IACrB,YAAY,EAAE,MAAM,CAAC;IACrB,WAAW,EAAE,MAAM,CAAC;CACrB,CAAC,GAAG,IAAI,CAAC,CAwBT"}
1
+ {"version":3,"file":"swarm-client.d.ts","sourceRoot":"","sources":["../src/swarm-client.ts"],"names":[],"mappings":"AAAA;;;;;;;GAOG;AAUH;;GAEG;AACH,MAAM,WAAW,iBAAiB;IAChC,QAAQ,EAAE,MAAM,CAAC;IACjB,oBAAoB,CAAC,EAAE,MAAM,CAAC;IAC9B,qBAAqB,CAAC,EAAE,MAAM,CAAC;IAC/B,cAAc,CAAC,EAAE,OAAO,CAAC;IACzB,eAAe,CAAC,EAAE,OAAO,CAAC;IAC1B,gBAAgB,CAAC,EAAE,OAAO,CAAC;IAC3B,YAAY,CAAC,EAAE,MAAM,CAAC;IACtB,eAAe,CAAC,EAAE,OAAO,CAAC;IAC1B,iBAAiB,CAAC,EAAE,OAAO,CAAC;CAC7B;AAED;;GAEG;AACH,MAAM,WAAW,kBAAkB;IACjC,OAAO,EAAE,OAAO,CAAC;IACjB,gBAAgB,EAAE,MAAM,CAAC;IACzB,UAAU,EAAE,MAAM,CAAC;IACnB,gBAAgB,EAAE,MAAM,CAAC;IACzB,iBAAiB,EAAE,MAAM,CAAC;IAC1B,aAAa,EAAE,MAAM,CAAC;IACtB,UAAU,EAAE,MAAM,CAAC;IACnB,WAAW,EAAE;QACX,MAAM,EAAE,MAAM,CAAC;QACf,OAAO,EAAE,KAAK,CAAC;YACb,IAAI,EAAE,MAAM,CAAC;YACb,KAAK,EAAE,MAAM,CAAC;YACd,MAAM,EAAE,UAAU,GAAG,UAAU,GAAG,SAAS,CAAC;YAC5C,MAAM,EAAE,MAAM,CAAC;SAChB,CAAC,CAAC;QACH,WAAW,CAAC,EAAE;YACZ,sBAAsB,EAAE,MAAM,CAAC;YAC/B,iBAAiB,EAAE,MAAM,CAAC;SAC3B,CAAC;KACH,CAAC;IACF,gBAAgB,EAAE,MAAM,CAAC;CAC1B;AAED;;GAEG;AACH,wBAAgB,cAAc,IAAI,OAAO,CAQxC;AAED;;GAEG;AACH,wBAAgB,SAAS,IAAI,MAAM,GAAG,IAAI,CAWzC;AAED;;GAEG;AACH,wBAAgB,SAAS,CAAC,MAAM,EAAE,MAAM,GAAG,IAAI,CAmB9C;AAED;;;;GAIG;AACH,wBAAsB,sBAAsB,CAC1C,OAAO,EAAE,iBAAiB,GACzB,OAAO,CAAC,kBAAkB,GAAG,IAAI,CAAC,CAwCpC;AAED;;;;GAIG;AACH,wBAAsB,eAAe,CACnC,WAAW,EAAE,MAAM,EACnB,YAAY,EAAE,MAAM,EACpB,YAAY,EAAE,MAAM,EACpB,QAAQ,GAAE,OAAe,EACzB,SAAS,GAAE,OAAe,GACzB,OAAO,CAAC;IAAE,KAAK,EAAE,MAAM,CAAC;IAAC,MAAM,EAAE,MAAM,CAAC;IAAC,OAAO,EAAE,OAAO,CAAA;CAAE,CAAC,CA4B9D;AAED;;GAEG;AACH,wBAAsB,iBAAiB,IAAI,OAAO,CAAC,KAAK,CAAC;IACvD,QAAQ,EAAE,MAAM,CAAC;IACjB,MAAM,EAAE,SAAS,GAAG,UAAU,GAAG,MAAM,CAAC;IACxC,YAAY,EAAE,MAAM,CAAC;IACrB,YAAY,EAAE,MAAM,CAAC;IACrB,WAAW,EAAE,MAAM,CAAC;CACrB,CAAC,GAAG,IAAI,CAAC,CAwBT"}
@@ -1,8 +1,8 @@
1
1
  "use strict";
2
2
  /**
3
- * Brain API Client
3
+ * Swarm API Client
4
4
  *
5
- * Calls the RelayPlane Brain API for intelligent routing decisions.
5
+ * Calls the RelayPlane Swarm API for intelligent routing decisions.
6
6
  * Only used for Pro/Trial users with valid API keys.
7
7
  *
8
8
  * @packageDocumentation
@@ -103,7 +103,7 @@ function setApiKey(apiKey) {
103
103
  fs.writeFileSync(configPath, JSON.stringify(config, null, 2));
104
104
  }
105
105
  /**
106
- * Get routing recommendation from Brain API
106
+ * Get routing recommendation from Swarm API
107
107
  *
108
108
  * Falls back to static routing if Brain is unavailable.
109
109
  */
@@ -148,12 +148,12 @@ async function getRouteRecommendation(request) {
148
148
  /**
149
149
  * Get routing recommendation for a request
150
150
  *
151
- * Analyzes the request and calls Brain API to get the optimal model.
151
+ * Analyzes the request and calls Swarm API to get the optimal model.
152
152
  */
153
153
  async function getBrainRouting(inputTokens, outputTokens, currentModel, hasTools = false, hasVision = false) {
154
154
  // Infer task type
155
155
  const taskType = (0, telemetry_js_1.inferTaskType)(inputTokens, outputTokens, currentModel, hasTools);
156
- // Try Brain API
156
+ // Try Swarm API
157
157
  const brainResponse = await getRouteRecommendation({
158
158
  taskType,
159
159
  estimatedInputTokens: inputTokens,
@@ -177,7 +177,7 @@ async function getBrainRouting(inputTokens, outputTokens, currentModel, hasTools
177
177
  };
178
178
  }
179
179
  /**
180
- * Get provider status from Brain API
180
+ * Get provider status from Swarm API
181
181
  */
182
182
  async function getProviderStatus() {
183
183
  if (!hasBrainAccess()) {
@@ -202,4 +202,4 @@ async function getProviderStatus() {
202
202
  return null;
203
203
  }
204
204
  }
205
- //# sourceMappingURL=brain-client.js.map
205
+ //# sourceMappingURL=swarm-client.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"brain-client.js","sourceRoot":"","sources":["../src/brain-client.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"swarm-client.js","sourceRoot":"","sources":["../src/swarm-client.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,28 @@
1
+ /**
2
+ * Model suggestion utilities for improved error messages
3
+ *
4
+ * Uses Levenshtein distance to suggest similar model names when a
5
+ * requested model doesn't exist.
6
+ */
7
+ /**
8
+ * Suggest similar models based on Levenshtein distance
9
+ *
10
+ * @param requested - The model name that was requested but not found
11
+ * @param available - List of available/valid model names
12
+ * @param max - Maximum number of suggestions to return (default: 3)
13
+ * @returns Array of suggested model names, sorted by similarity
14
+ */
15
+ export declare function suggestModels(requested: string, available: string[], max?: number): string[];
16
+ /**
17
+ * Build an error response for model-not-found errors with suggestions
18
+ *
19
+ * @param requestedModel - The model name that was requested
20
+ * @param availableModels - List of available model names
21
+ * @returns Error response object with suggestions
22
+ */
23
+ export declare function buildModelNotFoundError(requestedModel: string, availableModels: string[]): {
24
+ error: string;
25
+ suggestions?: string[];
26
+ hint?: string;
27
+ };
28
+ //# sourceMappingURL=model-suggestions.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"model-suggestions.d.ts","sourceRoot":"","sources":["../../src/utils/model-suggestions.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAIH;;;;;;;GAOG;AACH,wBAAgB,aAAa,CAC3B,SAAS,EAAE,MAAM,EACjB,SAAS,EAAE,MAAM,EAAE,EACnB,GAAG,SAAI,GACN,MAAM,EAAE,CAYV;AAED;;;;;;GAMG;AACH,wBAAgB,uBAAuB,CACrC,cAAc,EAAE,MAAM,EACtB,eAAe,EAAE,MAAM,EAAE,GACxB;IACD,KAAK,EAAE,MAAM,CAAC;IACd,WAAW,CAAC,EAAE,MAAM,EAAE,CAAC;IACvB,IAAI,CAAC,EAAE,MAAM,CAAC;CACf,CAiBA"}
@@ -0,0 +1,50 @@
1
+ "use strict";
2
+ /**
3
+ * Model suggestion utilities for improved error messages
4
+ *
5
+ * Uses Levenshtein distance to suggest similar model names when a
6
+ * requested model doesn't exist.
7
+ */
8
+ Object.defineProperty(exports, "__esModule", { value: true });
9
+ exports.suggestModels = suggestModels;
10
+ exports.buildModelNotFoundError = buildModelNotFoundError;
11
+ const fastest_levenshtein_1 = require("fastest-levenshtein");
12
+ /**
13
+ * Suggest similar models based on Levenshtein distance
14
+ *
15
+ * @param requested - The model name that was requested but not found
16
+ * @param available - List of available/valid model names
17
+ * @param max - Maximum number of suggestions to return (default: 3)
18
+ * @returns Array of suggested model names, sorted by similarity
19
+ */
20
+ function suggestModels(requested, available, max = 3) {
21
+ const requestedLower = requested.toLowerCase();
22
+ return available
23
+ .map((model) => ({
24
+ model,
25
+ dist: (0, fastest_levenshtein_1.distance)(requestedLower, model.toLowerCase()),
26
+ }))
27
+ .filter(({ dist }) => dist <= 4) // Within 4 edits
28
+ .sort((a, b) => a.dist - b.dist)
29
+ .slice(0, max)
30
+ .map(({ model }) => model);
31
+ }
32
+ /**
33
+ * Build an error response for model-not-found errors with suggestions
34
+ *
35
+ * @param requestedModel - The model name that was requested
36
+ * @param availableModels - List of available model names
37
+ * @returns Error response object with suggestions
38
+ */
39
+ function buildModelNotFoundError(requestedModel, availableModels) {
40
+ const suggestions = suggestModels(requestedModel, availableModels);
41
+ const response = {
42
+ error: `Model '${requestedModel}' does not exist`,
43
+ };
44
+ if (suggestions.length > 0) {
45
+ response.suggestions = suggestions;
46
+ response.hint = `Did you mean '${suggestions[0]}'?`;
47
+ }
48
+ return response;
49
+ }
50
+ //# sourceMappingURL=model-suggestions.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"model-suggestions.js","sourceRoot":"","sources":["../../src/utils/model-suggestions.ts"],"names":[],"mappings":";AAAA;;;;;GAKG;;AAYH,sCAgBC;AASD,0DAwBC;AA3DD,6DAA+C;AAE/C;;;;;;;GAOG;AACH,SAAgB,aAAa,CAC3B,SAAiB,EACjB,SAAmB,EACnB,GAAG,GAAG,CAAC;IAEP,MAAM,cAAc,GAAG,SAAS,CAAC,WAAW,EAAE,CAAC;IAE/C,OAAO,SAAS;SACb,GAAG,CAAC,CAAC,KAAK,EAAE,EAAE,CAAC,CAAC;QACf,KAAK;QACL,IAAI,EAAE,IAAA,8BAAQ,EAAC,cAAc,EAAE,KAAK,CAAC,WAAW,EAAE,CAAC;KACpD,CAAC,CAAC;SACF,MAAM,CAAC,CAAC,EAAE,IAAI,EAAE,EAAE,EAAE,CAAC,IAAI,IAAI,CAAC,CAAC,CAAC,iBAAiB;SACjD,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,IAAI,GAAG,CAAC,CAAC,IAAI,CAAC;SAC/B,KAAK,CAAC,CAAC,EAAE,GAAG,CAAC;SACb,GAAG,CAAC,CAAC,EAAE,KAAK,EAAE,EAAE,EAAE,CAAC,KAAK,CAAC,CAAC;AAC/B,CAAC;AAED;;;;;;GAMG;AACH,SAAgB,uBAAuB,CACrC,cAAsB,EACtB,eAAyB;IAMzB,MAAM,WAAW,GAAG,aAAa,CAAC,cAAc,EAAE,eAAe,CAAC,CAAC;IAEnE,MAAM,QAAQ,GAIV;QACF,KAAK,EAAE,UAAU,cAAc,kBAAkB;KAClD,CAAC;IAEF,IAAI,WAAW,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;QAC3B,QAAQ,CAAC,WAAW,GAAG,WAAW,CAAC;QACnC,QAAQ,CAAC,IAAI,GAAG,iBAAiB,WAAW,CAAC,CAAC,CAAC,IAAI,CAAC;IACtD,CAAC;IAED,OAAO,QAAQ,CAAC;AAClB,CAAC"}
package/package.json CHANGED
@@ -1,12 +1,20 @@
1
1
  {
2
2
  "name": "@relayplane/proxy",
3
- "version": "0.2.1",
3
+ "version": "1.1.1",
4
4
  "description": "RelayPlane proxy server - intelligent AI model routing with observability",
5
5
  "main": "dist/index.js",
6
6
  "types": "dist/index.d.ts",
7
7
  "bin": {
8
8
  "relayplane-proxy": "dist/cli.js"
9
9
  },
10
+ "scripts": {
11
+ "build": "tsc",
12
+ "dev": "tsc --watch",
13
+ "start": "node dist/cli.js",
14
+ "test": "vitest run",
15
+ "test:watch": "vitest",
16
+ "prepublishOnly": "npm run build"
17
+ },
10
18
  "keywords": [
11
19
  "relayplane",
12
20
  "ai",
@@ -23,14 +31,15 @@
23
31
  "author": "RelayPlane",
24
32
  "license": "MIT",
25
33
  "dependencies": {
26
- "@relayplane/core": "^0.1.1"
34
+ "@relayplane/core": "^0.1.1",
35
+ "fastest-levenshtein": "^1.0.16"
27
36
  },
28
37
  "optionalDependencies": {
29
- "@relayplane/ledger": "^0.1.0",
30
38
  "@relayplane/auth-gate": "^0.1.0",
39
+ "@relayplane/explainability": "^0.1.0",
40
+ "@relayplane/ledger": "^0.1.0",
31
41
  "@relayplane/policy-engine": "^0.1.0",
32
- "@relayplane/routing-engine": "^0.1.0",
33
- "@relayplane/explainability": "^0.1.0"
42
+ "@relayplane/routing-engine": "^0.1.0"
34
43
  },
35
44
  "devDependencies": {
36
45
  "typescript": "^5.3.3",
@@ -45,12 +54,5 @@
45
54
  "files": [
46
55
  "dist",
47
56
  "README.md"
48
- ],
49
- "scripts": {
50
- "build": "tsc",
51
- "dev": "tsc --watch",
52
- "start": "node dist/cli.js",
53
- "test": "vitest run",
54
- "test:watch": "vitest"
55
- }
56
- }
57
+ ]
58
+ }