zeroauth 1.0.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.
Files changed (64) hide show
  1. package/dist/api/authorizer.d.ts +12 -0
  2. package/dist/api/authorizer.d.ts.map +1 -0
  3. package/dist/api/authorizer.js +157 -0
  4. package/dist/api/authorizer.js.map +1 -0
  5. package/dist/api/config/intent-config.d.ts +45 -0
  6. package/dist/api/config/intent-config.d.ts.map +1 -0
  7. package/dist/api/config/intent-config.js +95 -0
  8. package/dist/api/config/intent-config.js.map +1 -0
  9. package/dist/api/index.d.ts +4 -0
  10. package/dist/api/index.d.ts.map +1 -0
  11. package/dist/api/index.js +722 -0
  12. package/dist/api/index.js.map +1 -0
  13. package/dist/api/routing/intent-router.d.ts +56 -0
  14. package/dist/api/routing/intent-router.d.ts.map +1 -0
  15. package/dist/api/routing/intent-router.js +140 -0
  16. package/dist/api/routing/intent-router.js.map +1 -0
  17. package/dist/api/routing/intent-validator.d.ts +83 -0
  18. package/dist/api/routing/intent-validator.d.ts.map +1 -0
  19. package/dist/api/routing/intent-validator.js +187 -0
  20. package/dist/api/routing/intent-validator.js.map +1 -0
  21. package/dist/api/services/billing.d.ts +9 -0
  22. package/dist/api/services/billing.d.ts.map +1 -0
  23. package/dist/api/services/billing.js +49 -0
  24. package/dist/api/services/billing.js.map +1 -0
  25. package/dist/api/services/stripe.d.ts +17 -0
  26. package/dist/api/services/stripe.d.ts.map +1 -0
  27. package/dist/api/services/stripe.js +69 -0
  28. package/dist/api/services/stripe.js.map +1 -0
  29. package/dist/authorizer.zip +0 -0
  30. package/dist/cli/auth.d.ts +20 -0
  31. package/dist/cli/auth.d.ts.map +1 -0
  32. package/dist/cli/auth.js +264 -0
  33. package/dist/cli/auth.js.map +1 -0
  34. package/dist/cli/config.d.ts +17 -0
  35. package/dist/cli/config.d.ts.map +1 -0
  36. package/dist/cli/config.js +94 -0
  37. package/dist/cli/config.js.map +1 -0
  38. package/dist/cli/index.d.ts +3 -0
  39. package/dist/cli/index.d.ts.map +1 -0
  40. package/dist/cli/index.js +371 -0
  41. package/dist/cli/index.js.map +1 -0
  42. package/dist/cli/proxy.d.ts +2 -0
  43. package/dist/cli/proxy.d.ts.map +1 -0
  44. package/dist/cli/proxy.js +171 -0
  45. package/dist/cli/proxy.js.map +1 -0
  46. package/dist/data/catalog.d.ts +54 -0
  47. package/dist/data/catalog.d.ts.map +1 -0
  48. package/dist/data/catalog.js +108 -0
  49. package/dist/data/catalog.js.map +1 -0
  50. package/dist/db/dal.d.ts +75 -0
  51. package/dist/db/dal.d.ts.map +1 -0
  52. package/dist/db/dal.js +124 -0
  53. package/dist/db/dal.js.map +1 -0
  54. package/dist/index.js +156 -0
  55. package/dist/index.ts +134 -0
  56. package/dist/logger.d.ts +8 -0
  57. package/dist/logger.d.ts.map +1 -0
  58. package/dist/logger.js +19 -0
  59. package/dist/logger.js.map +1 -0
  60. package/dist/test/setup.d.ts +2 -0
  61. package/dist/test/setup.d.ts.map +1 -0
  62. package/dist/test/setup.js +27 -0
  63. package/dist/test/setup.js.map +1 -0
  64. package/package.json +82 -0
@@ -0,0 +1,12 @@
1
+ export declare function handler(event: any): Promise<{
2
+ principalId: string;
3
+ policyDocument: {
4
+ Version: string;
5
+ Statement: {
6
+ Action: string;
7
+ Effect: string;
8
+ Resource: any;
9
+ }[];
10
+ };
11
+ }>;
12
+ //# sourceMappingURL=authorizer.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"authorizer.d.ts","sourceRoot":"","sources":["../../src/api/authorizer.ts"],"names":[],"mappings":"AAuEA,wBAAsB,OAAO,CAAC,KAAK,EAAE,GAAG;;;;;;;;;;GA8DvC"}
@@ -0,0 +1,157 @@
1
+ "use strict";
2
+ var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
3
+ if (k2 === undefined) k2 = k;
4
+ var desc = Object.getOwnPropertyDescriptor(m, k);
5
+ if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
6
+ desc = { enumerable: true, get: function() { return m[k]; } };
7
+ }
8
+ Object.defineProperty(o, k2, desc);
9
+ }) : (function(o, m, k, k2) {
10
+ if (k2 === undefined) k2 = k;
11
+ o[k2] = m[k];
12
+ }));
13
+ var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) {
14
+ Object.defineProperty(o, "default", { enumerable: true, value: v });
15
+ }) : function(o, v) {
16
+ o["default"] = v;
17
+ });
18
+ var __importStar = (this && this.__importStar) || (function () {
19
+ var ownKeys = function(o) {
20
+ ownKeys = Object.getOwnPropertyNames || function (o) {
21
+ var ar = [];
22
+ for (var k in o) if (Object.prototype.hasOwnProperty.call(o, k)) ar[ar.length] = k;
23
+ return ar;
24
+ };
25
+ return ownKeys(o);
26
+ };
27
+ return function (mod) {
28
+ if (mod && mod.__esModule) return mod;
29
+ var result = {};
30
+ if (mod != null) for (var k = ownKeys(mod), i = 0; i < k.length; i++) if (k[i] !== "default") __createBinding(result, mod, k[i]);
31
+ __setModuleDefault(result, mod);
32
+ return result;
33
+ };
34
+ })();
35
+ var __importDefault = (this && this.__importDefault) || function (mod) {
36
+ return (mod && mod.__esModule) ? mod : { "default": mod };
37
+ };
38
+ Object.defineProperty(exports, "__esModule", { value: true });
39
+ exports.handler = handler;
40
+ const axios_1 = __importDefault(require("axios"));
41
+ const jwt = __importStar(require("jsonwebtoken"));
42
+ const jwk_to_pem_1 = __importDefault(require("jwk-to-pem"));
43
+ // --- Identity Provider Agnostic Configuration ---
44
+ const OIDC_ISSUER_URL = process.env.OIDC_ISSUER_URL;
45
+ const OIDC_JWKS_URL = process.env.OIDC_JWKS_URL; // New variable for internal JWKS fetching
46
+ const OIDC_AUDIENCE = process.env.OIDC_AUDIENCE;
47
+ // JWKS cache
48
+ let jwksCache = null;
49
+ let jwksCacheTime = 0;
50
+ const JWKS_CACHE_DURATION = 3600000; // 1 hour
51
+ async function getJwks() {
52
+ if (!OIDC_JWKS_URL) {
53
+ throw new Error("OIDC_JWKS_URL environment variable is not set.");
54
+ }
55
+ const now = Date.now();
56
+ if (jwksCache && now - jwksCacheTime < JWKS_CACHE_DURATION) {
57
+ return jwksCache;
58
+ }
59
+ // Use OIDC_JWKS_URL directly if it's a full URL, otherwise construct from OIDC_ISSUER_URL
60
+ const jwksUrl = OIDC_JWKS_URL && OIDC_JWKS_URL.includes("://")
61
+ ? OIDC_JWKS_URL
62
+ : `${OIDC_ISSUER_URL}/.well-known/jwks.json`;
63
+ try {
64
+ const response = await axios_1.default.get(jwksUrl);
65
+ jwksCache = response.data;
66
+ jwksCacheTime = now;
67
+ return jwksCache;
68
+ }
69
+ catch (error) {
70
+ console.error("Error fetching JWKS:", error);
71
+ throw new Error(`Could not fetch JWKS`);
72
+ }
73
+ }
74
+ async function verifyToken(token) {
75
+ const jwks = await getJwks();
76
+ const unverifiedHeader = jwt.decode(token, { complete: true });
77
+ if (!unverifiedHeader ||
78
+ typeof unverifiedHeader === "string" ||
79
+ !unverifiedHeader.header.kid) {
80
+ throw new Error("Invalid token header.");
81
+ }
82
+ const key = jwks.keys.find((k) => k.kid === unverifiedHeader.header.kid);
83
+ if (!key) {
84
+ throw new Error("Could not find a matching public key.");
85
+ }
86
+ const pem = (0, jwk_to_pem_1.default)(key);
87
+ try {
88
+ const payload = jwt.verify(token, pem, {
89
+ algorithms: ["RS256"],
90
+ audience: OIDC_AUDIENCE,
91
+ issuer: OIDC_ISSUER_URL,
92
+ });
93
+ return payload;
94
+ }
95
+ catch (error) {
96
+ throw new Error(`Token is invalid: ${error}`);
97
+ }
98
+ }
99
+ async function handler(event) {
100
+ console.log("=== Authorizer handler called ===");
101
+ console.log("Event:", JSON.stringify(event, null, 2));
102
+ try {
103
+ const authHeader = event.headers?.authorization || event.headers?.Authorization;
104
+ console.log("Auth header present:", !!authHeader);
105
+ if (!authHeader || !authHeader.startsWith("Bearer ")) {
106
+ console.log("Invalid or missing auth header");
107
+ return {
108
+ principalId: "unauthorized",
109
+ policyDocument: {
110
+ Version: "2012-10-17",
111
+ Statement: [
112
+ {
113
+ Action: "execute-api:Invoke",
114
+ Effect: "Deny",
115
+ Resource: event.methodArn,
116
+ },
117
+ ],
118
+ },
119
+ };
120
+ }
121
+ const token = authHeader.substring(7);
122
+ console.log("Token extracted, verifying...");
123
+ await verifyToken(token);
124
+ console.log("Token verified successfully");
125
+ return {
126
+ principalId: "user",
127
+ policyDocument: {
128
+ Version: "2012-10-17",
129
+ Statement: [
130
+ {
131
+ Action: "execute-api:Invoke",
132
+ Effect: "Allow",
133
+ Resource: event.methodArn,
134
+ },
135
+ ],
136
+ },
137
+ };
138
+ }
139
+ catch (error) {
140
+ console.error("=== Authorization failed ===");
141
+ console.error("Error:", error);
142
+ return {
143
+ principalId: "unauthorized",
144
+ policyDocument: {
145
+ Version: "2012-10-17",
146
+ Statement: [
147
+ {
148
+ Action: "execute-api:Invoke",
149
+ Effect: "Deny",
150
+ Resource: event.methodArn,
151
+ },
152
+ ],
153
+ },
154
+ };
155
+ }
156
+ }
157
+ //# sourceMappingURL=authorizer.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"authorizer.js","sourceRoot":"","sources":["../../src/api/authorizer.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,45 @@
1
+ /**
2
+ * Intent Configuration for ZeroAuth Routing
3
+ *
4
+ * Simple intent-to-model-group mapping. LiteLLM handles all model selection,
5
+ * load balancing, and failover.
6
+ */
7
+ export interface IntentDefinition {
8
+ name: string;
9
+ description: string;
10
+ modelGroupName: string;
11
+ examples: string[];
12
+ }
13
+ export declare class IntentConfig {
14
+ private static readonly INTENT_DEFINITIONS;
15
+ /**
16
+ * Get all available intents
17
+ */
18
+ static getAvailableIntents(): IntentDefinition[];
19
+ /**
20
+ * Get intent definition by name
21
+ */
22
+ static getIntent(intentName: string): IntentDefinition | null;
23
+ /**
24
+ * Convert intent name to model group name for LiteLLM
25
+ */
26
+ static getModelGroupName(intentName: string): string | null;
27
+ /**
28
+ * Validate if an intent is recognized
29
+ */
30
+ static isValidIntent(intentName: string): boolean;
31
+ /**
32
+ * Get help information for invalid intents
33
+ */
34
+ static getIntentHelp(invalidIntent: string): {
35
+ invalidIntent: string;
36
+ availableIntents: string[];
37
+ intentFormat: string;
38
+ };
39
+ /**
40
+ * Initialize the intent configuration
41
+ */
42
+ static initialize(): Promise<void>;
43
+ }
44
+ export declare const intentConfig: typeof IntentConfig;
45
+ //# sourceMappingURL=intent-config.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"intent-config.d.ts","sourceRoot":"","sources":["../../../src/api/config/intent-config.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAEH,MAAM,WAAW,gBAAgB;IAC/B,IAAI,EAAE,MAAM,CAAC;IACb,WAAW,EAAE,MAAM,CAAC;IACpB,cAAc,EAAE,MAAM,CAAC;IACvB,QAAQ,EAAE,MAAM,EAAE,CAAC;CACpB;AAED,qBAAa,YAAY;IAEvB,OAAO,CAAC,MAAM,CAAC,QAAQ,CAAC,kBAAkB,CAwCxC;IAEF;;OAEG;IACH,MAAM,CAAC,mBAAmB,IAAI,gBAAgB,EAAE;IAIhD;;OAEG;IACH,MAAM,CAAC,SAAS,CAAC,UAAU,EAAE,MAAM,GAAG,gBAAgB,GAAG,IAAI;IAO7D;;OAEG;IACH,MAAM,CAAC,iBAAiB,CAAC,UAAU,EAAE,MAAM,GAAG,MAAM,GAAG,IAAI;IAK3D;;OAEG;IACH,MAAM,CAAC,aAAa,CAAC,UAAU,EAAE,MAAM,GAAG,OAAO;IAIjD;;OAEG;IACH,MAAM,CAAC,aAAa,CAAC,aAAa,EAAE,MAAM,GAAG;QAC3C,aAAa,EAAE,MAAM,CAAC;QACtB,gBAAgB,EAAE,MAAM,EAAE,CAAC;QAC3B,YAAY,EAAE,MAAM,CAAC;KACtB;IAQD;;OAEG;WACU,UAAU,IAAI,OAAO,CAAC,IAAI,CAAC;CAMzC;AAED,eAAO,MAAM,YAAY,qBAAe,CAAC"}
@@ -0,0 +1,95 @@
1
+ "use strict";
2
+ /**
3
+ * Intent Configuration for ZeroAuth Routing
4
+ *
5
+ * Simple intent-to-model-group mapping. LiteLLM handles all model selection,
6
+ * load balancing, and failover.
7
+ */
8
+ Object.defineProperty(exports, "__esModule", { value: true });
9
+ exports.intentConfig = exports.IntentConfig = void 0;
10
+ class IntentConfig {
11
+ /**
12
+ * Get all available intents
13
+ */
14
+ static getAvailableIntents() {
15
+ return this.INTENT_DEFINITIONS;
16
+ }
17
+ /**
18
+ * Get intent definition by name
19
+ */
20
+ static getIntent(intentName) {
21
+ return (this.INTENT_DEFINITIONS.find((intent) => intent.name === intentName) ||
22
+ null);
23
+ }
24
+ /**
25
+ * Convert intent name to model group name for LiteLLM
26
+ */
27
+ static getModelGroupName(intentName) {
28
+ const intent = this.getIntent(intentName);
29
+ return intent ? intent.modelGroupName : null;
30
+ }
31
+ /**
32
+ * Validate if an intent is recognized
33
+ */
34
+ static isValidIntent(intentName) {
35
+ return this.INTENT_DEFINITIONS.some((intent) => intent.name === intentName);
36
+ }
37
+ /**
38
+ * Get help information for invalid intents
39
+ */
40
+ static getIntentHelp(invalidIntent) {
41
+ return {
42
+ invalidIntent,
43
+ availableIntents: this.INTENT_DEFINITIONS.map((intent) => intent.name),
44
+ intentFormat: "intent:<keyword>",
45
+ };
46
+ }
47
+ /**
48
+ * Initialize the intent configuration
49
+ */
50
+ static async initialize() {
51
+ console.log("✅ Intent configuration initialized with intents:", this.INTENT_DEFINITIONS.map((i) => i.name).join(", "));
52
+ }
53
+ }
54
+ exports.IntentConfig = IntentConfig;
55
+ // Define available intents and their model group mappings
56
+ IntentConfig.INTENT_DEFINITIONS = [
57
+ {
58
+ name: "budget",
59
+ description: "Free models for budget-conscious usage",
60
+ modelGroupName: "budget",
61
+ examples: ["intent:budget"],
62
+ },
63
+ {
64
+ name: "fast",
65
+ description: "Models optimized for low latency and quick responses",
66
+ modelGroupName: "fast",
67
+ examples: ["intent:fast"],
68
+ },
69
+ {
70
+ name: "coding",
71
+ description: "Models specialized for code generation and programming tasks",
72
+ modelGroupName: "coding",
73
+ examples: ["intent:coding"],
74
+ },
75
+ {
76
+ name: "reasoning",
77
+ description: "Models optimized for complex reasoning and logic tasks",
78
+ modelGroupName: "reasoning",
79
+ examples: ["intent:reasoning"],
80
+ },
81
+ {
82
+ name: "general",
83
+ description: "Versatile models for general-purpose conversation and tasks",
84
+ modelGroupName: "general",
85
+ examples: ["intent:general"],
86
+ },
87
+ {
88
+ name: "premium",
89
+ description: "High-end models for complex tasks requiring superior performance",
90
+ modelGroupName: "premium",
91
+ examples: ["intent:premium"],
92
+ },
93
+ ];
94
+ exports.intentConfig = IntentConfig;
95
+ //# sourceMappingURL=intent-config.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"intent-config.js","sourceRoot":"","sources":["../../../src/api/config/intent-config.ts"],"names":[],"mappings":";AAAA;;;;;GAKG;;;AASH,MAAa,YAAY;IA4CvB;;OAEG;IACH,MAAM,CAAC,mBAAmB;QACxB,OAAO,IAAI,CAAC,kBAAkB,CAAC;IACjC,CAAC;IAED;;OAEG;IACH,MAAM,CAAC,SAAS,CAAC,UAAkB;QACjC,OAAO,CACL,IAAI,CAAC,kBAAkB,CAAC,IAAI,CAAC,CAAC,MAAM,EAAE,EAAE,CAAC,MAAM,CAAC,IAAI,KAAK,UAAU,CAAC;YACpE,IAAI,CACL,CAAC;IACJ,CAAC;IAED;;OAEG;IACH,MAAM,CAAC,iBAAiB,CAAC,UAAkB;QACzC,MAAM,MAAM,GAAG,IAAI,CAAC,SAAS,CAAC,UAAU,CAAC,CAAC;QAC1C,OAAO,MAAM,CAAC,CAAC,CAAC,MAAM,CAAC,cAAc,CAAC,CAAC,CAAC,IAAI,CAAC;IAC/C,CAAC;IAED;;OAEG;IACH,MAAM,CAAC,aAAa,CAAC,UAAkB;QACrC,OAAO,IAAI,CAAC,kBAAkB,CAAC,IAAI,CAAC,CAAC,MAAM,EAAE,EAAE,CAAC,MAAM,CAAC,IAAI,KAAK,UAAU,CAAC,CAAC;IAC9E,CAAC;IAED;;OAEG;IACH,MAAM,CAAC,aAAa,CAAC,aAAqB;QAKxC,OAAO;YACL,aAAa;YACb,gBAAgB,EAAE,IAAI,CAAC,kBAAkB,CAAC,GAAG,CAAC,CAAC,MAAM,EAAE,EAAE,CAAC,MAAM,CAAC,IAAI,CAAC;YACtE,YAAY,EAAE,kBAAkB;SACjC,CAAC;IACJ,CAAC;IAED;;OAEG;IACH,MAAM,CAAC,KAAK,CAAC,UAAU;QACrB,OAAO,CAAC,GAAG,CACT,kDAAkD,EAClD,IAAI,CAAC,kBAAkB,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,CACtD,CAAC;IACJ,CAAC;;AAnGH,oCAoGC;AAnGC,0DAA0D;AAClC,+BAAkB,GAAuB;IAC/D;QACE,IAAI,EAAE,QAAQ;QACd,WAAW,EAAE,wCAAwC;QACrD,cAAc,EAAE,QAAQ;QACxB,QAAQ,EAAE,CAAC,eAAe,CAAC;KAC5B;IACD;QACE,IAAI,EAAE,MAAM;QACZ,WAAW,EAAE,sDAAsD;QACnE,cAAc,EAAE,MAAM;QACtB,QAAQ,EAAE,CAAC,aAAa,CAAC;KAC1B;IACD;QACE,IAAI,EAAE,QAAQ;QACd,WAAW,EACT,8DAA8D;QAChE,cAAc,EAAE,QAAQ;QACxB,QAAQ,EAAE,CAAC,eAAe,CAAC;KAC5B;IACD;QACE,IAAI,EAAE,WAAW;QACjB,WAAW,EAAE,wDAAwD;QACrE,cAAc,EAAE,WAAW;QAC3B,QAAQ,EAAE,CAAC,kBAAkB,CAAC;KAC/B;IACD;QACE,IAAI,EAAE,SAAS;QACf,WAAW,EACT,6DAA6D;QAC/D,cAAc,EAAE,SAAS;QACzB,QAAQ,EAAE,CAAC,gBAAgB,CAAC;KAC7B;IACD;QACE,IAAI,EAAE,SAAS;QACf,WAAW,EACT,kEAAkE;QACpE,cAAc,EAAE,SAAS;QACzB,QAAQ,EAAE,CAAC,gBAAgB,CAAC;KAC7B;CACF,CAAC;AA4DS,QAAA,YAAY,GAAG,YAAY,CAAC"}
@@ -0,0 +1,4 @@
1
+ declare const app: import("express-serve-static-core").Express;
2
+ export declare function validateEnvironmentVariables(): boolean;
3
+ export default app;
4
+ //# sourceMappingURL=index.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/api/index.ts"],"names":[],"mappings":"AAeA,QAAA,MAAM,GAAG,6CAAY,CAAC;AAwBtB,wBAAgB,4BAA4B,YAgB3C;AA20BD,eAAe,GAAG,CAAC"}