@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.
- package/dist/__tests__/model-suggestions.test.d.ts +2 -0
- package/dist/__tests__/model-suggestions.test.d.ts.map +1 -0
- package/dist/__tests__/model-suggestions.test.js +67 -0
- package/dist/__tests__/model-suggestions.test.js.map +1 -0
- package/dist/__tests__/routing-aliases.test.d.ts +2 -0
- package/dist/__tests__/routing-aliases.test.d.ts.map +1 -0
- package/dist/__tests__/routing-aliases.test.js +81 -0
- package/dist/__tests__/routing-aliases.test.js.map +1 -0
- package/dist/cli.js +0 -0
- package/dist/server.d.ts +13 -0
- package/dist/server.d.ts.map +1 -0
- package/dist/server.js +637 -0
- package/dist/server.js.map +1 -0
- package/dist/standalone-proxy.d.ts +22 -0
- package/dist/standalone-proxy.d.ts.map +1 -1
- package/dist/standalone-proxy.js +121 -11
- package/dist/standalone-proxy.js.map +1 -1
- package/dist/{brain-client.d.ts → swarm-client.d.ts} +8 -8
- package/dist/{brain-client.d.ts.map → swarm-client.d.ts.map} +1 -1
- package/dist/{brain-client.js → swarm-client.js} +7 -7
- package/dist/{brain-client.js.map → swarm-client.js.map} +1 -1
- package/dist/utils/model-suggestions.d.ts +28 -0
- package/dist/utils/model-suggestions.d.ts.map +1 -0
- package/dist/utils/model-suggestions.js +50 -0
- package/dist/utils/model-suggestions.js.map +1 -0
- package/package.json +16 -14
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"model-suggestions.test.d.ts","sourceRoot":"","sources":["../../src/__tests__/model-suggestions.test.ts"],"names":[],"mappings":""}
|
|
@@ -0,0 +1,67 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
const vitest_1 = require("vitest");
|
|
4
|
+
const model_suggestions_js_1 = require("../utils/model-suggestions.js");
|
|
5
|
+
(0, vitest_1.describe)('suggestModels', () => {
|
|
6
|
+
const availableModels = [
|
|
7
|
+
'claude-sonnet-4',
|
|
8
|
+
'claude-opus-4-5',
|
|
9
|
+
'claude-3-5-sonnet',
|
|
10
|
+
'claude-3-5-haiku',
|
|
11
|
+
'gpt-4o',
|
|
12
|
+
'gpt-4o-mini',
|
|
13
|
+
'rp:best',
|
|
14
|
+
'rp:fast',
|
|
15
|
+
'rp:balanced',
|
|
16
|
+
];
|
|
17
|
+
(0, vitest_1.it)('should suggest similar models for typos', () => {
|
|
18
|
+
const suggestions = (0, model_suggestions_js_1.suggestModels)('claud-sonnet', availableModels);
|
|
19
|
+
(0, vitest_1.expect)(suggestions).toContain('claude-sonnet-4');
|
|
20
|
+
});
|
|
21
|
+
(0, vitest_1.it)('should suggest claude-sonnet-4 for "claude-sonet-4" typo', () => {
|
|
22
|
+
const suggestions = (0, model_suggestions_js_1.suggestModels)('claude-sonet-4', availableModels);
|
|
23
|
+
(0, vitest_1.expect)(suggestions[0]).toBe('claude-sonnet-4');
|
|
24
|
+
});
|
|
25
|
+
(0, vitest_1.it)('should suggest gpt-4o for "gpt4o" typo', () => {
|
|
26
|
+
const suggestions = (0, model_suggestions_js_1.suggestModels)('gpt4o', availableModels);
|
|
27
|
+
(0, vitest_1.expect)(suggestions).toContain('gpt-4o');
|
|
28
|
+
});
|
|
29
|
+
(0, vitest_1.it)('should return empty array for completely different strings', () => {
|
|
30
|
+
const suggestions = (0, model_suggestions_js_1.suggestModels)('totally-random-model-xyz', availableModels);
|
|
31
|
+
(0, vitest_1.expect)(suggestions.length).toBeLessThanOrEqual(3);
|
|
32
|
+
});
|
|
33
|
+
(0, vitest_1.it)('should limit results to max parameter', () => {
|
|
34
|
+
const suggestions = (0, model_suggestions_js_1.suggestModels)('claude', availableModels, 2);
|
|
35
|
+
(0, vitest_1.expect)(suggestions.length).toBeLessThanOrEqual(2);
|
|
36
|
+
});
|
|
37
|
+
(0, vitest_1.it)('should be case-insensitive', () => {
|
|
38
|
+
const suggestions = (0, model_suggestions_js_1.suggestModels)('CLAUDE-SONNET-4', availableModels);
|
|
39
|
+
(0, vitest_1.expect)(suggestions).toContain('claude-sonnet-4');
|
|
40
|
+
});
|
|
41
|
+
(0, vitest_1.it)('should suggest rp:best for "rp:bst" typo', () => {
|
|
42
|
+
const suggestions = (0, model_suggestions_js_1.suggestModels)('rp:bst', availableModels);
|
|
43
|
+
(0, vitest_1.expect)(suggestions).toContain('rp:best');
|
|
44
|
+
});
|
|
45
|
+
});
|
|
46
|
+
(0, vitest_1.describe)('buildModelNotFoundError', () => {
|
|
47
|
+
const availableModels = [
|
|
48
|
+
'claude-sonnet-4',
|
|
49
|
+
'claude-opus-4-5',
|
|
50
|
+
'gpt-4o',
|
|
51
|
+
];
|
|
52
|
+
(0, vitest_1.it)('should build error with suggestions for close match', () => {
|
|
53
|
+
const error = (0, model_suggestions_js_1.buildModelNotFoundError)('claude-sonet-4', availableModels);
|
|
54
|
+
(0, vitest_1.expect)(error.error).toContain('claude-sonet-4');
|
|
55
|
+
(0, vitest_1.expect)(error.error).toContain('does not exist');
|
|
56
|
+
(0, vitest_1.expect)(error.suggestions).toBeDefined();
|
|
57
|
+
(0, vitest_1.expect)(error.suggestions).toContain('claude-sonnet-4');
|
|
58
|
+
(0, vitest_1.expect)(error.hint).toBe("Did you mean 'claude-sonnet-4'?");
|
|
59
|
+
});
|
|
60
|
+
(0, vitest_1.it)('should build error without suggestions for no close match', () => {
|
|
61
|
+
const error = (0, model_suggestions_js_1.buildModelNotFoundError)('totally-random-xyz-12345', availableModels);
|
|
62
|
+
(0, vitest_1.expect)(error.error).toContain('totally-random-xyz-12345');
|
|
63
|
+
(0, vitest_1.expect)(error.suggestions).toBeUndefined();
|
|
64
|
+
(0, vitest_1.expect)(error.hint).toBeUndefined();
|
|
65
|
+
});
|
|
66
|
+
});
|
|
67
|
+
//# sourceMappingURL=model-suggestions.test.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"model-suggestions.test.js","sourceRoot":"","sources":["../../src/__tests__/model-suggestions.test.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"routing-aliases.test.d.ts","sourceRoot":"","sources":["../../src/__tests__/routing-aliases.test.ts"],"names":[],"mappings":""}
|
|
@@ -0,0 +1,81 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
const vitest_1 = require("vitest");
|
|
4
|
+
const standalone_proxy_js_1 = require("../standalone-proxy.js");
|
|
5
|
+
(0, vitest_1.describe)('RELAYPLANE_ALIASES', () => {
|
|
6
|
+
(0, vitest_1.it)('should map relayplane:auto to rp:balanced', () => {
|
|
7
|
+
(0, vitest_1.expect)(standalone_proxy_js_1.RELAYPLANE_ALIASES['relayplane:auto']).toBe('rp:balanced');
|
|
8
|
+
});
|
|
9
|
+
(0, vitest_1.it)('should map rp:auto to rp:balanced', () => {
|
|
10
|
+
(0, vitest_1.expect)(standalone_proxy_js_1.RELAYPLANE_ALIASES['rp:auto']).toBe('rp:balanced');
|
|
11
|
+
});
|
|
12
|
+
});
|
|
13
|
+
(0, vitest_1.describe)('SMART_ALIASES', () => {
|
|
14
|
+
(0, vitest_1.it)('should have rp:best pointing to a valid model', () => {
|
|
15
|
+
(0, vitest_1.expect)(standalone_proxy_js_1.SMART_ALIASES['rp:best']).toBeDefined();
|
|
16
|
+
(0, vitest_1.expect)(standalone_proxy_js_1.SMART_ALIASES['rp:best'].provider).toBe('anthropic');
|
|
17
|
+
(0, vitest_1.expect)(standalone_proxy_js_1.SMART_ALIASES['rp:best'].model).toContain('claude');
|
|
18
|
+
});
|
|
19
|
+
(0, vitest_1.it)('should have rp:fast pointing to a fast model', () => {
|
|
20
|
+
(0, vitest_1.expect)(standalone_proxy_js_1.SMART_ALIASES['rp:fast']).toBeDefined();
|
|
21
|
+
(0, vitest_1.expect)(standalone_proxy_js_1.SMART_ALIASES['rp:fast'].model).toContain('haiku');
|
|
22
|
+
});
|
|
23
|
+
(0, vitest_1.it)('should have rp:cheap pointing to a cheap model', () => {
|
|
24
|
+
(0, vitest_1.expect)(standalone_proxy_js_1.SMART_ALIASES['rp:cheap']).toBeDefined();
|
|
25
|
+
(0, vitest_1.expect)(standalone_proxy_js_1.SMART_ALIASES['rp:cheap'].model).toContain('mini');
|
|
26
|
+
});
|
|
27
|
+
(0, vitest_1.it)('should have rp:balanced pointing to a balanced model', () => {
|
|
28
|
+
(0, vitest_1.expect)(standalone_proxy_js_1.SMART_ALIASES['rp:balanced']).toBeDefined();
|
|
29
|
+
});
|
|
30
|
+
(0, vitest_1.it)('should point to existing models', () => {
|
|
31
|
+
// Verify model names are valid API model IDs
|
|
32
|
+
(0, vitest_1.expect)(standalone_proxy_js_1.SMART_ALIASES['rp:best'].model).toMatch(/claude-.*-\d{8}$/);
|
|
33
|
+
(0, vitest_1.expect)(standalone_proxy_js_1.SMART_ALIASES['rp:fast'].model).toMatch(/claude-.*-\d{8}$/);
|
|
34
|
+
(0, vitest_1.expect)(standalone_proxy_js_1.SMART_ALIASES['rp:balanced'].model).toMatch(/claude-.*-\d{8}$/);
|
|
35
|
+
});
|
|
36
|
+
});
|
|
37
|
+
(0, vitest_1.describe)('resolveModelAlias', () => {
|
|
38
|
+
(0, vitest_1.it)('should resolve relayplane:auto to rp:balanced', () => {
|
|
39
|
+
(0, vitest_1.expect)((0, standalone_proxy_js_1.resolveModelAlias)('relayplane:auto')).toBe('rp:balanced');
|
|
40
|
+
});
|
|
41
|
+
(0, vitest_1.it)('should resolve rp:auto to rp:balanced', () => {
|
|
42
|
+
(0, vitest_1.expect)((0, standalone_proxy_js_1.resolveModelAlias)('rp:auto')).toBe('rp:balanced');
|
|
43
|
+
});
|
|
44
|
+
(0, vitest_1.it)('should return unchanged for non-alias models', () => {
|
|
45
|
+
(0, vitest_1.expect)((0, standalone_proxy_js_1.resolveModelAlias)('claude-sonnet-4')).toBe('claude-sonnet-4');
|
|
46
|
+
(0, vitest_1.expect)((0, standalone_proxy_js_1.resolveModelAlias)('gpt-4o')).toBe('gpt-4o');
|
|
47
|
+
(0, vitest_1.expect)((0, standalone_proxy_js_1.resolveModelAlias)('rp:best')).toBe('rp:best');
|
|
48
|
+
});
|
|
49
|
+
(0, vitest_1.it)('should return unchanged for unknown models', () => {
|
|
50
|
+
(0, vitest_1.expect)((0, standalone_proxy_js_1.resolveModelAlias)('unknown-model')).toBe('unknown-model');
|
|
51
|
+
});
|
|
52
|
+
});
|
|
53
|
+
(0, vitest_1.describe)('getAvailableModelNames', () => {
|
|
54
|
+
(0, vitest_1.it)('should include MODEL_MAPPING keys', () => {
|
|
55
|
+
const available = (0, standalone_proxy_js_1.getAvailableModelNames)();
|
|
56
|
+
(0, vitest_1.expect)(available).toContain('claude-sonnet-4');
|
|
57
|
+
(0, vitest_1.expect)(available).toContain('gpt-4o');
|
|
58
|
+
});
|
|
59
|
+
(0, vitest_1.it)('should include SMART_ALIASES keys', () => {
|
|
60
|
+
const available = (0, standalone_proxy_js_1.getAvailableModelNames)();
|
|
61
|
+
(0, vitest_1.expect)(available).toContain('rp:best');
|
|
62
|
+
(0, vitest_1.expect)(available).toContain('rp:fast');
|
|
63
|
+
(0, vitest_1.expect)(available).toContain('rp:balanced');
|
|
64
|
+
});
|
|
65
|
+
(0, vitest_1.it)('should include relayplane routing models', () => {
|
|
66
|
+
const available = (0, standalone_proxy_js_1.getAvailableModelNames)();
|
|
67
|
+
(0, vitest_1.expect)(available).toContain('relayplane:auto');
|
|
68
|
+
(0, vitest_1.expect)(available).toContain('relayplane:cost');
|
|
69
|
+
(0, vitest_1.expect)(available).toContain('relayplane:fast');
|
|
70
|
+
(0, vitest_1.expect)(available).toContain('relayplane:quality');
|
|
71
|
+
});
|
|
72
|
+
});
|
|
73
|
+
(0, vitest_1.describe)('MODEL_MAPPING', () => {
|
|
74
|
+
(0, vitest_1.it)('should have updated sonnet pointing to claude-sonnet-4', () => {
|
|
75
|
+
(0, vitest_1.expect)(standalone_proxy_js_1.MODEL_MAPPING['sonnet'].model).toContain('claude-sonnet-4');
|
|
76
|
+
});
|
|
77
|
+
(0, vitest_1.it)('should have updated opus pointing to claude-opus-4-5', () => {
|
|
78
|
+
(0, vitest_1.expect)(standalone_proxy_js_1.MODEL_MAPPING['opus'].model).toContain('claude-opus-4-5');
|
|
79
|
+
});
|
|
80
|
+
});
|
|
81
|
+
//# sourceMappingURL=routing-aliases.test.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"routing-aliases.test.js","sourceRoot":"","sources":["../../src/__tests__/routing-aliases.test.ts"],"names":[],"mappings":"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"}
|
package/dist/cli.js
CHANGED
|
File without changes
|
package/dist/server.d.ts
ADDED
|
@@ -0,0 +1,13 @@
|
|
|
1
|
+
#!/usr/bin/env node
|
|
2
|
+
/**
|
|
3
|
+
* RelayPlane Local LLM Proxy Server
|
|
4
|
+
*
|
|
5
|
+
* Routes OpenAI-compatible requests to multiple providers.
|
|
6
|
+
* Features:
|
|
7
|
+
* - /health endpoint for monitoring
|
|
8
|
+
* - Usage tracking with spending warnings
|
|
9
|
+
* - Model aliases (rp:fast, rp:cheap, rp:best)
|
|
10
|
+
* - Dry-run mode for testing
|
|
11
|
+
*/
|
|
12
|
+
export {};
|
|
13
|
+
//# sourceMappingURL=server.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"server.d.ts","sourceRoot":"","sources":["../src/server.ts"],"names":[],"mappings":";AACA;;;;;;;;;GASG"}
|