@splashcodex/api-key-manager 5.0.2 → 5.2.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 +206 -206
- package/bin/cli.js +180 -50
- package/dist/env/index.d.ts +6 -0
- package/dist/env/index.js +12 -0
- package/dist/env/index.js.map +1 -0
- package/dist/env/loader.d.ts +95 -0
- package/dist/env/loader.js +188 -0
- package/dist/env/loader.js.map +1 -0
- package/dist/index.d.ts +13 -0
- package/dist/index.js +61 -2
- package/dist/index.js.map +1 -1
- package/dist/presets/anthropic.d.ts +54 -0
- package/dist/presets/anthropic.js +71 -0
- package/dist/presets/anthropic.js.map +1 -0
- package/dist/presets/base.js +25 -6
- package/dist/presets/base.js.map +1 -1
- package/dist/presets/index.d.ts +1 -0
- package/dist/presets/index.js +3 -1
- package/dist/presets/index.js.map +1 -1
- package/dist/presets/multi.js +12 -3
- package/dist/presets/multi.js.map +1 -1
- package/package.json +151 -123
- package/src/env/index.ts +14 -0
- package/src/env/loader.ts +249 -0
- package/src/index.ts +1071 -1005
- package/src/persistence/file.ts +89 -89
- package/src/persistence/index.ts +7 -7
- package/src/persistence/memory.ts +43 -43
- package/src/presets/anthropic.ts +78 -0
- package/src/presets/base.ts +344 -323
- package/src/presets/gemini.ts +84 -84
- package/src/presets/index.ts +11 -10
- package/src/presets/multi.ts +290 -280
- package/src/presets/openai.ts +69 -69
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"anthropic.js","sourceRoot":"","sources":["../../src/presets/anthropic.ts"],"names":[],"mappings":";AAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAsCG;;;AAEH,iCAA2D;AAE3D,MAAa,gBAAiB,SAAQ,iBAAU;IACpC,MAAM,CAAU,QAAQ,GAAG,WAAW,CAAC;IAE/C,YAAoB,IAAc,EAAE,OAAsB;QACtD,KAAK,CAAC,IAAI,EAAE,OAAO,CAAC,CAAC;IACzB,CAAC;IAEO,MAAM,CAAC,iBAAiB;QAC5B,OAAO;YACH,OAAO,EAAE,CAAC,mBAAmB,CAAC;YAC9B,QAAQ,EAAE,gBAAgB,CAAC,QAAQ;YACnC,WAAW,EAAE,EAAE;YACf,qBAAqB,EAAE,OAAO;SACjC,CAAC;IACN,CAAC;IAED;;;;;OAKG;IACH,MAAM,CAAC,WAAW,CAAC,SAAkC;QACjD,OAAO,iBAAU,CAAC,cAAc,CAC5B,gBAA+F,EAC/F,gBAAgB,CAAC,iBAAiB,EAAE,EACpC,SAAS,CACgB,CAAC;IAClC,CAAC;IAED,MAAM,CAAC,KAAK;QACR,iBAAU,CAAC,aAAa,CAAC,gBAAgB,CAAC,QAAQ,CAAC,CAAC;IACxD,CAAC;;AAhCL,4CAiCC"}
|
package/dist/presets/base.js
CHANGED
|
@@ -18,6 +18,23 @@ const index_1 = require("../index");
|
|
|
18
18
|
const file_1 = require("../persistence/file");
|
|
19
19
|
const path_1 = require("path");
|
|
20
20
|
const os_1 = require("os");
|
|
21
|
+
const crypto_1 = require("crypto");
|
|
22
|
+
// ─── Project Identifier ─────────────────────────────────────────────────────
|
|
23
|
+
/**
|
|
24
|
+
* Derive a short, stable identifier for the current project.
|
|
25
|
+
* Uses the directory name + a hash of the full CWD to avoid collisions
|
|
26
|
+
* when multiple projects run simultaneously.
|
|
27
|
+
*
|
|
28
|
+
* Examples:
|
|
29
|
+
* /home/codedex/projects/WhatsDeX → "whatsdex_a3f2"
|
|
30
|
+
* /home/codedex/projects/DeXdo → "dexdo_b7c1"
|
|
31
|
+
*/
|
|
32
|
+
function getProjectId() {
|
|
33
|
+
const cwd = process.cwd();
|
|
34
|
+
const dirName = (0, path_1.basename)(cwd).toLowerCase().replace(/[^a-z0-9]/g, '');
|
|
35
|
+
const hash = (0, crypto_1.createHash)('md5').update(cwd).digest('hex').slice(0, 4);
|
|
36
|
+
return `${dirName}_${hash}`;
|
|
37
|
+
}
|
|
21
38
|
// ─── Base Preset Class ──────────────────────────────────────────────────────
|
|
22
39
|
/**
|
|
23
40
|
* Abstract base class for provider presets.
|
|
@@ -50,11 +67,12 @@ class BasePreset {
|
|
|
50
67
|
healthCheckIntervalMs: options.healthCheckIntervalMs ?? 300_000,
|
|
51
68
|
...options,
|
|
52
69
|
};
|
|
70
|
+
const projectId = getProjectId();
|
|
53
71
|
const stateFile = this.options.stateFilePath ||
|
|
54
|
-
(0, path_1.join)((0, os_1.tmpdir)(), `codedex_${this.options.provider}_state.json`);
|
|
72
|
+
(0, path_1.join)((0, os_1.tmpdir)(), `codedex_${this.options.provider}_${projectId}_state.json`);
|
|
55
73
|
const storage = new file_1.FileStorage({
|
|
56
74
|
filePath: stateFile,
|
|
57
|
-
clearOnInit:
|
|
75
|
+
clearOnInit: false, // Preserve circuit breaker state across restarts
|
|
58
76
|
});
|
|
59
77
|
this.manager = new index_1.ApiKeyManager(apiKeys, {
|
|
60
78
|
storage,
|
|
@@ -186,10 +204,11 @@ class BasePreset {
|
|
|
186
204
|
const envKeys = mergedOptions.envKeys || [];
|
|
187
205
|
const keys = BasePreset.parseKeysFromEnv(envKeys);
|
|
188
206
|
if (keys.length === 0) {
|
|
189
|
-
|
|
190
|
-
|
|
191
|
-
`
|
|
192
|
-
|
|
207
|
+
return {
|
|
208
|
+
success: false,
|
|
209
|
+
error: new Error(`[${instanceKey}] No API keys found in env vars: ${envKeys.join(', ')}. ` +
|
|
210
|
+
`Set these environment variables or use loadCentralEnv() to load from ~/codedex/env/ first.`),
|
|
211
|
+
};
|
|
193
212
|
}
|
|
194
213
|
try {
|
|
195
214
|
const instance = new PresetClass(keys, mergedOptions);
|
package/dist/presets/base.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"base.js","sourceRoot":"","sources":["../../src/presets/base.ts"],"names":[],"mappings":";AAAA;;;;;;;;;;;;GAYG;;;AAEH,oCAMkB;AAClB,8CAAkD;AAClD,+
|
|
1
|
+
{"version":3,"file":"base.js","sourceRoot":"","sources":["../../src/presets/base.ts"],"names":[],"mappings":"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"}
|
package/dist/presets/index.d.ts
CHANGED
|
@@ -6,5 +6,6 @@ export { BasePreset } from './base';
|
|
|
6
6
|
export type { PresetOptions, PresetLogger, Result } from './base';
|
|
7
7
|
export { GeminiManager } from './gemini';
|
|
8
8
|
export { OpenAIManager } from './openai';
|
|
9
|
+
export { AnthropicManager } from './anthropic';
|
|
9
10
|
export { MultiManager } from './multi';
|
|
10
11
|
export type { ProviderConfig, MultiManagerOptions } from './multi';
|
package/dist/presets/index.js
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
-
exports.MultiManager = exports.OpenAIManager = exports.GeminiManager = exports.BasePreset = void 0;
|
|
3
|
+
exports.MultiManager = exports.AnthropicManager = exports.OpenAIManager = exports.GeminiManager = exports.BasePreset = void 0;
|
|
4
4
|
/**
|
|
5
5
|
* Presets — Batteries-included provider managers
|
|
6
6
|
* @module presets
|
|
@@ -11,6 +11,8 @@ var gemini_1 = require("./gemini");
|
|
|
11
11
|
Object.defineProperty(exports, "GeminiManager", { enumerable: true, get: function () { return gemini_1.GeminiManager; } });
|
|
12
12
|
var openai_1 = require("./openai");
|
|
13
13
|
Object.defineProperty(exports, "OpenAIManager", { enumerable: true, get: function () { return openai_1.OpenAIManager; } });
|
|
14
|
+
var anthropic_1 = require("./anthropic");
|
|
15
|
+
Object.defineProperty(exports, "AnthropicManager", { enumerable: true, get: function () { return anthropic_1.AnthropicManager; } });
|
|
14
16
|
var multi_1 = require("./multi");
|
|
15
17
|
Object.defineProperty(exports, "MultiManager", { enumerable: true, get: function () { return multi_1.MultiManager; } });
|
|
16
18
|
//# sourceMappingURL=index.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/presets/index.ts"],"names":[],"mappings":";;;AAAA;;;GAGG;AACH,+BAAoC;AAA3B,kGAAA,UAAU,OAAA;AAEnB,mCAAyC;AAAhC,uGAAA,aAAa,OAAA;AACtB,mCAAyC;AAAhC,uGAAA,aAAa,OAAA;AACtB,iCAAuC;AAA9B,qGAAA,YAAY,OAAA"}
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/presets/index.ts"],"names":[],"mappings":";;;AAAA;;;GAGG;AACH,+BAAoC;AAA3B,kGAAA,UAAU,OAAA;AAEnB,mCAAyC;AAAhC,uGAAA,aAAa,OAAA;AACtB,mCAAyC;AAAhC,uGAAA,aAAa,OAAA;AACtB,yCAA+C;AAAtC,6GAAA,gBAAgB,OAAA;AACzB,iCAAuC;AAA9B,qGAAA,YAAY,OAAA"}
|
package/dist/presets/multi.js
CHANGED
|
@@ -39,6 +39,13 @@ const index_1 = require("../index");
|
|
|
39
39
|
const file_1 = require("../persistence/file");
|
|
40
40
|
const path_1 = require("path");
|
|
41
41
|
const os_1 = require("os");
|
|
42
|
+
const crypto_1 = require("crypto");
|
|
43
|
+
function getProjectId() {
|
|
44
|
+
const cwd = process.cwd();
|
|
45
|
+
const dirName = (0, path_1.basename)(cwd).toLowerCase().replace(/[^a-z0-9]/g, '');
|
|
46
|
+
const hash = (0, crypto_1.createHash)('md5').update(cwd).digest('hex').slice(0, 4);
|
|
47
|
+
return `${dirName}_${hash}`;
|
|
48
|
+
}
|
|
42
49
|
// ─── MultiManager ───────────────────────────────────────────────────────────
|
|
43
50
|
class MultiManager {
|
|
44
51
|
static instance = null;
|
|
@@ -49,11 +56,13 @@ class MultiManager {
|
|
|
49
56
|
for (const [providerName, config] of Object.entries(options.providers)) {
|
|
50
57
|
const keys = MultiManager.parseKeysFromEnv(config.envKeys);
|
|
51
58
|
if (keys.length === 0) {
|
|
52
|
-
this.logger.warn(`[MultiManager:${providerName}] No API keys found in: ${config.envKeys.join(', ')}`);
|
|
59
|
+
this.logger.warn(`[MultiManager:${providerName}] No API keys found in: ${config.envKeys.join(', ')} — provider skipped`);
|
|
60
|
+
continue;
|
|
53
61
|
}
|
|
62
|
+
const projectId = getProjectId();
|
|
54
63
|
const storage = new file_1.FileStorage({
|
|
55
|
-
filePath: (0, path_1.join)((0, os_1.tmpdir)(), `codedex_multi_${providerName}_state.json`),
|
|
56
|
-
clearOnInit:
|
|
64
|
+
filePath: (0, path_1.join)((0, os_1.tmpdir)(), `codedex_multi_${providerName}_${projectId}_state.json`),
|
|
65
|
+
clearOnInit: false, // Preserve circuit breaker state across restarts
|
|
57
66
|
});
|
|
58
67
|
const manager = new index_1.ApiKeyManager(keys, {
|
|
59
68
|
storage,
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"multi.js","sourceRoot":"","sources":["../../src/presets/multi.ts"],"names":[],"mappings":";AAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAiCG;;;AAEH,oCAOkB;AAClB,8CAAkD;AAClD,+
|
|
1
|
+
{"version":3,"file":"multi.js","sourceRoot":"","sources":["../../src/presets/multi.ts"],"names":[],"mappings":";AAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAiCG;;;AAEH,oCAOkB;AAClB,8CAAkD;AAClD,+BAAsC;AACtC,2BAA4B;AAC5B,mCAAoC;AAEpC,SAAS,YAAY;IACjB,MAAM,GAAG,GAAG,OAAO,CAAC,GAAG,EAAE,CAAC;IAC1B,MAAM,OAAO,GAAG,IAAA,eAAQ,EAAC,GAAG,CAAC,CAAC,WAAW,EAAE,CAAC,OAAO,CAAC,YAAY,EAAE,EAAE,CAAC,CAAC;IACtE,MAAM,IAAI,GAAG,IAAA,mBAAU,EAAC,KAAK,CAAC,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC,KAAK,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC;IACrE,OAAO,GAAG,OAAO,IAAI,IAAI,EAAE,CAAC;AAChC,CAAC;AAgCD,+EAA+E;AAE/E,MAAa,YAAY;IACb,MAAM,CAAC,QAAQ,GAAwB,IAAI,CAAC;IAE5C,QAAQ,GAAG,IAAI,GAAG,EAAyB,CAAC;IAC5C,MAAM,CAA6C;IAE3D,YAAoB,OAA4B;QAC5C,IAAI,CAAC,MAAM,GAAG,OAAO,CAAC,MAAM,IAAI,OAAO,CAAC;QAExC,KAAK,MAAM,CAAC,YAAY,EAAE,MAAM,CAAC,IAAI,MAAM,CAAC,OAAO,CAAC,OAAO,CAAC,SAAS,CAAC,EAAE,CAAC;YACrE,MAAM,IAAI,GAAG,YAAY,CAAC,gBAAgB,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC;YAE3D,IAAI,IAAI,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;gBACpB,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,iBAAiB,YAAY,2BAA2B,MAAM,CAAC,OAAO,CAAC,IAAI,CAAC,IAAI,CAAC,qBAAqB,CAAC,CAAC;gBACzH,SAAS;YACb,CAAC;YAED,MAAM,SAAS,GAAG,YAAY,EAAE,CAAC;YACjC,MAAM,OAAO,GAAG,IAAI,kBAAW,CAAC;gBAC5B,QAAQ,EAAE,IAAA,WAAI,EAAC,IAAA,WAAM,GAAE,EAAE,iBAAiB,YAAY,IAAI,SAAS,aAAa,CAAC;gBACjF,WAAW,EAAE,KAAK,EAAE,iDAAiD;aACxE,CAAC,CAAC;YAEH,MAAM,OAAO,GAAG,IAAI,qBAAa,CAAC,IAAI,EAAE;gBACpC,OAAO;gBACP,QAAQ,EAAE,MAAM,CAAC,QAAQ,IAAI,IAAI,uBAAe,EAAE;gBAClD,WAAW,EAAE,MAAM,CAAC,WAAW,IAAI,EAAE;gBACrC,aAAa,EAAE,MAAM,CAAC,aAAa;aACtC,CAAC,CAAC;YAEH,cAAc;YACd,OAAO,CAAC,EAAE,CAAC,SAAS,EAAE,CAAC,GAAG,EAAE,EAAE,CAC1B,IAAI,CAAC,MAAM,CAAC,KAAK,CAAC,iBAAiB,YAAY,kBAAkB,GAAG,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC;YACvF,OAAO,CAAC,EAAE,CAAC,aAAa,EAAE,CAAC,GAAG,EAAE,EAAE,CAC9B,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,iBAAiB,YAAY,sBAAsB,GAAG,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC;YAC1F,OAAO,CAAC,EAAE,CAAC,cAAc,EAAE,CAAC,GAAG,EAAE,EAAE,CAC/B,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,iBAAiB,YAAY,uBAAuB,GAAG,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC;YAC3F,OAAO,CAAC,EAAE,CAAC,kBAAkB,EAAE,GAAG,EAAE,CAChC,IAAI,CAAC,MAAM,CAAC,KAAK,CAAC,iBAAiB,YAAY,sBAAsB,CAAC,CAAC,CAAC;YAE5E,gBAAgB;YAChB,MAAM,QAAQ,GAAG,OAAO,CAAC,qBAAqB,IAAI,OAAO,CAAC;YAC1D,IAAI,QAAQ,GAAG,CAAC,EAAE,CAAC;gBACf,OAAO,CAAC,iBAAiB,CAAC,QAAQ,CAAC,CAAC;YACxC,CAAC;YAED,IAAI,CAAC,QAAQ,CAAC,GAAG,CAAC,YAAY,EAAE,OAAO,CAAC,CAAC;YACzC,IAAI,CAAC,MAAM,CAAC,IAAI,CACZ,iBAAiB,YAAY,sBAAsB,IAAI,CAAC,MAAM,OAAO,CACxE,CAAC;QACN,CAAC;IACL,CAAC;IAED,2EAA2E;IAE3E;;OAEG;IACH,MAAM,CAAC,WAAW,CAAC,OAA4B;QAC3C,IAAI,YAAY,CAAC,QAAQ,EAAE,CAAC;YACxB,OAAO,EAAE,OAAO,EAAE,IAAI,EAAE,IAAI,EAAE,YAAY,CAAC,QAAQ,EAAE,CAAC;QAC1D,CAAC;QAED,IAAI,CAAC;YACD,YAAY,CAAC,QAAQ,GAAG,IAAI,YAAY,CAAC,OAAO,CAAC,CAAC;YAClD,OAAO,EAAE,OAAO,EAAE,IAAI,EAAE,IAAI,EAAE,YAAY,CAAC,QAAQ,EAAE,CAAC;QAC1D,CAAC;QAAC,OAAO,KAAK,EAAE,CAAC;YACb,OAAO;gBACH,OAAO,EAAE,KAAK;gBACd,KAAK,EAAE,KAAK,YAAY,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,IAAI,KAAK,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC;aACnE,CAAC;QACN,CAAC;IACL,CAAC;IAED;;OAEG;IACH,MAAM,CAAC,KAAK;QACR,IAAI,YAAY,CAAC,QAAQ,EAAE,CAAC;YACxB,YAAY,CAAC,QAAQ,CAAC,OAAO,EAAE,CAAC;YAChC,YAAY,CAAC,QAAQ,GAAG,IAAI,CAAC;QACjC,CAAC;IACL,CAAC;IAED,2EAA2E;IAE3E;;;;;OAKG;IACH,KAAK,CAAC,OAAO,CACT,EAAqD,EACrD,OAA+D;QAE/D,MAAM,OAAO,GAAG,IAAI,CAAC,QAAQ,CAAC,GAAG,CAAC,OAAO,CAAC,QAAQ,CAAC,CAAC;QACpD,IAAI,CAAC,OAAO,EAAE,CAAC;YACX,MAAM,IAAI,KAAK,CACX,oCAAoC,OAAO,CAAC,QAAQ,KAAK;gBACzD,cAAc,CAAC,GAAG,IAAI,CAAC,QAAQ,CAAC,IAAI,EAAE,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,EAAE,CACvD,CAAC;QACN,CAAC;QACD,mFAAmF;QACnF,MAAM,EAAE,QAAQ,EAAE,GAAG,eAAe,EAAE,GAAG,OAAO,CAAC;QACjD,OAAO,OAAO,CAAC,OAAO,CAAC,EAAE,EAAE,eAAe,CAAC,CAAC;IAChD,CAAC;IAED;;OAEG;IACH,KAAK,CAAC,CAAC,aAAa,CAChB,EAA0E,EAC1E,OAA+D;QAE/D,MAAM,OAAO,GAAG,IAAI,CAAC,QAAQ,CAAC,GAAG,CAAC,OAAO,CAAC,QAAQ,CAAC,CAAC;QACpD,IAAI,CAAC,OAAO,EAAE,CAAC;YACX,MAAM,IAAI,KAAK,CACX,oCAAoC,OAAO,CAAC,QAAQ,KAAK;gBACzD,cAAc,CAAC,GAAG,IAAI,CAAC,QAAQ,CAAC,IAAI,EAAE,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,EAAE,CACvD,CAAC;QACN,CAAC;QACD,MAAM,EAAE,QAAQ,EAAE,GAAG,eAAe,EAAE,GAAG,OAAO,CAAC;QACjD,KAAK,CAAC,CAAC,OAAO,CAAC,aAAa,CAAC,EAAE,EAAE,eAAe,CAAC,CAAC;IACtD,CAAC;IAED;;OAEG;IACH,MAAM,CAAC,QAAgB;QACnB,MAAM,OAAO,GAAG,IAAI,CAAC,QAAQ,CAAC,GAAG,CAAC,QAAQ,CAAC,CAAC;QAC5C,IAAI,CAAC,OAAO;YAAE,OAAO,IAAI,CAAC;QAC1B,OAAO,OAAO,CAAC,MAAM,EAAE,CAAC;IAC5B,CAAC;IAED;;OAEG;IACH,QAAQ,CAAC,QAAgB;QACrB,MAAM,OAAO,GAAG,IAAI,CAAC,QAAQ,CAAC,GAAG,CAAC,QAAQ,CAAC,CAAC;QAC5C,IAAI,CAAC,OAAO;YAAE,OAAO,IAAI,CAAC;QAC1B,OAAO,OAAO,CAAC,QAAQ,EAAE,CAAC;IAC9B,CAAC;IAED;;OAEG;IACH,aAAa;QACT,MAAM,KAAK,GAAuC,EAAE,CAAC;QACrD,KAAK,MAAM,CAAC,IAAI,EAAE,OAAO,CAAC,IAAI,IAAI,CAAC,QAAQ,EAAE,CAAC;YAC1C,KAAK,CAAC,IAAI,CAAC,GAAG,OAAO,CAAC,QAAQ,EAAE,CAAC;QACrC,CAAC;QACD,OAAO,KAAK,CAAC;IACjB,CAAC;IAED;;OAEG;IACH,YAAY;QACR,OAAO,CAAC,GAAG,IAAI,CAAC,QAAQ,CAAC,IAAI,EAAE,CAAC,CAAC;IACrC,CAAC;IAED;;OAEG;IACH,UAAU,CAAC,QAAgB;QACvB,OAAO,IAAI,CAAC,QAAQ,CAAC,GAAG,CAAC,QAAQ,CAAC,CAAC;IACvC,CAAC;IAED;;OAEG;IACH,OAAO;QACH,KAAK,MAAM,CAAC,EAAE,OAAO,CAAC,IAAI,IAAI,CAAC,QAAQ,EAAE,CAAC;YACtC,OAAO,CAAC,gBAAgB,EAAE,CAAC;QAC/B,CAAC;QACD,IAAI,CAAC,QAAQ,CAAC,KAAK,EAAE,CAAC;IAC1B,CAAC;IAED,2EAA2E;IAEnE,MAAM,CAAC,gBAAgB,CAAC,OAAiB;QAC7C,MAAM,IAAI,GAAa,EAAE,CAAC;QAC1B,KAAK,MAAM,OAAO,IAAI,OAAO,EAAE,CAAC;YAC5B,MAAM,QAAQ,GAAG,OAAO,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC;YACtC,IAAI,CAAC,QAAQ;gBAAE,SAAS;YACxB,MAAM,OAAO,GAAG,QAAQ,CAAC,IAAI,EAAE,CAAC;YAChC,IAAI,CAAC,OAAO;gBAAE,SAAS;YAEvB,IAAI,OAAO,CAAC,UAAU,CAAC,GAAG,CAAC,EAAE,CAAC;gBAC1B,IAAI,CAAC;oBACD,MAAM,MAAM,GAAG,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC;oBACnC,IAAI,KAAK,CAAC,OAAO,CAAC,MAAM,CAAC,EAAE,CAAC;wBACxB,IAAI,CAAC,IAAI,CAAC,GAAG,MAAM,CAAC,MAAM,CAAC,CAAC,CAAM,EAAE,EAAE,CAAC,OAAO,CAAC,KAAK,QAAQ,IAAI,CAAC,CAAC,IAAI,EAAE,CAAC,CAAC,CAAC;wBAC3E,SAAS;oBACb,CAAC;gBACL,CAAC;gBAAC,MAAM,CAAC,CAAC,cAAc,CAAC,CAAC;YAC9B,CAAC;YACD,IAAI,CAAC,IAAI,CAAC,GAAG,OAAO,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,IAAI,EAAE,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC,CAAC;QAClF,CAAC;QACD,OAAO,CAAC,GAAG,IAAI,GAAG,CAAC,IAAI,CAAC,CAAC,CAAC;IAC9B,CAAC;;AAzML,oCA0MC"}
|
package/package.json
CHANGED
|
@@ -1,123 +1,151 @@
|
|
|
1
|
-
{
|
|
2
|
-
"name": "@splashcodex/api-key-manager",
|
|
3
|
-
"version": "5.0
|
|
4
|
-
"description": "Universal API Key Management Gateway with provider presets, persistence, and multi-provider vault",
|
|
5
|
-
"bin": {
|
|
6
|
-
"api-key-manager": "./bin/cli.js"
|
|
7
|
-
},
|
|
8
|
-
"main": "dist/index.js",
|
|
9
|
-
"types": "dist/index.d.ts",
|
|
10
|
-
"exports": {
|
|
11
|
-
".": {
|
|
12
|
-
"
|
|
13
|
-
"
|
|
14
|
-
|
|
15
|
-
|
|
16
|
-
|
|
17
|
-
"
|
|
18
|
-
|
|
19
|
-
|
|
20
|
-
|
|
21
|
-
|
|
22
|
-
|
|
23
|
-
|
|
24
|
-
"
|
|
25
|
-
|
|
26
|
-
|
|
27
|
-
|
|
28
|
-
"require": "./dist/presets/
|
|
29
|
-
"types": "./dist/presets/
|
|
30
|
-
},
|
|
31
|
-
"./presets/
|
|
32
|
-
"
|
|
33
|
-
"
|
|
34
|
-
|
|
35
|
-
|
|
36
|
-
|
|
37
|
-
"
|
|
38
|
-
|
|
39
|
-
|
|
40
|
-
|
|
41
|
-
|
|
42
|
-
|
|
43
|
-
|
|
44
|
-
"
|
|
45
|
-
|
|
46
|
-
|
|
47
|
-
|
|
48
|
-
|
|
49
|
-
|
|
50
|
-
|
|
51
|
-
|
|
52
|
-
|
|
53
|
-
"
|
|
54
|
-
|
|
55
|
-
|
|
56
|
-
|
|
57
|
-
|
|
58
|
-
|
|
59
|
-
"
|
|
60
|
-
|
|
61
|
-
|
|
62
|
-
"
|
|
63
|
-
|
|
64
|
-
|
|
65
|
-
|
|
66
|
-
|
|
67
|
-
|
|
68
|
-
|
|
69
|
-
|
|
70
|
-
|
|
71
|
-
|
|
72
|
-
|
|
73
|
-
|
|
74
|
-
|
|
75
|
-
|
|
76
|
-
|
|
77
|
-
|
|
78
|
-
|
|
79
|
-
|
|
80
|
-
|
|
81
|
-
|
|
82
|
-
|
|
83
|
-
|
|
84
|
-
|
|
85
|
-
|
|
86
|
-
|
|
87
|
-
|
|
88
|
-
|
|
89
|
-
|
|
90
|
-
|
|
91
|
-
|
|
92
|
-
|
|
93
|
-
|
|
94
|
-
|
|
95
|
-
|
|
96
|
-
|
|
97
|
-
|
|
98
|
-
|
|
99
|
-
|
|
100
|
-
|
|
101
|
-
|
|
102
|
-
"
|
|
103
|
-
"
|
|
104
|
-
"
|
|
105
|
-
|
|
106
|
-
|
|
107
|
-
"
|
|
108
|
-
|
|
109
|
-
|
|
110
|
-
|
|
111
|
-
|
|
112
|
-
"
|
|
113
|
-
|
|
114
|
-
|
|
115
|
-
"
|
|
116
|
-
"
|
|
117
|
-
"
|
|
118
|
-
|
|
119
|
-
|
|
120
|
-
"
|
|
121
|
-
"
|
|
122
|
-
|
|
123
|
-
|
|
1
|
+
{
|
|
2
|
+
"name": "@splashcodex/api-key-manager",
|
|
3
|
+
"version": "5.2.0",
|
|
4
|
+
"description": "Universal API Key Management Gateway with centralized env loader, provider presets, persistence, and multi-provider vault",
|
|
5
|
+
"bin": {
|
|
6
|
+
"api-key-manager": "./bin/cli.js"
|
|
7
|
+
},
|
|
8
|
+
"main": "dist/index.js",
|
|
9
|
+
"types": "dist/index.d.ts",
|
|
10
|
+
"exports": {
|
|
11
|
+
".": {
|
|
12
|
+
"import": "./dist/index.js",
|
|
13
|
+
"require": "./dist/index.js",
|
|
14
|
+
"types": "./dist/index.d.ts"
|
|
15
|
+
},
|
|
16
|
+
"./env": {
|
|
17
|
+
"import": "./dist/env/index.js",
|
|
18
|
+
"require": "./dist/env/index.js",
|
|
19
|
+
"types": "./dist/env/index.d.ts"
|
|
20
|
+
},
|
|
21
|
+
"./presets": {
|
|
22
|
+
"import": "./dist/presets/index.js",
|
|
23
|
+
"require": "./dist/presets/index.js",
|
|
24
|
+
"types": "./dist/presets/index.d.ts"
|
|
25
|
+
},
|
|
26
|
+
"./presets/gemini": {
|
|
27
|
+
"import": "./dist/presets/gemini.js",
|
|
28
|
+
"require": "./dist/presets/gemini.js",
|
|
29
|
+
"types": "./dist/presets/gemini.d.ts"
|
|
30
|
+
},
|
|
31
|
+
"./presets/openai": {
|
|
32
|
+
"import": "./dist/presets/openai.js",
|
|
33
|
+
"require": "./dist/presets/openai.js",
|
|
34
|
+
"types": "./dist/presets/openai.d.ts"
|
|
35
|
+
},
|
|
36
|
+
"./presets/anthropic": {
|
|
37
|
+
"import": "./dist/presets/anthropic.js",
|
|
38
|
+
"require": "./dist/presets/anthropic.js",
|
|
39
|
+
"types": "./dist/presets/anthropic.d.ts"
|
|
40
|
+
},
|
|
41
|
+
"./presets/multi": {
|
|
42
|
+
"import": "./dist/presets/multi.js",
|
|
43
|
+
"require": "./dist/presets/multi.js",
|
|
44
|
+
"types": "./dist/presets/multi.d.ts"
|
|
45
|
+
},
|
|
46
|
+
"./presets/base": {
|
|
47
|
+
"import": "./dist/presets/base.js",
|
|
48
|
+
"require": "./dist/presets/base.js",
|
|
49
|
+
"types": "./dist/presets/base.d.ts"
|
|
50
|
+
},
|
|
51
|
+
"./persistence": {
|
|
52
|
+
"import": "./dist/persistence/index.js",
|
|
53
|
+
"require": "./dist/persistence/index.js",
|
|
54
|
+
"types": "./dist/persistence/index.d.ts"
|
|
55
|
+
},
|
|
56
|
+
"./persistence/file": {
|
|
57
|
+
"import": "./dist/persistence/file.js",
|
|
58
|
+
"require": "./dist/persistence/file.js",
|
|
59
|
+
"types": "./dist/persistence/file.d.ts"
|
|
60
|
+
},
|
|
61
|
+
"./persistence/memory": {
|
|
62
|
+
"import": "./dist/persistence/memory.js",
|
|
63
|
+
"require": "./dist/persistence/memory.js",
|
|
64
|
+
"types": "./dist/persistence/memory.d.ts"
|
|
65
|
+
}
|
|
66
|
+
},
|
|
67
|
+
"typesVersions": {
|
|
68
|
+
"*": {
|
|
69
|
+
"env": [
|
|
70
|
+
"dist/env/index.d.ts"
|
|
71
|
+
],
|
|
72
|
+
"presets": [
|
|
73
|
+
"dist/presets/index.d.ts"
|
|
74
|
+
],
|
|
75
|
+
"presets/gemini": [
|
|
76
|
+
"dist/presets/gemini.d.ts"
|
|
77
|
+
],
|
|
78
|
+
"presets/openai": [
|
|
79
|
+
"dist/presets/openai.d.ts"
|
|
80
|
+
],
|
|
81
|
+
"presets/anthropic": [
|
|
82
|
+
"dist/presets/anthropic.d.ts"
|
|
83
|
+
],
|
|
84
|
+
"presets/multi": [
|
|
85
|
+
"dist/presets/multi.d.ts"
|
|
86
|
+
],
|
|
87
|
+
"presets/base": [
|
|
88
|
+
"dist/presets/base.d.ts"
|
|
89
|
+
],
|
|
90
|
+
"persistence": [
|
|
91
|
+
"dist/persistence/index.d.ts"
|
|
92
|
+
],
|
|
93
|
+
"persistence/file": [
|
|
94
|
+
"dist/persistence/file.d.ts"
|
|
95
|
+
],
|
|
96
|
+
"persistence/memory": [
|
|
97
|
+
"dist/persistence/memory.d.ts"
|
|
98
|
+
]
|
|
99
|
+
}
|
|
100
|
+
},
|
|
101
|
+
"files": [
|
|
102
|
+
"dist",
|
|
103
|
+
"src",
|
|
104
|
+
"bin"
|
|
105
|
+
],
|
|
106
|
+
"scripts": {
|
|
107
|
+
"build": "node node_modules/typescript/bin/tsc",
|
|
108
|
+
"test": "jest --verbose",
|
|
109
|
+
"prepublishOnly": "npm run build",
|
|
110
|
+
"postinstall": "node -e \"console.log('\\n\\x1b[32m🌟 Successfully installed @splashcodex/api-key-manager v5.1!\\x1b[0m\\n\\x1b[36m📚 Documentation: https://www.npmjs.com/package/@splashcodex/ApiKeyManager\\x1b[0m\\n\\x1b[33m🚀 Quick Start:\\x1b[0m\\n import { loadCentralEnv } from \\'@splashcodex/api-key-manager/env\\';\\n import { GeminiManager } from \\'@splashcodex/api-key-manager/presets/gemini\\';\\n loadCentralEnv();\\n const gemini = GeminiManager.getInstance().data;\\n')\"",
|
|
111
|
+
"gateway": "ts-node gateway/server.ts",
|
|
112
|
+
"gateway:dev": "npx nodemon --watch gateway/ --ext ts --exec ts-node gateway/server.ts"
|
|
113
|
+
},
|
|
114
|
+
"keywords": [
|
|
115
|
+
"api",
|
|
116
|
+
"key",
|
|
117
|
+
"rotation",
|
|
118
|
+
"gemini",
|
|
119
|
+
"openai",
|
|
120
|
+
"rate-limit",
|
|
121
|
+
"circuit-breaker",
|
|
122
|
+
"resilience",
|
|
123
|
+
"fallback",
|
|
124
|
+
"timeout",
|
|
125
|
+
"retry",
|
|
126
|
+
"gateway",
|
|
127
|
+
"load-balancing",
|
|
128
|
+
"preset",
|
|
129
|
+
"persistence",
|
|
130
|
+
"multi-provider",
|
|
131
|
+
"semantic-cache",
|
|
132
|
+
"streaming",
|
|
133
|
+
"env",
|
|
134
|
+
"centralized",
|
|
135
|
+
"dotenv"
|
|
136
|
+
],
|
|
137
|
+
"author": "Antigravity",
|
|
138
|
+
"license": "ISC",
|
|
139
|
+
"devDependencies": {
|
|
140
|
+
"@types/jest": "^30.0.0",
|
|
141
|
+
"@types/node": "^20.10.5",
|
|
142
|
+
"jest": "^29.7.0",
|
|
143
|
+
"ts-jest": "^29.4.6",
|
|
144
|
+
"ts-node": "^10.9.2",
|
|
145
|
+
"typescript": "^5.3.3"
|
|
146
|
+
},
|
|
147
|
+
"dependencies": {
|
|
148
|
+
"@fastify/cors": "^11.2.0",
|
|
149
|
+
"fastify": "^5.7.4"
|
|
150
|
+
}
|
|
151
|
+
}
|
package/src/env/index.ts
ADDED