leap360 1.3.0 → 1.4.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/dist/cli.js CHANGED
@@ -14,7 +14,7 @@ const program = new Command();
14
14
  program
15
15
  .name('leap360')
16
16
  .description('Leap360 AI Governance SDK CLI')
17
- .version('1.3.0');
17
+ .version('1.4.0');
18
18
  // ─── Command: setup ────────────────────────────────────────────────────────
19
19
  program
20
20
  .command('setup')
@@ -58,14 +58,47 @@ program
58
58
  if (fs.existsSync(envPath)) {
59
59
  envContent = fs.readFileSync(envPath, 'utf8');
60
60
  }
61
- // Add or update Leap360 vars
61
+ // ── Auto-detect bundler/framework to write the correct env var prefix ──
62
+ // Vite requires VITE_, Next.js requires NEXT_PUBLIC_, CRA requires REACT_APP_
63
+ let browserPrefix = '';
64
+ let bundlerName = 'Node.js / backend';
65
+ const cwd = process.cwd();
66
+ const packageJsonPath = path.join(cwd, 'package.json');
67
+ if (fs.existsSync(packageJsonPath)) {
68
+ try {
69
+ const pkg = JSON.parse(fs.readFileSync(packageJsonPath, 'utf8'));
70
+ const allDeps = { ...pkg.dependencies, ...pkg.devDependencies };
71
+ if (allDeps['vite'] || allDeps['@vitejs/plugin-react']) {
72
+ browserPrefix = 'VITE_';
73
+ bundlerName = 'Vite';
74
+ }
75
+ else if (allDeps['next']) {
76
+ browserPrefix = 'NEXT_PUBLIC_';
77
+ bundlerName = 'Next.js';
78
+ }
79
+ else if (allDeps['react-scripts']) {
80
+ browserPrefix = 'REACT_APP_';
81
+ bundlerName = 'Create React App';
82
+ }
83
+ }
84
+ catch { /* ignore parse errors */ }
85
+ }
86
+ // Always write the plain LEAP360_ vars (for server-side / Node use)
62
87
  const leapVars = [
63
88
  `LEAP360_API_KEY=${apiKey}`,
64
89
  `LEAP360_PROJECT_ID=${projectId}`,
65
90
  `LEAP360_SERVICE_NAME=${serviceName}`,
66
91
  `LEAP360_USER_ID=${userId}`,
67
92
  ];
68
- for (const v of leapVars) {
93
+ // If a browser bundler was detected, also write the prefixed vars
94
+ const browserVars = browserPrefix ? [
95
+ `${browserPrefix}LEAP360_API_KEY=${apiKey}`,
96
+ `${browserPrefix}LEAP360_PROJECT_ID=${projectId}`,
97
+ `${browserPrefix}LEAP360_SERVICE_NAME=${serviceName}`,
98
+ `${browserPrefix}LEAP360_USER_ID=${userId}`,
99
+ ] : [];
100
+ const allVars = [...leapVars, ...browserVars];
101
+ for (const v of allVars) {
69
102
  const key = v.split('=')[0];
70
103
  if (envContent.includes(key + '=')) {
71
104
  envContent = envContent.replace(new RegExp(`${key}=.*`, 'g'), v);
@@ -76,6 +109,9 @@ program
76
109
  }
77
110
  // Note: Customers should provide their own GEMINI_API_KEY via their environment
78
111
  fs.writeFileSync(envPath, envContent.trim() + '\n');
112
+ if (browserPrefix) {
113
+ console.log(`\n \x1b[36m📦 Detected ${bundlerName} — also wrote ${browserPrefix}LEAP360_* vars for browser bundle\x1b[0m`);
114
+ }
79
115
  console.log('\n✅ Configuration saved!\n');
80
116
  console.log(` → ~/.leap360/config.json (SDK config)`);
81
117
  console.log(` → ${envPath} (environment variables)\n`);
@@ -86,95 +122,212 @@ program
86
122
  }
87
123
  catch { /* exists */ }
88
124
  // README.md — main guide
125
+ const envVarNote = browserPrefix
126
+ ? `# Browser bundle (${bundlerName}) — use these in your frontend code\n${browserPrefix}LEAP360_API_KEY=${apiKey}\n${browserPrefix}LEAP360_PROJECT_ID=${projectId}\n${browserPrefix}LEAP360_SERVICE_NAME=${serviceName}\n\n# Server-side / Node — use these in backend/functions\nLEAP360_API_KEY=${apiKey}\nLEAP360_PROJECT_ID=${projectId}\nLEAP360_SERVICE_NAME=${serviceName}`
127
+ : `LEAP360_API_KEY=${apiKey}\nLEAP360_PROJECT_ID=${projectId}\nLEAP360_SERVICE_NAME=${serviceName}`;
128
+ const envVarRef = browserPrefix
129
+ ? `import.meta.env.${browserPrefix}LEAP360_API_KEY`
130
+ : 'process.env.LEAP360_API_KEY';
131
+ const envVarProjectRef = browserPrefix
132
+ ? `import.meta.env.${browserPrefix}LEAP360_PROJECT_ID`
133
+ : 'process.env.LEAP360_PROJECT_ID';
134
+ const envVarServiceRef = browserPrefix
135
+ ? `import.meta.env.${browserPrefix}LEAP360_SERVICE_NAME`
136
+ : 'process.env.LEAP360_SERVICE_NAME';
89
137
  const readme = `# Leap360 AI Governance — Integration Guide
90
138
 
91
139
  Your project is connected to Leap360. Every AI call is now traced, governed,
92
- and monitored in real time.
140
+ and monitored in real time — **across all LLM providers and models**.
141
+
142
+ **Dashboard:** https://leap360.ai/dashboard/
143
+ **API Key:** ${apiKey.substring(0, 20)}...
144
+ **Project:** ${projectId}
145
+ **Service:** ${serviceName}
146
+ **Bundler:** ${bundlerName}
147
+
148
+ ---
149
+
150
+ ## 🚀 Quick Start: Add Leap360 to Your App in 30 Seconds
151
+
152
+ ### Copy this prompt and send it to your AI assistant (GitHub Copilot, Claude, ChatGPT, etc.)
153
+
154
+ \`\`\`
155
+ I need to integrate Leap360 AI Governance into my application.
156
+ Leap360 traces, governs, and monitors all AI calls in real time
157
+ across any LLM provider (OpenAI, Anthropic, Google Gemini, Mistral, etc.).
158
+
159
+ Steps:
160
+ 1. The SDK is already installed: npm install leap360
161
+ 2. The env vars are already in .env.
162
+ 3. Wrap every LLM call with Leap360Client.traceCall() — this works with ANY provider.
163
+
164
+ Example pattern:
165
+ import { Leap360Client } from 'leap360';
166
+ const leap = new Leap360Client({
167
+ apiKey: ${envVarRef},
168
+ projectId: ${envVarProjectRef},
169
+ });
170
+
171
+ // Wrap your existing LLM call:
172
+ const result = await leap.traceCall({
173
+ agentName: '${serviceName}',
174
+ provider: 'google', // or 'openai', 'anthropic', 'mistral', etc.
175
+ model: 'gemini-2.0-flash',
176
+ fn: () => yourExistingLLMCall(),
177
+ });
178
+
179
+ Please find all LLM API calls in the codebase and wrap them with leap.traceCall().
180
+ \`\`\`
181
+
182
+ ---
183
+
184
+ ## 🔐 Environment Variables
185
+
186
+ \`\`\`env
187
+ ${envVarNote}
188
+ \`\`\`
189
+
190
+ ### Bundler prefix reference
93
191
 
94
- Dashboard: https://leap360.ai/dashboard/
95
- API Key: ${apiKey.substring(0, 20)}...
96
- Project: ${projectId}
97
- Service: ${serviceName}
192
+ | Bundler | Correct prefix | Example |
193
+ |---------|---------------|---------|
194
+ | **Vite** | \`VITE_\` | \`VITE_LEAP360_API_KEY\` |
195
+ | **Next.js** | \`NEXT_PUBLIC_\` | \`NEXT_PUBLIC_LEAP360_API_KEY\` |
196
+ | **Create React App** | \`REACT_APP_\` | \`REACT_APP_LEAP360_API_KEY\` |
197
+ | **Node / backend** | *(none)* | \`LEAP360_API_KEY\` |
98
198
 
99
199
  ---
100
200
 
101
- ## 1. Node.js / TypeScript (OpenAI)
201
+ ## 📚 Integration Examples
202
+
203
+ ### ✅ Method 1: traceCall() — Works with ANY LLM (Recommended)
204
+
205
+ This is the **universal method** that works with every LLM SDK without exceptions.
102
206
 
103
207
  \`\`\`typescript
104
- import { Leap360 } from 'leap360';
105
- import OpenAI from 'openai';
208
+ import { Leap360Client } from 'leap360';
106
209
 
107
- // One line wraps ALL OpenAI calls automatically
108
- Leap360.autoInit({
109
- apiKey: process.env.LEAP360_API_KEY,
210
+ const leap = new Leap360Client({
211
+ apiKey: ${envVarRef},
110
212
  projectId: '${projectId}',
111
- serviceName: '${serviceName}',
112
213
  });
113
214
 
215
+ // \u2500\u2500 Google Gemini (@google/genai \u2014 new SDK) \u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500
216
+ import { GoogleGenAI } from '@google/genai';
217
+ const ai = new GoogleGenAI({ apiKey: process.env.GEMINI_API_KEY });
218
+
219
+ const geminiResult = await leap.traceCall({
220
+ agentName: '${serviceName}',
221
+ provider: 'google',
222
+ model: 'gemini-2.0-flash',
223
+ fn: () => ai.models.generateContent({
224
+ model: 'gemini-2.0-flash',
225
+ contents: 'Hello!',
226
+ }),
227
+ });
228
+
229
+ // \u2500\u2500 Google Gemini (@google/generative-ai \u2014 older SDK) \u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500
230
+ import { GoogleGenerativeAI } from '@google/generative-ai';
231
+ const genAI = new GoogleGenerativeAI(process.env.GEMINI_API_KEY!);
232
+ const model = genAI.getGenerativeModel({ model: 'gemini-2.0-flash' });
233
+
234
+ const geminiResult2 = await leap.traceCall({
235
+ agentName: '${serviceName}',
236
+ provider: 'google',
237
+ model: 'gemini-2.0-flash',
238
+ fn: () => model.generateContent('Hello!'),
239
+ });
240
+
241
+ // \u2500\u2500 OpenAI \u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500
242
+ import OpenAI from 'openai';
114
243
  const openai = new OpenAI();
115
244
 
116
- const res = await openai.chat.completions.create({
245
+ const openaiResult = await leap.traceCall({
246
+ agentName: '${serviceName}',
247
+ provider: 'openai',
117
248
  model: 'gpt-4o',
118
- messages: [{ role: 'user', content: 'Hello!' }],
249
+ fn: () => openai.chat.completions.create({
250
+ model: 'gpt-4o',
251
+ messages: [{ role: 'user', content: 'Hello!' }],
252
+ }),
119
253
  });
120
254
 
121
- // This call is automatically traced, governed, and visible on your dashboard.
122
- // If a policy is violated → SDK throws before the call reaches OpenAI.
123
- // If kill switch is active → SDK throws GOVERNANCE_HALT immediately.
255
+ // \u2500\u2500 Anthropic Claude \u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500
256
+ import Anthropic from '@anthropic-ai/sdk';
257
+ const anthropic = new Anthropic();
258
+
259
+ const claudeResult = await leap.traceCall({
260
+ agentName: '${serviceName}',
261
+ provider: 'anthropic',
262
+ model: 'claude-3-5-sonnet-20241022',
263
+ fn: () => anthropic.messages.create({
264
+ model: 'claude-3-5-sonnet-20241022',
265
+ max_tokens: 1024,
266
+ messages: [{ role: 'user', content: 'Hello!' }],
267
+ }),
268
+ });
124
269
  \`\`\`
125
270
 
126
271
  ---
127
272
 
128
- ## 2. Python
273
+ ### ⚡ Method 2: autoInit() — Zero-code for OpenAI & @google/generative-ai only
129
274
 
130
- \`\`\`python
131
- from leap360 import Leap360
132
- from openai import OpenAI
133
-
134
- # Initialise — wraps the OpenAI client
135
- leap = Leap360(
136
- api_key="${apiKey.substring(0, 20)}...",
137
- project_id="${projectId}",
138
- service_name="${serviceName}",
139
- )
140
-
141
- client = leap.wrap_openai(OpenAI())
275
+ \`\`\`typescript
276
+ import { Leap360 } from 'leap360';
142
277
 
143
- response = client.chat.completions.create(
144
- model="gpt-4o",
145
- messages=[{"role": "user", "content": "Hello!"}],
146
- )
278
+ // Initialize ONCE at app entry point (main.tsx / index.ts)
279
+ Leap360.autoInit({
280
+ apiKey: ${envVarRef},
281
+ projectId: '${projectId}',
282
+ serviceName: '${serviceName}',
283
+ });
284
+ // ✅ Console: [Leap360] Tracing active \u2014 project: ${projectId}, service: ${serviceName}
147
285
 
148
- # Every call is traced. Violations are blocked before they reach OpenAI.
286
+ // Now use your LLM client normally \u2014 calls are auto-traced:
287
+ import OpenAI from 'openai';
288
+ const openai = new OpenAI();
289
+ const res = await openai.chat.completions.create({ model: 'gpt-4o', messages: [...] });
149
290
  \`\`\`
150
291
 
292
+ > **Compatibility:**
293
+ > | SDK | autoInit() | traceCall() |
294
+ > |-----|-----------|-------------|
295
+ > | \`openai\` | ✅ Auto | ✅ Manual |
296
+ > | \`@google/generative-ai\` | ✅ Auto | ✅ Manual |
297
+ > | \`@google/genai\` (new) | ❌ Use wrapGoogleGenAI() | ✅ Manual |
298
+ > | \`@anthropic-ai/sdk\` | ❌ Not supported | ✅ Manual |
299
+ > | Any other LLM | ❌ Not supported | ✅ Manual |
300
+
151
301
  ---
152
302
 
153
- ## 3. Manual trace (any language / any model)
303
+ ### Method 3: wrapGoogleGenAI() For the new @google/genai SDK
154
304
 
155
305
  \`\`\`typescript
156
306
  import { Leap360 } from 'leap360';
307
+ import { GoogleGenAI } from '@google/genai';
157
308
 
158
309
  const leap = new Leap360({
159
- apiKey: process.env.LEAP360_API_KEY,
310
+ apiKey: ${envVarRef},
160
311
  projectId: '${projectId}',
312
+ serviceName: '${serviceName}',
161
313
  });
162
314
 
163
- const result = await leap.traceCall({
164
- agentName: 'my-agent',
165
- provider: 'anthropic',
166
- model: 'claude-3-5-sonnet',
167
- fn: () => anthropic.messages.create({ ... }),
315
+ // Wrap the client once \u2014 all calls auto-traced
316
+ const ai = leap.wrapGoogleGenAI(new GoogleGenAI({ apiKey: process.env.GEMINI_API_KEY }));
317
+
318
+ const response = await ai.models.generateContent({
319
+ model: 'gemini-2.0-flash',
320
+ contents: 'Hello!',
168
321
  });
169
322
  \`\`\`
170
323
 
171
324
  ---
172
325
 
173
- ## 4. Kill Switch (emergency stop)
326
+ ## 🛑 Kill Switch (Emergency Stop)
174
327
 
175
- Via dashboard: Settings → Danger Zone → Suspend All Agents
328
+ **Via dashboard:** Settings → Danger Zone → Suspend All Agents
176
329
 
177
- Via API:
330
+ **Suspend via API:**
178
331
  \`\`\`bash
179
332
  curl -X POST https://b0vyk178b7.execute-api.us-east-1.amazonaws.com/v1/projects/${projectId}/status \\
180
333
  -H "x-api-key: ${apiKey}" \\
@@ -182,7 +335,7 @@ curl -X POST https://b0vyk178b7.execute-api.us-east-1.amazonaws.com/v1/projects/
182
335
  -d '{"status":"SUSPENDED"}'
183
336
  \`\`\`
184
337
 
185
- Resume:
338
+ **Resume:**
186
339
  \`\`\`bash
187
340
  curl -X POST https://b0vyk178b7.execute-api.us-east-1.amazonaws.com/v1/projects/${projectId}/status \\
188
341
  -H "x-api-key: ${apiKey}" \\
@@ -192,41 +345,64 @@ curl -X POST https://b0vyk178b7.execute-api.us-east-1.amazonaws.com/v1/projects/
192
345
 
193
346
  ---
194
347
 
195
- ## 5. Policy enforcement
348
+ ## 🎯 Policy Enforcement
196
349
 
197
350
  Create a policy on the dashboard (Policies & Rules page), then every agent
198
351
  response is evaluated by the LLM Judge. Actions:
199
352
 
200
- - warn → logs the violation, allows the response through
201
- - ask_admin → flags for human review in the Approval Queue
202
- - block → hard-rejects the response, SDK receives POLICY_VIOLATION_BLOCKED
353
+ | Action | Behavior |
354
+ |--------|----------|
355
+ | **warn** | Logs the violation, allows response through |
356
+ | **ask_admin** | Flags for human review in Approval Queue |
357
+ | **block** | Hard-rejects response \u2014 SDK throws \`POLICY_VIOLATION_BLOCKED\` |
203
358
 
204
359
  ---
205
360
 
206
361
  Generated by \`npx leap360 setup\` on ${new Date().toISOString().split('T')[0]}
207
362
  `;
208
363
  // sample-node.ts
209
- const sampleNode = `import { Leap360 } from 'leap360';
210
- import OpenAI from 'openai';
211
-
212
- Leap360.autoInit({
364
+ const sampleNode = `/**
365
+ * Leap360 sample — Node.js / TypeScript
366
+ *
367
+ * traceCall() is the RECOMMENDED method — works with ANY LLM provider.
368
+ * No SDK compatibility issues. No silent failures.
369
+ */
370
+ import { Leap360Client } from 'leap360';
371
+
372
+ const leap = new Leap360Client({
213
373
  apiKey: process.env.LEAP360_API_KEY!,
214
374
  projectId: '${projectId}',
215
- serviceName: '${serviceName}',
216
375
  });
217
376
 
218
- const openai = new OpenAI();
219
-
220
- async function main() {
221
- const res = await openai.chat.completions.create({
222
- model: 'gpt-4o',
223
- messages: [{ role: 'user', content: 'What is the capital of France?' }],
224
- });
225
- console.log(res.choices[0].message.content);
226
- // Check your dashboard: https://leap360.ai/dashboard/
227
- }
228
-
229
- main();
377
+ // ── Example 1: Google Gemini (new @google/genai SDK) ───────────────────────
378
+ import { GoogleGenAI } from '@google/genai';
379
+ const ai = new GoogleGenAI({ apiKey: process.env.GEMINI_API_KEY! });
380
+
381
+ const geminiResult = await leap.traceCall({
382
+ agentName: '${serviceName}',
383
+ provider: 'google',
384
+ model: 'gemini-2.0-flash',
385
+ fn: () => ai.models.generateContent({
386
+ model: 'gemini-2.0-flash',
387
+ contents: 'What is the capital of France?',
388
+ }),
389
+ });
390
+ console.log(geminiResult);
391
+
392
+ // ── Example 2: OpenAI ──────────────────────────────────────────────────────
393
+ // import OpenAI from 'openai';
394
+ // const openai = new OpenAI();
395
+ // const openaiResult = await leap.traceCall({
396
+ // agentName: '${serviceName}',
397
+ // provider: 'openai',
398
+ // model: 'gpt-4o',
399
+ // fn: () => openai.chat.completions.create({
400
+ // model: 'gpt-4o',
401
+ // messages: [{ role: 'user', content: 'What is the capital of France?' }],
402
+ // }),
403
+ // });
404
+
405
+ // Check your dashboard: https://leap360.ai/dashboard/
230
406
  `;
231
407
  // sample-python.py
232
408
  const samplePython = `from leap360 import Leap360
package/dist/cli.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"cli.js","sourceRoot":"","sources":["../src/cli.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"cli.js","sourceRoot":"","sources":["../src/cli.ts"],"names":[],"mappings":"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"}
package/dist/sdk.d.ts CHANGED
@@ -1,30 +1,50 @@
1
1
  /**
2
- * leap360 — Leap360Client + Leap360 (auto-wrap) class
2
+ * leap360 — Universal AI Governance SDK
3
3
  *
4
- * Usage:
5
- * import { Leap360 } from 'leap360';
6
- * const leap = new Leap360();
4
+ * ─────────────────────────────────────────────────────────────────────────
5
+ * RECOMMENDED: Manual trace — works with ANY LLM, ANY SDK, ANY language
6
+ * ─────────────────────────────────────────────────────────────────────────
7
7
  *
8
- * const openai = leap.wrapOpenAI(new OpenAI());
8
+ * import { Leap360Client } from 'leap360';
9
9
  *
10
- * leap.wrapGemini(genAI); // wraps genAI.getGenerativeModel(...)
11
- *
12
- * // Group calls into a named agent run
13
- * const agent = leap.createAgent({ name: 'Support Bot' });
14
- * await agent.run(async (client) => {
15
- * await client.chat.completions.create({ ... });
10
+ * const leap = new Leap360Client({
11
+ * apiKey: process.env.LEAP360_API_KEY,
12
+ * projectId: 'my-project',
16
13
  * });
17
14
  *
18
- * ── Style 2: Manual trace (maximum flexibility) ────────────────────────────
19
- * import { Leap360Client } from 'leap360-sdk';
20
- * const leap = new Leap360Client(); // reads from ~/.leap360/config.json
21
- *
15
+ * // Works with OpenAI, Gemini, Anthropic, Mistral, or any LLM:
22
16
  * const result = await leap.traceCall({
23
- * agentName: 'My Bot',
24
- * provider: 'openai',
25
- * model: 'gpt-4o',
26
- * fn: () => openai.chat.completions.create({ ... }),
17
+ * agentName: 'my-agent',
18
+ * provider: 'google', // or 'openai', 'anthropic', 'mistral', etc.
19
+ * model: 'gemini-2.0-flash',
20
+ * fn: () => model.generateContent('Hello!'),
27
21
  * });
22
+ *
23
+ * ─────────────────────────────────────────────────────────────────────────
24
+ * ⚡ AUTO-WRAP: Zero-code tracing for supported SDKs
25
+ * ─────────────────────────────────────────────────────────────────────────
26
+ *
27
+ * SDK Compatibility Matrix:
28
+ * ┌─────────────────────────────┬────────────────────────────┬────────────┐
29
+ * │ Your LLM SDK │ Method │ Status │
30
+ * ├─────────────────────────────┼────────────────────────────┼────────────┤
31
+ * │ openai │ Leap360.autoInit() │ ✅ Auto │
32
+ * │ @google/generative-ai │ Leap360.autoInit() │ ✅ Auto │
33
+ * │ @google/genai (new SDK) │ leap.wrapGoogleGenAI() │ ✅ Wrap │
34
+ * │ @anthropic-ai/sdk │ leap.traceCall() │ ⚠️ Manual │
35
+ * │ mistralai │ leap.traceCall() │ ⚠️ Manual │
36
+ * │ Any other LLM │ leap.traceCall() │ ✅ Manual │
37
+ * └─────────────────────────────┴────────────────────────────┴────────────┘
38
+ *
39
+ * Auto-wrap example (OpenAI or @google/generative-ai):
40
+ * Leap360.autoInit({ apiKey, projectId, serviceName });
41
+ * const openai = new OpenAI(); // ← all calls auto-traced
42
+ *
43
+ * Wrap example (@google/genai new SDK):
44
+ * import { GoogleGenAI } from '@google/genai';
45
+ * const leap = new Leap360({ apiKey, projectId, serviceName });
46
+ * const ai = leap.wrapGoogleGenAI(new GoogleGenAI({ apiKey: GEMINI_KEY }));
47
+ * await ai.models.generateContent({ model: 'gemini-2.0-flash', contents: 'Hello!' });
28
48
  */
29
49
  export interface TracePayload {
30
50
  /** Display name of your agent */
@@ -99,8 +119,15 @@ export declare class Leap360 {
99
119
  static isHalted: boolean;
100
120
  constructor(config: Leap360Config);
101
121
  /**
102
- * Initializes Leap360 globally. All subsequent OpenAI or Gemini
122
+ * Initializes Leap360 globally. All subsequent OpenAI or @google/generative-ai
103
123
  * clients created will be automatically traced.
124
+ *
125
+ * ⚠️ Compatibility note:
126
+ * - openai SDK → ✅ auto-traced
127
+ * - @google/generative-ai → ✅ auto-traced
128
+ * - @google/genai (new SDK) → use leap.wrapGoogleGenAI(client) instead
129
+ * - @anthropic-ai/sdk → use leap.traceCall() instead
130
+ * - Any other LLM → use leap.traceCall() instead
104
131
  */
105
132
  static autoInit(config: Leap360Config): Leap360;
106
133
  /**
@@ -112,6 +139,12 @@ export declare class Leap360 {
112
139
  * Patches common AI library prototypes to ensure all instances
113
140
  * are automatically traced without manual wrapping.
114
141
  * Supports both CommonJS (require) and ESM environments.
142
+ *
143
+ * Supported by autoInit:
144
+ * ✅ openai
145
+ * ✅ @google/generative-ai
146
+ * ❌ @google/genai (new SDK) — use wrapGoogleGenAI() instead
147
+ * ❌ @anthropic-ai/sdk — use traceCall() instead
115
148
  */
116
149
  private patchGlobalPrototypes;
117
150
  private wrapOpenAIPrototype;
@@ -146,16 +179,23 @@ export declare class Leap360 {
146
179
  */
147
180
  wrapGemini<GeminiClient>(client: GeminiClient): GeminiClient;
148
181
  /**
149
- * Wraps the new `google-genai` Client instance so every
150
- * `models.generate_content` call is traced automatically.
182
+ * Wraps the new `@google/genai` GoogleGenAI client so every
183
+ * `models.generateContent` / `models.generateContentStream` call is traced.
184
+ *
185
+ * Use this when you are on the NEW @google/genai package (not @google/generative-ai).
151
186
  *
152
187
  * @example
153
- * import genai from 'google-genai';
154
- * const client = leap.wrapGoogleGenAI(new genai.Client());
155
- * const response = await client.models.generate_content({
156
- * model: 'gemini-3-flash-preview',
157
- * contents: 'Explain how AI works'
188
+ * import { GoogleGenAI } from '@google/genai';
189
+ * const leap = new Leap360({ apiKey, projectId, serviceName });
190
+ * const ai = leap.wrapGoogleGenAI(new GoogleGenAI({ apiKey: process.env.GEMINI_API_KEY }));
191
+ *
192
+ * const response = await ai.models.generateContent({
193
+ * model: 'gemini-2.0-flash',
194
+ * contents: 'Explain AI governance.',
158
195
  * });
196
+ *
197
+ * ⚠️ The new SDK uses camelCase (generateContent), not snake_case (generate_content).
198
+ * Both variants are supported by this wrapper.
159
199
  */
160
200
  wrapGoogleGenAI<GenAIClient>(client: GenAIClient): GenAIClient;
161
201
  /**
package/dist/sdk.d.ts.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"sdk.d.ts","sourceRoot":"","sources":["../src/sdk.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"sdk.d.ts","sourceRoot":"","sources":["../src/sdk.ts"],"names":[],"mappings":"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"}
package/dist/sdk.js CHANGED
@@ -1,30 +1,50 @@
1
1
  /**
2
- * leap360 — Leap360Client + Leap360 (auto-wrap) class
2
+ * leap360 — Universal AI Governance SDK
3
3
  *
4
- * Usage:
5
- * import { Leap360 } from 'leap360';
6
- * const leap = new Leap360();
4
+ * ─────────────────────────────────────────────────────────────────────────
5
+ * RECOMMENDED: Manual trace — works with ANY LLM, ANY SDK, ANY language
6
+ * ─────────────────────────────────────────────────────────────────────────
7
7
  *
8
- * const openai = leap.wrapOpenAI(new OpenAI());
8
+ * import { Leap360Client } from 'leap360';
9
9
  *
10
- * leap.wrapGemini(genAI); // wraps genAI.getGenerativeModel(...)
11
- *
12
- * // Group calls into a named agent run
13
- * const agent = leap.createAgent({ name: 'Support Bot' });
14
- * await agent.run(async (client) => {
15
- * await client.chat.completions.create({ ... });
10
+ * const leap = new Leap360Client({
11
+ * apiKey: process.env.LEAP360_API_KEY,
12
+ * projectId: 'my-project',
16
13
  * });
17
14
  *
18
- * ── Style 2: Manual trace (maximum flexibility) ────────────────────────────
19
- * import { Leap360Client } from 'leap360-sdk';
20
- * const leap = new Leap360Client(); // reads from ~/.leap360/config.json
21
- *
15
+ * // Works with OpenAI, Gemini, Anthropic, Mistral, or any LLM:
22
16
  * const result = await leap.traceCall({
23
- * agentName: 'My Bot',
24
- * provider: 'openai',
25
- * model: 'gpt-4o',
26
- * fn: () => openai.chat.completions.create({ ... }),
17
+ * agentName: 'my-agent',
18
+ * provider: 'google', // or 'openai', 'anthropic', 'mistral', etc.
19
+ * model: 'gemini-2.0-flash',
20
+ * fn: () => model.generateContent('Hello!'),
27
21
  * });
22
+ *
23
+ * ─────────────────────────────────────────────────────────────────────────
24
+ * ⚡ AUTO-WRAP: Zero-code tracing for supported SDKs
25
+ * ─────────────────────────────────────────────────────────────────────────
26
+ *
27
+ * SDK Compatibility Matrix:
28
+ * ┌─────────────────────────────┬────────────────────────────┬────────────┐
29
+ * │ Your LLM SDK │ Method │ Status │
30
+ * ├─────────────────────────────┼────────────────────────────┼────────────┤
31
+ * │ openai │ Leap360.autoInit() │ ✅ Auto │
32
+ * │ @google/generative-ai │ Leap360.autoInit() │ ✅ Auto │
33
+ * │ @google/genai (new SDK) │ leap.wrapGoogleGenAI() │ ✅ Wrap │
34
+ * │ @anthropic-ai/sdk │ leap.traceCall() │ ⚠️ Manual │
35
+ * │ mistralai │ leap.traceCall() │ ⚠️ Manual │
36
+ * │ Any other LLM │ leap.traceCall() │ ✅ Manual │
37
+ * └─────────────────────────────┴────────────────────────────┴────────────┘
38
+ *
39
+ * Auto-wrap example (OpenAI or @google/generative-ai):
40
+ * Leap360.autoInit({ apiKey, projectId, serviceName });
41
+ * const openai = new OpenAI(); // ← all calls auto-traced
42
+ *
43
+ * Wrap example (@google/genai new SDK):
44
+ * import { GoogleGenAI } from '@google/genai';
45
+ * const leap = new Leap360({ apiKey, projectId, serviceName });
46
+ * const ai = leap.wrapGoogleGenAI(new GoogleGenAI({ apiKey: GEMINI_KEY }));
47
+ * await ai.models.generateContent({ model: 'gemini-2.0-flash', contents: 'Hello!' });
28
48
  */
29
49
  // Universal imports/fallbacks
30
50
  import { loadCredentials } from './auth.js';
@@ -119,13 +139,22 @@ export class Leap360 {
119
139
  Leap360.instance = this;
120
140
  }
121
141
  /**
122
- * Initializes Leap360 globally. All subsequent OpenAI or Gemini
142
+ * Initializes Leap360 globally. All subsequent OpenAI or @google/generative-ai
123
143
  * clients created will be automatically traced.
144
+ *
145
+ * ⚠️ Compatibility note:
146
+ * - openai SDK → ✅ auto-traced
147
+ * - @google/generative-ai → ✅ auto-traced
148
+ * - @google/genai (new SDK) → use leap.wrapGoogleGenAI(client) instead
149
+ * - @anthropic-ai/sdk → use leap.traceCall() instead
150
+ * - Any other LLM → use leap.traceCall() instead
124
151
  */
125
152
  static autoInit(config) {
126
153
  const inst = new Leap360(config);
127
154
  inst.patchGlobalPrototypes();
128
155
  inst.startPollingStatus();
156
+ // Startup confirmation — so developers know tracing is active
157
+ console.log(`[Leap360] ✅ Tracing active — project: ${config.projectId}, service: ${config.serviceName}`);
129
158
  return inst;
130
159
  }
131
160
  /**
@@ -158,24 +187,37 @@ export class Leap360 {
158
187
  * Patches common AI library prototypes to ensure all instances
159
188
  * are automatically traced without manual wrapping.
160
189
  * Supports both CommonJS (require) and ESM environments.
190
+ *
191
+ * Supported by autoInit:
192
+ * ✅ openai
193
+ * ✅ @google/generative-ai
194
+ * ❌ @google/genai (new SDK) — use wrapGoogleGenAI() instead
195
+ * ❌ @anthropic-ai/sdk — use traceCall() instead
161
196
  */
162
197
  patchGlobalPrototypes() {
198
+ let patchedCount = 0;
163
199
  // --- Strategy 1: Direct prototype patch if class is on globalThis ---
164
200
  const tryPatchFromGlobal = () => {
165
201
  const OpenAI = globalThis.OpenAI;
166
- if (OpenAI?.prototype)
202
+ if (OpenAI?.prototype) {
167
203
  this.wrapOpenAIPrototype(OpenAI);
204
+ patchedCount++;
205
+ }
168
206
  const GAI = globalThis.GoogleGenerativeAI;
169
- if (GAI?.prototype)
207
+ if (GAI?.prototype) {
170
208
  this.wrapGooglePrototype(GAI);
209
+ patchedCount++;
210
+ }
171
211
  };
172
212
  tryPatchFromGlobal();
173
213
  // --- Strategy 2: Dynamic import (ESM) — patch after module loads ---
174
214
  // Wrap @google/generative-ai via dynamic import
175
215
  import('@google/generative-ai').then((mod) => {
176
216
  const GAI = mod.GoogleGenerativeAI;
177
- if (GAI?.prototype)
217
+ if (GAI?.prototype) {
178
218
  this.wrapGooglePrototype(GAI);
219
+ patchedCount++;
220
+ }
179
221
  }).catch(() => { });
180
222
  // Wrap openai via dynamic import (optional peer dep - ignore TS errors)
181
223
  // eslint-disable-next-line @typescript-eslint/no-var-requires
@@ -184,11 +226,22 @@ export class Leap360 {
184
226
  // Use Function to avoid TypeScript resolving the module at compile time
185
227
  const mod = await (new Function("s", "return import(s)"))('openai');
186
228
  const OpenAI = mod.default || mod.OpenAI;
187
- if (OpenAI?.prototype)
229
+ if (OpenAI?.prototype) {
188
230
  this.wrapOpenAIPrototype(OpenAI);
231
+ patchedCount++;
232
+ }
189
233
  }
190
234
  catch { /* openai not installed */ }
191
235
  })();
236
+ // Warn after a short delay if nothing was patched — helps catch silent failures
237
+ setTimeout(() => {
238
+ if (patchedCount === 0) {
239
+ console.warn('[Leap360] ⚠️ autoInit() did not detect a supported LLM SDK (openai or @google/generative-ai).\n' +
240
+ ' If you are using @google/genai (new SDK): use leap.wrapGoogleGenAI(client) instead.\n' +
241
+ ' If you are using Anthropic, Mistral, or another LLM: use leap.traceCall() instead.\n' +
242
+ ' See: https://leap360.ai/docs/sdk-compatibility');
243
+ }
244
+ }, 3000);
192
245
  }
193
246
  wrapOpenAIPrototype(OpenAIClass) {
194
247
  const self = this;
@@ -359,7 +412,9 @@ export class Leap360 {
359
412
  const traceBody = buildTraceBody({
360
413
  projectId: this.config.projectId,
361
414
  serviceName: this.config.serviceName,
362
- agentName: runCtx?.agentName ?? null,
415
+ // Use explicit agentName from createAgent context, or fall back to serviceName
416
+ // so per-agent suspend works for autoInit users who never call createAgent
417
+ agentName: runCtx?.agentName ?? this.config.serviceName,
363
418
  runId: runCtx?.runId,
364
419
  provider,
365
420
  model,
@@ -401,7 +456,8 @@ export class Leap360 {
401
456
  const traceBody = buildTraceBody({
402
457
  projectId: this.config.projectId,
403
458
  serviceName: this.config.serviceName,
404
- agentName: runCtx?.agentName ?? null,
459
+ // Use explicit agentName from createAgent context, or fall back to serviceName
460
+ agentName: runCtx?.agentName ?? this.config.serviceName,
405
461
  runId: runCtx?.runId,
406
462
  provider,
407
463
  model,
@@ -431,6 +487,12 @@ export class Leap360 {
431
487
  violation
432
488
  };
433
489
  }
490
+ // Check for per-agent halt
491
+ if (res && res.code === 'AGENT_HALT') {
492
+ const serverMessage = res.message || 'Agent is suspended';
493
+ console.error(`[Leap360] 🛡️ AGENT SUSPENDED: ${serverMessage}`);
494
+ return { blocked: true, message: serverMessage };
495
+ }
434
496
  return { blocked: false };
435
497
  }
436
498
  catch (e) {
@@ -613,31 +675,55 @@ export class Leap360 {
613
675
  };
614
676
  return client;
615
677
  }
616
- // ── Google GenAI (new format) auto-wrap ────────────────────────────────────
678
+ // ── Google GenAI (new SDK: @google/genai) auto-wrap ──────────────────────
617
679
  /**
618
- * Wraps the new `google-genai` Client instance so every
619
- * `models.generate_content` call is traced automatically.
680
+ * Wraps the new `@google/genai` GoogleGenAI client so every
681
+ * `models.generateContent` / `models.generateContentStream` call is traced.
682
+ *
683
+ * Use this when you are on the NEW @google/genai package (not @google/generative-ai).
620
684
  *
621
685
  * @example
622
- * import genai from 'google-genai';
623
- * const client = leap.wrapGoogleGenAI(new genai.Client());
624
- * const response = await client.models.generate_content({
625
- * model: 'gemini-3-flash-preview',
626
- * contents: 'Explain how AI works'
686
+ * import { GoogleGenAI } from '@google/genai';
687
+ * const leap = new Leap360({ apiKey, projectId, serviceName });
688
+ * const ai = leap.wrapGoogleGenAI(new GoogleGenAI({ apiKey: process.env.GEMINI_API_KEY }));
689
+ *
690
+ * const response = await ai.models.generateContent({
691
+ * model: 'gemini-2.0-flash',
692
+ * contents: 'Explain AI governance.',
627
693
  * });
694
+ *
695
+ * ⚠️ The new SDK uses camelCase (generateContent), not snake_case (generate_content).
696
+ * Both variants are supported by this wrapper.
628
697
  */
629
698
  wrapGoogleGenAI(client) {
630
699
  const self = this;
631
700
  const c = client;
632
- // Wrap generate_content
633
- const originalGenerate = c.models.generate_content.bind(c.models);
634
- c.models.generate_content = async (params) => {
701
+ if (!c.models || typeof c.models !== 'object') {
702
+ console.warn('[Leap360] wrapGoogleGenAI: client.models is undefined. Ensure you are passing a GoogleGenAI instance.');
703
+ return client;
704
+ }
705
+ // Support both camelCase (new @google/genai) and snake_case (older variants)
706
+ const generateFnName = typeof c.models.generateContent === 'function' ? 'generateContent' :
707
+ typeof c.models.generate_content === 'function' ? 'generate_content' :
708
+ null;
709
+ const streamFnName = typeof c.models.generateContentStream === 'function' ? 'generateContentStream' :
710
+ typeof c.models.generate_content_stream === 'function' ? 'generate_content_stream' :
711
+ null;
712
+ if (!generateFnName) {
713
+ console.warn('[Leap360] wrapGoogleGenAI: could not find generateContent or generate_content on client.models.\n' +
714
+ ' Ensure you are passing a GoogleGenAI instance from @google/genai.\n' +
715
+ ' Falling back to untraced client.');
716
+ return client;
717
+ }
718
+ // Wrap generateContent / generate_content
719
+ const originalGenerate = c.models[generateFnName].bind(c.models);
720
+ c.models[generateFnName] = async (params) => {
635
721
  if (Leap360.isHalted) {
636
722
  throw new Error('[Leap360] 🛡️ GOVERNANCE_HALT: Project is SUSPENDED. AI calls are blocked.');
637
723
  }
638
724
  const startTime = Date.now();
639
725
  const runCtx = getRunContextStorage().getStore();
640
- const modelName = (params?.model ?? 'gemini-3-flash-preview');
726
+ const modelName = (params?.model ?? 'gemini');
641
727
  let response = null;
642
728
  let error = null;
643
729
  try {
@@ -649,58 +735,59 @@ export class Leap360 {
649
735
  }
650
736
  // Synchronous trace with policy blocking check
651
737
  try {
652
- const blockResult = await self.sendTraceAndCheckBlock('google', { contents: params.contents }, response, null, startTime, runCtx, modelName);
738
+ const blockResult = await self.sendTraceAndCheckBlock('google', { contents: params.contents ?? params.prompt ?? params }, response, error, startTime, runCtx, modelName);
653
739
  if (blockResult?.blocked) {
654
740
  throw new Error(`[Leap360] 🛡️ POLICY_BLOCKED: ${blockResult.message}`);
655
741
  }
656
742
  }
657
743
  catch (traceErr) {
658
- if (traceErr.message?.includes('POLICY_BLOCKED')) {
744
+ if (traceErr.message?.includes('POLICY_BLOCKED'))
659
745
  throw traceErr;
660
- }
661
746
  console.warn('[Leap360] Trace failed:', traceErr.message);
662
747
  }
663
748
  return response;
664
749
  };
665
- // Wrap generate_content_stream
666
- const originalStream = c.models.generate_content_stream.bind(c.models);
667
- c.models.generate_content_stream = async (params) => {
668
- if (Leap360.isHalted) {
669
- throw new Error('[Leap360] 🛡️ GOVERNANCE_HALT: Project is SUSPENDED. AI calls are blocked.');
670
- }
671
- const startTime = Date.now();
672
- const runCtx = getRunContextStorage().getStore();
673
- const modelName = (params?.model ?? 'gemini-3-flash-preview');
674
- let error = null;
675
- let result = null;
676
- try {
677
- result = await originalStream(params);
678
- }
679
- catch (err) {
680
- error = err;
681
- throw err;
682
- }
683
- finally {
684
- const latencyMs = Date.now() - startTime;
685
- const traceBody = buildTraceBody({
686
- projectId: self.config.projectId,
687
- serviceName: self.config.serviceName,
688
- agentName: runCtx?.agentName ?? null,
689
- runId: runCtx?.runId,
690
- provider: 'google',
691
- model: modelName,
692
- request: { contents: params.contents },
693
- response: null,
694
- latencyMs,
695
- usage: { prompt_tokens: 0, completion_tokens: 0, total_tokens: 0 },
696
- timestamp: new Date(startTime).toISOString(),
697
- error: error ? (error instanceof Error ? error.message : String(error)) : null,
698
- });
699
- postTrace(self.config.baseUrl, self.config.apiKey, traceBody, false)
700
- .catch(e => console.error('[Leap360]', e));
701
- }
702
- return result;
703
- };
750
+ // Wrap generateContentStream / generate_content_stream if present
751
+ if (streamFnName) {
752
+ const originalStream = c.models[streamFnName].bind(c.models);
753
+ c.models[streamFnName] = async (params) => {
754
+ if (Leap360.isHalted) {
755
+ throw new Error('[Leap360] 🛡️ GOVERNANCE_HALT: Project is SUSPENDED. AI calls are blocked.');
756
+ }
757
+ const startTime = Date.now();
758
+ const runCtx = getRunContextStorage().getStore();
759
+ const modelName = (params?.model ?? 'gemini');
760
+ let error = null;
761
+ let result = null;
762
+ try {
763
+ result = await originalStream(params);
764
+ }
765
+ catch (err) {
766
+ error = err;
767
+ throw err;
768
+ }
769
+ finally {
770
+ const latencyMs = Date.now() - startTime;
771
+ const traceBody = buildTraceBody({
772
+ projectId: self.config.projectId,
773
+ serviceName: self.config.serviceName,
774
+ agentName: runCtx?.agentName ?? self.config.serviceName,
775
+ runId: runCtx?.runId,
776
+ provider: 'google',
777
+ model: modelName,
778
+ request: { contents: params.contents ?? params.prompt ?? params },
779
+ response: null,
780
+ latencyMs,
781
+ usage: { prompt_tokens: 0, completion_tokens: 0, total_tokens: 0 },
782
+ timestamp: new Date(startTime).toISOString(),
783
+ error: error ? (error instanceof Error ? error.message : String(error)) : null,
784
+ });
785
+ postTrace(self.config.baseUrl, self.config.apiKey, traceBody, false)
786
+ .catch(e => console.error('[Leap360]', e));
787
+ }
788
+ return result;
789
+ };
790
+ }
704
791
  return client;
705
792
  }
706
793
  // ── createAgent ─────────────────────────────────────────────────────────
package/dist/sdk.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"sdk.js","sourceRoot":"","sources":["../src/sdk.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"sdk.js","sourceRoot":"","sources":["../src/sdk.ts"],"names":[],"mappings":"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"}
package/package.json CHANGED
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "name": "leap360",
3
- "version": "1.3.0",
4
- "description": "Leap360 AI Governance SDK — monitor, trace, and govern your AI agents in real-time",
3
+ "version": "1.4.0",
4
+ "description": "Leap360 AI Governance SDK — trace, govern, and monitor AI agents across OpenAI, Gemini, Anthropic, Mistral, and any LLM",
5
5
  "type": "module",
6
6
  "main": "./dist/index.js",
7
7
  "types": "./dist/index.d.ts",
@@ -29,15 +29,19 @@
29
29
  "agents",
30
30
  "observability",
31
31
  "openai",
32
- "gemini-1.5-flash-latest",
32
+ "gemini",
33
+ "anthropic",
34
+ "mistral",
35
+ "google-genai",
36
+ "ai-safety",
37
+ "kill-switch",
38
+ "policy-enforcement",
33
39
  "leap360"
34
40
  ],
35
41
  "author": "Leap360",
36
42
  "license": "Apache-2.0",
37
43
  "dependencies": {
38
- "@aws-sdk/client-cognito-identity-provider": "^3.1026.0",
39
- "commander": "^12.0.0",
40
- "open": "^10.0.0"
44
+ "commander": "^12.0.0"
41
45
  },
42
46
  "devDependencies": {
43
47
  "@types/node": "^20.0.0",