braintrust 3.7.1 → 3.9.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 (57) hide show
  1. package/dev/dist/index.d.mts +228 -5
  2. package/dev/dist/index.d.ts +228 -5
  3. package/dev/dist/index.js +6259 -1261
  4. package/dev/dist/index.mjs +6161 -1163
  5. package/dist/auto-instrumentations/bundler/esbuild.cjs +995 -55
  6. package/dist/auto-instrumentations/bundler/esbuild.mjs +2 -2
  7. package/dist/auto-instrumentations/bundler/rollup.cjs +995 -55
  8. package/dist/auto-instrumentations/bundler/rollup.mjs +2 -2
  9. package/dist/auto-instrumentations/bundler/vite.cjs +995 -55
  10. package/dist/auto-instrumentations/bundler/vite.mjs +2 -2
  11. package/dist/auto-instrumentations/bundler/webpack-loader.cjs +995 -55
  12. package/dist/auto-instrumentations/bundler/webpack-loader.d.ts +11 -9
  13. package/dist/auto-instrumentations/bundler/webpack.cjs +995 -55
  14. package/dist/auto-instrumentations/bundler/webpack.mjs +2 -2
  15. package/dist/auto-instrumentations/{chunk-NY4CGTN6.mjs → chunk-G7F6HZGE.mjs} +9 -1
  16. package/dist/auto-instrumentations/{chunk-EVUKFMHG.mjs → chunk-ITP7RAUY.mjs} +21 -3
  17. package/dist/auto-instrumentations/chunk-KIMMUFAK.mjs +1781 -0
  18. package/dist/auto-instrumentations/{chunk-VLEJ5AEK.mjs → chunk-P5YLNB2A.mjs} +21 -3
  19. package/dist/auto-instrumentations/hook.mjs +1206 -82
  20. package/dist/auto-instrumentations/index.cjs +1161 -55
  21. package/dist/auto-instrumentations/index.d.mts +22 -1
  22. package/dist/auto-instrumentations/index.d.ts +22 -1
  23. package/dist/auto-instrumentations/index.mjs +172 -1
  24. package/dist/auto-instrumentations/loader/cjs-patch.cjs +34 -6
  25. package/dist/auto-instrumentations/loader/cjs-patch.d.mts +1 -0
  26. package/dist/auto-instrumentations/loader/cjs-patch.d.ts +1 -0
  27. package/dist/auto-instrumentations/loader/cjs-patch.mjs +15 -5
  28. package/dist/auto-instrumentations/loader/esm-hook.mjs +10 -4
  29. package/dist/auto-instrumentations/loader/get-package-version.cjs +20 -2
  30. package/dist/auto-instrumentations/loader/get-package-version.mjs +1 -1
  31. package/dist/browser.d.mts +501 -18
  32. package/dist/browser.d.ts +501 -18
  33. package/dist/browser.js +6985 -1211
  34. package/dist/browser.mjs +6985 -1211
  35. package/dist/cli.js +6160 -1133
  36. package/dist/edge-light.d.mts +1 -1
  37. package/dist/edge-light.d.ts +1 -1
  38. package/dist/edge-light.js +16054 -10191
  39. package/dist/edge-light.mjs +16054 -10191
  40. package/dist/index.d.mts +501 -18
  41. package/dist/index.d.ts +501 -18
  42. package/dist/index.js +7144 -1370
  43. package/dist/index.mjs +6985 -1211
  44. package/dist/instrumentation/index.d.mts +17 -0
  45. package/dist/instrumentation/index.d.ts +17 -0
  46. package/dist/instrumentation/index.js +5929 -1053
  47. package/dist/instrumentation/index.mjs +5929 -1053
  48. package/dist/workerd.d.mts +1 -1
  49. package/dist/workerd.d.ts +1 -1
  50. package/dist/workerd.js +16054 -10191
  51. package/dist/workerd.mjs +16054 -10191
  52. package/package.json +13 -8
  53. package/util/dist/index.d.mts +42 -1
  54. package/util/dist/index.d.ts +42 -1
  55. package/util/dist/index.js +5 -1
  56. package/util/dist/index.mjs +4 -0
  57. package/dist/auto-instrumentations/chunk-YCKND42U.mjs +0 -839
@@ -1,7 +1,7 @@
1
1
  import {
2
2
  getPackageName,
3
3
  getPackageVersion
4
- } from "./chunk-EVUKFMHG.mjs";
4
+ } from "./chunk-ITP7RAUY.mjs";
5
5
 
6
6
  // src/auto-instrumentations/hook.mts
7
7
  import { register } from "module";
@@ -182,6 +182,10 @@ var openAIChannels = defineChannels("openai", {
182
182
  responsesParse: channel({
183
183
  channelName: "responses.parse",
184
184
  kind: "async"
185
+ }),
186
+ responsesCompact: channel({
187
+ channelName: "responses.compact",
188
+ kind: "async"
185
189
  })
186
190
  });
187
191
 
@@ -348,6 +352,19 @@ var openaiConfigs = [
348
352
  methodName: "parse",
349
353
  kind: "Async"
350
354
  }
355
+ },
356
+ {
357
+ channelName: openAIChannels.responsesCompact.channelName,
358
+ module: {
359
+ name: "openai",
360
+ versionRange: ">=6.10.0",
361
+ filePath: "resources/responses/responses.mjs"
362
+ },
363
+ functionQuery: {
364
+ className: "Responses",
365
+ methodName: "compact",
366
+ kind: "Async"
367
+ }
351
368
  }
352
369
  ];
353
370
 
@@ -360,6 +377,10 @@ var anthropicChannels = defineChannels("@anthropic-ai/sdk", {
360
377
  betaMessagesCreate: channel({
361
378
  channelName: "beta.messages.create",
362
379
  kind: "async"
380
+ }),
381
+ betaMessagesToolRunner: channel({
382
+ channelName: "beta.messages.toolRunner",
383
+ kind: "sync-stream"
363
384
  })
364
385
  });
365
386
 
@@ -406,6 +427,20 @@ var anthropicConfigs = [
406
427
  methodName: "create",
407
428
  kind: "Async"
408
429
  }
430
+ },
431
+ // Beta Messages API - toolRunner (sync helper returning async iterable/thenable)
432
+ {
433
+ channelName: anthropicChannels.betaMessagesToolRunner.channelName,
434
+ module: {
435
+ name: "@anthropic-ai/sdk",
436
+ versionRange: ">=0.39.0",
437
+ filePath: "resources/beta/messages/messages.mjs"
438
+ },
439
+ functionQuery: {
440
+ className: "Messages",
441
+ methodName: "toolRunner",
442
+ kind: "Sync"
443
+ }
409
444
  }
410
445
  ];
411
446
 
@@ -419,6 +454,10 @@ var aiSDKChannels = defineChannels("ai", {
419
454
  channelName: "streamText",
420
455
  kind: "async"
421
456
  }),
457
+ streamTextSync: channel({
458
+ channelName: "streamText.sync",
459
+ kind: "sync-stream"
460
+ }),
422
461
  generateObject: channel({
423
462
  channelName: "generateObject",
424
463
  kind: "async"
@@ -427,6 +466,24 @@ var aiSDKChannels = defineChannels("ai", {
427
466
  channelName: "streamObject",
428
467
  kind: "async"
429
468
  }),
469
+ streamObjectSync: channel({
470
+ channelName: "streamObject.sync",
471
+ kind: "sync-stream"
472
+ }),
473
+ embed: channel(
474
+ {
475
+ channelName: "embed",
476
+ kind: "async"
477
+ }
478
+ ),
479
+ embedMany: channel({
480
+ channelName: "embedMany",
481
+ kind: "async"
482
+ }),
483
+ rerank: channel({
484
+ channelName: "rerank",
485
+ kind: "async"
486
+ }),
430
487
  agentGenerate: channel({
431
488
  channelName: "Agent.generate",
432
489
  kind: "async"
@@ -435,6 +492,10 @@ var aiSDKChannels = defineChannels("ai", {
435
492
  channelName: "Agent.stream",
436
493
  kind: "async"
437
494
  }),
495
+ agentStreamSync: channel({
496
+ channelName: "Agent.stream.sync",
497
+ kind: "sync-stream"
498
+ }),
438
499
  toolLoopAgentGenerate: channel({
439
500
  channelName: "ToolLoopAgent.generate",
440
501
  kind: "async"
@@ -472,12 +533,12 @@ var aiSDKConfigs = [
472
533
  kind: "Async"
473
534
  }
474
535
  },
475
- // streamText - function returning stream
536
+ // streamText - async function (v3 only, before the sync refactor in v4)
476
537
  {
477
538
  channelName: aiSDKChannels.streamText.channelName,
478
539
  module: {
479
540
  name: "ai",
480
- versionRange: ">=3.0.0",
541
+ versionRange: ">=3.0.0 <4.0.0",
481
542
  filePath: "dist/index.mjs"
482
543
  },
483
544
  functionQuery: {
@@ -485,11 +546,24 @@ var aiSDKConfigs = [
485
546
  kind: "Async"
486
547
  }
487
548
  },
549
+ // streamText - sync function returning stream (v4+)
550
+ {
551
+ channelName: aiSDKChannels.streamTextSync.channelName,
552
+ module: {
553
+ name: "ai",
554
+ versionRange: ">=4.0.0",
555
+ filePath: "dist/index.mjs"
556
+ },
557
+ functionQuery: {
558
+ functionName: "streamText",
559
+ kind: "Sync"
560
+ }
561
+ },
488
562
  {
489
563
  channelName: aiSDKChannels.streamText.channelName,
490
564
  module: {
491
565
  name: "ai",
492
- versionRange: ">=3.0.0",
566
+ versionRange: ">=3.0.0 <4.0.0",
493
567
  filePath: "dist/index.js"
494
568
  },
495
569
  functionQuery: {
@@ -497,6 +571,18 @@ var aiSDKConfigs = [
497
571
  kind: "Async"
498
572
  }
499
573
  },
574
+ {
575
+ channelName: aiSDKChannels.streamTextSync.channelName,
576
+ module: {
577
+ name: "ai",
578
+ versionRange: ">=4.0.0",
579
+ filePath: "dist/index.js"
580
+ },
581
+ functionQuery: {
582
+ functionName: "streamText",
583
+ kind: "Sync"
584
+ }
585
+ },
500
586
  // generateObject - async function
501
587
  {
502
588
  channelName: aiSDKChannels.generateObject.channelName,
@@ -522,12 +608,87 @@ var aiSDKConfigs = [
522
608
  kind: "Async"
523
609
  }
524
610
  },
525
- // streamObject - function returning stream
611
+ // embed - async function
526
612
  {
527
- channelName: aiSDKChannels.streamObject.channelName,
613
+ channelName: aiSDKChannels.embed.channelName,
614
+ module: {
615
+ name: "ai",
616
+ versionRange: ">=3.0.0",
617
+ filePath: "dist/index.mjs"
618
+ },
619
+ functionQuery: {
620
+ functionName: "embed",
621
+ kind: "Async"
622
+ }
623
+ },
624
+ {
625
+ channelName: aiSDKChannels.embed.channelName,
626
+ module: {
627
+ name: "ai",
628
+ versionRange: ">=3.0.0",
629
+ filePath: "dist/index.js"
630
+ },
631
+ functionQuery: {
632
+ functionName: "embed",
633
+ kind: "Async"
634
+ }
635
+ },
636
+ // embedMany - async function
637
+ {
638
+ channelName: aiSDKChannels.embedMany.channelName,
639
+ module: {
640
+ name: "ai",
641
+ versionRange: ">=3.0.0",
642
+ filePath: "dist/index.mjs"
643
+ },
644
+ functionQuery: {
645
+ functionName: "embedMany",
646
+ kind: "Async"
647
+ }
648
+ },
649
+ {
650
+ channelName: aiSDKChannels.embedMany.channelName,
528
651
  module: {
529
652
  name: "ai",
530
653
  versionRange: ">=3.0.0",
654
+ filePath: "dist/index.js"
655
+ },
656
+ functionQuery: {
657
+ functionName: "embedMany",
658
+ kind: "Async"
659
+ }
660
+ },
661
+ // rerank - async function
662
+ {
663
+ channelName: aiSDKChannels.rerank.channelName,
664
+ module: {
665
+ name: "ai",
666
+ versionRange: ">=5.0.0",
667
+ filePath: "dist/index.mjs"
668
+ },
669
+ functionQuery: {
670
+ functionName: "rerank",
671
+ kind: "Async"
672
+ }
673
+ },
674
+ {
675
+ channelName: aiSDKChannels.rerank.channelName,
676
+ module: {
677
+ name: "ai",
678
+ versionRange: ">=5.0.0",
679
+ filePath: "dist/index.js"
680
+ },
681
+ functionQuery: {
682
+ functionName: "rerank",
683
+ kind: "Async"
684
+ }
685
+ },
686
+ // streamObject - async function (v3 only, before the sync refactor in v4)
687
+ {
688
+ channelName: aiSDKChannels.streamObject.channelName,
689
+ module: {
690
+ name: "ai",
691
+ versionRange: ">=3.0.0 <4.0.0",
531
692
  filePath: "dist/index.mjs"
532
693
  },
533
694
  functionQuery: {
@@ -535,11 +696,24 @@ var aiSDKConfigs = [
535
696
  kind: "Async"
536
697
  }
537
698
  },
699
+ // streamObject - sync function returning stream (v4+)
700
+ {
701
+ channelName: aiSDKChannels.streamObjectSync.channelName,
702
+ module: {
703
+ name: "ai",
704
+ versionRange: ">=4.0.0",
705
+ filePath: "dist/index.mjs"
706
+ },
707
+ functionQuery: {
708
+ functionName: "streamObject",
709
+ kind: "Sync"
710
+ }
711
+ },
538
712
  {
539
713
  channelName: aiSDKChannels.streamObject.channelName,
540
714
  module: {
541
715
  name: "ai",
542
- versionRange: ">=3.0.0",
716
+ versionRange: ">=3.0.0 <4.0.0",
543
717
  filePath: "dist/index.js"
544
718
  },
545
719
  functionQuery: {
@@ -547,6 +721,18 @@ var aiSDKConfigs = [
547
721
  kind: "Async"
548
722
  }
549
723
  },
724
+ {
725
+ channelName: aiSDKChannels.streamObjectSync.channelName,
726
+ module: {
727
+ name: "ai",
728
+ versionRange: ">=4.0.0",
729
+ filePath: "dist/index.js"
730
+ },
731
+ functionQuery: {
732
+ functionName: "streamObject",
733
+ kind: "Sync"
734
+ }
735
+ },
550
736
  // Agent.generate - async method (v5 only)
551
737
  // The compiled AI SDK bundle emits this as an anonymous class method, so we
552
738
  // target the first async `generate` method in the file instead of a class name.
@@ -576,11 +762,11 @@ var aiSDKConfigs = [
576
762
  index: 0
577
763
  }
578
764
  },
579
- // Agent.stream - async method (v5 only)
765
+ // Agent.stream - sync method (v5 only)
580
766
  // The compiled AI SDK bundle emits this as an anonymous class method, so we
581
- // target the first async `stream` method in the file instead of a class name.
767
+ // target the first sync `stream` method in the file instead of a class name.
582
768
  {
583
- channelName: aiSDKChannels.agentStream.channelName,
769
+ channelName: aiSDKChannels.agentStreamSync.channelName,
584
770
  module: {
585
771
  name: "ai",
586
772
  versionRange: ">=5.0.0 <6.0.0",
@@ -588,12 +774,12 @@ var aiSDKConfigs = [
588
774
  },
589
775
  functionQuery: {
590
776
  methodName: "stream",
591
- kind: "Async",
777
+ kind: "Sync",
592
778
  index: 0
593
779
  }
594
780
  },
595
781
  {
596
- channelName: aiSDKChannels.agentStream.channelName,
782
+ channelName: aiSDKChannels.agentStreamSync.channelName,
597
783
  module: {
598
784
  name: "ai",
599
785
  versionRange: ">=5.0.0 <6.0.0",
@@ -601,7 +787,7 @@ var aiSDKConfigs = [
601
787
  },
602
788
  functionQuery: {
603
789
  methodName: "stream",
604
- kind: "Async",
790
+ kind: "Sync",
605
791
  index: 0
606
792
  }
607
793
  },
@@ -716,6 +902,10 @@ var googleGenAIChannels = defineChannels("@google/genai", {
716
902
  generateContentStream: channel({
717
903
  channelName: "models.generateContentStream",
718
904
  kind: "async"
905
+ }),
906
+ embedContent: channel({
907
+ channelName: "models.embedContent",
908
+ kind: "async"
719
909
  })
720
910
  });
721
911
 
@@ -750,110 +940,1019 @@ var googleGenAIConfigs = [
750
940
  methodName: "generateContentStreamInternal",
751
941
  kind: "Async"
752
942
  }
943
+ },
944
+ // Models.embedContent - class method in older SDK versions
945
+ {
946
+ channelName: googleGenAIChannels.embedContent.channelName,
947
+ module: {
948
+ name: "@google/genai",
949
+ versionRange: ">=1.0.0 <1.44.0",
950
+ filePath: "dist/node/index.mjs"
951
+ },
952
+ functionQuery: {
953
+ className: "Models",
954
+ methodName: "embedContent",
955
+ kind: "Async"
956
+ }
957
+ },
958
+ // Models.embedContentInternal - class method in newer SDK versions
959
+ // Note: embedContent is an arrow function property that calls this method
960
+ {
961
+ channelName: googleGenAIChannels.embedContent.channelName,
962
+ module: {
963
+ name: "@google/genai",
964
+ versionRange: ">=1.44.0",
965
+ filePath: "dist/node/index.mjs"
966
+ },
967
+ functionQuery: {
968
+ className: "Models",
969
+ methodName: "embedContentInternal",
970
+ kind: "Async"
971
+ }
753
972
  }
754
973
  ];
755
974
 
756
- // src/instrumentation/plugins/openrouter-channels.ts
757
- var openRouterChannels = defineChannels("@openrouter/sdk", {
758
- chatSend: channel({
759
- channelName: "chat.send",
975
+ // src/instrumentation/plugins/huggingface-channels.ts
976
+ var huggingFaceChannels = defineChannels("@huggingface/inference", {
977
+ chatCompletion: channel({
978
+ channelName: "chatCompletion",
760
979
  kind: "async"
761
980
  }),
762
- embeddingsGenerate: channel({
763
- channelName: "embeddings.generate",
764
- kind: "async"
981
+ chatCompletionStream: channel({
982
+ channelName: "chatCompletionStream",
983
+ kind: "sync-stream"
765
984
  }),
766
- betaResponsesSend: channel({
767
- channelName: "beta.responses.send",
985
+ textGeneration: channel({
986
+ channelName: "textGeneration",
768
987
  kind: "async"
769
988
  }),
770
- callModel: channel({
771
- channelName: "callModel",
989
+ textGenerationStream: channel({
990
+ channelName: "textGenerationStream",
772
991
  kind: "sync-stream"
773
992
  }),
774
- callModelTurn: channel({
775
- channelName: "callModel.turn",
776
- kind: "async"
777
- }),
778
- toolExecute: channel({
779
- channelName: "tool.execute",
993
+ featureExtraction: channel({
994
+ channelName: "featureExtraction",
780
995
  kind: "async"
781
996
  })
782
997
  });
783
998
 
784
- // src/auto-instrumentations/configs/openrouter.ts
785
- var openRouterConfigs = [
999
+ // src/auto-instrumentations/configs/huggingface.ts
1000
+ var huggingFaceConfigs = [
786
1001
  {
787
- channelName: openRouterChannels.chatSend.channelName,
1002
+ channelName: huggingFaceChannels.chatCompletion.channelName,
788
1003
  module: {
789
- name: "@openrouter/sdk",
790
- versionRange: ">=0.9.11 <1.0.0",
791
- filePath: "esm/sdk/chat.js"
1004
+ name: "@huggingface/inference",
1005
+ versionRange: ">=2.0.0 <3.0.0",
1006
+ filePath: "dist/index.js"
792
1007
  },
793
1008
  functionQuery: {
794
- className: "Chat",
795
- methodName: "send",
1009
+ functionName: "chatCompletion",
796
1010
  kind: "Async"
797
1011
  }
798
1012
  },
799
1013
  {
800
- channelName: openRouterChannels.embeddingsGenerate.channelName,
1014
+ channelName: huggingFaceChannels.chatCompletion.channelName,
801
1015
  module: {
802
- name: "@openrouter/sdk",
803
- versionRange: ">=0.9.11 <1.0.0",
804
- filePath: "esm/sdk/embeddings.js"
1016
+ name: "@huggingface/inference",
1017
+ versionRange: ">=2.0.0 <3.0.0",
1018
+ filePath: "dist/index.cjs"
805
1019
  },
806
1020
  functionQuery: {
807
- className: "Embeddings",
808
- methodName: "generate",
1021
+ functionName: "chatCompletion",
809
1022
  kind: "Async"
810
1023
  }
811
1024
  },
812
1025
  {
813
- channelName: openRouterChannels.betaResponsesSend.channelName,
1026
+ channelName: huggingFaceChannels.chatCompletionStream.channelName,
814
1027
  module: {
815
- name: "@openrouter/sdk",
816
- versionRange: ">=0.9.11 <1.0.0",
817
- filePath: "esm/sdk/responses.js"
1028
+ name: "@huggingface/inference",
1029
+ versionRange: ">=2.0.0 <3.0.0",
1030
+ filePath: "dist/index.js"
818
1031
  },
819
1032
  functionQuery: {
820
- className: "Responses",
821
- methodName: "send",
1033
+ functionName: "chatCompletionStream",
1034
+ kind: "Sync"
1035
+ }
1036
+ },
1037
+ {
1038
+ channelName: huggingFaceChannels.chatCompletionStream.channelName,
1039
+ module: {
1040
+ name: "@huggingface/inference",
1041
+ versionRange: ">=2.0.0 <3.0.0",
1042
+ filePath: "dist/index.cjs"
1043
+ },
1044
+ functionQuery: {
1045
+ functionName: "chatCompletionStream",
1046
+ kind: "Sync"
1047
+ }
1048
+ },
1049
+ {
1050
+ channelName: huggingFaceChannels.textGeneration.channelName,
1051
+ module: {
1052
+ name: "@huggingface/inference",
1053
+ versionRange: ">=2.0.0 <3.0.0",
1054
+ filePath: "dist/index.js"
1055
+ },
1056
+ functionQuery: {
1057
+ functionName: "textGeneration",
822
1058
  kind: "Async"
823
1059
  }
824
1060
  },
825
1061
  {
826
- channelName: openRouterChannels.callModel.channelName,
1062
+ channelName: huggingFaceChannels.textGeneration.channelName,
827
1063
  module: {
828
- name: "@openrouter/sdk",
829
- versionRange: ">=0.9.11 <1.0.0",
830
- filePath: "esm/sdk/sdk.js"
1064
+ name: "@huggingface/inference",
1065
+ versionRange: ">=2.0.0 <3.0.0",
1066
+ filePath: "dist/index.cjs"
831
1067
  },
832
1068
  functionQuery: {
833
- className: "OpenRouter",
834
- methodName: "callModel",
1069
+ functionName: "textGeneration",
1070
+ kind: "Async"
1071
+ }
1072
+ },
1073
+ {
1074
+ channelName: huggingFaceChannels.textGenerationStream.channelName,
1075
+ module: {
1076
+ name: "@huggingface/inference",
1077
+ versionRange: ">=2.0.0 <3.0.0",
1078
+ filePath: "dist/index.js"
1079
+ },
1080
+ functionQuery: {
1081
+ functionName: "textGenerationStream",
835
1082
  kind: "Sync"
836
1083
  }
837
- }
838
- ];
839
-
840
- // src/auto-instrumentations/loader/cjs-patch.ts
841
- import {
842
- create
843
- } from "@apm-js-collab/code-transformer";
844
- import * as Module from "module";
845
- import { sep } from "path";
846
- import moduleDetailsFromPath from "module-details-from-path";
847
- var ModulePatch = class {
848
- packages;
849
- instrumentator;
850
- originalCompile;
851
- constructor({
852
- instrumentations = []
853
- } = {}) {
1084
+ },
1085
+ {
1086
+ channelName: huggingFaceChannels.textGenerationStream.channelName,
1087
+ module: {
1088
+ name: "@huggingface/inference",
1089
+ versionRange: ">=2.0.0 <3.0.0",
1090
+ filePath: "dist/index.cjs"
1091
+ },
1092
+ functionQuery: {
1093
+ functionName: "textGenerationStream",
1094
+ kind: "Sync"
1095
+ }
1096
+ },
1097
+ {
1098
+ channelName: huggingFaceChannels.featureExtraction.channelName,
1099
+ module: {
1100
+ name: "@huggingface/inference",
1101
+ versionRange: ">=2.0.0 <3.0.0",
1102
+ filePath: "dist/index.js"
1103
+ },
1104
+ functionQuery: {
1105
+ functionName: "featureExtraction",
1106
+ kind: "Async"
1107
+ }
1108
+ },
1109
+ {
1110
+ channelName: huggingFaceChannels.featureExtraction.channelName,
1111
+ module: {
1112
+ name: "@huggingface/inference",
1113
+ versionRange: ">=2.0.0 <3.0.0",
1114
+ filePath: "dist/index.cjs"
1115
+ },
1116
+ functionQuery: {
1117
+ functionName: "featureExtraction",
1118
+ kind: "Async"
1119
+ }
1120
+ },
1121
+ {
1122
+ channelName: huggingFaceChannels.chatCompletion.channelName,
1123
+ module: {
1124
+ name: "@huggingface/inference",
1125
+ versionRange: ">=3.0.0 <5.0.0",
1126
+ filePath: "dist/esm/tasks/nlp/chatCompletion.js"
1127
+ },
1128
+ functionQuery: {
1129
+ functionName: "chatCompletion",
1130
+ kind: "Async"
1131
+ }
1132
+ },
1133
+ {
1134
+ channelName: huggingFaceChannels.chatCompletion.channelName,
1135
+ module: {
1136
+ name: "@huggingface/inference",
1137
+ versionRange: ">=3.0.0 <5.0.0",
1138
+ filePath: "dist/commonjs/tasks/nlp/chatCompletion.js"
1139
+ },
1140
+ functionQuery: {
1141
+ functionName: "chatCompletion",
1142
+ kind: "Async"
1143
+ }
1144
+ },
1145
+ {
1146
+ channelName: huggingFaceChannels.chatCompletionStream.channelName,
1147
+ module: {
1148
+ name: "@huggingface/inference",
1149
+ versionRange: ">=3.0.0 <5.0.0",
1150
+ filePath: "dist/esm/tasks/nlp/chatCompletionStream.js"
1151
+ },
1152
+ functionQuery: {
1153
+ functionName: "chatCompletionStream",
1154
+ kind: "Sync"
1155
+ }
1156
+ },
1157
+ {
1158
+ channelName: huggingFaceChannels.chatCompletionStream.channelName,
1159
+ module: {
1160
+ name: "@huggingface/inference",
1161
+ versionRange: ">=3.0.0 <5.0.0",
1162
+ filePath: "dist/commonjs/tasks/nlp/chatCompletionStream.js"
1163
+ },
1164
+ functionQuery: {
1165
+ functionName: "chatCompletionStream",
1166
+ kind: "Sync"
1167
+ }
1168
+ },
1169
+ {
1170
+ channelName: huggingFaceChannels.textGeneration.channelName,
1171
+ module: {
1172
+ name: "@huggingface/inference",
1173
+ versionRange: ">=3.0.0 <5.0.0",
1174
+ filePath: "dist/esm/tasks/nlp/textGeneration.js"
1175
+ },
1176
+ functionQuery: {
1177
+ functionName: "textGeneration",
1178
+ kind: "Async"
1179
+ }
1180
+ },
1181
+ {
1182
+ channelName: huggingFaceChannels.textGeneration.channelName,
1183
+ module: {
1184
+ name: "@huggingface/inference",
1185
+ versionRange: ">=3.0.0 <5.0.0",
1186
+ filePath: "dist/commonjs/tasks/nlp/textGeneration.js"
1187
+ },
1188
+ functionQuery: {
1189
+ functionName: "textGeneration",
1190
+ kind: "Async"
1191
+ }
1192
+ },
1193
+ {
1194
+ channelName: huggingFaceChannels.textGenerationStream.channelName,
1195
+ module: {
1196
+ name: "@huggingface/inference",
1197
+ versionRange: ">=3.0.0 <5.0.0",
1198
+ filePath: "dist/esm/tasks/nlp/textGenerationStream.js"
1199
+ },
1200
+ functionQuery: {
1201
+ functionName: "textGenerationStream",
1202
+ kind: "Sync"
1203
+ }
1204
+ },
1205
+ {
1206
+ channelName: huggingFaceChannels.textGenerationStream.channelName,
1207
+ module: {
1208
+ name: "@huggingface/inference",
1209
+ versionRange: ">=3.0.0 <5.0.0",
1210
+ filePath: "dist/commonjs/tasks/nlp/textGenerationStream.js"
1211
+ },
1212
+ functionQuery: {
1213
+ functionName: "textGenerationStream",
1214
+ kind: "Sync"
1215
+ }
1216
+ },
1217
+ {
1218
+ channelName: huggingFaceChannels.featureExtraction.channelName,
1219
+ module: {
1220
+ name: "@huggingface/inference",
1221
+ versionRange: ">=3.0.0 <5.0.0",
1222
+ filePath: "dist/esm/tasks/nlp/featureExtraction.js"
1223
+ },
1224
+ functionQuery: {
1225
+ functionName: "featureExtraction",
1226
+ kind: "Async"
1227
+ }
1228
+ },
1229
+ {
1230
+ channelName: huggingFaceChannels.featureExtraction.channelName,
1231
+ module: {
1232
+ name: "@huggingface/inference",
1233
+ versionRange: ">=3.0.0 <5.0.0",
1234
+ filePath: "dist/commonjs/tasks/nlp/featureExtraction.js"
1235
+ },
1236
+ functionQuery: {
1237
+ functionName: "featureExtraction",
1238
+ kind: "Async"
1239
+ }
1240
+ }
1241
+ ];
1242
+
1243
+ // src/instrumentation/plugins/openrouter-agent-channels.ts
1244
+ var openRouterAgentChannels = defineChannels("@openrouter/agent", {
1245
+ callModel: channel({
1246
+ channelName: "callModel",
1247
+ kind: "sync-stream"
1248
+ }),
1249
+ callModelTurn: channel({
1250
+ channelName: "callModel.turn",
1251
+ kind: "async"
1252
+ }),
1253
+ toolExecute: channel({
1254
+ channelName: "tool.execute",
1255
+ kind: "async"
1256
+ })
1257
+ });
1258
+
1259
+ // src/auto-instrumentations/configs/openrouter-agent.ts
1260
+ var openRouterAgentConfigs = [
1261
+ {
1262
+ channelName: openRouterAgentChannels.callModel.channelName,
1263
+ module: {
1264
+ name: "@openrouter/agent",
1265
+ versionRange: ">=0.1.2",
1266
+ filePath: "esm/inner-loop/call-model.js"
1267
+ },
1268
+ functionQuery: {
1269
+ functionName: "callModel",
1270
+ kind: "Sync"
1271
+ }
1272
+ }
1273
+ ];
1274
+
1275
+ // src/instrumentation/plugins/openrouter-channels.ts
1276
+ var openRouterChannels = defineChannels("@openrouter/sdk", {
1277
+ chatSend: channel({
1278
+ channelName: "chat.send",
1279
+ kind: "async"
1280
+ }),
1281
+ embeddingsGenerate: channel({
1282
+ channelName: "embeddings.generate",
1283
+ kind: "async"
1284
+ }),
1285
+ rerankRerank: channel(
1286
+ {
1287
+ channelName: "rerank.rerank",
1288
+ kind: "async"
1289
+ }
1290
+ ),
1291
+ betaResponsesSend: channel({
1292
+ channelName: "beta.responses.send",
1293
+ kind: "async"
1294
+ }),
1295
+ callModel: channel({
1296
+ channelName: "callModel",
1297
+ kind: "sync-stream"
1298
+ }),
1299
+ callModelTurn: channel({
1300
+ channelName: "callModel.turn",
1301
+ kind: "async"
1302
+ }),
1303
+ toolExecute: channel({
1304
+ channelName: "tool.execute",
1305
+ kind: "async"
1306
+ })
1307
+ });
1308
+
1309
+ // src/auto-instrumentations/configs/openrouter.ts
1310
+ var openRouterConfigs = [
1311
+ {
1312
+ channelName: openRouterChannels.chatSend.channelName,
1313
+ module: {
1314
+ name: "@openrouter/sdk",
1315
+ versionRange: ">=0.9.11 <1.0.0",
1316
+ filePath: "esm/sdk/chat.js"
1317
+ },
1318
+ functionQuery: {
1319
+ className: "Chat",
1320
+ methodName: "send",
1321
+ kind: "Async"
1322
+ }
1323
+ },
1324
+ {
1325
+ channelName: openRouterChannels.embeddingsGenerate.channelName,
1326
+ module: {
1327
+ name: "@openrouter/sdk",
1328
+ versionRange: ">=0.9.11 <1.0.0",
1329
+ filePath: "esm/sdk/embeddings.js"
1330
+ },
1331
+ functionQuery: {
1332
+ className: "Embeddings",
1333
+ methodName: "generate",
1334
+ kind: "Async"
1335
+ }
1336
+ },
1337
+ {
1338
+ channelName: openRouterChannels.rerankRerank.channelName,
1339
+ module: {
1340
+ name: "@openrouter/sdk",
1341
+ versionRange: ">=0.12.0 <1.0.0",
1342
+ filePath: "esm/sdk/rerank.js"
1343
+ },
1344
+ functionQuery: {
1345
+ className: "Rerank",
1346
+ methodName: "rerank",
1347
+ kind: "Async"
1348
+ }
1349
+ },
1350
+ {
1351
+ channelName: openRouterChannels.betaResponsesSend.channelName,
1352
+ module: {
1353
+ name: "@openrouter/sdk",
1354
+ versionRange: ">=0.9.11 <1.0.0",
1355
+ filePath: "esm/sdk/responses.js"
1356
+ },
1357
+ functionQuery: {
1358
+ className: "Responses",
1359
+ methodName: "send",
1360
+ kind: "Async"
1361
+ }
1362
+ },
1363
+ {
1364
+ channelName: openRouterChannels.callModel.channelName,
1365
+ module: {
1366
+ name: "@openrouter/sdk",
1367
+ versionRange: ">=0.9.11 <1.0.0",
1368
+ filePath: "esm/sdk/sdk.js"
1369
+ },
1370
+ functionQuery: {
1371
+ className: "OpenRouter",
1372
+ methodName: "callModel",
1373
+ kind: "Sync"
1374
+ }
1375
+ }
1376
+ ];
1377
+
1378
+ // src/instrumentation/plugins/mistral-channels.ts
1379
+ var mistralChannels = defineChannels("@mistralai/mistralai", {
1380
+ chatComplete: channel({
1381
+ channelName: "chat.complete",
1382
+ kind: "async"
1383
+ }),
1384
+ chatStream: channel({
1385
+ channelName: "chat.stream",
1386
+ kind: "async"
1387
+ }),
1388
+ embeddingsCreate: channel({
1389
+ channelName: "embeddings.create",
1390
+ kind: "async"
1391
+ }),
1392
+ fimComplete: channel({
1393
+ channelName: "fim.complete",
1394
+ kind: "async"
1395
+ }),
1396
+ fimStream: channel({
1397
+ channelName: "fim.stream",
1398
+ kind: "async"
1399
+ }),
1400
+ agentsComplete: channel({
1401
+ channelName: "agents.complete",
1402
+ kind: "async"
1403
+ }),
1404
+ agentsStream: channel({
1405
+ channelName: "agents.stream",
1406
+ kind: "async"
1407
+ })
1408
+ });
1409
+
1410
+ // src/auto-instrumentations/configs/mistral.ts
1411
+ var mistralConfigs = [
1412
+ {
1413
+ channelName: mistralChannels.chatComplete.channelName,
1414
+ module: {
1415
+ name: "@mistralai/mistralai",
1416
+ versionRange: ">=1.0.0 <2.0.0",
1417
+ filePath: "sdk/chat.js"
1418
+ },
1419
+ functionQuery: {
1420
+ className: "Chat",
1421
+ methodName: "complete",
1422
+ kind: "Async"
1423
+ }
1424
+ },
1425
+ {
1426
+ channelName: mistralChannels.chatComplete.channelName,
1427
+ module: {
1428
+ name: "@mistralai/mistralai",
1429
+ versionRange: ">=2.0.0 <3.0.0",
1430
+ filePath: "esm/sdk/chat.js"
1431
+ },
1432
+ functionQuery: {
1433
+ className: "Chat",
1434
+ methodName: "complete",
1435
+ kind: "Async"
1436
+ }
1437
+ },
1438
+ {
1439
+ channelName: mistralChannels.chatStream.channelName,
1440
+ module: {
1441
+ name: "@mistralai/mistralai",
1442
+ versionRange: ">=1.0.0 <2.0.0",
1443
+ filePath: "sdk/chat.js"
1444
+ },
1445
+ functionQuery: {
1446
+ className: "Chat",
1447
+ methodName: "stream",
1448
+ kind: "Async"
1449
+ }
1450
+ },
1451
+ {
1452
+ channelName: mistralChannels.chatStream.channelName,
1453
+ module: {
1454
+ name: "@mistralai/mistralai",
1455
+ versionRange: ">=2.0.0 <3.0.0",
1456
+ filePath: "esm/sdk/chat.js"
1457
+ },
1458
+ functionQuery: {
1459
+ className: "Chat",
1460
+ methodName: "stream",
1461
+ kind: "Async"
1462
+ }
1463
+ },
1464
+ {
1465
+ channelName: mistralChannels.embeddingsCreate.channelName,
1466
+ module: {
1467
+ name: "@mistralai/mistralai",
1468
+ versionRange: ">=1.0.0 <2.0.0",
1469
+ filePath: "sdk/embeddings.js"
1470
+ },
1471
+ functionQuery: {
1472
+ className: "Embeddings",
1473
+ methodName: "create",
1474
+ kind: "Async"
1475
+ }
1476
+ },
1477
+ {
1478
+ channelName: mistralChannels.embeddingsCreate.channelName,
1479
+ module: {
1480
+ name: "@mistralai/mistralai",
1481
+ versionRange: ">=2.0.0 <3.0.0",
1482
+ filePath: "esm/sdk/embeddings.js"
1483
+ },
1484
+ functionQuery: {
1485
+ className: "Embeddings",
1486
+ methodName: "create",
1487
+ kind: "Async"
1488
+ }
1489
+ },
1490
+ {
1491
+ channelName: mistralChannels.fimComplete.channelName,
1492
+ module: {
1493
+ name: "@mistralai/mistralai",
1494
+ versionRange: ">=1.0.0 <2.0.0",
1495
+ filePath: "sdk/fim.js"
1496
+ },
1497
+ functionQuery: {
1498
+ className: "Fim",
1499
+ methodName: "complete",
1500
+ kind: "Async"
1501
+ }
1502
+ },
1503
+ {
1504
+ channelName: mistralChannels.fimComplete.channelName,
1505
+ module: {
1506
+ name: "@mistralai/mistralai",
1507
+ versionRange: ">=2.0.0 <3.0.0",
1508
+ filePath: "esm/sdk/fim.js"
1509
+ },
1510
+ functionQuery: {
1511
+ className: "Fim",
1512
+ methodName: "complete",
1513
+ kind: "Async"
1514
+ }
1515
+ },
1516
+ {
1517
+ channelName: mistralChannels.fimStream.channelName,
1518
+ module: {
1519
+ name: "@mistralai/mistralai",
1520
+ versionRange: ">=1.0.0 <2.0.0",
1521
+ filePath: "sdk/fim.js"
1522
+ },
1523
+ functionQuery: {
1524
+ className: "Fim",
1525
+ methodName: "stream",
1526
+ kind: "Async"
1527
+ }
1528
+ },
1529
+ {
1530
+ channelName: mistralChannels.fimStream.channelName,
1531
+ module: {
1532
+ name: "@mistralai/mistralai",
1533
+ versionRange: ">=2.0.0 <3.0.0",
1534
+ filePath: "esm/sdk/fim.js"
1535
+ },
1536
+ functionQuery: {
1537
+ className: "Fim",
1538
+ methodName: "stream",
1539
+ kind: "Async"
1540
+ }
1541
+ },
1542
+ {
1543
+ channelName: mistralChannels.agentsComplete.channelName,
1544
+ module: {
1545
+ name: "@mistralai/mistralai",
1546
+ versionRange: ">=1.0.0 <2.0.0",
1547
+ filePath: "sdk/agents.js"
1548
+ },
1549
+ functionQuery: {
1550
+ className: "Agents",
1551
+ methodName: "complete",
1552
+ kind: "Async"
1553
+ }
1554
+ },
1555
+ {
1556
+ channelName: mistralChannels.agentsComplete.channelName,
1557
+ module: {
1558
+ name: "@mistralai/mistralai",
1559
+ versionRange: ">=2.0.0 <3.0.0",
1560
+ filePath: "esm/sdk/agents.js"
1561
+ },
1562
+ functionQuery: {
1563
+ className: "Agents",
1564
+ methodName: "complete",
1565
+ kind: "Async"
1566
+ }
1567
+ },
1568
+ {
1569
+ channelName: mistralChannels.agentsStream.channelName,
1570
+ module: {
1571
+ name: "@mistralai/mistralai",
1572
+ versionRange: ">=1.0.0 <2.0.0",
1573
+ filePath: "sdk/agents.js"
1574
+ },
1575
+ functionQuery: {
1576
+ className: "Agents",
1577
+ methodName: "stream",
1578
+ kind: "Async"
1579
+ }
1580
+ },
1581
+ {
1582
+ channelName: mistralChannels.agentsStream.channelName,
1583
+ module: {
1584
+ name: "@mistralai/mistralai",
1585
+ versionRange: ">=2.0.0 <3.0.0",
1586
+ filePath: "esm/sdk/agents.js"
1587
+ },
1588
+ functionQuery: {
1589
+ className: "Agents",
1590
+ methodName: "stream",
1591
+ kind: "Async"
1592
+ }
1593
+ }
1594
+ ];
1595
+
1596
+ // src/instrumentation/plugins/google-adk-channels.ts
1597
+ var googleADKChannels = defineChannels("@google/adk", {
1598
+ runnerRunAsync: channel({
1599
+ channelName: "runner.runAsync",
1600
+ kind: "sync-stream"
1601
+ }),
1602
+ agentRunAsync: channel({
1603
+ channelName: "agent.runAsync",
1604
+ kind: "sync-stream"
1605
+ }),
1606
+ toolRunAsync: channel({
1607
+ channelName: "tool.runAsync",
1608
+ kind: "async"
1609
+ })
1610
+ });
1611
+
1612
+ // src/auto-instrumentations/configs/google-adk.ts
1613
+ var googleADKVersionRange = ">=0.1.0";
1614
+ var googleADKBundledIndexVersionRange = ">=0.6.1 <0.7.0";
1615
+ var googleADKConfigs = [
1616
+ // --- Runner.runAsync --- async generator, kind "Sync" + sync-stream channel
1617
+ // Runner.runAsync — ESM individual module file
1618
+ {
1619
+ channelName: googleADKChannels.runnerRunAsync.channelName,
1620
+ module: {
1621
+ name: "@google/adk",
1622
+ versionRange: googleADKVersionRange,
1623
+ filePath: "dist/esm/runner/runner.js"
1624
+ },
1625
+ functionQuery: {
1626
+ className: "Runner",
1627
+ methodName: "runAsync",
1628
+ kind: "Sync"
1629
+ }
1630
+ },
1631
+ // Runner.runAsync — bundled CJS/ESM indexes
1632
+ // The bundled entrypoints minify class names, so target the 12th sync
1633
+ // `runAsync` method in file order rather than a class name. This mapping is
1634
+ // only validated against the current 0.6.x bundle layout, so keep the range
1635
+ // tight until we verify newer bundled outputs.
1636
+ {
1637
+ channelName: googleADKChannels.runnerRunAsync.channelName,
1638
+ module: {
1639
+ name: "@google/adk",
1640
+ versionRange: googleADKBundledIndexVersionRange,
1641
+ filePath: "dist/cjs/index.js"
1642
+ },
1643
+ functionQuery: {
1644
+ methodName: "runAsync",
1645
+ kind: "Sync",
1646
+ index: 11
1647
+ }
1648
+ },
1649
+ {
1650
+ channelName: googleADKChannels.runnerRunAsync.channelName,
1651
+ module: {
1652
+ name: "@google/adk",
1653
+ versionRange: googleADKBundledIndexVersionRange,
1654
+ filePath: "dist/esm/index.js"
1655
+ },
1656
+ functionQuery: {
1657
+ methodName: "runAsync",
1658
+ kind: "Sync",
1659
+ index: 11
1660
+ }
1661
+ },
1662
+ // --- BaseAgent.runAsync --- async generator, kind "Sync" + sync-stream channel
1663
+ // BaseAgent.runAsync — ESM individual module file
1664
+ {
1665
+ channelName: googleADKChannels.agentRunAsync.channelName,
1666
+ module: {
1667
+ name: "@google/adk",
1668
+ versionRange: googleADKVersionRange,
1669
+ filePath: "dist/esm/agents/base_agent.js"
1670
+ },
1671
+ functionQuery: {
1672
+ className: "BaseAgent",
1673
+ methodName: "runAsync",
1674
+ kind: "Sync"
1675
+ }
1676
+ },
1677
+ // BaseAgent.runAsync — bundled CJS/ESM indexes
1678
+ // The bundled entrypoints minify class names, so target the first sync
1679
+ // `runAsync` method in file order rather than a class name. This mapping is
1680
+ // only validated against the current 0.6.x bundle layout, so keep the range
1681
+ // tight until we verify newer bundled outputs.
1682
+ {
1683
+ channelName: googleADKChannels.agentRunAsync.channelName,
1684
+ module: {
1685
+ name: "@google/adk",
1686
+ versionRange: googleADKBundledIndexVersionRange,
1687
+ filePath: "dist/cjs/index.js"
1688
+ },
1689
+ functionQuery: {
1690
+ methodName: "runAsync",
1691
+ kind: "Sync",
1692
+ index: 0
1693
+ }
1694
+ },
1695
+ {
1696
+ channelName: googleADKChannels.agentRunAsync.channelName,
1697
+ module: {
1698
+ name: "@google/adk",
1699
+ versionRange: googleADKBundledIndexVersionRange,
1700
+ filePath: "dist/esm/index.js"
1701
+ },
1702
+ functionQuery: {
1703
+ methodName: "runAsync",
1704
+ kind: "Sync",
1705
+ index: 0
1706
+ }
1707
+ },
1708
+ // --- FunctionTool.runAsync --- regular async, kind "Async"
1709
+ // FunctionTool.runAsync — ESM individual module file
1710
+ {
1711
+ channelName: googleADKChannels.toolRunAsync.channelName,
1712
+ module: {
1713
+ name: "@google/adk",
1714
+ versionRange: googleADKVersionRange,
1715
+ filePath: "dist/esm/tools/function_tool.js"
1716
+ },
1717
+ functionQuery: {
1718
+ className: "FunctionTool",
1719
+ methodName: "runAsync",
1720
+ kind: "Async"
1721
+ }
1722
+ },
1723
+ // FunctionTool.runAsync — bundled CJS/ESM indexes
1724
+ // The bundled entrypoints minify class names, so target the first async
1725
+ // `runAsync` method in file order rather than a class name. This mapping is
1726
+ // only validated against the current 0.6.x bundle layout, so keep the range
1727
+ // tight until we verify newer bundled outputs.
1728
+ {
1729
+ channelName: googleADKChannels.toolRunAsync.channelName,
1730
+ module: {
1731
+ name: "@google/adk",
1732
+ versionRange: googleADKBundledIndexVersionRange,
1733
+ filePath: "dist/cjs/index.js"
1734
+ },
1735
+ functionQuery: {
1736
+ methodName: "runAsync",
1737
+ kind: "Async",
1738
+ index: 1
1739
+ }
1740
+ },
1741
+ {
1742
+ channelName: googleADKChannels.toolRunAsync.channelName,
1743
+ module: {
1744
+ name: "@google/adk",
1745
+ versionRange: googleADKBundledIndexVersionRange,
1746
+ filePath: "dist/esm/index.js"
1747
+ },
1748
+ functionQuery: {
1749
+ methodName: "runAsync",
1750
+ kind: "Async",
1751
+ index: 1
1752
+ }
1753
+ }
1754
+ ];
1755
+
1756
+ // src/instrumentation/plugins/cohere-channels.ts
1757
+ var cohereChannels = defineChannels("cohere-ai", {
1758
+ chat: channel({
1759
+ channelName: "chat",
1760
+ kind: "async"
1761
+ }),
1762
+ chatStream: channel({
1763
+ channelName: "chatStream",
1764
+ kind: "async"
1765
+ }),
1766
+ embed: channel({
1767
+ channelName: "embed",
1768
+ kind: "async"
1769
+ }),
1770
+ rerank: channel({
1771
+ channelName: "rerank",
1772
+ kind: "async"
1773
+ })
1774
+ });
1775
+
1776
+ // src/auto-instrumentations/configs/cohere.ts
1777
+ var cohereConfigs = [
1778
+ {
1779
+ channelName: cohereChannels.chat.channelName,
1780
+ module: {
1781
+ name: "cohere-ai",
1782
+ versionRange: ">=7.0.0 <8.0.0",
1783
+ filePath: "Client.js"
1784
+ },
1785
+ functionQuery: {
1786
+ className: "CohereClient",
1787
+ methodName: "chat",
1788
+ kind: "Async"
1789
+ }
1790
+ },
1791
+ {
1792
+ channelName: cohereChannels.chat.channelName,
1793
+ module: {
1794
+ name: "cohere-ai",
1795
+ versionRange: ">=8.0.0 <9.0.0",
1796
+ filePath: "Client.js"
1797
+ },
1798
+ functionQuery: {
1799
+ className: "CohereClient",
1800
+ methodName: "chat",
1801
+ kind: "Async"
1802
+ }
1803
+ },
1804
+ {
1805
+ channelName: cohereChannels.chat.channelName,
1806
+ module: {
1807
+ name: "cohere-ai",
1808
+ versionRange: ">=8.0.0 <9.0.0",
1809
+ filePath: "api/resources/v2/client/Client.js"
1810
+ },
1811
+ functionQuery: {
1812
+ className: "V2Client",
1813
+ methodName: "chat",
1814
+ kind: "Async"
1815
+ }
1816
+ },
1817
+ {
1818
+ channelName: cohereChannels.chatStream.channelName,
1819
+ module: {
1820
+ name: "cohere-ai",
1821
+ versionRange: ">=7.0.0 <8.0.0",
1822
+ filePath: "Client.js"
1823
+ },
1824
+ functionQuery: {
1825
+ className: "CohereClient",
1826
+ methodName: "chatStream",
1827
+ kind: "Async"
1828
+ }
1829
+ },
1830
+ {
1831
+ channelName: cohereChannels.chatStream.channelName,
1832
+ module: {
1833
+ name: "cohere-ai",
1834
+ versionRange: ">=8.0.0 <9.0.0",
1835
+ filePath: "Client.js"
1836
+ },
1837
+ functionQuery: {
1838
+ className: "CohereClient",
1839
+ methodName: "chatStream",
1840
+ kind: "Async"
1841
+ }
1842
+ },
1843
+ {
1844
+ channelName: cohereChannels.chatStream.channelName,
1845
+ module: {
1846
+ name: "cohere-ai",
1847
+ versionRange: ">=8.0.0 <9.0.0",
1848
+ filePath: "api/resources/v2/client/Client.js"
1849
+ },
1850
+ functionQuery: {
1851
+ className: "V2Client",
1852
+ methodName: "chatStream",
1853
+ kind: "Async"
1854
+ }
1855
+ },
1856
+ {
1857
+ channelName: cohereChannels.embed.channelName,
1858
+ module: {
1859
+ name: "cohere-ai",
1860
+ versionRange: ">=7.0.0 <8.0.0",
1861
+ filePath: "Client.js"
1862
+ },
1863
+ functionQuery: {
1864
+ className: "CohereClient",
1865
+ methodName: "embed",
1866
+ kind: "Async"
1867
+ }
1868
+ },
1869
+ {
1870
+ channelName: cohereChannels.embed.channelName,
1871
+ module: {
1872
+ name: "cohere-ai",
1873
+ versionRange: ">=8.0.0 <9.0.0",
1874
+ filePath: "Client.js"
1875
+ },
1876
+ functionQuery: {
1877
+ className: "CohereClient",
1878
+ methodName: "embed",
1879
+ kind: "Async"
1880
+ }
1881
+ },
1882
+ {
1883
+ channelName: cohereChannels.embed.channelName,
1884
+ module: {
1885
+ name: "cohere-ai",
1886
+ versionRange: ">=8.0.0 <9.0.0",
1887
+ filePath: "api/resources/v2/client/Client.js"
1888
+ },
1889
+ functionQuery: {
1890
+ className: "V2Client",
1891
+ methodName: "embed",
1892
+ kind: "Async"
1893
+ }
1894
+ },
1895
+ {
1896
+ channelName: cohereChannels.rerank.channelName,
1897
+ module: {
1898
+ name: "cohere-ai",
1899
+ versionRange: ">=7.0.0 <8.0.0",
1900
+ filePath: "Client.js"
1901
+ },
1902
+ functionQuery: {
1903
+ className: "CohereClient",
1904
+ methodName: "rerank",
1905
+ kind: "Async"
1906
+ }
1907
+ },
1908
+ {
1909
+ channelName: cohereChannels.rerank.channelName,
1910
+ module: {
1911
+ name: "cohere-ai",
1912
+ versionRange: ">=8.0.0 <9.0.0",
1913
+ filePath: "Client.js"
1914
+ },
1915
+ functionQuery: {
1916
+ className: "CohereClient",
1917
+ methodName: "rerank",
1918
+ kind: "Async"
1919
+ }
1920
+ },
1921
+ {
1922
+ channelName: cohereChannels.rerank.channelName,
1923
+ module: {
1924
+ name: "cohere-ai",
1925
+ versionRange: ">=8.0.0 <9.0.0",
1926
+ filePath: "api/resources/v2/client/Client.js"
1927
+ },
1928
+ functionQuery: {
1929
+ className: "V2Client",
1930
+ methodName: "rerank",
1931
+ kind: "Async"
1932
+ }
1933
+ }
1934
+ ];
1935
+
1936
+ // src/auto-instrumentations/loader/cjs-patch.ts
1937
+ import {
1938
+ create
1939
+ } from "@apm-js-collab/code-transformer";
1940
+ import * as NodeModule from "module";
1941
+ import { sep } from "path";
1942
+ import moduleDetailsFromPath from "module-details-from-path";
1943
+ var ModulePatch = class {
1944
+ packages;
1945
+ instrumentator;
1946
+ modulePrototype;
1947
+ originalCompile;
1948
+ constructor({
1949
+ instrumentations = []
1950
+ } = {}) {
1951
+ const modulePrototype = resolveModulePrototype();
854
1952
  this.packages = new Set(instrumentations.map((i) => i.module.name));
855
1953
  this.instrumentator = create(instrumentations);
856
- this.originalCompile = Module.prototype._compile;
1954
+ this.modulePrototype = modulePrototype;
1955
+ this.originalCompile = modulePrototype._compile;
857
1956
  }
858
1957
  /**
859
1958
  * Patches the Node.js module class method that is responsible for compiling code.
@@ -862,7 +1961,7 @@ var ModulePatch = class {
862
1961
  */
863
1962
  patch() {
864
1963
  const self = this;
865
- Module.prototype._compile = function wrappedCompile(...args) {
1964
+ this.modulePrototype._compile = function wrappedCompile(...args) {
866
1965
  const [content, filename] = args;
867
1966
  const normalizedForPlatform = filename.split("/").join(sep);
868
1967
  const resolvedModule = moduleDetailsFromPath(normalizedForPlatform);
@@ -897,9 +1996,16 @@ var ModulePatch = class {
897
1996
  * **Note**: This is intended to be used in testing only.
898
1997
  */
899
1998
  unpatch() {
900
- Module.prototype._compile = this.originalCompile;
1999
+ this.modulePrototype._compile = this.originalCompile;
901
2000
  }
902
2001
  };
2002
+ function resolveModulePrototype() {
2003
+ const moduleCtor = NodeModule.Module;
2004
+ if (moduleCtor && typeof moduleCtor === "function") {
2005
+ return moduleCtor.prototype;
2006
+ }
2007
+ return NodeModule.prototype;
2008
+ }
903
2009
 
904
2010
  // src/auto-instrumentations/patch-tracing-channel.ts
905
2011
  function patchTracingChannel(tracingChannelFn) {
@@ -990,13 +2096,31 @@ var dc = await import(
990
2096
  dcPath
991
2097
  );
992
2098
  patchTracingChannel(dc.tracingChannel);
2099
+ function readDisabledIntegrations() {
2100
+ const raw = process.env.BRAINTRUST_DISABLE_INSTRUMENTATION;
2101
+ if (!raw) {
2102
+ return /* @__PURE__ */ new Set();
2103
+ }
2104
+ return new Set(
2105
+ raw.split(",").map((value) => value.trim().toLowerCase()).filter((value) => value.length > 0)
2106
+ );
2107
+ }
2108
+ function isDisabled(disabled, ...names) {
2109
+ return names.some((name) => disabled.has(name));
2110
+ }
2111
+ var disabledIntegrations = readDisabledIntegrations();
993
2112
  var allConfigs = [
994
- ...openaiConfigs,
995
- ...anthropicConfigs,
996
- ...aiSDKConfigs,
997
- ...claudeAgentSDKConfigs,
998
- ...googleGenAIConfigs,
999
- ...openRouterConfigs
2113
+ ...isDisabled(disabledIntegrations, "openai") ? [] : openaiConfigs,
2114
+ ...isDisabled(disabledIntegrations, "anthropic") ? [] : anthropicConfigs,
2115
+ ...isDisabled(disabledIntegrations, "aisdk", "ai-sdk", "vercel-ai") ? [] : aiSDKConfigs,
2116
+ ...isDisabled(disabledIntegrations, "claudeagentsdk", "claude-agent-sdk") ? [] : claudeAgentSDKConfigs,
2117
+ ...isDisabled(disabledIntegrations, "google", "google-genai") ? [] : googleGenAIConfigs,
2118
+ ...isDisabled(disabledIntegrations, "huggingface") ? [] : huggingFaceConfigs,
2119
+ ...isDisabled(disabledIntegrations, "openrouter") ? [] : openRouterConfigs,
2120
+ ...isDisabled(disabledIntegrations, "openrouteragent", "openrouter-agent") ? [] : openRouterAgentConfigs,
2121
+ ...isDisabled(disabledIntegrations, "mistral") ? [] : mistralConfigs,
2122
+ ...isDisabled(disabledIntegrations, "googleadk", "google-adk") ? [] : googleADKConfigs,
2123
+ ...isDisabled(disabledIntegrations, "cohere") ? [] : cohereConfigs
1000
2124
  ];
1001
2125
  register("./loader/esm-hook.mjs", {
1002
2126
  parentURL: import.meta.url,