braintrust 3.10.0 → 3.12.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 (78) hide show
  1. package/README.md +8 -8
  2. package/dev/dist/index.d.mts +51 -3
  3. package/dev/dist/index.d.ts +51 -3
  4. package/dev/dist/index.js +13138 -8915
  5. package/dev/dist/index.mjs +13015 -8792
  6. package/dist/apply-auto-instrumentation.browser.d.mts +2 -0
  7. package/dist/apply-auto-instrumentation.browser.d.ts +2 -0
  8. package/dist/apply-auto-instrumentation.browser.js +18 -0
  9. package/dist/apply-auto-instrumentation.browser.mjs +0 -0
  10. package/dist/apply-auto-instrumentation.d.mts +2 -0
  11. package/dist/apply-auto-instrumentation.d.ts +2 -0
  12. package/dist/apply-auto-instrumentation.js +2534 -0
  13. package/dist/apply-auto-instrumentation.mjs +2534 -0
  14. package/dist/auto-instrumentations/bundler/esbuild.cjs +1775 -737
  15. package/dist/auto-instrumentations/bundler/esbuild.d.mts +9 -5
  16. package/dist/auto-instrumentations/bundler/esbuild.d.ts +9 -5
  17. package/dist/auto-instrumentations/bundler/esbuild.mjs +10 -2
  18. package/dist/auto-instrumentations/bundler/next.cjs +3268 -0
  19. package/dist/auto-instrumentations/bundler/next.d.mts +3 -0
  20. package/dist/auto-instrumentations/bundler/next.d.ts +3 -0
  21. package/dist/auto-instrumentations/bundler/next.mjs +189 -0
  22. package/dist/auto-instrumentations/bundler/rollup.cjs +1775 -737
  23. package/dist/auto-instrumentations/bundler/rollup.d.mts +9 -5
  24. package/dist/auto-instrumentations/bundler/rollup.d.ts +9 -5
  25. package/dist/auto-instrumentations/bundler/rollup.mjs +10 -2
  26. package/dist/auto-instrumentations/bundler/vite.cjs +1775 -737
  27. package/dist/auto-instrumentations/bundler/vite.d.mts +9 -5
  28. package/dist/auto-instrumentations/bundler/vite.d.ts +9 -5
  29. package/dist/auto-instrumentations/bundler/vite.mjs +10 -2
  30. package/dist/auto-instrumentations/bundler/webpack-loader.cjs +1713 -690
  31. package/dist/auto-instrumentations/bundler/webpack-loader.d.ts +3 -3
  32. package/dist/auto-instrumentations/bundler/webpack.cjs +1775 -737
  33. package/dist/auto-instrumentations/bundler/webpack.d.mts +9 -5
  34. package/dist/auto-instrumentations/bundler/webpack.d.ts +9 -5
  35. package/dist/auto-instrumentations/bundler/webpack.mjs +6 -6
  36. package/dist/auto-instrumentations/{chunk-GZNXBBPU.mjs → chunk-2DPA74KK.mjs} +856 -5
  37. package/dist/auto-instrumentations/chunk-73BZUKVI.mjs +300 -0
  38. package/dist/auto-instrumentations/chunk-AFXRW7I7.mjs +18 -0
  39. package/dist/auto-instrumentations/{chunk-ITP7RAUY.mjs → chunk-MWZXZQUO.mjs} +23 -1
  40. package/dist/auto-instrumentations/hook.mjs +1912 -1125
  41. package/dist/auto-instrumentations/index.cjs +615 -4
  42. package/dist/auto-instrumentations/index.d.mts +18 -1
  43. package/dist/auto-instrumentations/index.d.ts +18 -1
  44. package/dist/auto-instrumentations/index.mjs +12 -247
  45. package/dist/auto-instrumentations/loader/cjs-patch.cjs +26 -1
  46. package/dist/auto-instrumentations/loader/cjs-patch.mjs +28 -1
  47. package/dist/auto-instrumentations/loader/esm-hook.mjs +35 -3
  48. package/dist/auto-instrumentations/plugin-D7nDswtC.d.mts +44 -0
  49. package/dist/auto-instrumentations/plugin-D7nDswtC.d.ts +44 -0
  50. package/dist/browser.d.mts +577 -287
  51. package/dist/browser.d.ts +577 -287
  52. package/dist/browser.js +10221 -5524
  53. package/dist/browser.mjs +10221 -5524
  54. package/dist/chunk-BW4DF4CY.js +816 -0
  55. package/dist/chunk-MSLBGITU.mjs +816 -0
  56. package/dist/cli.js +13143 -8892
  57. package/dist/edge-light.d.mts +1 -1
  58. package/dist/edge-light.d.ts +1 -1
  59. package/dist/edge-light.js +10221 -5524
  60. package/dist/edge-light.mjs +10221 -5524
  61. package/dist/index.d.mts +590 -300
  62. package/dist/index.d.ts +590 -300
  63. package/dist/index.js +9309 -5371
  64. package/dist/index.mjs +10340 -6402
  65. package/dist/instrumentation/index.d.mts +7863 -39
  66. package/dist/instrumentation/index.d.ts +7863 -39
  67. package/dist/instrumentation/index.js +10263 -6034
  68. package/dist/instrumentation/index.mjs +10262 -6034
  69. package/dist/workerd.d.mts +1 -1
  70. package/dist/workerd.d.ts +1 -1
  71. package/dist/workerd.js +10221 -5524
  72. package/dist/workerd.mjs +10221 -5524
  73. package/package.json +33 -19
  74. package/util/dist/index.js +6 -0
  75. package/util/dist/index.mjs +6 -0
  76. package/dist/auto-instrumentations/chunk-XWEQQOQH.mjs +0 -106
  77. package/dist/auto-instrumentations/plugin-Df3qKIl2.d.mts +0 -22
  78. package/dist/auto-instrumentations/plugin-Df3qKIl2.d.ts +0 -22
@@ -28,6 +28,69 @@ var import_path = require("path");
28
28
  var import_fs = require("fs");
29
29
  var import_module_details_from_path = __toESM(require("module-details-from-path"));
30
30
 
31
+ // src/instrumentation/config.ts
32
+ var envIntegrationAliases = {
33
+ openai: "openai",
34
+ "openai-codex": "openaiCodexSDK",
35
+ "openai-codex-sdk": "openaiCodexSDK",
36
+ openaicodexsdk: "openaiCodexSDK",
37
+ codex: "openaiCodexSDK",
38
+ "codex-sdk": "openaiCodexSDK",
39
+ anthropic: "anthropic",
40
+ aisdk: "aisdk",
41
+ "ai-sdk": "aisdk",
42
+ "vercel-ai": "aisdk",
43
+ vercel: "vercel",
44
+ claudeagentsdk: "claudeAgentSDK",
45
+ "claude-agent-sdk": "claudeAgentSDK",
46
+ cursor: "cursor",
47
+ "cursor-sdk": "cursorSDK",
48
+ cursorsdk: "cursorSDK",
49
+ flue: "flue",
50
+ "flue-runtime": "flue",
51
+ "openai-agents": "openAIAgents",
52
+ openaiagents: "openAIAgents",
53
+ "openai-agents-core": "openAIAgents",
54
+ openaiagentscore: "openAIAgents",
55
+ google: "google",
56
+ "google-genai": "googleGenAI",
57
+ googlegenai: "googleGenAI",
58
+ huggingface: "huggingface",
59
+ openrouter: "openrouter",
60
+ openrouteragent: "openrouterAgent",
61
+ "openrouter-agent": "openrouterAgent",
62
+ mistral: "mistral",
63
+ googleadk: "googleADK",
64
+ "google-adk": "googleADK",
65
+ cohere: "cohere",
66
+ groq: "groq",
67
+ "groq-sdk": "groq",
68
+ genkit: "genkit",
69
+ "firebase-genkit": "genkit",
70
+ githubcopilot: "gitHubCopilot",
71
+ "github-copilot": "gitHubCopilot",
72
+ "copilot-sdk": "gitHubCopilot",
73
+ langchain: "langchain",
74
+ "langchain-js": "langchain",
75
+ "@langchain": "langchain",
76
+ langgraph: "langgraph"
77
+ };
78
+ function readDisabledInstrumentationEnvConfig(disabledList) {
79
+ const integrations = {};
80
+ if (disabledList) {
81
+ for (const value of disabledList.split(",")) {
82
+ const sdk = value.trim().toLowerCase();
83
+ if (sdk.length > 0) {
84
+ integrations[envIntegrationAliases[sdk] ?? sdk] = false;
85
+ }
86
+ }
87
+ }
88
+ return { integrations };
89
+ }
90
+ function isInstrumentationIntegrationDisabled(integrations, ...names) {
91
+ return names.some((name) => integrations?.[name] === false);
92
+ }
93
+
31
94
  // src/isomorph.ts
32
95
  var DefaultAsyncLocalStorage = class {
33
96
  constructor() {
@@ -171,231 +234,419 @@ function defineChannels(pkg, channels) {
171
234
  );
172
235
  }
173
236
 
174
- // src/instrumentation/plugins/openai-channels.ts
175
- var openAIChannels = defineChannels("openai", {
176
- chatCompletionsCreate: channel({
177
- channelName: "chat.completions.create",
237
+ // src/instrumentation/plugins/ai-sdk-channels.ts
238
+ var aiSDKChannels = defineChannels("ai", {
239
+ generateText: channel({
240
+ channelName: "generateText",
178
241
  kind: "async"
179
242
  }),
180
- embeddingsCreate: channel({
181
- channelName: "embeddings.create",
243
+ streamText: channel({
244
+ channelName: "streamText",
182
245
  kind: "async"
183
246
  }),
184
- betaChatCompletionsParse: channel({
185
- channelName: "beta.chat.completions.parse",
247
+ streamTextSync: channel({
248
+ channelName: "streamText.sync",
249
+ kind: "sync-stream"
250
+ }),
251
+ generateObject: channel({
252
+ channelName: "generateObject",
186
253
  kind: "async"
187
254
  }),
188
- betaChatCompletionsStream: channel({
189
- channelName: "beta.chat.completions.stream",
255
+ streamObject: channel({
256
+ channelName: "streamObject",
257
+ kind: "async"
258
+ }),
259
+ streamObjectSync: channel({
260
+ channelName: "streamObject.sync",
190
261
  kind: "sync-stream"
191
262
  }),
192
- moderationsCreate: channel({
193
- channelName: "moderations.create",
263
+ embed: channel(
264
+ {
265
+ channelName: "embed",
266
+ kind: "async"
267
+ }
268
+ ),
269
+ embedMany: channel({
270
+ channelName: "embedMany",
194
271
  kind: "async"
195
272
  }),
196
- responsesCreate: channel({
197
- channelName: "responses.create",
273
+ rerank: channel({
274
+ channelName: "rerank",
198
275
  kind: "async"
199
276
  }),
200
- responsesStream: channel({
201
- channelName: "responses.stream",
277
+ agentGenerate: channel({
278
+ channelName: "Agent.generate",
279
+ kind: "async"
280
+ }),
281
+ agentStream: channel({
282
+ channelName: "Agent.stream",
283
+ kind: "async"
284
+ }),
285
+ agentStreamSync: channel({
286
+ channelName: "Agent.stream.sync",
202
287
  kind: "sync-stream"
203
288
  }),
204
- responsesParse: channel({
205
- channelName: "responses.parse",
289
+ toolLoopAgentGenerate: channel({
290
+ channelName: "ToolLoopAgent.generate",
206
291
  kind: "async"
207
292
  }),
208
- responsesCompact: channel({
209
- channelName: "responses.compact",
293
+ toolLoopAgentStream: channel({
294
+ channelName: "ToolLoopAgent.stream",
210
295
  kind: "async"
211
296
  })
212
297
  });
213
298
 
214
- // src/auto-instrumentations/configs/openai.ts
215
- var openaiConfigs = [
216
- // Chat Completions
299
+ // src/auto-instrumentations/configs/ai-sdk.ts
300
+ var aiSDKConfigs = [
301
+ // generateText - async function
217
302
  {
218
- channelName: openAIChannels.chatCompletionsCreate.channelName,
303
+ channelName: aiSDKChannels.generateText.channelName,
219
304
  module: {
220
- name: "openai",
221
- versionRange: ">=4.0.0 <5.0.0",
222
- filePath: "resources/chat/completions.mjs"
305
+ name: "ai",
306
+ versionRange: ">=3.0.0",
307
+ filePath: "dist/index.mjs"
223
308
  },
224
309
  functionQuery: {
225
- className: "Completions",
226
- methodName: "create",
310
+ functionName: "generateText",
227
311
  kind: "Async"
228
312
  }
229
313
  },
230
314
  {
231
- channelName: openAIChannels.chatCompletionsCreate.channelName,
315
+ channelName: aiSDKChannels.generateText.channelName,
232
316
  module: {
233
- name: "openai",
234
- versionRange: ">=4.0.0 <5.0.0",
235
- filePath: "resources/chat/completions/completions.mjs"
317
+ name: "ai",
318
+ versionRange: ">=3.0.0",
319
+ filePath: "dist/index.js"
236
320
  },
237
321
  functionQuery: {
238
- className: "Completions",
239
- methodName: "create",
322
+ functionName: "generateText",
240
323
  kind: "Async"
241
324
  }
242
325
  },
326
+ // streamText - async function (v3 only, before the sync refactor in v4)
243
327
  {
244
- channelName: openAIChannels.chatCompletionsCreate.channelName,
328
+ channelName: aiSDKChannels.streamText.channelName,
245
329
  module: {
246
- name: "openai",
247
- versionRange: ">=5.0.0",
248
- filePath: "resources/chat/completions/completions.mjs"
330
+ name: "ai",
331
+ versionRange: ">=3.0.0 <4.0.0",
332
+ filePath: "dist/index.mjs"
249
333
  },
250
334
  functionQuery: {
251
- className: "Completions",
252
- methodName: "create",
335
+ functionName: "streamText",
253
336
  kind: "Async"
254
337
  }
255
338
  },
256
- // Embeddings
339
+ // streamText - sync function returning stream (v4+)
257
340
  {
258
- channelName: openAIChannels.embeddingsCreate.channelName,
341
+ channelName: aiSDKChannels.streamTextSync.channelName,
259
342
  module: {
260
- name: "openai",
343
+ name: "ai",
261
344
  versionRange: ">=4.0.0",
262
- filePath: "resources/embeddings.mjs"
345
+ filePath: "dist/index.mjs"
263
346
  },
264
347
  functionQuery: {
265
- className: "Embeddings",
266
- methodName: "create",
267
- kind: "Async"
348
+ functionName: "streamText",
349
+ kind: "Sync"
268
350
  }
269
351
  },
270
- // Beta Chat Completions Parse
271
352
  {
272
- channelName: openAIChannels.betaChatCompletionsParse.channelName,
353
+ channelName: aiSDKChannels.streamText.channelName,
273
354
  module: {
274
- name: "openai",
275
- versionRange: ">=4.0.0 <5.0.0",
276
- filePath: "resources/beta/chat/completions.mjs"
355
+ name: "ai",
356
+ versionRange: ">=3.0.0 <4.0.0",
357
+ filePath: "dist/index.js"
277
358
  },
278
359
  functionQuery: {
279
- className: "Completions",
280
- methodName: "parse",
360
+ functionName: "streamText",
281
361
  kind: "Async"
282
362
  }
283
363
  },
284
364
  {
285
- channelName: openAIChannels.betaChatCompletionsParse.channelName,
365
+ channelName: aiSDKChannels.streamTextSync.channelName,
286
366
  module: {
287
- name: "openai",
288
- versionRange: ">=5.0.0",
289
- filePath: "resources/chat/completions/completions.mjs"
367
+ name: "ai",
368
+ versionRange: ">=4.0.0",
369
+ filePath: "dist/index.js"
290
370
  },
291
371
  functionQuery: {
292
- className: "Completions",
293
- methodName: "parse",
372
+ functionName: "streamText",
373
+ kind: "Sync"
374
+ }
375
+ },
376
+ // generateObject - async function
377
+ {
378
+ channelName: aiSDKChannels.generateObject.channelName,
379
+ module: {
380
+ name: "ai",
381
+ versionRange: ">=3.0.0",
382
+ filePath: "dist/index.mjs"
383
+ },
384
+ functionQuery: {
385
+ functionName: "generateObject",
294
386
  kind: "Async"
295
387
  }
296
388
  },
297
- // Moderations
298
389
  {
299
- channelName: openAIChannels.moderationsCreate.channelName,
390
+ channelName: aiSDKChannels.generateObject.channelName,
300
391
  module: {
301
- name: "openai",
302
- versionRange: ">=4.0.0",
303
- filePath: "resources/moderations.mjs"
392
+ name: "ai",
393
+ versionRange: ">=3.0.0",
394
+ filePath: "dist/index.js"
304
395
  },
305
396
  functionQuery: {
306
- className: "Moderations",
307
- methodName: "create",
397
+ functionName: "generateObject",
308
398
  kind: "Async"
309
399
  }
310
400
  },
311
- // Beta Chat Completions Stream
401
+ // embed - async function
312
402
  {
313
- channelName: openAIChannels.betaChatCompletionsStream.channelName,
403
+ channelName: aiSDKChannels.embed.channelName,
314
404
  module: {
315
- name: "openai",
316
- versionRange: ">=4.0.0 <5.0.0",
317
- filePath: "resources/beta/chat/completions.mjs"
405
+ name: "ai",
406
+ versionRange: ">=3.0.0",
407
+ filePath: "dist/index.mjs"
318
408
  },
319
409
  functionQuery: {
320
- className: "Completions",
321
- methodName: "stream",
322
- kind: "Sync"
410
+ functionName: "embed",
411
+ kind: "Async"
323
412
  }
324
413
  },
325
414
  {
326
- channelName: openAIChannels.betaChatCompletionsStream.channelName,
415
+ channelName: aiSDKChannels.embed.channelName,
327
416
  module: {
328
- name: "openai",
329
- versionRange: ">=5.0.0",
330
- filePath: "resources/chat/completions/completions.mjs"
417
+ name: "ai",
418
+ versionRange: ">=3.0.0",
419
+ filePath: "dist/index.js"
331
420
  },
332
421
  functionQuery: {
333
- className: "Completions",
334
- methodName: "stream",
335
- kind: "Sync"
422
+ functionName: "embed",
423
+ kind: "Async"
336
424
  }
337
425
  },
338
- // Responses API (v4.87.0+)
426
+ // embedMany - async function
339
427
  {
340
- channelName: openAIChannels.responsesCreate.channelName,
428
+ channelName: aiSDKChannels.embedMany.channelName,
341
429
  module: {
342
- name: "openai",
343
- versionRange: ">=4.87.0",
344
- filePath: "resources/responses/responses.mjs"
430
+ name: "ai",
431
+ versionRange: ">=3.0.0",
432
+ filePath: "dist/index.mjs"
345
433
  },
346
434
  functionQuery: {
347
- className: "Responses",
348
- methodName: "create",
435
+ functionName: "embedMany",
349
436
  kind: "Async"
350
437
  }
351
438
  },
352
439
  {
353
- channelName: openAIChannels.responsesStream.channelName,
440
+ channelName: aiSDKChannels.embedMany.channelName,
354
441
  module: {
355
- name: "openai",
356
- versionRange: ">=4.87.0",
357
- filePath: "resources/responses/responses.mjs"
442
+ name: "ai",
443
+ versionRange: ">=3.0.0",
444
+ filePath: "dist/index.js"
358
445
  },
359
446
  functionQuery: {
360
- className: "Responses",
361
- methodName: "stream",
362
- kind: "Sync"
447
+ functionName: "embedMany",
448
+ kind: "Async"
363
449
  }
364
450
  },
451
+ // rerank - async function
365
452
  {
366
- channelName: openAIChannels.responsesParse.channelName,
453
+ channelName: aiSDKChannels.rerank.channelName,
367
454
  module: {
368
- name: "openai",
369
- versionRange: ">=4.87.0",
370
- filePath: "resources/responses/responses.mjs"
455
+ name: "ai",
456
+ versionRange: ">=5.0.0",
457
+ filePath: "dist/index.mjs"
371
458
  },
372
459
  functionQuery: {
373
- className: "Responses",
374
- methodName: "parse",
460
+ functionName: "rerank",
375
461
  kind: "Async"
376
462
  }
377
463
  },
378
464
  {
379
- channelName: openAIChannels.responsesCompact.channelName,
465
+ channelName: aiSDKChannels.rerank.channelName,
380
466
  module: {
381
- name: "openai",
382
- versionRange: ">=6.10.0",
383
- filePath: "resources/responses/responses.mjs"
467
+ name: "ai",
468
+ versionRange: ">=5.0.0",
469
+ filePath: "dist/index.js"
384
470
  },
385
471
  functionQuery: {
386
- className: "Responses",
387
- methodName: "compact",
472
+ functionName: "rerank",
388
473
  kind: "Async"
389
474
  }
390
- }
391
- ];
392
-
393
- // src/instrumentation/plugins/anthropic-channels.ts
394
- var anthropicChannels = defineChannels("@anthropic-ai/sdk", {
395
- messagesCreate: channel({
396
- channelName: "messages.create",
397
- kind: "async"
398
- }),
475
+ },
476
+ // streamObject - async function (v3 only, before the sync refactor in v4)
477
+ {
478
+ channelName: aiSDKChannels.streamObject.channelName,
479
+ module: {
480
+ name: "ai",
481
+ versionRange: ">=3.0.0 <4.0.0",
482
+ filePath: "dist/index.mjs"
483
+ },
484
+ functionQuery: {
485
+ functionName: "streamObject",
486
+ kind: "Async"
487
+ }
488
+ },
489
+ // streamObject - sync function returning stream (v4+)
490
+ {
491
+ channelName: aiSDKChannels.streamObjectSync.channelName,
492
+ module: {
493
+ name: "ai",
494
+ versionRange: ">=4.0.0",
495
+ filePath: "dist/index.mjs"
496
+ },
497
+ functionQuery: {
498
+ functionName: "streamObject",
499
+ kind: "Sync"
500
+ }
501
+ },
502
+ {
503
+ channelName: aiSDKChannels.streamObject.channelName,
504
+ module: {
505
+ name: "ai",
506
+ versionRange: ">=3.0.0 <4.0.0",
507
+ filePath: "dist/index.js"
508
+ },
509
+ functionQuery: {
510
+ functionName: "streamObject",
511
+ kind: "Async"
512
+ }
513
+ },
514
+ {
515
+ channelName: aiSDKChannels.streamObjectSync.channelName,
516
+ module: {
517
+ name: "ai",
518
+ versionRange: ">=4.0.0",
519
+ filePath: "dist/index.js"
520
+ },
521
+ functionQuery: {
522
+ functionName: "streamObject",
523
+ kind: "Sync"
524
+ }
525
+ },
526
+ // Agent.generate - async method (v5 only)
527
+ // The compiled AI SDK bundle emits this as an anonymous class method, so we
528
+ // target the first async `generate` method in the file instead of a class name.
529
+ {
530
+ channelName: aiSDKChannels.agentGenerate.channelName,
531
+ module: {
532
+ name: "ai",
533
+ versionRange: ">=5.0.0 <6.0.0",
534
+ filePath: "dist/index.mjs"
535
+ },
536
+ functionQuery: {
537
+ methodName: "generate",
538
+ kind: "Async",
539
+ index: 0
540
+ }
541
+ },
542
+ {
543
+ channelName: aiSDKChannels.agentGenerate.channelName,
544
+ module: {
545
+ name: "ai",
546
+ versionRange: ">=5.0.0 <6.0.0",
547
+ filePath: "dist/index.js"
548
+ },
549
+ functionQuery: {
550
+ methodName: "generate",
551
+ kind: "Async",
552
+ index: 0
553
+ }
554
+ },
555
+ // Agent.stream - sync method (v5 only)
556
+ // The compiled AI SDK bundle emits this as an anonymous class method, so we
557
+ // target the first sync `stream` method in the file instead of a class name.
558
+ {
559
+ channelName: aiSDKChannels.agentStreamSync.channelName,
560
+ module: {
561
+ name: "ai",
562
+ versionRange: ">=5.0.0 <6.0.0",
563
+ filePath: "dist/index.mjs"
564
+ },
565
+ functionQuery: {
566
+ methodName: "stream",
567
+ kind: "Sync",
568
+ index: 0
569
+ }
570
+ },
571
+ {
572
+ channelName: aiSDKChannels.agentStreamSync.channelName,
573
+ module: {
574
+ name: "ai",
575
+ versionRange: ">=5.0.0 <6.0.0",
576
+ filePath: "dist/index.js"
577
+ },
578
+ functionQuery: {
579
+ methodName: "stream",
580
+ kind: "Sync",
581
+ index: 0
582
+ }
583
+ },
584
+ // ToolLoopAgent.generate - async method (v6 only, Experimental_Agent is an alias)
585
+ // The compiled AI SDK bundle emits this as an anonymous class method, so we
586
+ // target the first async `generate` method in the file instead of a class name.
587
+ {
588
+ channelName: aiSDKChannels.toolLoopAgentGenerate.channelName,
589
+ module: {
590
+ name: "ai",
591
+ versionRange: ">=6.0.0 <7.0.0",
592
+ filePath: "dist/index.mjs"
593
+ },
594
+ functionQuery: {
595
+ methodName: "generate",
596
+ kind: "Async",
597
+ index: 0
598
+ }
599
+ },
600
+ {
601
+ channelName: aiSDKChannels.toolLoopAgentGenerate.channelName,
602
+ module: {
603
+ name: "ai",
604
+ versionRange: ">=6.0.0 <7.0.0",
605
+ filePath: "dist/index.js"
606
+ },
607
+ functionQuery: {
608
+ methodName: "generate",
609
+ kind: "Async",
610
+ index: 0
611
+ }
612
+ },
613
+ // ToolLoopAgent.stream - async method (v6 only, Experimental_Agent is an alias)
614
+ // The compiled AI SDK bundle emits this as an anonymous class method, so we
615
+ // target the first async `stream` method in the file instead of a class name.
616
+ {
617
+ channelName: aiSDKChannels.toolLoopAgentStream.channelName,
618
+ module: {
619
+ name: "ai",
620
+ versionRange: ">=6.0.0 <7.0.0",
621
+ filePath: "dist/index.mjs"
622
+ },
623
+ functionQuery: {
624
+ methodName: "stream",
625
+ kind: "Async",
626
+ index: 0
627
+ }
628
+ },
629
+ {
630
+ channelName: aiSDKChannels.toolLoopAgentStream.channelName,
631
+ module: {
632
+ name: "ai",
633
+ versionRange: ">=6.0.0 <7.0.0",
634
+ filePath: "dist/index.js"
635
+ },
636
+ functionQuery: {
637
+ methodName: "stream",
638
+ kind: "Async",
639
+ index: 0
640
+ }
641
+ }
642
+ ];
643
+
644
+ // src/instrumentation/plugins/anthropic-channels.ts
645
+ var anthropicChannels = defineChannels("@anthropic-ai/sdk", {
646
+ messagesCreate: channel({
647
+ channelName: "messages.create",
648
+ kind: "async"
649
+ }),
399
650
  betaMessagesCreate: channel({
400
651
  channelName: "beta.messages.create",
401
652
  kind: "async"
@@ -450,535 +701,1015 @@ var anthropicConfigs = [
450
701
  kind: "Async"
451
702
  }
452
703
  },
453
- // Beta Messages API - toolRunner (sync helper returning async iterable/thenable)
704
+ // Beta Messages API - toolRunner (sync helper returning async iterable/thenable)
705
+ {
706
+ channelName: anthropicChannels.betaMessagesToolRunner.channelName,
707
+ module: {
708
+ name: "@anthropic-ai/sdk",
709
+ versionRange: ">=0.39.0",
710
+ filePath: "resources/beta/messages/messages.mjs"
711
+ },
712
+ functionQuery: {
713
+ className: "Messages",
714
+ methodName: "toolRunner",
715
+ kind: "Sync"
716
+ }
717
+ }
718
+ ];
719
+
720
+ // src/instrumentation/plugins/claude-agent-sdk-channels.ts
721
+ var claudeAgentSDKChannels = defineChannels(
722
+ "@anthropic-ai/claude-agent-sdk",
723
+ {
724
+ query: channel({
725
+ channelName: "query",
726
+ kind: "sync-stream"
727
+ })
728
+ }
729
+ );
730
+
731
+ // src/auto-instrumentations/configs/claude-agent-sdk.ts
732
+ var claudeAgentSDKConfigs = [
733
+ // query - Main entry point for agent interactions. The SDK returns an async
734
+ // iterable, but the exported query function itself is synchronous.
735
+ {
736
+ channelName: claudeAgentSDKChannels.query.channelName,
737
+ module: {
738
+ name: "@anthropic-ai/claude-agent-sdk",
739
+ versionRange: ">=0.1.0 <0.2.0",
740
+ filePath: "sdk.mjs"
741
+ },
742
+ functionQuery: {
743
+ functionName: "query",
744
+ kind: "Sync"
745
+ }
746
+ },
747
+ {
748
+ channelName: claudeAgentSDKChannels.query.channelName,
749
+ module: {
750
+ name: "@anthropic-ai/claude-agent-sdk",
751
+ versionRange: ">=0.2.0",
752
+ filePath: "sdk.mjs"
753
+ },
754
+ functionQuery: {
755
+ functionName: "query",
756
+ kind: "Sync",
757
+ isExportAlias: true
758
+ }
759
+ }
760
+ ];
761
+
762
+ // src/instrumentation/plugins/cohere-channels.ts
763
+ var cohereChannels = defineChannels("cohere-ai", {
764
+ chat: channel({
765
+ channelName: "chat",
766
+ kind: "async"
767
+ }),
768
+ chatStream: channel({
769
+ channelName: "chatStream",
770
+ kind: "async"
771
+ }),
772
+ embed: channel({
773
+ channelName: "embed",
774
+ kind: "async"
775
+ }),
776
+ rerank: channel({
777
+ channelName: "rerank",
778
+ kind: "async"
779
+ })
780
+ });
781
+
782
+ // src/auto-instrumentations/configs/cohere.ts
783
+ var cohereConfigs = [
784
+ {
785
+ channelName: cohereChannels.chat.channelName,
786
+ module: {
787
+ name: "cohere-ai",
788
+ versionRange: ">=7.0.0 <8.0.0",
789
+ filePath: "Client.js"
790
+ },
791
+ functionQuery: {
792
+ className: "CohereClient",
793
+ methodName: "chat",
794
+ kind: "Async"
795
+ }
796
+ },
797
+ {
798
+ channelName: cohereChannels.chat.channelName,
799
+ module: {
800
+ name: "cohere-ai",
801
+ versionRange: ">=7.0.0 <7.21.0",
802
+ filePath: "api/resources/v2/client/Client.js"
803
+ },
804
+ functionQuery: {
805
+ className: "V2",
806
+ methodName: "chat",
807
+ kind: "Async"
808
+ }
809
+ },
810
+ {
811
+ channelName: cohereChannels.chat.channelName,
812
+ module: {
813
+ name: "cohere-ai",
814
+ versionRange: ">=7.21.0 <8.0.0",
815
+ filePath: "api/resources/v2/client/Client.js"
816
+ },
817
+ functionQuery: {
818
+ className: "V2Client",
819
+ methodName: "chat",
820
+ kind: "Async"
821
+ }
822
+ },
823
+ {
824
+ channelName: cohereChannels.chat.channelName,
825
+ module: {
826
+ name: "cohere-ai",
827
+ versionRange: ">=8.0.0 <9.0.0",
828
+ filePath: "Client.js"
829
+ },
830
+ functionQuery: {
831
+ className: "CohereClient",
832
+ methodName: "chat",
833
+ kind: "Async"
834
+ }
835
+ },
836
+ {
837
+ channelName: cohereChannels.chat.channelName,
838
+ module: {
839
+ name: "cohere-ai",
840
+ versionRange: ">=8.0.0 <9.0.0",
841
+ filePath: "api/resources/v2/client/Client.js"
842
+ },
843
+ functionQuery: {
844
+ className: "V2Client",
845
+ methodName: "chat",
846
+ kind: "Async"
847
+ }
848
+ },
849
+ {
850
+ channelName: cohereChannels.chatStream.channelName,
851
+ module: {
852
+ name: "cohere-ai",
853
+ versionRange: ">=7.0.0 <8.0.0",
854
+ filePath: "Client.js"
855
+ },
856
+ functionQuery: {
857
+ className: "CohereClient",
858
+ methodName: "chatStream",
859
+ kind: "Async"
860
+ }
861
+ },
862
+ {
863
+ channelName: cohereChannels.chatStream.channelName,
864
+ module: {
865
+ name: "cohere-ai",
866
+ versionRange: ">=7.0.0 <7.21.0",
867
+ filePath: "api/resources/v2/client/Client.js"
868
+ },
869
+ functionQuery: {
870
+ className: "V2",
871
+ methodName: "chatStream",
872
+ kind: "Async"
873
+ }
874
+ },
875
+ {
876
+ channelName: cohereChannels.chatStream.channelName,
877
+ module: {
878
+ name: "cohere-ai",
879
+ versionRange: ">=7.21.0 <8.0.0",
880
+ filePath: "api/resources/v2/client/Client.js"
881
+ },
882
+ functionQuery: {
883
+ className: "V2Client",
884
+ methodName: "chatStream",
885
+ kind: "Async"
886
+ }
887
+ },
888
+ {
889
+ channelName: cohereChannels.chatStream.channelName,
890
+ module: {
891
+ name: "cohere-ai",
892
+ versionRange: ">=8.0.0 <9.0.0",
893
+ filePath: "Client.js"
894
+ },
895
+ functionQuery: {
896
+ className: "CohereClient",
897
+ methodName: "chatStream",
898
+ kind: "Async"
899
+ }
900
+ },
901
+ {
902
+ channelName: cohereChannels.chatStream.channelName,
903
+ module: {
904
+ name: "cohere-ai",
905
+ versionRange: ">=8.0.0 <9.0.0",
906
+ filePath: "api/resources/v2/client/Client.js"
907
+ },
908
+ functionQuery: {
909
+ className: "V2Client",
910
+ methodName: "chatStream",
911
+ kind: "Async"
912
+ }
913
+ },
914
+ {
915
+ channelName: cohereChannels.embed.channelName,
916
+ module: {
917
+ name: "cohere-ai",
918
+ versionRange: ">=7.0.0 <8.0.0",
919
+ filePath: "Client.js"
920
+ },
921
+ functionQuery: {
922
+ className: "CohereClient",
923
+ methodName: "embed",
924
+ kind: "Async"
925
+ }
926
+ },
927
+ {
928
+ channelName: cohereChannels.embed.channelName,
929
+ module: {
930
+ name: "cohere-ai",
931
+ versionRange: ">=7.0.0 <7.21.0",
932
+ filePath: "api/resources/v2/client/Client.js"
933
+ },
934
+ functionQuery: {
935
+ className: "V2",
936
+ methodName: "embed",
937
+ kind: "Async"
938
+ }
939
+ },
940
+ {
941
+ channelName: cohereChannels.embed.channelName,
942
+ module: {
943
+ name: "cohere-ai",
944
+ versionRange: ">=7.21.0 <8.0.0",
945
+ filePath: "api/resources/v2/client/Client.js"
946
+ },
947
+ functionQuery: {
948
+ className: "V2Client",
949
+ methodName: "embed",
950
+ kind: "Async"
951
+ }
952
+ },
953
+ {
954
+ channelName: cohereChannels.embed.channelName,
955
+ module: {
956
+ name: "cohere-ai",
957
+ versionRange: ">=8.0.0 <9.0.0",
958
+ filePath: "Client.js"
959
+ },
960
+ functionQuery: {
961
+ className: "CohereClient",
962
+ methodName: "embed",
963
+ kind: "Async"
964
+ }
965
+ },
966
+ {
967
+ channelName: cohereChannels.embed.channelName,
968
+ module: {
969
+ name: "cohere-ai",
970
+ versionRange: ">=8.0.0 <9.0.0",
971
+ filePath: "api/resources/v2/client/Client.js"
972
+ },
973
+ functionQuery: {
974
+ className: "V2Client",
975
+ methodName: "embed",
976
+ kind: "Async"
977
+ }
978
+ },
979
+ {
980
+ channelName: cohereChannels.rerank.channelName,
981
+ module: {
982
+ name: "cohere-ai",
983
+ versionRange: ">=7.0.0 <8.0.0",
984
+ filePath: "Client.js"
985
+ },
986
+ functionQuery: {
987
+ className: "CohereClient",
988
+ methodName: "rerank",
989
+ kind: "Async"
990
+ }
991
+ },
992
+ {
993
+ channelName: cohereChannels.rerank.channelName,
994
+ module: {
995
+ name: "cohere-ai",
996
+ versionRange: ">=7.0.0 <7.21.0",
997
+ filePath: "api/resources/v2/client/Client.js"
998
+ },
999
+ functionQuery: {
1000
+ className: "V2",
1001
+ methodName: "rerank",
1002
+ kind: "Async"
1003
+ }
1004
+ },
1005
+ {
1006
+ channelName: cohereChannels.rerank.channelName,
1007
+ module: {
1008
+ name: "cohere-ai",
1009
+ versionRange: ">=7.21.0 <8.0.0",
1010
+ filePath: "api/resources/v2/client/Client.js"
1011
+ },
1012
+ functionQuery: {
1013
+ className: "V2Client",
1014
+ methodName: "rerank",
1015
+ kind: "Async"
1016
+ }
1017
+ },
1018
+ {
1019
+ channelName: cohereChannels.rerank.channelName,
1020
+ module: {
1021
+ name: "cohere-ai",
1022
+ versionRange: ">=8.0.0 <9.0.0",
1023
+ filePath: "Client.js"
1024
+ },
1025
+ functionQuery: {
1026
+ className: "CohereClient",
1027
+ methodName: "rerank",
1028
+ kind: "Async"
1029
+ }
1030
+ },
1031
+ {
1032
+ channelName: cohereChannels.rerank.channelName,
1033
+ module: {
1034
+ name: "cohere-ai",
1035
+ versionRange: ">=8.0.0 <9.0.0",
1036
+ filePath: "api/resources/v2/client/Client.js"
1037
+ },
1038
+ functionQuery: {
1039
+ className: "V2Client",
1040
+ methodName: "rerank",
1041
+ kind: "Async"
1042
+ }
1043
+ }
1044
+ ];
1045
+
1046
+ // src/instrumentation/plugins/cursor-sdk-channels.ts
1047
+ var cursorSDKChannels = defineChannels("@cursor/sdk", {
1048
+ create: channel({
1049
+ channelName: "Agent.create",
1050
+ kind: "async"
1051
+ }),
1052
+ resume: channel({
1053
+ channelName: "Agent.resume",
1054
+ kind: "async"
1055
+ }),
1056
+ prompt: channel({
1057
+ channelName: "Agent.prompt",
1058
+ kind: "async"
1059
+ }),
1060
+ send: channel({
1061
+ channelName: "agent.send",
1062
+ kind: "async"
1063
+ })
1064
+ });
1065
+
1066
+ // src/auto-instrumentations/configs/cursor-sdk.ts
1067
+ var cursorSDKVersionRange = ">=1.0.7 <2.0.0";
1068
+ var cursorSDKEntrypoints = ["dist/esm/index.js", "dist/cjs/index.js"];
1069
+ var cursorSDKConfigs = cursorSDKEntrypoints.flatMap((filePath) => [
1070
+ {
1071
+ channelName: cursorSDKChannels.create.channelName,
1072
+ module: {
1073
+ name: "@cursor/sdk",
1074
+ versionRange: cursorSDKVersionRange,
1075
+ filePath
1076
+ },
1077
+ functionQuery: {
1078
+ className: "Agent",
1079
+ methodName: "create",
1080
+ kind: "Async"
1081
+ }
1082
+ },
1083
+ {
1084
+ channelName: cursorSDKChannels.resume.channelName,
1085
+ module: {
1086
+ name: "@cursor/sdk",
1087
+ versionRange: cursorSDKVersionRange,
1088
+ filePath
1089
+ },
1090
+ functionQuery: {
1091
+ className: "Agent",
1092
+ methodName: "resume",
1093
+ kind: "Async"
1094
+ }
1095
+ },
1096
+ {
1097
+ channelName: cursorSDKChannels.prompt.channelName,
1098
+ module: {
1099
+ name: "@cursor/sdk",
1100
+ versionRange: cursorSDKVersionRange,
1101
+ filePath
1102
+ },
1103
+ functionQuery: {
1104
+ className: "Agent",
1105
+ methodName: "prompt",
1106
+ kind: "Async"
1107
+ }
1108
+ }
1109
+ ]);
1110
+
1111
+ // src/instrumentation/plugins/flue-channels.ts
1112
+ var flueChannels = defineChannels("@flue/runtime", {
1113
+ createContext: channel({
1114
+ channelName: "createFlueContext",
1115
+ kind: "sync-stream"
1116
+ }),
1117
+ openSession: channel({
1118
+ channelName: "Harness.openSession",
1119
+ kind: "async"
1120
+ }),
1121
+ contextEvent: channel({
1122
+ channelName: "context.event",
1123
+ kind: "sync-stream"
1124
+ }),
1125
+ prompt: channel({
1126
+ channelName: "session.prompt",
1127
+ kind: "async"
1128
+ }),
1129
+ skill: channel({
1130
+ channelName: "session.skill",
1131
+ kind: "async"
1132
+ }),
1133
+ task: channel({
1134
+ channelName: "session.task",
1135
+ kind: "async"
1136
+ }),
1137
+ compact: channel({
1138
+ channelName: "session.compact",
1139
+ kind: "async"
1140
+ })
1141
+ });
1142
+
1143
+ // src/auto-instrumentations/configs/flue.ts
1144
+ var flueVersionRange = ">=0.7.0 <0.8.0";
1145
+ var flueConfigs = [
1146
+ {
1147
+ channelName: flueChannels.createContext.channelName,
1148
+ module: {
1149
+ name: "@flue/runtime",
1150
+ versionRange: flueVersionRange,
1151
+ filePath: "dist/internal.mjs"
1152
+ },
1153
+ functionQuery: {
1154
+ functionName: "createFlueContext",
1155
+ kind: "Sync"
1156
+ }
1157
+ },
454
1158
  {
455
- channelName: anthropicChannels.betaMessagesToolRunner.channelName,
1159
+ channelName: flueChannels.openSession.channelName,
456
1160
  module: {
457
- name: "@anthropic-ai/sdk",
458
- versionRange: ">=0.39.0",
459
- filePath: "resources/beta/messages/messages.mjs"
1161
+ name: "@flue/runtime",
1162
+ versionRange: flueVersionRange,
1163
+ filePath: "dist/internal.mjs"
460
1164
  },
461
1165
  functionQuery: {
462
- className: "Messages",
463
- methodName: "toolRunner",
464
- kind: "Sync"
1166
+ className: "Harness",
1167
+ methodName: "openSession",
1168
+ kind: "Async"
465
1169
  }
466
1170
  }
467
1171
  ];
468
1172
 
469
- // src/instrumentation/plugins/ai-sdk-channels.ts
470
- var aiSDKChannels = defineChannels("ai", {
471
- generateText: channel({
472
- channelName: "generateText",
1173
+ // src/instrumentation/plugins/genkit-channels.ts
1174
+ var genkitChannels = defineChannels("@genkit-ai/ai", {
1175
+ generate: channel({
1176
+ channelName: "generate",
473
1177
  kind: "async"
474
1178
  }),
475
- streamText: channel({
476
- channelName: "streamText",
477
- kind: "async"
478
- }),
479
- streamTextSync: channel({
480
- channelName: "streamText.sync",
1179
+ generateStream: channel({
1180
+ channelName: "generateStream",
481
1181
  kind: "sync-stream"
482
1182
  }),
483
- generateObject: channel({
484
- channelName: "generateObject",
485
- kind: "async"
486
- }),
487
- streamObject: channel({
488
- channelName: "streamObject",
1183
+ embed: channel({
1184
+ channelName: "embed",
489
1185
  kind: "async"
490
1186
  }),
491
- streamObjectSync: channel({
492
- channelName: "streamObject.sync",
493
- kind: "sync-stream"
494
- }),
495
- embed: channel(
496
- {
497
- channelName: "embed",
498
- kind: "async"
499
- }
500
- ),
501
1187
  embedMany: channel({
502
1188
  channelName: "embedMany",
503
1189
  kind: "async"
504
1190
  }),
505
- rerank: channel({
506
- channelName: "rerank",
507
- kind: "async"
508
- }),
509
- agentGenerate: channel({
510
- channelName: "Agent.generate",
511
- kind: "async"
512
- }),
513
- agentStream: channel({
514
- channelName: "Agent.stream",
1191
+ actionRun: channel({
1192
+ channelName: "action.run",
515
1193
  kind: "async"
516
1194
  }),
517
- agentStreamSync: channel({
518
- channelName: "Agent.stream.sync",
1195
+ actionStream: channel({
1196
+ channelName: "action.stream",
519
1197
  kind: "sync-stream"
520
- }),
521
- toolLoopAgentGenerate: channel({
522
- channelName: "ToolLoopAgent.generate",
523
- kind: "async"
524
- }),
525
- toolLoopAgentStream: channel({
526
- channelName: "ToolLoopAgent.stream",
1198
+ })
1199
+ });
1200
+ var genkitCoreChannels = defineChannels("@genkit-ai/core", {
1201
+ actionSpan: channel({
1202
+ channelName: "action.span",
527
1203
  kind: "async"
528
1204
  })
529
1205
  });
530
1206
 
531
- // src/auto-instrumentations/configs/ai-sdk.ts
532
- var aiSDKConfigs = [
533
- // generateText - async function
1207
+ // src/auto-instrumentations/configs/genkit.ts
1208
+ var genkitVersionRange = ">=1.0.0 <2.0.0";
1209
+ var genkitConfigs = [
534
1210
  {
535
- channelName: aiSDKChannels.generateText.channelName,
1211
+ channelName: genkitChannels.generate.channelName,
536
1212
  module: {
537
- name: "ai",
538
- versionRange: ">=3.0.0",
539
- filePath: "dist/index.mjs"
1213
+ name: "@genkit-ai/ai",
1214
+ versionRange: genkitVersionRange,
1215
+ filePath: "lib/genkit-ai.mjs"
540
1216
  },
541
1217
  functionQuery: {
542
- functionName: "generateText",
1218
+ className: "GenkitAI",
1219
+ methodName: "generate",
543
1220
  kind: "Async"
544
1221
  }
545
1222
  },
546
1223
  {
547
- channelName: aiSDKChannels.generateText.channelName,
1224
+ channelName: genkitChannels.generate.channelName,
548
1225
  module: {
549
- name: "ai",
550
- versionRange: ">=3.0.0",
551
- filePath: "dist/index.js"
1226
+ name: "@genkit-ai/ai",
1227
+ versionRange: genkitVersionRange,
1228
+ filePath: "lib/genkit-ai.js"
552
1229
  },
553
1230
  functionQuery: {
554
- functionName: "generateText",
1231
+ className: "GenkitAI",
1232
+ methodName: "generate",
555
1233
  kind: "Async"
556
1234
  }
557
1235
  },
558
- // streamText - async function (v3 only, before the sync refactor in v4)
559
1236
  {
560
- channelName: aiSDKChannels.streamText.channelName,
1237
+ channelName: genkitChannels.generateStream.channelName,
561
1238
  module: {
562
- name: "ai",
563
- versionRange: ">=3.0.0 <4.0.0",
564
- filePath: "dist/index.mjs"
1239
+ name: "@genkit-ai/ai",
1240
+ versionRange: genkitVersionRange,
1241
+ filePath: "lib/genkit-ai.mjs"
565
1242
  },
566
1243
  functionQuery: {
567
- functionName: "streamText",
568
- kind: "Async"
1244
+ className: "GenkitAI",
1245
+ methodName: "generateStream",
1246
+ kind: "Sync"
569
1247
  }
570
1248
  },
571
- // streamText - sync function returning stream (v4+)
572
1249
  {
573
- channelName: aiSDKChannels.streamTextSync.channelName,
1250
+ channelName: genkitChannels.generateStream.channelName,
574
1251
  module: {
575
- name: "ai",
576
- versionRange: ">=4.0.0",
577
- filePath: "dist/index.mjs"
1252
+ name: "@genkit-ai/ai",
1253
+ versionRange: genkitVersionRange,
1254
+ filePath: "lib/genkit-ai.js"
578
1255
  },
579
1256
  functionQuery: {
580
- functionName: "streamText",
1257
+ className: "GenkitAI",
1258
+ methodName: "generateStream",
581
1259
  kind: "Sync"
582
1260
  }
583
1261
  },
584
1262
  {
585
- channelName: aiSDKChannels.streamText.channelName,
1263
+ channelName: genkitChannels.embed.channelName,
586
1264
  module: {
587
- name: "ai",
588
- versionRange: ">=3.0.0 <4.0.0",
589
- filePath: "dist/index.js"
1265
+ name: "@genkit-ai/ai",
1266
+ versionRange: genkitVersionRange,
1267
+ filePath: "lib/genkit-ai.mjs"
590
1268
  },
591
1269
  functionQuery: {
592
- functionName: "streamText",
1270
+ className: "GenkitAI",
1271
+ methodName: "embed",
593
1272
  kind: "Async"
594
1273
  }
595
1274
  },
596
1275
  {
597
- channelName: aiSDKChannels.streamTextSync.channelName,
1276
+ channelName: genkitChannels.embed.channelName,
598
1277
  module: {
599
- name: "ai",
600
- versionRange: ">=4.0.0",
601
- filePath: "dist/index.js"
1278
+ name: "@genkit-ai/ai",
1279
+ versionRange: genkitVersionRange,
1280
+ filePath: "lib/genkit-ai.js"
602
1281
  },
603
1282
  functionQuery: {
604
- functionName: "streamText",
605
- kind: "Sync"
1283
+ className: "GenkitAI",
1284
+ methodName: "embed",
1285
+ kind: "Async"
606
1286
  }
607
1287
  },
608
- // generateObject - async function
609
1288
  {
610
- channelName: aiSDKChannels.generateObject.channelName,
1289
+ channelName: genkitChannels.embedMany.channelName,
611
1290
  module: {
612
- name: "ai",
613
- versionRange: ">=3.0.0",
614
- filePath: "dist/index.mjs"
1291
+ name: "@genkit-ai/ai",
1292
+ versionRange: genkitVersionRange,
1293
+ filePath: "lib/genkit-ai.mjs"
615
1294
  },
616
1295
  functionQuery: {
617
- functionName: "generateObject",
1296
+ className: "GenkitAI",
1297
+ methodName: "embedMany",
618
1298
  kind: "Async"
619
1299
  }
620
1300
  },
621
1301
  {
622
- channelName: aiSDKChannels.generateObject.channelName,
1302
+ channelName: genkitChannels.embedMany.channelName,
623
1303
  module: {
624
- name: "ai",
625
- versionRange: ">=3.0.0",
626
- filePath: "dist/index.js"
1304
+ name: "@genkit-ai/ai",
1305
+ versionRange: genkitVersionRange,
1306
+ filePath: "lib/genkit-ai.js"
627
1307
  },
628
1308
  functionQuery: {
629
- functionName: "generateObject",
1309
+ className: "GenkitAI",
1310
+ methodName: "embedMany",
630
1311
  kind: "Async"
631
1312
  }
632
1313
  },
633
- // embed - async function
634
1314
  {
635
- channelName: aiSDKChannels.embed.channelName,
1315
+ channelName: genkitChannels.actionRun.channelName,
636
1316
  module: {
637
- name: "ai",
638
- versionRange: ">=3.0.0",
639
- filePath: "dist/index.mjs"
1317
+ name: "@genkit-ai/ai",
1318
+ versionRange: genkitVersionRange,
1319
+ filePath: "lib/genkit-ai.mjs"
640
1320
  },
641
1321
  functionQuery: {
642
- functionName: "embed",
1322
+ className: "GenkitAI",
1323
+ methodName: "run",
643
1324
  kind: "Async"
644
1325
  }
645
1326
  },
646
1327
  {
647
- channelName: aiSDKChannels.embed.channelName,
1328
+ channelName: genkitChannels.actionRun.channelName,
648
1329
  module: {
649
- name: "ai",
650
- versionRange: ">=3.0.0",
651
- filePath: "dist/index.js"
1330
+ name: "@genkit-ai/ai",
1331
+ versionRange: genkitVersionRange,
1332
+ filePath: "lib/genkit-ai.js"
652
1333
  },
653
1334
  functionQuery: {
654
- functionName: "embed",
1335
+ className: "GenkitAI",
1336
+ methodName: "run",
655
1337
  kind: "Async"
656
1338
  }
657
1339
  },
658
- // embedMany - async function
659
1340
  {
660
- channelName: aiSDKChannels.embedMany.channelName,
1341
+ channelName: genkitCoreChannels.actionSpan.channelName,
661
1342
  module: {
662
- name: "ai",
663
- versionRange: ">=3.0.0",
664
- filePath: "dist/index.mjs"
1343
+ name: "@genkit-ai/core",
1344
+ versionRange: genkitVersionRange,
1345
+ filePath: "lib/tracing/instrumentation.mjs"
665
1346
  },
666
1347
  functionQuery: {
667
- functionName: "embedMany",
1348
+ functionName: "runInNewSpan",
668
1349
  kind: "Async"
669
1350
  }
670
1351
  },
671
1352
  {
672
- channelName: aiSDKChannels.embedMany.channelName,
1353
+ channelName: genkitCoreChannels.actionSpan.channelName,
673
1354
  module: {
674
- name: "ai",
675
- versionRange: ">=3.0.0",
676
- filePath: "dist/index.js"
1355
+ name: "@genkit-ai/core",
1356
+ versionRange: genkitVersionRange,
1357
+ filePath: "lib/tracing/instrumentation.js"
677
1358
  },
678
1359
  functionQuery: {
679
- functionName: "embedMany",
1360
+ functionName: "runInNewSpan",
680
1361
  kind: "Async"
681
1362
  }
682
- },
683
- // rerank - async function
1363
+ }
1364
+ ];
1365
+
1366
+ // src/instrumentation/plugins/github-copilot-channels.ts
1367
+ var gitHubCopilotChannels = defineChannels("@github/copilot-sdk", {
1368
+ createSession: channel({
1369
+ channelName: "client.createSession",
1370
+ kind: "async"
1371
+ }),
1372
+ resumeSession: channel({
1373
+ channelName: "client.resumeSession",
1374
+ kind: "async"
1375
+ }),
1376
+ sendAndWait: channel({
1377
+ channelName: "session.sendAndWait",
1378
+ kind: "async"
1379
+ })
1380
+ });
1381
+
1382
+ // src/auto-instrumentations/configs/github-copilot.ts
1383
+ var gitHubCopilotConfigs = [
1384
+ // ESM: CopilotClient.createSession
684
1385
  {
685
- channelName: aiSDKChannels.rerank.channelName,
1386
+ channelName: gitHubCopilotChannels.createSession.channelName,
686
1387
  module: {
687
- name: "ai",
688
- versionRange: ">=5.0.0",
689
- filePath: "dist/index.mjs"
1388
+ name: "@github/copilot-sdk",
1389
+ versionRange: ">=0.3.0",
1390
+ filePath: "dist/client.js"
690
1391
  },
691
1392
  functionQuery: {
692
- functionName: "rerank",
1393
+ className: "CopilotClient",
1394
+ methodName: "createSession",
693
1395
  kind: "Async"
694
1396
  }
695
1397
  },
1398
+ // CJS: CopilotClient.createSession
696
1399
  {
697
- channelName: aiSDKChannels.rerank.channelName,
1400
+ channelName: gitHubCopilotChannels.createSession.channelName,
698
1401
  module: {
699
- name: "ai",
700
- versionRange: ">=5.0.0",
701
- filePath: "dist/index.js"
1402
+ name: "@github/copilot-sdk",
1403
+ versionRange: ">=0.3.0",
1404
+ filePath: "dist/cjs/client.js"
702
1405
  },
703
1406
  functionQuery: {
704
- functionName: "rerank",
1407
+ className: "CopilotClient",
1408
+ methodName: "createSession",
705
1409
  kind: "Async"
706
1410
  }
707
1411
  },
708
- // streamObject - async function (v3 only, before the sync refactor in v4)
1412
+ // ESM: CopilotClient.resumeSession
709
1413
  {
710
- channelName: aiSDKChannels.streamObject.channelName,
1414
+ channelName: gitHubCopilotChannels.resumeSession.channelName,
711
1415
  module: {
712
- name: "ai",
713
- versionRange: ">=3.0.0 <4.0.0",
714
- filePath: "dist/index.mjs"
1416
+ name: "@github/copilot-sdk",
1417
+ versionRange: ">=0.3.0",
1418
+ filePath: "dist/client.js"
715
1419
  },
716
1420
  functionQuery: {
717
- functionName: "streamObject",
1421
+ className: "CopilotClient",
1422
+ methodName: "resumeSession",
718
1423
  kind: "Async"
719
1424
  }
720
1425
  },
721
- // streamObject - sync function returning stream (v4+)
1426
+ // CJS: CopilotClient.resumeSession
722
1427
  {
723
- channelName: aiSDKChannels.streamObjectSync.channelName,
1428
+ channelName: gitHubCopilotChannels.resumeSession.channelName,
724
1429
  module: {
725
- name: "ai",
726
- versionRange: ">=4.0.0",
727
- filePath: "dist/index.mjs"
1430
+ name: "@github/copilot-sdk",
1431
+ versionRange: ">=0.3.0",
1432
+ filePath: "dist/cjs/client.js"
728
1433
  },
729
1434
  functionQuery: {
730
- functionName: "streamObject",
731
- kind: "Sync"
1435
+ className: "CopilotClient",
1436
+ methodName: "resumeSession",
1437
+ kind: "Async"
732
1438
  }
733
1439
  },
1440
+ // ESM: CopilotSession.sendAndWait
734
1441
  {
735
- channelName: aiSDKChannels.streamObject.channelName,
1442
+ channelName: gitHubCopilotChannels.sendAndWait.channelName,
736
1443
  module: {
737
- name: "ai",
738
- versionRange: ">=3.0.0 <4.0.0",
739
- filePath: "dist/index.js"
1444
+ name: "@github/copilot-sdk",
1445
+ versionRange: ">=0.3.0",
1446
+ filePath: "dist/session.js"
740
1447
  },
741
1448
  functionQuery: {
742
- functionName: "streamObject",
1449
+ className: "CopilotSession",
1450
+ methodName: "sendAndWait",
743
1451
  kind: "Async"
744
1452
  }
745
1453
  },
1454
+ // CJS: CopilotSession.sendAndWait
746
1455
  {
747
- channelName: aiSDKChannels.streamObjectSync.channelName,
1456
+ channelName: gitHubCopilotChannels.sendAndWait.channelName,
748
1457
  module: {
749
- name: "ai",
750
- versionRange: ">=4.0.0",
751
- filePath: "dist/index.js"
1458
+ name: "@github/copilot-sdk",
1459
+ versionRange: ">=0.3.0",
1460
+ filePath: "dist/cjs/session.js"
752
1461
  },
753
1462
  functionQuery: {
754
- functionName: "streamObject",
1463
+ className: "CopilotSession",
1464
+ methodName: "sendAndWait",
1465
+ kind: "Async"
1466
+ }
1467
+ }
1468
+ ];
1469
+
1470
+ // src/instrumentation/plugins/google-adk-channels.ts
1471
+ var googleADKChannels = defineChannels("@google/adk", {
1472
+ runnerRunAsync: channel({
1473
+ channelName: "runner.runAsync",
1474
+ kind: "sync-stream"
1475
+ }),
1476
+ agentRunAsync: channel({
1477
+ channelName: "agent.runAsync",
1478
+ kind: "sync-stream"
1479
+ }),
1480
+ toolRunAsync: channel({
1481
+ channelName: "tool.runAsync",
1482
+ kind: "async"
1483
+ })
1484
+ });
1485
+
1486
+ // src/auto-instrumentations/configs/google-adk.ts
1487
+ var googleADKVersionRange = ">=0.1.0";
1488
+ var googleADKBundledIndexV06VersionRange = ">=0.6.1 <0.7.0";
1489
+ var googleADKBundledIndexV1VersionRange = ">=1.0.0 <2.0.0";
1490
+ var googleADKConfigs = [
1491
+ // --- Runner.runAsync --- async generator, kind "Sync" + sync-stream channel
1492
+ // Runner.runAsync — ESM individual module file
1493
+ {
1494
+ channelName: googleADKChannels.runnerRunAsync.channelName,
1495
+ module: {
1496
+ name: "@google/adk",
1497
+ versionRange: googleADKVersionRange,
1498
+ filePath: "dist/esm/runner/runner.js"
1499
+ },
1500
+ functionQuery: {
1501
+ className: "Runner",
1502
+ methodName: "runAsync",
755
1503
  kind: "Sync"
756
1504
  }
757
1505
  },
758
- // Agent.generate - async method (v5 only)
759
- // The compiled AI SDK bundle emits this as an anonymous class method, so we
760
- // target the first async `generate` method in the file instead of a class name.
1506
+ // Runner.runAsync bundled CJS/ESM indexes
1507
+ // The bundled entrypoints minify class names, so target the 12th sync
1508
+ // `runAsync` method in file order rather than a class name. This mapping is
1509
+ // only validated against the current 0.6.x bundle layout, so keep the range
1510
+ // tight until we verify newer bundled outputs.
761
1511
  {
762
- channelName: aiSDKChannels.agentGenerate.channelName,
1512
+ channelName: googleADKChannels.runnerRunAsync.channelName,
763
1513
  module: {
764
- name: "ai",
765
- versionRange: ">=5.0.0 <6.0.0",
766
- filePath: "dist/index.mjs"
1514
+ name: "@google/adk",
1515
+ versionRange: googleADKBundledIndexV06VersionRange,
1516
+ filePath: "dist/cjs/index.js"
767
1517
  },
768
1518
  functionQuery: {
769
- methodName: "generate",
770
- kind: "Async",
771
- index: 0
1519
+ methodName: "runAsync",
1520
+ kind: "Sync",
1521
+ index: 11
772
1522
  }
773
1523
  },
774
1524
  {
775
- channelName: aiSDKChannels.agentGenerate.channelName,
1525
+ channelName: googleADKChannels.runnerRunAsync.channelName,
776
1526
  module: {
777
- name: "ai",
778
- versionRange: ">=5.0.0 <6.0.0",
779
- filePath: "dist/index.js"
1527
+ name: "@google/adk",
1528
+ versionRange: googleADKBundledIndexV06VersionRange,
1529
+ filePath: "dist/esm/index.js"
780
1530
  },
781
1531
  functionQuery: {
782
- methodName: "generate",
783
- kind: "Async",
784
- index: 0
1532
+ methodName: "runAsync",
1533
+ kind: "Sync",
1534
+ index: 11
785
1535
  }
786
1536
  },
787
- // Agent.stream - sync method (v5 only)
788
- // The compiled AI SDK bundle emits this as an anonymous class method, so we
789
- // target the first sync `stream` method in the file instead of a class name.
1537
+ // The 1.x bundled entrypoints still inline the runtime into index.js, but
1538
+ // the minified method order changed. These indices are verified against 1.0.0.
790
1539
  {
791
- channelName: aiSDKChannels.agentStreamSync.channelName,
1540
+ channelName: googleADKChannels.runnerRunAsync.channelName,
792
1541
  module: {
793
- name: "ai",
794
- versionRange: ">=5.0.0 <6.0.0",
795
- filePath: "dist/index.mjs"
1542
+ name: "@google/adk",
1543
+ versionRange: googleADKBundledIndexV1VersionRange,
1544
+ filePath: "dist/cjs/index.js"
796
1545
  },
797
1546
  functionQuery: {
798
- methodName: "stream",
1547
+ methodName: "runAsync",
799
1548
  kind: "Sync",
800
- index: 0
1549
+ index: 12
801
1550
  }
802
1551
  },
803
1552
  {
804
- channelName: aiSDKChannels.agentStreamSync.channelName,
1553
+ channelName: googleADKChannels.runnerRunAsync.channelName,
805
1554
  module: {
806
- name: "ai",
807
- versionRange: ">=5.0.0 <6.0.0",
808
- filePath: "dist/index.js"
1555
+ name: "@google/adk",
1556
+ versionRange: googleADKBundledIndexV1VersionRange,
1557
+ filePath: "dist/esm/index.js"
809
1558
  },
810
1559
  functionQuery: {
811
- methodName: "stream",
1560
+ methodName: "runAsync",
812
1561
  kind: "Sync",
813
- index: 0
1562
+ index: 12
814
1563
  }
815
1564
  },
816
- // ToolLoopAgent.generate - async method (v6 only, Experimental_Agent is an alias)
817
- // The compiled AI SDK bundle emits this as an anonymous class method, so we
818
- // target the first async `generate` method in the file instead of a class name.
1565
+ // --- BaseAgent.runAsync --- async generator, kind "Sync" + sync-stream channel
1566
+ // BaseAgent.runAsync ESM individual module file
819
1567
  {
820
- channelName: aiSDKChannels.toolLoopAgentGenerate.channelName,
1568
+ channelName: googleADKChannels.agentRunAsync.channelName,
821
1569
  module: {
822
- name: "ai",
823
- versionRange: ">=6.0.0 <7.0.0",
824
- filePath: "dist/index.mjs"
1570
+ name: "@google/adk",
1571
+ versionRange: googleADKVersionRange,
1572
+ filePath: "dist/esm/agents/base_agent.js"
825
1573
  },
826
1574
  functionQuery: {
827
- methodName: "generate",
828
- kind: "Async",
829
- index: 0
1575
+ className: "BaseAgent",
1576
+ methodName: "runAsync",
1577
+ kind: "Sync"
830
1578
  }
831
1579
  },
1580
+ // BaseAgent.runAsync — bundled CJS/ESM indexes
1581
+ // The bundled entrypoints minify class names, so target the first sync
1582
+ // `runAsync` method in file order rather than a class name. This mapping is
1583
+ // only validated against the current 0.6.x bundle layout, so keep the range
1584
+ // tight until we verify newer bundled outputs.
832
1585
  {
833
- channelName: aiSDKChannels.toolLoopAgentGenerate.channelName,
1586
+ channelName: googleADKChannels.agentRunAsync.channelName,
834
1587
  module: {
835
- name: "ai",
836
- versionRange: ">=6.0.0 <7.0.0",
837
- filePath: "dist/index.js"
1588
+ name: "@google/adk",
1589
+ versionRange: googleADKBundledIndexV06VersionRange,
1590
+ filePath: "dist/cjs/index.js"
1591
+ },
1592
+ functionQuery: {
1593
+ methodName: "runAsync",
1594
+ kind: "Sync",
1595
+ index: 0
1596
+ }
1597
+ },
1598
+ {
1599
+ channelName: googleADKChannels.agentRunAsync.channelName,
1600
+ module: {
1601
+ name: "@google/adk",
1602
+ versionRange: googleADKBundledIndexV06VersionRange,
1603
+ filePath: "dist/esm/index.js"
838
1604
  },
839
1605
  functionQuery: {
840
- methodName: "generate",
841
- kind: "Async",
1606
+ methodName: "runAsync",
1607
+ kind: "Sync",
842
1608
  index: 0
843
1609
  }
844
1610
  },
845
- // ToolLoopAgent.stream - async method (v6 only, Experimental_Agent is an alias)
846
- // The compiled AI SDK bundle emits this as an anonymous class method, so we
847
- // target the first async `stream` method in the file instead of a class name.
1611
+ // The 1.x bundled entrypoints keep BaseAgent.runAsync as the first bundled
1612
+ // async-generator runAsync method in file order.
848
1613
  {
849
- channelName: aiSDKChannels.toolLoopAgentStream.channelName,
1614
+ channelName: googleADKChannels.agentRunAsync.channelName,
850
1615
  module: {
851
- name: "ai",
852
- versionRange: ">=6.0.0 <7.0.0",
853
- filePath: "dist/index.mjs"
1616
+ name: "@google/adk",
1617
+ versionRange: googleADKBundledIndexV1VersionRange,
1618
+ filePath: "dist/cjs/index.js"
854
1619
  },
855
1620
  functionQuery: {
856
- methodName: "stream",
857
- kind: "Async",
1621
+ methodName: "runAsync",
1622
+ kind: "Sync",
858
1623
  index: 0
859
1624
  }
860
1625
  },
861
1626
  {
862
- channelName: aiSDKChannels.toolLoopAgentStream.channelName,
1627
+ channelName: googleADKChannels.agentRunAsync.channelName,
863
1628
  module: {
864
- name: "ai",
865
- versionRange: ">=6.0.0 <7.0.0",
866
- filePath: "dist/index.js"
1629
+ name: "@google/adk",
1630
+ versionRange: googleADKBundledIndexV1VersionRange,
1631
+ filePath: "dist/esm/index.js"
867
1632
  },
868
1633
  functionQuery: {
869
- methodName: "stream",
870
- kind: "Async",
1634
+ methodName: "runAsync",
1635
+ kind: "Sync",
871
1636
  index: 0
872
1637
  }
873
- }
874
- ];
875
-
876
- // src/instrumentation/plugins/claude-agent-sdk-channels.ts
877
- var claudeAgentSDKChannels = defineChannels(
878
- "@anthropic-ai/claude-agent-sdk",
879
- {
880
- query: channel({
881
- channelName: "query",
882
- kind: "sync-stream"
883
- })
884
- }
885
- );
886
-
887
- // src/auto-instrumentations/configs/claude-agent-sdk.ts
888
- var claudeAgentSDKConfigs = [
889
- // query - Main entry point for agent interactions. The SDK returns an async
890
- // iterable, but the exported query function itself is synchronous.
1638
+ },
1639
+ // --- FunctionTool.runAsync --- regular async, kind "Async"
1640
+ // FunctionTool.runAsync — ESM individual module file
891
1641
  {
892
- channelName: claudeAgentSDKChannels.query.channelName,
1642
+ channelName: googleADKChannels.toolRunAsync.channelName,
893
1643
  module: {
894
- name: "@anthropic-ai/claude-agent-sdk",
895
- versionRange: ">=0.1.0 <0.2.0",
896
- filePath: "sdk.mjs"
1644
+ name: "@google/adk",
1645
+ versionRange: googleADKVersionRange,
1646
+ filePath: "dist/esm/tools/function_tool.js"
897
1647
  },
898
1648
  functionQuery: {
899
- functionName: "query",
900
- kind: "Sync"
1649
+ className: "FunctionTool",
1650
+ methodName: "runAsync",
1651
+ kind: "Async"
901
1652
  }
902
1653
  },
1654
+ // FunctionTool.runAsync — bundled CJS/ESM indexes
1655
+ // The bundled entrypoints minify class names, so target the first async
1656
+ // `runAsync` method in file order rather than a class name. This mapping is
1657
+ // only validated against the current 0.6.x bundle layout, so keep the range
1658
+ // tight until we verify newer bundled outputs.
903
1659
  {
904
- channelName: claudeAgentSDKChannels.query.channelName,
1660
+ channelName: googleADKChannels.toolRunAsync.channelName,
905
1661
  module: {
906
- name: "@anthropic-ai/claude-agent-sdk",
907
- versionRange: ">=0.2.0",
908
- filePath: "sdk.mjs"
1662
+ name: "@google/adk",
1663
+ versionRange: googleADKBundledIndexV06VersionRange,
1664
+ filePath: "dist/cjs/index.js"
909
1665
  },
910
1666
  functionQuery: {
911
- functionName: "query",
912
- kind: "Sync",
913
- isExportAlias: true
1667
+ methodName: "runAsync",
1668
+ kind: "Async",
1669
+ index: 1
914
1670
  }
915
- }
916
- ];
917
-
918
- // src/instrumentation/plugins/cursor-sdk-channels.ts
919
- var cursorSDKChannels = defineChannels("@cursor/sdk", {
920
- create: channel({
921
- channelName: "Agent.create",
922
- kind: "async"
923
- }),
924
- resume: channel({
925
- channelName: "Agent.resume",
926
- kind: "async"
927
- }),
928
- prompt: channel({
929
- channelName: "Agent.prompt",
930
- kind: "async"
931
- }),
932
- send: channel({
933
- channelName: "agent.send",
934
- kind: "async"
935
- })
936
- });
937
-
938
- // src/auto-instrumentations/configs/cursor-sdk.ts
939
- var cursorSDKVersionRange = ">=1.0.7 <2.0.0";
940
- var cursorSDKEntrypoints = ["dist/esm/index.js", "dist/cjs/index.js"];
941
- var cursorSDKConfigs = cursorSDKEntrypoints.flatMap((filePath) => [
1671
+ },
942
1672
  {
943
- channelName: cursorSDKChannels.create.channelName,
1673
+ channelName: googleADKChannels.toolRunAsync.channelName,
944
1674
  module: {
945
- name: "@cursor/sdk",
946
- versionRange: cursorSDKVersionRange,
947
- filePath
1675
+ name: "@google/adk",
1676
+ versionRange: googleADKBundledIndexV06VersionRange,
1677
+ filePath: "dist/esm/index.js"
948
1678
  },
949
1679
  functionQuery: {
950
- className: "Agent",
951
- methodName: "create",
952
- kind: "Async"
1680
+ methodName: "runAsync",
1681
+ kind: "Async",
1682
+ index: 1
953
1683
  }
954
1684
  },
1685
+ // The 1.x bundle moves FunctionTool.runAsync behind one helper method.
955
1686
  {
956
- channelName: cursorSDKChannels.resume.channelName,
1687
+ channelName: googleADKChannels.toolRunAsync.channelName,
957
1688
  module: {
958
- name: "@cursor/sdk",
959
- versionRange: cursorSDKVersionRange,
960
- filePath
1689
+ name: "@google/adk",
1690
+ versionRange: googleADKBundledIndexV1VersionRange,
1691
+ filePath: "dist/cjs/index.js"
961
1692
  },
962
1693
  functionQuery: {
963
- className: "Agent",
964
- methodName: "resume",
965
- kind: "Async"
1694
+ methodName: "runAsync",
1695
+ kind: "Async",
1696
+ index: 1
966
1697
  }
967
1698
  },
968
1699
  {
969
- channelName: cursorSDKChannels.prompt.channelName,
1700
+ channelName: googleADKChannels.toolRunAsync.channelName,
970
1701
  module: {
971
- name: "@cursor/sdk",
972
- versionRange: cursorSDKVersionRange,
973
- filePath
1702
+ name: "@google/adk",
1703
+ versionRange: googleADKBundledIndexV1VersionRange,
1704
+ filePath: "dist/esm/index.js"
974
1705
  },
975
1706
  functionQuery: {
976
- className: "Agent",
977
- methodName: "prompt",
978
- kind: "Async"
1707
+ methodName: "runAsync",
1708
+ kind: "Async",
1709
+ index: 1
979
1710
  }
980
1711
  }
981
- ]);
1712
+ ];
982
1713
 
983
1714
  // src/instrumentation/plugins/google-genai-channels.ts
984
1715
  var googleGenAIChannels = defineChannels("@google/genai", {
@@ -1059,6 +1790,50 @@ var googleGenAIConfigs = [
1059
1790
  }
1060
1791
  ];
1061
1792
 
1793
+ // src/instrumentation/plugins/groq-channels.ts
1794
+ var groqChannels = defineChannels("groq-sdk", {
1795
+ chatCompletionsCreate: channel({
1796
+ channelName: "chat.completions.create",
1797
+ kind: "async"
1798
+ }),
1799
+ embeddingsCreate: channel(
1800
+ {
1801
+ channelName: "embeddings.create",
1802
+ kind: "async"
1803
+ }
1804
+ )
1805
+ });
1806
+
1807
+ // src/auto-instrumentations/configs/groq.ts
1808
+ var groqConfigs = [
1809
+ {
1810
+ channelName: groqChannels.chatCompletionsCreate.channelName,
1811
+ module: {
1812
+ name: "groq-sdk",
1813
+ versionRange: ">=1.0.0",
1814
+ filePath: "resources/chat/completions.mjs"
1815
+ },
1816
+ functionQuery: {
1817
+ className: "Completions",
1818
+ methodName: "create",
1819
+ kind: "Async"
1820
+ }
1821
+ },
1822
+ {
1823
+ channelName: groqChannels.embeddingsCreate.channelName,
1824
+ module: {
1825
+ name: "groq-sdk",
1826
+ versionRange: ">=1.0.0",
1827
+ filePath: "resources/embeddings.mjs"
1828
+ },
1829
+ functionQuery: {
1830
+ className: "Embeddings",
1831
+ methodName: "create",
1832
+ kind: "Async"
1833
+ }
1834
+ }
1835
+ ];
1836
+
1062
1837
  // src/instrumentation/plugins/huggingface-channels.ts
1063
1838
  var huggingFaceChannels = defineChannels("@huggingface/inference", {
1064
1839
  chatCompletion: channel({
@@ -1327,136 +2102,45 @@ var huggingFaceConfigs = [
1327
2102
  }
1328
2103
  ];
1329
2104
 
1330
- // src/instrumentation/plugins/openrouter-agent-channels.ts
1331
- var openRouterAgentChannels = defineChannels("@openrouter/agent", {
1332
- callModel: channel({
1333
- channelName: "callModel",
2105
+ // src/instrumentation/plugins/langchain-channels.ts
2106
+ var langChainChannels = defineChannels("@langchain/core", {
2107
+ configure: channel({
2108
+ channelName: "CallbackManager.configure",
1334
2109
  kind: "sync-stream"
1335
2110
  }),
1336
- callModelTurn: channel({
1337
- channelName: "callModel.turn",
1338
- kind: "async"
1339
- }),
1340
- toolExecute: channel({
1341
- channelName: "tool.execute",
1342
- kind: "async"
1343
- })
1344
- });
1345
-
1346
- // src/auto-instrumentations/configs/openrouter-agent.ts
1347
- var openRouterAgentConfigs = [
1348
- {
1349
- channelName: openRouterAgentChannels.callModel.channelName,
1350
- module: {
1351
- name: "@openrouter/agent",
1352
- versionRange: ">=0.1.2",
1353
- filePath: "esm/inner-loop/call-model.js"
1354
- },
1355
- functionQuery: {
1356
- functionName: "callModel",
1357
- kind: "Sync"
1358
- }
1359
- }
1360
- ];
1361
-
1362
- // src/instrumentation/plugins/openrouter-channels.ts
1363
- var openRouterChannels = defineChannels("@openrouter/sdk", {
1364
- chatSend: channel({
1365
- channelName: "chat.send",
1366
- kind: "async"
1367
- }),
1368
- embeddingsGenerate: channel({
1369
- channelName: "embeddings.generate",
1370
- kind: "async"
1371
- }),
1372
- rerankRerank: channel(
1373
- {
1374
- channelName: "rerank.rerank",
1375
- kind: "async"
1376
- }
1377
- ),
1378
- betaResponsesSend: channel({
1379
- channelName: "beta.responses.send",
1380
- kind: "async"
1381
- }),
1382
- callModel: channel({
1383
- channelName: "callModel",
2111
+ configureSync: channel({
2112
+ channelName: "CallbackManager._configureSync",
1384
2113
  kind: "sync-stream"
1385
- }),
1386
- callModelTurn: channel({
1387
- channelName: "callModel.turn",
1388
- kind: "async"
1389
- }),
1390
- toolExecute: channel({
1391
- channelName: "tool.execute",
1392
- kind: "async"
1393
2114
  })
1394
2115
  });
1395
2116
 
1396
- // src/auto-instrumentations/configs/openrouter.ts
1397
- var openRouterConfigs = [
1398
- {
1399
- channelName: openRouterChannels.chatSend.channelName,
1400
- module: {
1401
- name: "@openrouter/sdk",
1402
- versionRange: ">=0.9.11 <1.0.0",
1403
- filePath: "esm/sdk/chat.js"
1404
- },
1405
- functionQuery: {
1406
- className: "Chat",
1407
- methodName: "send",
1408
- kind: "Async"
1409
- }
1410
- },
1411
- {
1412
- channelName: openRouterChannels.embeddingsGenerate.channelName,
1413
- module: {
1414
- name: "@openrouter/sdk",
1415
- versionRange: ">=0.9.11 <1.0.0",
1416
- filePath: "esm/sdk/embeddings.js"
1417
- },
1418
- functionQuery: {
1419
- className: "Embeddings",
1420
- methodName: "generate",
1421
- kind: "Async"
1422
- }
1423
- },
1424
- {
1425
- channelName: openRouterChannels.rerankRerank.channelName,
1426
- module: {
1427
- name: "@openrouter/sdk",
1428
- versionRange: ">=0.12.0 <1.0.0",
1429
- filePath: "esm/sdk/rerank.js"
1430
- },
1431
- functionQuery: {
1432
- className: "Rerank",
1433
- methodName: "rerank",
1434
- kind: "Async"
1435
- }
1436
- },
2117
+ // src/auto-instrumentations/configs/langchain.ts
2118
+ var langChainCoreVersionRange = ">=0.3.42";
2119
+ var langChainCallbackManagerFilePath = "dist/callbacks/manager.js";
2120
+ var langchainConfigs = [
1437
2121
  {
1438
- channelName: openRouterChannels.betaResponsesSend.channelName,
2122
+ channelName: langChainChannels.configure.channelName,
1439
2123
  module: {
1440
- name: "@openrouter/sdk",
1441
- versionRange: ">=0.9.11 <1.0.0",
1442
- filePath: "esm/sdk/responses.js"
2124
+ name: "@langchain/core",
2125
+ versionRange: langChainCoreVersionRange,
2126
+ filePath: langChainCallbackManagerFilePath
1443
2127
  },
1444
2128
  functionQuery: {
1445
- className: "Responses",
1446
- methodName: "send",
1447
- kind: "Async"
2129
+ className: "CallbackManager",
2130
+ methodName: "configure",
2131
+ kind: "Sync"
1448
2132
  }
1449
2133
  },
1450
2134
  {
1451
- channelName: openRouterChannels.callModel.channelName,
2135
+ channelName: langChainChannels.configureSync.channelName,
1452
2136
  module: {
1453
- name: "@openrouter/sdk",
1454
- versionRange: ">=0.9.11 <1.0.0",
1455
- filePath: "esm/sdk/sdk.js"
2137
+ name: "@langchain/core",
2138
+ versionRange: langChainCoreVersionRange,
2139
+ filePath: langChainCallbackManagerFilePath
1456
2140
  },
1457
2141
  functionQuery: {
1458
- className: "OpenRouter",
1459
- methodName: "callModel",
2142
+ className: "CallbackManager",
2143
+ methodName: "_configureSync",
1460
2144
  kind: "Sync"
1461
2145
  }
1462
2146
  }
@@ -1476,6 +2160,22 @@ var mistralChannels = defineChannels("@mistralai/mistralai", {
1476
2160
  channelName: "embeddings.create",
1477
2161
  kind: "async"
1478
2162
  }),
2163
+ classifiersModerate: channel({
2164
+ channelName: "classifiers.moderate",
2165
+ kind: "async"
2166
+ }),
2167
+ classifiersModerateChat: channel({
2168
+ channelName: "classifiers.moderateChat",
2169
+ kind: "async"
2170
+ }),
2171
+ classifiersClassify: channel({
2172
+ channelName: "classifiers.classify",
2173
+ kind: "async"
2174
+ }),
2175
+ classifiersClassifyChat: channel({
2176
+ channelName: "classifiers.classifyChat",
2177
+ kind: "async"
2178
+ }),
1479
2179
  fimComplete: channel({
1480
2180
  channelName: "fim.complete",
1481
2181
  kind: "async"
@@ -1574,6 +2274,110 @@ var mistralConfigs = [
1574
2274
  kind: "Async"
1575
2275
  }
1576
2276
  },
2277
+ {
2278
+ channelName: mistralChannels.classifiersModerate.channelName,
2279
+ module: {
2280
+ name: "@mistralai/mistralai",
2281
+ versionRange: ">=1.0.0 <2.0.0",
2282
+ filePath: "sdk/classifiers.js"
2283
+ },
2284
+ functionQuery: {
2285
+ className: "Classifiers",
2286
+ methodName: "moderate",
2287
+ kind: "Async"
2288
+ }
2289
+ },
2290
+ {
2291
+ channelName: mistralChannels.classifiersModerate.channelName,
2292
+ module: {
2293
+ name: "@mistralai/mistralai",
2294
+ versionRange: ">=2.0.0 <3.0.0",
2295
+ filePath: "esm/sdk/classifiers.js"
2296
+ },
2297
+ functionQuery: {
2298
+ className: "Classifiers",
2299
+ methodName: "moderate",
2300
+ kind: "Async"
2301
+ }
2302
+ },
2303
+ {
2304
+ channelName: mistralChannels.classifiersModerateChat.channelName,
2305
+ module: {
2306
+ name: "@mistralai/mistralai",
2307
+ versionRange: ">=1.0.0 <2.0.0",
2308
+ filePath: "sdk/classifiers.js"
2309
+ },
2310
+ functionQuery: {
2311
+ className: "Classifiers",
2312
+ methodName: "moderateChat",
2313
+ kind: "Async"
2314
+ }
2315
+ },
2316
+ {
2317
+ channelName: mistralChannels.classifiersModerateChat.channelName,
2318
+ module: {
2319
+ name: "@mistralai/mistralai",
2320
+ versionRange: ">=2.0.0 <3.0.0",
2321
+ filePath: "esm/sdk/classifiers.js"
2322
+ },
2323
+ functionQuery: {
2324
+ className: "Classifiers",
2325
+ methodName: "moderateChat",
2326
+ kind: "Async"
2327
+ }
2328
+ },
2329
+ {
2330
+ channelName: mistralChannels.classifiersClassify.channelName,
2331
+ module: {
2332
+ name: "@mistralai/mistralai",
2333
+ versionRange: ">=1.10.0 <2.0.0",
2334
+ filePath: "sdk/classifiers.js"
2335
+ },
2336
+ functionQuery: {
2337
+ className: "Classifiers",
2338
+ methodName: "classify",
2339
+ kind: "Async"
2340
+ }
2341
+ },
2342
+ {
2343
+ channelName: mistralChannels.classifiersClassify.channelName,
2344
+ module: {
2345
+ name: "@mistralai/mistralai",
2346
+ versionRange: ">=2.0.0 <3.0.0",
2347
+ filePath: "esm/sdk/classifiers.js"
2348
+ },
2349
+ functionQuery: {
2350
+ className: "Classifiers",
2351
+ methodName: "classify",
2352
+ kind: "Async"
2353
+ }
2354
+ },
2355
+ {
2356
+ channelName: mistralChannels.classifiersClassifyChat.channelName,
2357
+ module: {
2358
+ name: "@mistralai/mistralai",
2359
+ versionRange: ">=1.10.0 <2.0.0",
2360
+ filePath: "sdk/classifiers.js"
2361
+ },
2362
+ functionQuery: {
2363
+ className: "Classifiers",
2364
+ methodName: "classifyChat",
2365
+ kind: "Async"
2366
+ }
2367
+ },
2368
+ {
2369
+ channelName: mistralChannels.classifiersClassifyChat.channelName,
2370
+ module: {
2371
+ name: "@mistralai/mistralai",
2372
+ versionRange: ">=2.0.0 <3.0.0",
2373
+ filePath: "esm/sdk/classifiers.js"
2374
+ },
2375
+ functionQuery: {
2376
+ className: "Classifiers",
2377
+ methodName: "classifyChat",
2378
+ kind: "Async"
2379
+ }
2380
+ },
1577
2381
  {
1578
2382
  channelName: mistralChannels.fimComplete.channelName,
1579
2383
  module: {
@@ -1680,281 +2484,512 @@ var mistralConfigs = [
1680
2484
  }
1681
2485
  ];
1682
2486
 
1683
- // src/instrumentation/plugins/cohere-channels.ts
1684
- var cohereChannels = defineChannels("cohere-ai", {
1685
- chat: channel({
1686
- channelName: "chat",
2487
+ // src/instrumentation/plugins/openai-agents-channels.ts
2488
+ var openAIAgentsCoreChannels = defineChannels("@openai/agents-core", {
2489
+ onTraceStart: channel({
2490
+ channelName: "tracing.processor.onTraceStart",
1687
2491
  kind: "async"
1688
2492
  }),
1689
- chatStream: channel({
1690
- channelName: "chatStream",
2493
+ onTraceEnd: channel({
2494
+ channelName: "tracing.processor.onTraceEnd",
1691
2495
  kind: "async"
1692
2496
  }),
1693
- embed: channel({
1694
- channelName: "embed",
2497
+ onSpanStart: channel({
2498
+ channelName: "tracing.processor.onSpanStart",
1695
2499
  kind: "async"
1696
2500
  }),
1697
- rerank: channel({
1698
- channelName: "rerank",
2501
+ onSpanEnd: channel({
2502
+ channelName: "tracing.processor.onSpanEnd",
1699
2503
  kind: "async"
1700
2504
  })
1701
2505
  });
1702
2506
 
1703
- // src/auto-instrumentations/configs/cohere.ts
1704
- var cohereConfigs = [
2507
+ // src/auto-instrumentations/configs/openai-agents.ts
2508
+ var lifecycleMethods = [
2509
+ ["onTraceStart", openAIAgentsCoreChannels.onTraceStart.channelName],
2510
+ ["onTraceEnd", openAIAgentsCoreChannels.onTraceEnd.channelName],
2511
+ ["onSpanStart", openAIAgentsCoreChannels.onSpanStart.channelName],
2512
+ ["onSpanEnd", openAIAgentsCoreChannels.onSpanEnd.channelName]
2513
+ ];
2514
+ var openAIAgentsCoreConfigs = lifecycleMethods.flatMap(
2515
+ ([methodName, channelName]) => ["dist/tracing/processor.mjs", "dist/tracing/processor.js"].map(
2516
+ (filePath) => ({
2517
+ channelName,
2518
+ module: {
2519
+ name: "@openai/agents-core",
2520
+ versionRange: ">=0.0.14",
2521
+ filePath
2522
+ },
2523
+ functionQuery: {
2524
+ className: "MultiTracingProcessor",
2525
+ methodName,
2526
+ kind: "Async"
2527
+ }
2528
+ })
2529
+ )
2530
+ );
2531
+
2532
+ // src/instrumentation/plugins/openai-channels.ts
2533
+ var openAIChannels = defineChannels("openai", {
2534
+ chatCompletionsCreate: channel({
2535
+ channelName: "chat.completions.create",
2536
+ kind: "async"
2537
+ }),
2538
+ embeddingsCreate: channel({
2539
+ channelName: "embeddings.create",
2540
+ kind: "async"
2541
+ }),
2542
+ betaChatCompletionsParse: channel({
2543
+ channelName: "beta.chat.completions.parse",
2544
+ kind: "async"
2545
+ }),
2546
+ betaChatCompletionsStream: channel({
2547
+ channelName: "beta.chat.completions.stream",
2548
+ kind: "sync-stream"
2549
+ }),
2550
+ moderationsCreate: channel({
2551
+ channelName: "moderations.create",
2552
+ kind: "async"
2553
+ }),
2554
+ responsesCreate: channel({
2555
+ channelName: "responses.create",
2556
+ kind: "async"
2557
+ }),
2558
+ responsesStream: channel({
2559
+ channelName: "responses.stream",
2560
+ kind: "sync-stream"
2561
+ }),
2562
+ responsesParse: channel({
2563
+ channelName: "responses.parse",
2564
+ kind: "async"
2565
+ }),
2566
+ responsesCompact: channel({
2567
+ channelName: "responses.compact",
2568
+ kind: "async"
2569
+ })
2570
+ });
2571
+
2572
+ // src/auto-instrumentations/configs/openai.ts
2573
+ var openaiConfigs = [
2574
+ // Chat Completions
1705
2575
  {
1706
- channelName: cohereChannels.chat.channelName,
2576
+ channelName: openAIChannels.chatCompletionsCreate.channelName,
1707
2577
  module: {
1708
- name: "cohere-ai",
1709
- versionRange: ">=7.0.0 <8.0.0",
1710
- filePath: "Client.js"
2578
+ name: "openai",
2579
+ versionRange: ">=4.0.0 <5.0.0",
2580
+ filePath: "resources/chat/completions.mjs"
1711
2581
  },
1712
2582
  functionQuery: {
1713
- className: "CohereClient",
1714
- methodName: "chat",
2583
+ className: "Completions",
2584
+ methodName: "create",
1715
2585
  kind: "Async"
1716
2586
  }
1717
2587
  },
1718
2588
  {
1719
- channelName: cohereChannels.chat.channelName,
2589
+ channelName: openAIChannels.chatCompletionsCreate.channelName,
1720
2590
  module: {
1721
- name: "cohere-ai",
1722
- versionRange: ">=7.20.0 <8.0.0",
1723
- filePath: "api/resources/v2/client/Client.js"
2591
+ name: "openai",
2592
+ versionRange: ">=4.0.0 <5.0.0",
2593
+ filePath: "resources/chat/completions/completions.mjs"
1724
2594
  },
1725
2595
  functionQuery: {
1726
- className: "V2Client",
1727
- methodName: "chat",
2596
+ className: "Completions",
2597
+ methodName: "create",
1728
2598
  kind: "Async"
1729
2599
  }
1730
2600
  },
1731
2601
  {
1732
- channelName: cohereChannels.chat.channelName,
2602
+ channelName: openAIChannels.chatCompletionsCreate.channelName,
1733
2603
  module: {
1734
- name: "cohere-ai",
1735
- versionRange: ">=8.0.0 <9.0.0",
1736
- filePath: "Client.js"
2604
+ name: "openai",
2605
+ versionRange: ">=5.0.0",
2606
+ filePath: "resources/chat/completions/completions.mjs"
1737
2607
  },
1738
2608
  functionQuery: {
1739
- className: "CohereClient",
1740
- methodName: "chat",
2609
+ className: "Completions",
2610
+ methodName: "create",
1741
2611
  kind: "Async"
1742
2612
  }
1743
2613
  },
2614
+ // Embeddings
1744
2615
  {
1745
- channelName: cohereChannels.chat.channelName,
2616
+ channelName: openAIChannels.embeddingsCreate.channelName,
1746
2617
  module: {
1747
- name: "cohere-ai",
1748
- versionRange: ">=8.0.0 <9.0.0",
1749
- filePath: "api/resources/v2/client/Client.js"
2618
+ name: "openai",
2619
+ versionRange: ">=4.0.0",
2620
+ filePath: "resources/embeddings.mjs"
1750
2621
  },
1751
2622
  functionQuery: {
1752
- className: "V2Client",
1753
- methodName: "chat",
2623
+ className: "Embeddings",
2624
+ methodName: "create",
1754
2625
  kind: "Async"
1755
2626
  }
1756
2627
  },
2628
+ // Beta Chat Completions Parse
1757
2629
  {
1758
- channelName: cohereChannels.chatStream.channelName,
2630
+ channelName: openAIChannels.betaChatCompletionsParse.channelName,
2631
+ module: {
2632
+ name: "openai",
2633
+ versionRange: ">=4.0.0 <5.0.0",
2634
+ filePath: "resources/beta/chat/completions.mjs"
2635
+ },
2636
+ functionQuery: {
2637
+ className: "Completions",
2638
+ methodName: "parse",
2639
+ kind: "Async"
2640
+ }
2641
+ },
2642
+ {
2643
+ channelName: openAIChannels.betaChatCompletionsParse.channelName,
2644
+ module: {
2645
+ name: "openai",
2646
+ versionRange: ">=5.0.0",
2647
+ filePath: "resources/chat/completions/completions.mjs"
2648
+ },
2649
+ functionQuery: {
2650
+ className: "Completions",
2651
+ methodName: "parse",
2652
+ kind: "Async"
2653
+ }
2654
+ },
2655
+ // Moderations
2656
+ {
2657
+ channelName: openAIChannels.moderationsCreate.channelName,
2658
+ module: {
2659
+ name: "openai",
2660
+ versionRange: ">=4.0.0",
2661
+ filePath: "resources/moderations.mjs"
2662
+ },
2663
+ functionQuery: {
2664
+ className: "Moderations",
2665
+ methodName: "create",
2666
+ kind: "Async"
2667
+ }
2668
+ },
2669
+ // Beta Chat Completions Stream
2670
+ {
2671
+ channelName: openAIChannels.betaChatCompletionsStream.channelName,
2672
+ module: {
2673
+ name: "openai",
2674
+ versionRange: ">=4.0.0 <5.0.0",
2675
+ filePath: "resources/beta/chat/completions.mjs"
2676
+ },
2677
+ functionQuery: {
2678
+ className: "Completions",
2679
+ methodName: "stream",
2680
+ kind: "Sync"
2681
+ }
2682
+ },
2683
+ {
2684
+ channelName: openAIChannels.betaChatCompletionsStream.channelName,
1759
2685
  module: {
1760
- name: "cohere-ai",
1761
- versionRange: ">=7.0.0 <8.0.0",
1762
- filePath: "Client.js"
2686
+ name: "openai",
2687
+ versionRange: ">=5.0.0",
2688
+ filePath: "resources/chat/completions/completions.mjs"
1763
2689
  },
1764
2690
  functionQuery: {
1765
- className: "CohereClient",
1766
- methodName: "chatStream",
1767
- kind: "Async"
2691
+ className: "Completions",
2692
+ methodName: "stream",
2693
+ kind: "Sync"
1768
2694
  }
1769
2695
  },
2696
+ // Responses API (v4.87.0+)
1770
2697
  {
1771
- channelName: cohereChannels.chatStream.channelName,
2698
+ channelName: openAIChannels.responsesCreate.channelName,
1772
2699
  module: {
1773
- name: "cohere-ai",
1774
- versionRange: ">=7.20.0 <8.0.0",
1775
- filePath: "api/resources/v2/client/Client.js"
2700
+ name: "openai",
2701
+ versionRange: ">=4.87.0",
2702
+ filePath: "resources/responses/responses.mjs"
1776
2703
  },
1777
2704
  functionQuery: {
1778
- className: "V2Client",
1779
- methodName: "chatStream",
2705
+ className: "Responses",
2706
+ methodName: "create",
1780
2707
  kind: "Async"
1781
2708
  }
1782
2709
  },
1783
2710
  {
1784
- channelName: cohereChannels.chatStream.channelName,
2711
+ channelName: openAIChannels.responsesStream.channelName,
1785
2712
  module: {
1786
- name: "cohere-ai",
1787
- versionRange: ">=8.0.0 <9.0.0",
1788
- filePath: "Client.js"
2713
+ name: "openai",
2714
+ versionRange: ">=4.87.0",
2715
+ filePath: "resources/responses/responses.mjs"
1789
2716
  },
1790
2717
  functionQuery: {
1791
- className: "CohereClient",
1792
- methodName: "chatStream",
1793
- kind: "Async"
2718
+ className: "Responses",
2719
+ methodName: "stream",
2720
+ kind: "Sync"
1794
2721
  }
1795
2722
  },
1796
2723
  {
1797
- channelName: cohereChannels.chatStream.channelName,
2724
+ channelName: openAIChannels.responsesParse.channelName,
1798
2725
  module: {
1799
- name: "cohere-ai",
1800
- versionRange: ">=8.0.0 <9.0.0",
1801
- filePath: "api/resources/v2/client/Client.js"
2726
+ name: "openai",
2727
+ versionRange: ">=4.87.0",
2728
+ filePath: "resources/responses/responses.mjs"
1802
2729
  },
1803
2730
  functionQuery: {
1804
- className: "V2Client",
1805
- methodName: "chatStream",
2731
+ className: "Responses",
2732
+ methodName: "parse",
1806
2733
  kind: "Async"
1807
2734
  }
1808
2735
  },
1809
2736
  {
1810
- channelName: cohereChannels.embed.channelName,
2737
+ channelName: openAIChannels.responsesCompact.channelName,
1811
2738
  module: {
1812
- name: "cohere-ai",
1813
- versionRange: ">=7.0.0 <8.0.0",
1814
- filePath: "Client.js"
2739
+ name: "openai",
2740
+ versionRange: ">=6.10.0",
2741
+ filePath: "resources/responses/responses.mjs"
1815
2742
  },
1816
2743
  functionQuery: {
1817
- className: "CohereClient",
1818
- methodName: "embed",
2744
+ className: "Responses",
2745
+ methodName: "compact",
1819
2746
  kind: "Async"
1820
2747
  }
1821
- },
2748
+ }
2749
+ ];
2750
+
2751
+ // src/instrumentation/plugins/openai-codex-channels.ts
2752
+ var openAICodexChannels = defineChannels("@openai/codex-sdk", {
2753
+ run: channel({
2754
+ channelName: "Thread.run",
2755
+ kind: "async"
2756
+ }),
2757
+ runStreamed: channel({
2758
+ channelName: "Thread.runStreamed",
2759
+ kind: "async"
2760
+ })
2761
+ });
2762
+
2763
+ // src/auto-instrumentations/configs/openai-codex.ts
2764
+ var openAICodexVersionRange = ">=0.128.0 <1.0.0";
2765
+ var openAICodexConfigs = [
1822
2766
  {
1823
- channelName: cohereChannels.embed.channelName,
2767
+ channelName: openAICodexChannels.run.channelName,
1824
2768
  module: {
1825
- name: "cohere-ai",
1826
- versionRange: ">=7.20.0 <8.0.0",
1827
- filePath: "api/resources/v2/client/Client.js"
2769
+ name: "@openai/codex-sdk",
2770
+ versionRange: openAICodexVersionRange,
2771
+ filePath: "dist/index.js"
1828
2772
  },
1829
2773
  functionQuery: {
1830
- className: "V2Client",
1831
- methodName: "embed",
2774
+ className: "Thread",
2775
+ methodName: "run",
1832
2776
  kind: "Async"
1833
2777
  }
1834
2778
  },
1835
2779
  {
1836
- channelName: cohereChannels.embed.channelName,
2780
+ channelName: openAICodexChannels.runStreamed.channelName,
1837
2781
  module: {
1838
- name: "cohere-ai",
1839
- versionRange: ">=8.0.0 <9.0.0",
1840
- filePath: "Client.js"
2782
+ name: "@openai/codex-sdk",
2783
+ versionRange: openAICodexVersionRange,
2784
+ filePath: "dist/index.js"
1841
2785
  },
1842
2786
  functionQuery: {
1843
- className: "CohereClient",
1844
- methodName: "embed",
2787
+ className: "Thread",
2788
+ methodName: "runStreamed",
1845
2789
  kind: "Async"
1846
2790
  }
1847
- },
2791
+ }
2792
+ ];
2793
+
2794
+ // src/instrumentation/plugins/openrouter-channels.ts
2795
+ var openRouterChannels = defineChannels("@openrouter/sdk", {
2796
+ chatSend: channel({
2797
+ channelName: "chat.send",
2798
+ kind: "async"
2799
+ }),
2800
+ embeddingsGenerate: channel({
2801
+ channelName: "embeddings.generate",
2802
+ kind: "async"
2803
+ }),
2804
+ rerankRerank: channel(
2805
+ {
2806
+ channelName: "rerank.rerank",
2807
+ kind: "async"
2808
+ }
2809
+ ),
2810
+ betaResponsesSend: channel({
2811
+ channelName: "beta.responses.send",
2812
+ kind: "async"
2813
+ }),
2814
+ callModel: channel({
2815
+ channelName: "callModel",
2816
+ kind: "sync-stream"
2817
+ }),
2818
+ callModelTurn: channel({
2819
+ channelName: "callModel.turn",
2820
+ kind: "async"
2821
+ }),
2822
+ toolExecute: channel({
2823
+ channelName: "tool.execute",
2824
+ kind: "async"
2825
+ })
2826
+ });
2827
+
2828
+ // src/auto-instrumentations/configs/openrouter.ts
2829
+ var openRouterConfigs = [
1848
2830
  {
1849
- channelName: cohereChannels.embed.channelName,
2831
+ channelName: openRouterChannels.chatSend.channelName,
1850
2832
  module: {
1851
- name: "cohere-ai",
1852
- versionRange: ">=8.0.0 <9.0.0",
1853
- filePath: "api/resources/v2/client/Client.js"
2833
+ name: "@openrouter/sdk",
2834
+ versionRange: ">=0.9.11 <1.0.0",
2835
+ filePath: "esm/sdk/chat.js"
1854
2836
  },
1855
2837
  functionQuery: {
1856
- className: "V2Client",
1857
- methodName: "embed",
2838
+ className: "Chat",
2839
+ methodName: "send",
1858
2840
  kind: "Async"
1859
2841
  }
1860
2842
  },
1861
2843
  {
1862
- channelName: cohereChannels.rerank.channelName,
2844
+ channelName: openRouterChannels.embeddingsGenerate.channelName,
1863
2845
  module: {
1864
- name: "cohere-ai",
1865
- versionRange: ">=7.0.0 <8.0.0",
1866
- filePath: "Client.js"
2846
+ name: "@openrouter/sdk",
2847
+ versionRange: ">=0.9.11 <1.0.0",
2848
+ filePath: "esm/sdk/embeddings.js"
1867
2849
  },
1868
2850
  functionQuery: {
1869
- className: "CohereClient",
1870
- methodName: "rerank",
2851
+ className: "Embeddings",
2852
+ methodName: "generate",
1871
2853
  kind: "Async"
1872
2854
  }
1873
2855
  },
1874
2856
  {
1875
- channelName: cohereChannels.rerank.channelName,
2857
+ channelName: openRouterChannels.rerankRerank.channelName,
1876
2858
  module: {
1877
- name: "cohere-ai",
1878
- versionRange: ">=7.20.0 <8.0.0",
1879
- filePath: "api/resources/v2/client/Client.js"
2859
+ name: "@openrouter/sdk",
2860
+ versionRange: ">=0.12.0 <1.0.0",
2861
+ filePath: "esm/sdk/rerank.js"
1880
2862
  },
1881
2863
  functionQuery: {
1882
- className: "V2Client",
2864
+ className: "Rerank",
1883
2865
  methodName: "rerank",
1884
2866
  kind: "Async"
1885
2867
  }
1886
2868
  },
1887
2869
  {
1888
- channelName: cohereChannels.rerank.channelName,
2870
+ channelName: openRouterChannels.betaResponsesSend.channelName,
1889
2871
  module: {
1890
- name: "cohere-ai",
1891
- versionRange: ">=8.0.0 <9.0.0",
1892
- filePath: "Client.js"
2872
+ name: "@openrouter/sdk",
2873
+ versionRange: ">=0.9.11 <1.0.0",
2874
+ filePath: "esm/sdk/responses.js"
1893
2875
  },
1894
2876
  functionQuery: {
1895
- className: "CohereClient",
1896
- methodName: "rerank",
2877
+ className: "Responses",
2878
+ methodName: "send",
1897
2879
  kind: "Async"
1898
2880
  }
1899
2881
  },
1900
2882
  {
1901
- channelName: cohereChannels.rerank.channelName,
2883
+ channelName: openRouterChannels.callModel.channelName,
1902
2884
  module: {
1903
- name: "cohere-ai",
1904
- versionRange: ">=8.0.0 <9.0.0",
1905
- filePath: "api/resources/v2/client/Client.js"
2885
+ name: "@openrouter/sdk",
2886
+ versionRange: ">=0.9.11 <1.0.0",
2887
+ filePath: "esm/sdk/sdk.js"
1906
2888
  },
1907
2889
  functionQuery: {
1908
- className: "V2Client",
1909
- methodName: "rerank",
1910
- kind: "Async"
2890
+ className: "OpenRouter",
2891
+ methodName: "callModel",
2892
+ kind: "Sync"
1911
2893
  }
1912
2894
  }
1913
2895
  ];
1914
2896
 
1915
- // src/instrumentation/plugins/groq-channels.ts
1916
- var groqChannels = defineChannels("groq-sdk", {
1917
- chatCompletionsCreate: channel({
1918
- channelName: "chat.completions.create",
2897
+ // src/instrumentation/plugins/openrouter-agent-channels.ts
2898
+ var openRouterAgentChannels = defineChannels("@openrouter/agent", {
2899
+ callModel: channel({
2900
+ channelName: "callModel",
2901
+ kind: "sync-stream"
2902
+ }),
2903
+ callModelTurn: channel({
2904
+ channelName: "callModel.turn",
1919
2905
  kind: "async"
1920
2906
  }),
1921
- embeddingsCreate: channel(
1922
- {
1923
- channelName: "embeddings.create",
1924
- kind: "async"
1925
- }
1926
- )
2907
+ toolExecute: channel({
2908
+ channelName: "tool.execute",
2909
+ kind: "async"
2910
+ })
1927
2911
  });
1928
2912
 
1929
- // src/auto-instrumentations/configs/groq.ts
1930
- var groqConfigs = [
2913
+ // src/auto-instrumentations/configs/openrouter-agent.ts
2914
+ var openRouterAgentConfigs = [
1931
2915
  {
1932
- channelName: groqChannels.chatCompletionsCreate.channelName,
2916
+ channelName: openRouterAgentChannels.callModel.channelName,
1933
2917
  module: {
1934
- name: "groq-sdk",
1935
- versionRange: ">=1.0.0",
1936
- filePath: "resources/chat/completions.mjs"
2918
+ name: "@openrouter/agent",
2919
+ versionRange: ">=0.1.2",
2920
+ filePath: "esm/inner-loop/call-model.js"
1937
2921
  },
1938
2922
  functionQuery: {
1939
- className: "Completions",
1940
- methodName: "create",
1941
- kind: "Async"
2923
+ functionName: "callModel",
2924
+ kind: "Sync"
1942
2925
  }
2926
+ }
2927
+ ];
2928
+
2929
+ // src/auto-instrumentations/configs/all.ts
2930
+ var defaultInstrumentationConfigGroups = [
2931
+ { integrations: ["openai"], configs: openaiConfigs },
2932
+ {
2933
+ integrations: ["openaiCodexSDK"],
2934
+ configs: openAICodexConfigs
1943
2935
  },
2936
+ { integrations: ["anthropic"], configs: anthropicConfigs },
1944
2937
  {
1945
- channelName: groqChannels.embeddingsCreate.channelName,
1946
- module: {
1947
- name: "groq-sdk",
1948
- versionRange: ">=1.0.0",
1949
- filePath: "resources/embeddings.mjs"
1950
- },
1951
- functionQuery: {
1952
- className: "Embeddings",
1953
- methodName: "create",
1954
- kind: "Async"
1955
- }
2938
+ integrations: ["aisdk", "vercel"],
2939
+ configs: aiSDKConfigs
2940
+ },
2941
+ {
2942
+ integrations: ["claudeAgentSDK"],
2943
+ configs: claudeAgentSDKConfigs
2944
+ },
2945
+ { integrations: ["cursor", "cursorSDK"], configs: cursorSDKConfigs },
2946
+ { integrations: ["flue"], configs: flueConfigs },
2947
+ {
2948
+ integrations: ["openAIAgents"],
2949
+ configs: openAIAgentsCoreConfigs
2950
+ },
2951
+ {
2952
+ integrations: ["google", "googleGenAI"],
2953
+ configs: googleGenAIConfigs
2954
+ },
2955
+ { integrations: ["huggingface"], configs: huggingFaceConfigs },
2956
+ {
2957
+ integrations: ["langchain", "langgraph"],
2958
+ configs: langchainConfigs
2959
+ },
2960
+ { integrations: ["openrouter"], configs: openRouterConfigs },
2961
+ {
2962
+ integrations: ["openrouterAgent"],
2963
+ configs: openRouterAgentConfigs
2964
+ },
2965
+ { integrations: ["mistral"], configs: mistralConfigs },
2966
+ { integrations: ["googleADK"], configs: googleADKConfigs },
2967
+ { integrations: ["cohere"], configs: cohereConfigs },
2968
+ { integrations: ["groq"], configs: groqConfigs },
2969
+ {
2970
+ integrations: ["genkit"],
2971
+ configs: genkitConfigs
2972
+ },
2973
+ {
2974
+ integrations: ["gitHubCopilot"],
2975
+ configs: gitHubCopilotConfigs
1956
2976
  }
1957
2977
  ];
2978
+ function getDefaultInstrumentationConfigs({
2979
+ additionalInstrumentations,
2980
+ disabledIntegrationConfig,
2981
+ disabledIntegrations
2982
+ } = {}) {
2983
+ const disabledConfig = disabledIntegrationConfig ?? (disabledIntegrations ? readDisabledInstrumentationEnvConfig(
2984
+ [...disabledIntegrations].join(",")
2985
+ ).integrations : void 0);
2986
+ return [
2987
+ ...defaultInstrumentationConfigGroups.flatMap(
2988
+ ({ configs, integrations }) => isInstrumentationIntegrationDisabled(disabledConfig, ...integrations) ? [] : configs
2989
+ ),
2990
+ ...additionalInstrumentations ?? []
2991
+ ];
2992
+ }
1958
2993
 
1959
2994
  // src/auto-instrumentations/bundler/webpack-loader.ts
1960
2995
  function getModuleVersion(basedir) {
@@ -1970,21 +3005,9 @@ function getModuleVersion(basedir) {
1970
3005
  }
1971
3006
  var matcherCache = /* @__PURE__ */ new Map();
1972
3007
  function getMatcher(options) {
1973
- const allInstrumentations = [
1974
- ...openaiConfigs,
1975
- ...anthropicConfigs,
1976
- ...aiSDKConfigs,
1977
- ...claudeAgentSDKConfigs,
1978
- ...cursorSDKConfigs,
1979
- ...googleGenAIConfigs,
1980
- ...huggingFaceConfigs,
1981
- ...openRouterConfigs,
1982
- ...openRouterAgentConfigs,
1983
- ...mistralConfigs,
1984
- ...cohereConfigs,
1985
- ...groqConfigs,
1986
- ...options.instrumentations ?? []
1987
- ];
3008
+ const allInstrumentations = getDefaultInstrumentationConfigs({
3009
+ additionalInstrumentations: options.instrumentations
3010
+ });
1988
3011
  const dcModule = options.browser ? "dc-browser" : void 0;
1989
3012
  const configHash = JSON.stringify({ allInstrumentations, dcModule });
1990
3013
  if (matcherCache.has(configHash)) {