@amplitude/ai 0.1.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 (510) hide show
  1. package/.cursor/skills/instrument-with-amplitude-ai/SKILL.md +50 -0
  2. package/AGENTS.md +79 -0
  3. package/LICENSE +21 -0
  4. package/README.md +2111 -0
  5. package/bin/amplitude-ai-completions.mjs +19 -0
  6. package/bin/amplitude-ai-doctor.mjs +26 -0
  7. package/bin/amplitude-ai-init.mjs +27 -0
  8. package/bin/amplitude-ai-instrument.mjs +52 -0
  9. package/bin/amplitude-ai-mcp.mjs +8 -0
  10. package/bin/amplitude-ai-register-catalog.mjs +156 -0
  11. package/bin/amplitude-ai-status.mjs +28 -0
  12. package/bin/amplitude-ai.mjs +43 -0
  13. package/bin/validate-catalog-constants.mjs +134 -0
  14. package/data/agent_event_catalog.json +1277 -0
  15. package/dist/_virtual/rolldown_runtime.js +31 -0
  16. package/dist/bound-agent.d.ts +56 -0
  17. package/dist/bound-agent.d.ts.map +1 -0
  18. package/dist/bound-agent.js +155 -0
  19. package/dist/bound-agent.js.map +1 -0
  20. package/dist/cli/doctor.d.ts +17 -0
  21. package/dist/cli/doctor.d.ts.map +1 -0
  22. package/dist/cli/doctor.js +89 -0
  23. package/dist/cli/doctor.js.map +1 -0
  24. package/dist/cli/init.d.ts +14 -0
  25. package/dist/cli/init.d.ts.map +1 -0
  26. package/dist/cli/init.js +40 -0
  27. package/dist/cli/init.js.map +1 -0
  28. package/dist/cli/providers.d.ts +32 -0
  29. package/dist/cli/providers.d.ts.map +1 -0
  30. package/dist/cli/providers.js +46 -0
  31. package/dist/cli/providers.js.map +1 -0
  32. package/dist/cli/status.d.ts +14 -0
  33. package/dist/cli/status.d.ts.map +1 -0
  34. package/dist/cli/status.js +38 -0
  35. package/dist/cli/status.js.map +1 -0
  36. package/dist/client.d.ts +246 -0
  37. package/dist/client.d.ts.map +1 -0
  38. package/dist/client.js +369 -0
  39. package/dist/client.js.map +1 -0
  40. package/dist/config.d.ts +60 -0
  41. package/dist/config.d.ts.map +1 -0
  42. package/dist/config.js +57 -0
  43. package/dist/config.js.map +1 -0
  44. package/dist/context.d.ts +44 -0
  45. package/dist/context.d.ts.map +1 -0
  46. package/dist/context.js +53 -0
  47. package/dist/context.js.map +1 -0
  48. package/dist/core/constants.d.ts +96 -0
  49. package/dist/core/constants.d.ts.map +1 -0
  50. package/dist/core/constants.js +105 -0
  51. package/dist/core/constants.js.map +1 -0
  52. package/dist/core/enrichments.d.ts +139 -0
  53. package/dist/core/enrichments.d.ts.map +1 -0
  54. package/dist/core/enrichments.js +177 -0
  55. package/dist/core/enrichments.js.map +1 -0
  56. package/dist/core/privacy.d.ts +53 -0
  57. package/dist/core/privacy.d.ts.map +1 -0
  58. package/dist/core/privacy.js +235 -0
  59. package/dist/core/privacy.js.map +1 -0
  60. package/dist/core/tracking.d.ts +242 -0
  61. package/dist/core/tracking.d.ts.map +1 -0
  62. package/dist/core/tracking.js +469 -0
  63. package/dist/core/tracking.js.map +1 -0
  64. package/dist/decorators.d.ts +109 -0
  65. package/dist/decorators.d.ts.map +1 -0
  66. package/dist/decorators.js +281 -0
  67. package/dist/decorators.js.map +1 -0
  68. package/dist/exceptions.d.ts +19 -0
  69. package/dist/exceptions.d.ts.map +1 -0
  70. package/dist/exceptions.js +35 -0
  71. package/dist/exceptions.js.map +1 -0
  72. package/dist/index.d.ts +37 -0
  73. package/dist/index.js +38 -0
  74. package/dist/integrations/anthropic-tools.d.ts +38 -0
  75. package/dist/integrations/anthropic-tools.d.ts.map +1 -0
  76. package/dist/integrations/anthropic-tools.js +175 -0
  77. package/dist/integrations/anthropic-tools.js.map +1 -0
  78. package/dist/integrations/crewai.d.ts +14 -0
  79. package/dist/integrations/crewai.d.ts.map +1 -0
  80. package/dist/integrations/crewai.js +19 -0
  81. package/dist/integrations/crewai.js.map +1 -0
  82. package/dist/integrations/langchain.d.ts +37 -0
  83. package/dist/integrations/langchain.d.ts.map +1 -0
  84. package/dist/integrations/langchain.js +189 -0
  85. package/dist/integrations/langchain.js.map +1 -0
  86. package/dist/integrations/llamaindex.d.ts +44 -0
  87. package/dist/integrations/llamaindex.d.ts.map +1 -0
  88. package/dist/integrations/llamaindex.js +144 -0
  89. package/dist/integrations/llamaindex.js.map +1 -0
  90. package/dist/integrations/openai-agents.d.ts +35 -0
  91. package/dist/integrations/openai-agents.d.ts.map +1 -0
  92. package/dist/integrations/openai-agents.js +248 -0
  93. package/dist/integrations/openai-agents.js.map +1 -0
  94. package/dist/integrations/opentelemetry.d.ts +40 -0
  95. package/dist/integrations/opentelemetry.d.ts.map +1 -0
  96. package/dist/integrations/opentelemetry.js +146 -0
  97. package/dist/integrations/opentelemetry.js.map +1 -0
  98. package/dist/internals.d.ts +5 -0
  99. package/dist/internals.js +5 -0
  100. package/dist/mcp/contract.d.ts +27 -0
  101. package/dist/mcp/contract.d.ts.map +1 -0
  102. package/dist/mcp/contract.js +25 -0
  103. package/dist/mcp/contract.js.map +1 -0
  104. package/dist/mcp/index.d.ts +4 -0
  105. package/dist/mcp/index.js +5 -0
  106. package/dist/mcp/patterns.d.ts +11 -0
  107. package/dist/mcp/patterns.d.ts.map +1 -0
  108. package/dist/mcp/patterns.js +38 -0
  109. package/dist/mcp/patterns.js.map +1 -0
  110. package/dist/mcp/server.d.ts +10 -0
  111. package/dist/mcp/server.d.ts.map +1 -0
  112. package/dist/mcp/server.js +241 -0
  113. package/dist/mcp/server.js.map +1 -0
  114. package/dist/mcp/validate-file.d.ts +20 -0
  115. package/dist/mcp/validate-file.d.ts.map +1 -0
  116. package/dist/mcp/validate-file.js +122 -0
  117. package/dist/mcp/validate-file.js.map +1 -0
  118. package/dist/middleware.d.ts +32 -0
  119. package/dist/middleware.d.ts.map +1 -0
  120. package/dist/middleware.js +67 -0
  121. package/dist/middleware.js.map +1 -0
  122. package/dist/node_modules/.pnpm/@modelcontextprotocol_sdk@1.27.1_zod@3.25.76/node_modules/@modelcontextprotocol/sdk/dist/esm/experimental/tasks/helpers.js +54 -0
  123. package/dist/node_modules/.pnpm/@modelcontextprotocol_sdk@1.27.1_zod@3.25.76/node_modules/@modelcontextprotocol/sdk/dist/esm/experimental/tasks/helpers.js.map +1 -0
  124. package/dist/node_modules/.pnpm/@modelcontextprotocol_sdk@1.27.1_zod@3.25.76/node_modules/@modelcontextprotocol/sdk/dist/esm/experimental/tasks/interfaces.js +20 -0
  125. package/dist/node_modules/.pnpm/@modelcontextprotocol_sdk@1.27.1_zod@3.25.76/node_modules/@modelcontextprotocol/sdk/dist/esm/experimental/tasks/interfaces.js.map +1 -0
  126. package/dist/node_modules/.pnpm/@modelcontextprotocol_sdk@1.27.1_zod@3.25.76/node_modules/@modelcontextprotocol/sdk/dist/esm/experimental/tasks/mcp-server.js +34 -0
  127. package/dist/node_modules/.pnpm/@modelcontextprotocol_sdk@1.27.1_zod@3.25.76/node_modules/@modelcontextprotocol/sdk/dist/esm/experimental/tasks/mcp-server.js.map +1 -0
  128. package/dist/node_modules/.pnpm/@modelcontextprotocol_sdk@1.27.1_zod@3.25.76/node_modules/@modelcontextprotocol/sdk/dist/esm/experimental/tasks/server.js +225 -0
  129. package/dist/node_modules/.pnpm/@modelcontextprotocol_sdk@1.27.1_zod@3.25.76/node_modules/@modelcontextprotocol/sdk/dist/esm/experimental/tasks/server.js.map +1 -0
  130. package/dist/node_modules/.pnpm/@modelcontextprotocol_sdk@1.27.1_zod@3.25.76/node_modules/@modelcontextprotocol/sdk/dist/esm/server/completable.js +22 -0
  131. package/dist/node_modules/.pnpm/@modelcontextprotocol_sdk@1.27.1_zod@3.25.76/node_modules/@modelcontextprotocol/sdk/dist/esm/server/completable.js.map +1 -0
  132. package/dist/node_modules/.pnpm/@modelcontextprotocol_sdk@1.27.1_zod@3.25.76/node_modules/@modelcontextprotocol/sdk/dist/esm/server/index.js +351 -0
  133. package/dist/node_modules/.pnpm/@modelcontextprotocol_sdk@1.27.1_zod@3.25.76/node_modules/@modelcontextprotocol/sdk/dist/esm/server/index.js.map +1 -0
  134. package/dist/node_modules/.pnpm/@modelcontextprotocol_sdk@1.27.1_zod@3.25.76/node_modules/@modelcontextprotocol/sdk/dist/esm/server/mcp.js +634 -0
  135. package/dist/node_modules/.pnpm/@modelcontextprotocol_sdk@1.27.1_zod@3.25.76/node_modules/@modelcontextprotocol/sdk/dist/esm/server/mcp.js.map +1 -0
  136. package/dist/node_modules/.pnpm/@modelcontextprotocol_sdk@1.27.1_zod@3.25.76/node_modules/@modelcontextprotocol/sdk/dist/esm/server/stdio.js +60 -0
  137. package/dist/node_modules/.pnpm/@modelcontextprotocol_sdk@1.27.1_zod@3.25.76/node_modules/@modelcontextprotocol/sdk/dist/esm/server/stdio.js.map +1 -0
  138. package/dist/node_modules/.pnpm/@modelcontextprotocol_sdk@1.27.1_zod@3.25.76/node_modules/@modelcontextprotocol/sdk/dist/esm/server/zod-compat.js +122 -0
  139. package/dist/node_modules/.pnpm/@modelcontextprotocol_sdk@1.27.1_zod@3.25.76/node_modules/@modelcontextprotocol/sdk/dist/esm/server/zod-compat.js.map +1 -0
  140. package/dist/node_modules/.pnpm/@modelcontextprotocol_sdk@1.27.1_zod@3.25.76/node_modules/@modelcontextprotocol/sdk/dist/esm/server/zod-json-schema-compat.js +37 -0
  141. package/dist/node_modules/.pnpm/@modelcontextprotocol_sdk@1.27.1_zod@3.25.76/node_modules/@modelcontextprotocol/sdk/dist/esm/server/zod-json-schema-compat.js.map +1 -0
  142. package/dist/node_modules/.pnpm/@modelcontextprotocol_sdk@1.27.1_zod@3.25.76/node_modules/@modelcontextprotocol/sdk/dist/esm/shared/protocol.js +858 -0
  143. package/dist/node_modules/.pnpm/@modelcontextprotocol_sdk@1.27.1_zod@3.25.76/node_modules/@modelcontextprotocol/sdk/dist/esm/shared/protocol.js.map +1 -0
  144. package/dist/node_modules/.pnpm/@modelcontextprotocol_sdk@1.27.1_zod@3.25.76/node_modules/@modelcontextprotocol/sdk/dist/esm/shared/stdio.js +32 -0
  145. package/dist/node_modules/.pnpm/@modelcontextprotocol_sdk@1.27.1_zod@3.25.76/node_modules/@modelcontextprotocol/sdk/dist/esm/shared/stdio.js.map +1 -0
  146. package/dist/node_modules/.pnpm/@modelcontextprotocol_sdk@1.27.1_zod@3.25.76/node_modules/@modelcontextprotocol/sdk/dist/esm/shared/toolNameValidation.js +74 -0
  147. package/dist/node_modules/.pnpm/@modelcontextprotocol_sdk@1.27.1_zod@3.25.76/node_modules/@modelcontextprotocol/sdk/dist/esm/shared/toolNameValidation.js.map +1 -0
  148. package/dist/node_modules/.pnpm/@modelcontextprotocol_sdk@1.27.1_zod@3.25.76/node_modules/@modelcontextprotocol/sdk/dist/esm/types.js +1262 -0
  149. package/dist/node_modules/.pnpm/@modelcontextprotocol_sdk@1.27.1_zod@3.25.76/node_modules/@modelcontextprotocol/sdk/dist/esm/types.js.map +1 -0
  150. package/dist/node_modules/.pnpm/@modelcontextprotocol_sdk@1.27.1_zod@3.25.76/node_modules/@modelcontextprotocol/sdk/dist/esm/validation/ajv-provider.js +83 -0
  151. package/dist/node_modules/.pnpm/@modelcontextprotocol_sdk@1.27.1_zod@3.25.76/node_modules/@modelcontextprotocol/sdk/dist/esm/validation/ajv-provider.js.map +1 -0
  152. package/dist/node_modules/.pnpm/ajv-formats@3.0.1_ajv@8.18.0/node_modules/ajv-formats/dist/formats.js +195 -0
  153. package/dist/node_modules/.pnpm/ajv-formats@3.0.1_ajv@8.18.0/node_modules/ajv-formats/dist/formats.js.map +1 -0
  154. package/dist/node_modules/.pnpm/ajv-formats@3.0.1_ajv@8.18.0/node_modules/ajv-formats/dist/index.js +44 -0
  155. package/dist/node_modules/.pnpm/ajv-formats@3.0.1_ajv@8.18.0/node_modules/ajv-formats/dist/index.js.map +1 -0
  156. package/dist/node_modules/.pnpm/ajv-formats@3.0.1_ajv@8.18.0/node_modules/ajv-formats/dist/limit.js +88 -0
  157. package/dist/node_modules/.pnpm/ajv-formats@3.0.1_ajv@8.18.0/node_modules/ajv-formats/dist/limit.js.map +1 -0
  158. package/dist/node_modules/.pnpm/ajv@8.18.0/node_modules/ajv/dist/ajv.js +107 -0
  159. package/dist/node_modules/.pnpm/ajv@8.18.0/node_modules/ajv/dist/ajv.js.map +1 -0
  160. package/dist/node_modules/.pnpm/ajv@8.18.0/node_modules/ajv/dist/compile/codegen/code.js +142 -0
  161. package/dist/node_modules/.pnpm/ajv@8.18.0/node_modules/ajv/dist/compile/codegen/code.js.map +1 -0
  162. package/dist/node_modules/.pnpm/ajv@8.18.0/node_modules/ajv/dist/compile/codegen/index.js +678 -0
  163. package/dist/node_modules/.pnpm/ajv@8.18.0/node_modules/ajv/dist/compile/codegen/index.js.map +1 -0
  164. package/dist/node_modules/.pnpm/ajv@8.18.0/node_modules/ajv/dist/compile/codegen/scope.js +145 -0
  165. package/dist/node_modules/.pnpm/ajv@8.18.0/node_modules/ajv/dist/compile/codegen/scope.js.map +1 -0
  166. package/dist/node_modules/.pnpm/ajv@8.18.0/node_modules/ajv/dist/compile/errors.js +106 -0
  167. package/dist/node_modules/.pnpm/ajv@8.18.0/node_modules/ajv/dist/compile/errors.js.map +1 -0
  168. package/dist/node_modules/.pnpm/ajv@8.18.0/node_modules/ajv/dist/compile/index.js +227 -0
  169. package/dist/node_modules/.pnpm/ajv@8.18.0/node_modules/ajv/dist/compile/index.js.map +1 -0
  170. package/dist/node_modules/.pnpm/ajv@8.18.0/node_modules/ajv/dist/compile/names.js +33 -0
  171. package/dist/node_modules/.pnpm/ajv@8.18.0/node_modules/ajv/dist/compile/names.js.map +1 -0
  172. package/dist/node_modules/.pnpm/ajv@8.18.0/node_modules/ajv/dist/compile/ref_error.js +22 -0
  173. package/dist/node_modules/.pnpm/ajv@8.18.0/node_modules/ajv/dist/compile/ref_error.js.map +1 -0
  174. package/dist/node_modules/.pnpm/ajv@8.18.0/node_modules/ajv/dist/compile/resolve.js +137 -0
  175. package/dist/node_modules/.pnpm/ajv@8.18.0/node_modules/ajv/dist/compile/resolve.js.map +1 -0
  176. package/dist/node_modules/.pnpm/ajv@8.18.0/node_modules/ajv/dist/compile/rules.js +65 -0
  177. package/dist/node_modules/.pnpm/ajv@8.18.0/node_modules/ajv/dist/compile/rules.js.map +1 -0
  178. package/dist/node_modules/.pnpm/ajv@8.18.0/node_modules/ajv/dist/compile/util.js +150 -0
  179. package/dist/node_modules/.pnpm/ajv@8.18.0/node_modules/ajv/dist/compile/util.js.map +1 -0
  180. package/dist/node_modules/.pnpm/ajv@8.18.0/node_modules/ajv/dist/compile/validate/applicability.js +27 -0
  181. package/dist/node_modules/.pnpm/ajv@8.18.0/node_modules/ajv/dist/compile/validate/applicability.js.map +1 -0
  182. package/dist/node_modules/.pnpm/ajv@8.18.0/node_modules/ajv/dist/compile/validate/boolSchema.js +52 -0
  183. package/dist/node_modules/.pnpm/ajv@8.18.0/node_modules/ajv/dist/compile/validate/boolSchema.js.map +1 -0
  184. package/dist/node_modules/.pnpm/ajv@8.18.0/node_modules/ajv/dist/compile/validate/dataType.js +176 -0
  185. package/dist/node_modules/.pnpm/ajv@8.18.0/node_modules/ajv/dist/compile/validate/dataType.js.map +1 -0
  186. package/dist/node_modules/.pnpm/ajv@8.18.0/node_modules/ajv/dist/compile/validate/defaults.js +35 -0
  187. package/dist/node_modules/.pnpm/ajv@8.18.0/node_modules/ajv/dist/compile/validate/defaults.js.map +1 -0
  188. package/dist/node_modules/.pnpm/ajv@8.18.0/node_modules/ajv/dist/compile/validate/index.js +437 -0
  189. package/dist/node_modules/.pnpm/ajv@8.18.0/node_modules/ajv/dist/compile/validate/index.js.map +1 -0
  190. package/dist/node_modules/.pnpm/ajv@8.18.0/node_modules/ajv/dist/compile/validate/keyword.js +117 -0
  191. package/dist/node_modules/.pnpm/ajv@8.18.0/node_modules/ajv/dist/compile/validate/keyword.js.map +1 -0
  192. package/dist/node_modules/.pnpm/ajv@8.18.0/node_modules/ajv/dist/compile/validate/subschema.js +76 -0
  193. package/dist/node_modules/.pnpm/ajv@8.18.0/node_modules/ajv/dist/compile/validate/subschema.js.map +1 -0
  194. package/dist/node_modules/.pnpm/ajv@8.18.0/node_modules/ajv/dist/core.js +587 -0
  195. package/dist/node_modules/.pnpm/ajv@8.18.0/node_modules/ajv/dist/core.js.map +1 -0
  196. package/dist/node_modules/.pnpm/ajv@8.18.0/node_modules/ajv/dist/refs/data.js +22 -0
  197. package/dist/node_modules/.pnpm/ajv@8.18.0/node_modules/ajv/dist/refs/data.js.map +1 -0
  198. package/dist/node_modules/.pnpm/ajv@8.18.0/node_modules/ajv/dist/refs/json-schema-draft-07.js +145 -0
  199. package/dist/node_modules/.pnpm/ajv@8.18.0/node_modules/ajv/dist/refs/json-schema-draft-07.js.map +1 -0
  200. package/dist/node_modules/.pnpm/ajv@8.18.0/node_modules/ajv/dist/runtime/equal.js +16 -0
  201. package/dist/node_modules/.pnpm/ajv@8.18.0/node_modules/ajv/dist/runtime/equal.js.map +1 -0
  202. package/dist/node_modules/.pnpm/ajv@8.18.0/node_modules/ajv/dist/runtime/ucs2length.js +29 -0
  203. package/dist/node_modules/.pnpm/ajv@8.18.0/node_modules/ajv/dist/runtime/ucs2length.js.map +1 -0
  204. package/dist/node_modules/.pnpm/ajv@8.18.0/node_modules/ajv/dist/runtime/uri.js +16 -0
  205. package/dist/node_modules/.pnpm/ajv@8.18.0/node_modules/ajv/dist/runtime/uri.js.map +1 -0
  206. package/dist/node_modules/.pnpm/ajv@8.18.0/node_modules/ajv/dist/runtime/validation_error.js +20 -0
  207. package/dist/node_modules/.pnpm/ajv@8.18.0/node_modules/ajv/dist/runtime/validation_error.js.map +1 -0
  208. package/dist/node_modules/.pnpm/ajv@8.18.0/node_modules/ajv/dist/vocabularies/applicator/additionalItems.js +61 -0
  209. package/dist/node_modules/.pnpm/ajv@8.18.0/node_modules/ajv/dist/vocabularies/applicator/additionalItems.js.map +1 -0
  210. package/dist/node_modules/.pnpm/ajv@8.18.0/node_modules/ajv/dist/vocabularies/applicator/additionalProperties.js +101 -0
  211. package/dist/node_modules/.pnpm/ajv@8.18.0/node_modules/ajv/dist/vocabularies/applicator/additionalProperties.js.map +1 -0
  212. package/dist/node_modules/.pnpm/ajv@8.18.0/node_modules/ajv/dist/vocabularies/applicator/allOf.js +34 -0
  213. package/dist/node_modules/.pnpm/ajv@8.18.0/node_modules/ajv/dist/vocabularies/applicator/allOf.js.map +1 -0
  214. package/dist/node_modules/.pnpm/ajv@8.18.0/node_modules/ajv/dist/vocabularies/applicator/anyOf.js +21 -0
  215. package/dist/node_modules/.pnpm/ajv@8.18.0/node_modules/ajv/dist/vocabularies/applicator/anyOf.js.map +1 -0
  216. package/dist/node_modules/.pnpm/ajv@8.18.0/node_modules/ajv/dist/vocabularies/applicator/contains.js +94 -0
  217. package/dist/node_modules/.pnpm/ajv@8.18.0/node_modules/ajv/dist/vocabularies/applicator/contains.js.map +1 -0
  218. package/dist/node_modules/.pnpm/ajv@8.18.0/node_modules/ajv/dist/vocabularies/applicator/dependencies.js +91 -0
  219. package/dist/node_modules/.pnpm/ajv@8.18.0/node_modules/ajv/dist/vocabularies/applicator/dependencies.js.map +1 -0
  220. package/dist/node_modules/.pnpm/ajv@8.18.0/node_modules/ajv/dist/vocabularies/applicator/if.js +66 -0
  221. package/dist/node_modules/.pnpm/ajv@8.18.0/node_modules/ajv/dist/vocabularies/applicator/if.js.map +1 -0
  222. package/dist/node_modules/.pnpm/ajv@8.18.0/node_modules/ajv/dist/vocabularies/applicator/index.js +64 -0
  223. package/dist/node_modules/.pnpm/ajv@8.18.0/node_modules/ajv/dist/vocabularies/applicator/index.js.map +1 -0
  224. package/dist/node_modules/.pnpm/ajv@8.18.0/node_modules/ajv/dist/vocabularies/applicator/items.js +63 -0
  225. package/dist/node_modules/.pnpm/ajv@8.18.0/node_modules/ajv/dist/vocabularies/applicator/items.js.map +1 -0
  226. package/dist/node_modules/.pnpm/ajv@8.18.0/node_modules/ajv/dist/vocabularies/applicator/items2020.js +39 -0
  227. package/dist/node_modules/.pnpm/ajv@8.18.0/node_modules/ajv/dist/vocabularies/applicator/items2020.js.map +1 -0
  228. package/dist/node_modules/.pnpm/ajv@8.18.0/node_modules/ajv/dist/vocabularies/applicator/not.js +36 -0
  229. package/dist/node_modules/.pnpm/ajv@8.18.0/node_modules/ajv/dist/vocabularies/applicator/not.js.map +1 -0
  230. package/dist/node_modules/.pnpm/ajv@8.18.0/node_modules/ajv/dist/vocabularies/applicator/oneOf.js +56 -0
  231. package/dist/node_modules/.pnpm/ajv@8.18.0/node_modules/ajv/dist/vocabularies/applicator/oneOf.js.map +1 -0
  232. package/dist/node_modules/.pnpm/ajv@8.18.0/node_modules/ajv/dist/vocabularies/applicator/patternProperties.js +66 -0
  233. package/dist/node_modules/.pnpm/ajv@8.18.0/node_modules/ajv/dist/vocabularies/applicator/patternProperties.js.map +1 -0
  234. package/dist/node_modules/.pnpm/ajv@8.18.0/node_modules/ajv/dist/vocabularies/applicator/prefixItems.js +22 -0
  235. package/dist/node_modules/.pnpm/ajv@8.18.0/node_modules/ajv/dist/vocabularies/applicator/prefixItems.js.map +1 -0
  236. package/dist/node_modules/.pnpm/ajv@8.18.0/node_modules/ajv/dist/vocabularies/applicator/properties.js +57 -0
  237. package/dist/node_modules/.pnpm/ajv@8.18.0/node_modules/ajv/dist/vocabularies/applicator/properties.js.map +1 -0
  238. package/dist/node_modules/.pnpm/ajv@8.18.0/node_modules/ajv/dist/vocabularies/applicator/propertyNames.js +46 -0
  239. package/dist/node_modules/.pnpm/ajv@8.18.0/node_modules/ajv/dist/vocabularies/applicator/propertyNames.js.map +1 -0
  240. package/dist/node_modules/.pnpm/ajv@8.18.0/node_modules/ajv/dist/vocabularies/applicator/thenElse.js +22 -0
  241. package/dist/node_modules/.pnpm/ajv@8.18.0/node_modules/ajv/dist/vocabularies/applicator/thenElse.js.map +1 -0
  242. package/dist/node_modules/.pnpm/ajv@8.18.0/node_modules/ajv/dist/vocabularies/code.js +134 -0
  243. package/dist/node_modules/.pnpm/ajv@8.18.0/node_modules/ajv/dist/vocabularies/code.js.map +1 -0
  244. package/dist/node_modules/.pnpm/ajv@8.18.0/node_modules/ajv/dist/vocabularies/core/id.js +19 -0
  245. package/dist/node_modules/.pnpm/ajv@8.18.0/node_modules/ajv/dist/vocabularies/core/id.js.map +1 -0
  246. package/dist/node_modules/.pnpm/ajv@8.18.0/node_modules/ajv/dist/vocabularies/core/index.js +27 -0
  247. package/dist/node_modules/.pnpm/ajv@8.18.0/node_modules/ajv/dist/vocabularies/core/index.js.map +1 -0
  248. package/dist/node_modules/.pnpm/ajv@8.18.0/node_modules/ajv/dist/vocabularies/core/ref.js +116 -0
  249. package/dist/node_modules/.pnpm/ajv@8.18.0/node_modules/ajv/dist/vocabularies/core/ref.js.map +1 -0
  250. package/dist/node_modules/.pnpm/ajv@8.18.0/node_modules/ajv/dist/vocabularies/discriminator/index.js +106 -0
  251. package/dist/node_modules/.pnpm/ajv@8.18.0/node_modules/ajv/dist/vocabularies/discriminator/index.js.map +1 -0
  252. package/dist/node_modules/.pnpm/ajv@8.18.0/node_modules/ajv/dist/vocabularies/discriminator/types.js +18 -0
  253. package/dist/node_modules/.pnpm/ajv@8.18.0/node_modules/ajv/dist/vocabularies/discriminator/types.js.map +1 -0
  254. package/dist/node_modules/.pnpm/ajv@8.18.0/node_modules/ajv/dist/vocabularies/draft7.js +31 -0
  255. package/dist/node_modules/.pnpm/ajv@8.18.0/node_modules/ajv/dist/vocabularies/draft7.js.map +1 -0
  256. package/dist/node_modules/.pnpm/ajv@8.18.0/node_modules/ajv/dist/vocabularies/format/format.js +97 -0
  257. package/dist/node_modules/.pnpm/ajv@8.18.0/node_modules/ajv/dist/vocabularies/format/format.js.map +1 -0
  258. package/dist/node_modules/.pnpm/ajv@8.18.0/node_modules/ajv/dist/vocabularies/format/index.js +15 -0
  259. package/dist/node_modules/.pnpm/ajv@8.18.0/node_modules/ajv/dist/vocabularies/format/index.js.map +1 -0
  260. package/dist/node_modules/.pnpm/ajv@8.18.0/node_modules/ajv/dist/vocabularies/metadata.js +27 -0
  261. package/dist/node_modules/.pnpm/ajv@8.18.0/node_modules/ajv/dist/vocabularies/metadata.js.map +1 -0
  262. package/dist/node_modules/.pnpm/ajv@8.18.0/node_modules/ajv/dist/vocabularies/validation/const.js +32 -0
  263. package/dist/node_modules/.pnpm/ajv@8.18.0/node_modules/ajv/dist/vocabularies/validation/const.js.map +1 -0
  264. package/dist/node_modules/.pnpm/ajv@8.18.0/node_modules/ajv/dist/vocabularies/validation/enum.js +54 -0
  265. package/dist/node_modules/.pnpm/ajv@8.18.0/node_modules/ajv/dist/vocabularies/validation/enum.js.map +1 -0
  266. package/dist/node_modules/.pnpm/ajv@8.18.0/node_modules/ajv/dist/vocabularies/validation/index.js +53 -0
  267. package/dist/node_modules/.pnpm/ajv@8.18.0/node_modules/ajv/dist/vocabularies/validation/index.js.map +1 -0
  268. package/dist/node_modules/.pnpm/ajv@8.18.0/node_modules/ajv/dist/vocabularies/validation/limitItems.js +33 -0
  269. package/dist/node_modules/.pnpm/ajv@8.18.0/node_modules/ajv/dist/vocabularies/validation/limitItems.js.map +1 -0
  270. package/dist/node_modules/.pnpm/ajv@8.18.0/node_modules/ajv/dist/vocabularies/validation/limitLength.js +38 -0
  271. package/dist/node_modules/.pnpm/ajv@8.18.0/node_modules/ajv/dist/vocabularies/validation/limitLength.js.map +1 -0
  272. package/dist/node_modules/.pnpm/ajv@8.18.0/node_modules/ajv/dist/vocabularies/validation/limitNumber.js +52 -0
  273. package/dist/node_modules/.pnpm/ajv@8.18.0/node_modules/ajv/dist/vocabularies/validation/limitNumber.js.map +1 -0
  274. package/dist/node_modules/.pnpm/ajv@8.18.0/node_modules/ajv/dist/vocabularies/validation/limitProperties.js +33 -0
  275. package/dist/node_modules/.pnpm/ajv@8.18.0/node_modules/ajv/dist/vocabularies/validation/limitProperties.js.map +1 -0
  276. package/dist/node_modules/.pnpm/ajv@8.18.0/node_modules/ajv/dist/vocabularies/validation/multipleOf.js +32 -0
  277. package/dist/node_modules/.pnpm/ajv@8.18.0/node_modules/ajv/dist/vocabularies/validation/multipleOf.js.map +1 -0
  278. package/dist/node_modules/.pnpm/ajv@8.18.0/node_modules/ajv/dist/vocabularies/validation/pattern.js +43 -0
  279. package/dist/node_modules/.pnpm/ajv@8.18.0/node_modules/ajv/dist/vocabularies/validation/pattern.js.map +1 -0
  280. package/dist/node_modules/.pnpm/ajv@8.18.0/node_modules/ajv/dist/vocabularies/validation/required.js +77 -0
  281. package/dist/node_modules/.pnpm/ajv@8.18.0/node_modules/ajv/dist/vocabularies/validation/required.js.map +1 -0
  282. package/dist/node_modules/.pnpm/ajv@8.18.0/node_modules/ajv/dist/vocabularies/validation/uniqueItems.js +75 -0
  283. package/dist/node_modules/.pnpm/ajv@8.18.0/node_modules/ajv/dist/vocabularies/validation/uniqueItems.js.map +1 -0
  284. package/dist/node_modules/.pnpm/fast-deep-equal@3.1.3/node_modules/fast-deep-equal/index.js +37 -0
  285. package/dist/node_modules/.pnpm/fast-deep-equal@3.1.3/node_modules/fast-deep-equal/index.js.map +1 -0
  286. package/dist/node_modules/.pnpm/fast-uri@3.1.0/node_modules/fast-uri/index.js +240 -0
  287. package/dist/node_modules/.pnpm/fast-uri@3.1.0/node_modules/fast-uri/index.js.map +1 -0
  288. package/dist/node_modules/.pnpm/fast-uri@3.1.0/node_modules/fast-uri/lib/schemes.js +194 -0
  289. package/dist/node_modules/.pnpm/fast-uri@3.1.0/node_modules/fast-uri/lib/schemes.js.map +1 -0
  290. package/dist/node_modules/.pnpm/fast-uri@3.1.0/node_modules/fast-uri/lib/utils.js +286 -0
  291. package/dist/node_modules/.pnpm/fast-uri@3.1.0/node_modules/fast-uri/lib/utils.js.map +1 -0
  292. package/dist/node_modules/.pnpm/json-schema-traverse@1.0.0/node_modules/json-schema-traverse/index.js +82 -0
  293. package/dist/node_modules/.pnpm/json-schema-traverse@1.0.0/node_modules/json-schema-traverse/index.js.map +1 -0
  294. package/dist/node_modules/.pnpm/zod-to-json-schema@3.25.1_zod@3.25.76/node_modules/zod-to-json-schema/dist/esm/Options.js +37 -0
  295. package/dist/node_modules/.pnpm/zod-to-json-schema@3.25.1_zod@3.25.76/node_modules/zod-to-json-schema/dist/esm/Options.js.map +1 -0
  296. package/dist/node_modules/.pnpm/zod-to-json-schema@3.25.1_zod@3.25.76/node_modules/zod-to-json-schema/dist/esm/Refs.js +30 -0
  297. package/dist/node_modules/.pnpm/zod-to-json-schema@3.25.1_zod@3.25.76/node_modules/zod-to-json-schema/dist/esm/Refs.js.map +1 -0
  298. package/dist/node_modules/.pnpm/zod-to-json-schema@3.25.1_zod@3.25.76/node_modules/zod-to-json-schema/dist/esm/errorMessages.js +16 -0
  299. package/dist/node_modules/.pnpm/zod-to-json-schema@3.25.1_zod@3.25.76/node_modules/zod-to-json-schema/dist/esm/errorMessages.js.map +1 -0
  300. package/dist/node_modules/.pnpm/zod-to-json-schema@3.25.1_zod@3.25.76/node_modules/zod-to-json-schema/dist/esm/getRelativePath.js +10 -0
  301. package/dist/node_modules/.pnpm/zod-to-json-schema@3.25.1_zod@3.25.76/node_modules/zod-to-json-schema/dist/esm/getRelativePath.js.map +1 -0
  302. package/dist/node_modules/.pnpm/zod-to-json-schema@3.25.1_zod@3.25.76/node_modules/zod-to-json-schema/dist/esm/parseDef.js +57 -0
  303. package/dist/node_modules/.pnpm/zod-to-json-schema@3.25.1_zod@3.25.76/node_modules/zod-to-json-schema/dist/esm/parseDef.js.map +1 -0
  304. package/dist/node_modules/.pnpm/zod-to-json-schema@3.25.1_zod@3.25.76/node_modules/zod-to-json-schema/dist/esm/parsers/any.js +17 -0
  305. package/dist/node_modules/.pnpm/zod-to-json-schema@3.25.1_zod@3.25.76/node_modules/zod-to-json-schema/dist/esm/parsers/any.js.map +1 -0
  306. package/dist/node_modules/.pnpm/zod-to-json-schema@3.25.1_zod@3.25.76/node_modules/zod-to-json-schema/dist/esm/parsers/array.js +23 -0
  307. package/dist/node_modules/.pnpm/zod-to-json-schema@3.25.1_zod@3.25.76/node_modules/zod-to-json-schema/dist/esm/parsers/array.js.map +1 -0
  308. package/dist/node_modules/.pnpm/zod-to-json-schema@3.25.1_zod@3.25.76/node_modules/zod-to-json-schema/dist/esm/parsers/bigint.js +36 -0
  309. package/dist/node_modules/.pnpm/zod-to-json-schema@3.25.1_zod@3.25.76/node_modules/zod-to-json-schema/dist/esm/parsers/bigint.js.map +1 -0
  310. package/dist/node_modules/.pnpm/zod-to-json-schema@3.25.1_zod@3.25.76/node_modules/zod-to-json-schema/dist/esm/parsers/boolean.js +8 -0
  311. package/dist/node_modules/.pnpm/zod-to-json-schema@3.25.1_zod@3.25.76/node_modules/zod-to-json-schema/dist/esm/parsers/boolean.js.map +1 -0
  312. package/dist/node_modules/.pnpm/zod-to-json-schema@3.25.1_zod@3.25.76/node_modules/zod-to-json-schema/dist/esm/parsers/branded.js +10 -0
  313. package/dist/node_modules/.pnpm/zod-to-json-schema@3.25.1_zod@3.25.76/node_modules/zod-to-json-schema/dist/esm/parsers/branded.js.map +1 -0
  314. package/dist/node_modules/.pnpm/zod-to-json-schema@3.25.1_zod@3.25.76/node_modules/zod-to-json-schema/dist/esm/parsers/catch.js +10 -0
  315. package/dist/node_modules/.pnpm/zod-to-json-schema@3.25.1_zod@3.25.76/node_modules/zod-to-json-schema/dist/esm/parsers/catch.js.map +1 -0
  316. package/dist/node_modules/.pnpm/zod-to-json-schema@3.25.1_zod@3.25.76/node_modules/zod-to-json-schema/dist/esm/parsers/date.js +39 -0
  317. package/dist/node_modules/.pnpm/zod-to-json-schema@3.25.1_zod@3.25.76/node_modules/zod-to-json-schema/dist/esm/parsers/date.js.map +1 -0
  318. package/dist/node_modules/.pnpm/zod-to-json-schema@3.25.1_zod@3.25.76/node_modules/zod-to-json-schema/dist/esm/parsers/default.js +13 -0
  319. package/dist/node_modules/.pnpm/zod-to-json-schema@3.25.1_zod@3.25.76/node_modules/zod-to-json-schema/dist/esm/parsers/default.js.map +1 -0
  320. package/dist/node_modules/.pnpm/zod-to-json-schema@3.25.1_zod@3.25.76/node_modules/zod-to-json-schema/dist/esm/parsers/effects.js +11 -0
  321. package/dist/node_modules/.pnpm/zod-to-json-schema@3.25.1_zod@3.25.76/node_modules/zod-to-json-schema/dist/esm/parsers/effects.js.map +1 -0
  322. package/dist/node_modules/.pnpm/zod-to-json-schema@3.25.1_zod@3.25.76/node_modules/zod-to-json-schema/dist/esm/parsers/enum.js +11 -0
  323. package/dist/node_modules/.pnpm/zod-to-json-schema@3.25.1_zod@3.25.76/node_modules/zod-to-json-schema/dist/esm/parsers/enum.js.map +1 -0
  324. package/dist/node_modules/.pnpm/zod-to-json-schema@3.25.1_zod@3.25.76/node_modules/zod-to-json-schema/dist/esm/parsers/intersection.js +47 -0
  325. package/dist/node_modules/.pnpm/zod-to-json-schema@3.25.1_zod@3.25.76/node_modules/zod-to-json-schema/dist/esm/parsers/intersection.js.map +1 -0
  326. package/dist/node_modules/.pnpm/zod-to-json-schema@3.25.1_zod@3.25.76/node_modules/zod-to-json-schema/dist/esm/parsers/literal.js +17 -0
  327. package/dist/node_modules/.pnpm/zod-to-json-schema@3.25.1_zod@3.25.76/node_modules/zod-to-json-schema/dist/esm/parsers/literal.js.map +1 -0
  328. package/dist/node_modules/.pnpm/zod-to-json-schema@3.25.1_zod@3.25.76/node_modules/zod-to-json-schema/dist/esm/parsers/map.js +38 -0
  329. package/dist/node_modules/.pnpm/zod-to-json-schema@3.25.1_zod@3.25.76/node_modules/zod-to-json-schema/dist/esm/parsers/map.js.map +1 -0
  330. package/dist/node_modules/.pnpm/zod-to-json-schema@3.25.1_zod@3.25.76/node_modules/zod-to-json-schema/dist/esm/parsers/nativeEnum.js +16 -0
  331. package/dist/node_modules/.pnpm/zod-to-json-schema@3.25.1_zod@3.25.76/node_modules/zod-to-json-schema/dist/esm/parsers/nativeEnum.js.map +1 -0
  332. package/dist/node_modules/.pnpm/zod-to-json-schema@3.25.1_zod@3.25.76/node_modules/zod-to-json-schema/dist/esm/parsers/never.js +13 -0
  333. package/dist/node_modules/.pnpm/zod-to-json-schema@3.25.1_zod@3.25.76/node_modules/zod-to-json-schema/dist/esm/parsers/never.js.map +1 -0
  334. package/dist/node_modules/.pnpm/zod-to-json-schema@3.25.1_zod@3.25.76/node_modules/zod-to-json-schema/dist/esm/parsers/null.js +11 -0
  335. package/dist/node_modules/.pnpm/zod-to-json-schema@3.25.1_zod@3.25.76/node_modules/zod-to-json-schema/dist/esm/parsers/null.js.map +1 -0
  336. package/dist/node_modules/.pnpm/zod-to-json-schema@3.25.1_zod@3.25.76/node_modules/zod-to-json-schema/dist/esm/parsers/nullable.js +46 -0
  337. package/dist/node_modules/.pnpm/zod-to-json-schema@3.25.1_zod@3.25.76/node_modules/zod-to-json-schema/dist/esm/parsers/nullable.js.map +1 -0
  338. package/dist/node_modules/.pnpm/zod-to-json-schema@3.25.1_zod@3.25.76/node_modules/zod-to-json-schema/dist/esm/parsers/number.js +37 -0
  339. package/dist/node_modules/.pnpm/zod-to-json-schema@3.25.1_zod@3.25.76/node_modules/zod-to-json-schema/dist/esm/parsers/number.js.map +1 -0
  340. package/dist/node_modules/.pnpm/zod-to-json-schema@3.25.1_zod@3.25.76/node_modules/zod-to-json-schema/dist/esm/parsers/object.js +64 -0
  341. package/dist/node_modules/.pnpm/zod-to-json-schema@3.25.1_zod@3.25.76/node_modules/zod-to-json-schema/dist/esm/parsers/object.js.map +1 -0
  342. package/dist/node_modules/.pnpm/zod-to-json-schema@3.25.1_zod@3.25.76/node_modules/zod-to-json-schema/dist/esm/parsers/optional.js +20 -0
  343. package/dist/node_modules/.pnpm/zod-to-json-schema@3.25.1_zod@3.25.76/node_modules/zod-to-json-schema/dist/esm/parsers/optional.js.map +1 -0
  344. package/dist/node_modules/.pnpm/zod-to-json-schema@3.25.1_zod@3.25.76/node_modules/zod-to-json-schema/dist/esm/parsers/pipeline.js +27 -0
  345. package/dist/node_modules/.pnpm/zod-to-json-schema@3.25.1_zod@3.25.76/node_modules/zod-to-json-schema/dist/esm/parsers/pipeline.js.map +1 -0
  346. package/dist/node_modules/.pnpm/zod-to-json-schema@3.25.1_zod@3.25.76/node_modules/zod-to-json-schema/dist/esm/parsers/promise.js +10 -0
  347. package/dist/node_modules/.pnpm/zod-to-json-schema@3.25.1_zod@3.25.76/node_modules/zod-to-json-schema/dist/esm/parsers/promise.js.map +1 -0
  348. package/dist/node_modules/.pnpm/zod-to-json-schema@3.25.1_zod@3.25.76/node_modules/zod-to-json-schema/dist/esm/parsers/readonly.js +10 -0
  349. package/dist/node_modules/.pnpm/zod-to-json-schema@3.25.1_zod@3.25.76/node_modules/zod-to-json-schema/dist/esm/parsers/readonly.js.map +1 -0
  350. package/dist/node_modules/.pnpm/zod-to-json-schema@3.25.1_zod@3.25.76/node_modules/zod-to-json-schema/dist/esm/parsers/record.js +56 -0
  351. package/dist/node_modules/.pnpm/zod-to-json-schema@3.25.1_zod@3.25.76/node_modules/zod-to-json-schema/dist/esm/parsers/record.js.map +1 -0
  352. package/dist/node_modules/.pnpm/zod-to-json-schema@3.25.1_zod@3.25.76/node_modules/zod-to-json-schema/dist/esm/parsers/set.js +21 -0
  353. package/dist/node_modules/.pnpm/zod-to-json-schema@3.25.1_zod@3.25.76/node_modules/zod-to-json-schema/dist/esm/parsers/set.js.map +1 -0
  354. package/dist/node_modules/.pnpm/zod-to-json-schema@3.25.1_zod@3.25.76/node_modules/zod-to-json-schema/dist/esm/parsers/string.js +250 -0
  355. package/dist/node_modules/.pnpm/zod-to-json-schema@3.25.1_zod@3.25.76/node_modules/zod-to-json-schema/dist/esm/parsers/string.js.map +1 -0
  356. package/dist/node_modules/.pnpm/zod-to-json-schema@3.25.1_zod@3.25.76/node_modules/zod-to-json-schema/dist/esm/parsers/tuple.js +38 -0
  357. package/dist/node_modules/.pnpm/zod-to-json-schema@3.25.1_zod@3.25.76/node_modules/zod-to-json-schema/dist/esm/parsers/tuple.js.map +1 -0
  358. package/dist/node_modules/.pnpm/zod-to-json-schema@3.25.1_zod@3.25.76/node_modules/zod-to-json-schema/dist/esm/parsers/undefined.js +10 -0
  359. package/dist/node_modules/.pnpm/zod-to-json-schema@3.25.1_zod@3.25.76/node_modules/zod-to-json-schema/dist/esm/parsers/undefined.js.map +1 -0
  360. package/dist/node_modules/.pnpm/zod-to-json-schema@3.25.1_zod@3.25.76/node_modules/zod-to-json-schema/dist/esm/parsers/union.js +64 -0
  361. package/dist/node_modules/.pnpm/zod-to-json-schema@3.25.1_zod@3.25.76/node_modules/zod-to-json-schema/dist/esm/parsers/union.js.map +1 -0
  362. package/dist/node_modules/.pnpm/zod-to-json-schema@3.25.1_zod@3.25.76/node_modules/zod-to-json-schema/dist/esm/parsers/unknown.js +10 -0
  363. package/dist/node_modules/.pnpm/zod-to-json-schema@3.25.1_zod@3.25.76/node_modules/zod-to-json-schema/dist/esm/parsers/unknown.js.map +1 -0
  364. package/dist/node_modules/.pnpm/zod-to-json-schema@3.25.1_zod@3.25.76/node_modules/zod-to-json-schema/dist/esm/selectParser.js +78 -0
  365. package/dist/node_modules/.pnpm/zod-to-json-schema@3.25.1_zod@3.25.76/node_modules/zod-to-json-schema/dist/esm/selectParser.js.map +1 -0
  366. package/dist/node_modules/.pnpm/zod-to-json-schema@3.25.1_zod@3.25.76/node_modules/zod-to-json-schema/dist/esm/zodToJsonSchema.js +70 -0
  367. package/dist/node_modules/.pnpm/zod-to-json-schema@3.25.1_zod@3.25.76/node_modules/zod-to-json-schema/dist/esm/zodToJsonSchema.js.map +1 -0
  368. package/dist/node_modules/.pnpm/zod@3.25.76/node_modules/zod/v3/ZodError.js +104 -0
  369. package/dist/node_modules/.pnpm/zod@3.25.76/node_modules/zod/v3/ZodError.js.map +1 -0
  370. package/dist/node_modules/.pnpm/zod@3.25.76/node_modules/zod/v3/errors.js +11 -0
  371. package/dist/node_modules/.pnpm/zod@3.25.76/node_modules/zod/v3/errors.js.map +1 -0
  372. package/dist/node_modules/.pnpm/zod@3.25.76/node_modules/zod/v3/helpers/errorUtil.js +10 -0
  373. package/dist/node_modules/.pnpm/zod@3.25.76/node_modules/zod/v3/helpers/errorUtil.js.map +1 -0
  374. package/dist/node_modules/.pnpm/zod@3.25.76/node_modules/zod/v3/helpers/parseUtil.js +110 -0
  375. package/dist/node_modules/.pnpm/zod@3.25.76/node_modules/zod/v3/helpers/parseUtil.js.map +1 -0
  376. package/dist/node_modules/.pnpm/zod@3.25.76/node_modules/zod/v3/helpers/util.js +99 -0
  377. package/dist/node_modules/.pnpm/zod@3.25.76/node_modules/zod/v3/helpers/util.js.map +1 -0
  378. package/dist/node_modules/.pnpm/zod@3.25.76/node_modules/zod/v3/locales/en.js +84 -0
  379. package/dist/node_modules/.pnpm/zod@3.25.76/node_modules/zod/v3/locales/en.js.map +1 -0
  380. package/dist/node_modules/.pnpm/zod@3.25.76/node_modules/zod/v3/types.js +3160 -0
  381. package/dist/node_modules/.pnpm/zod@3.25.76/node_modules/zod/v3/types.js.map +1 -0
  382. package/dist/node_modules/.pnpm/zod@3.25.76/node_modules/zod/v4/classic/errors.js +23 -0
  383. package/dist/node_modules/.pnpm/zod@3.25.76/node_modules/zod/v4/classic/errors.js.map +1 -0
  384. package/dist/node_modules/.pnpm/zod@3.25.76/node_modules/zod/v4/classic/iso.js +38 -0
  385. package/dist/node_modules/.pnpm/zod@3.25.76/node_modules/zod/v4/classic/iso.js.map +1 -0
  386. package/dist/node_modules/.pnpm/zod@3.25.76/node_modules/zod/v4/classic/parse.js +12 -0
  387. package/dist/node_modules/.pnpm/zod@3.25.76/node_modules/zod/v4/classic/parse.js.map +1 -0
  388. package/dist/node_modules/.pnpm/zod@3.25.76/node_modules/zod/v4/classic/schemas.js +611 -0
  389. package/dist/node_modules/.pnpm/zod@3.25.76/node_modules/zod/v4/classic/schemas.js.map +1 -0
  390. package/dist/node_modules/.pnpm/zod@3.25.76/node_modules/zod/v4/core/api.js +437 -0
  391. package/dist/node_modules/.pnpm/zod@3.25.76/node_modules/zod/v4/core/api.js.map +1 -0
  392. package/dist/node_modules/.pnpm/zod@3.25.76/node_modules/zod/v4/core/checks.js +360 -0
  393. package/dist/node_modules/.pnpm/zod@3.25.76/node_modules/zod/v4/core/checks.js.map +1 -0
  394. package/dist/node_modules/.pnpm/zod@3.25.76/node_modules/zod/v4/core/core.js +50 -0
  395. package/dist/node_modules/.pnpm/zod@3.25.76/node_modules/zod/v4/core/core.js.map +1 -0
  396. package/dist/node_modules/.pnpm/zod@3.25.76/node_modules/zod/v4/core/doc.js +34 -0
  397. package/dist/node_modules/.pnpm/zod@3.25.76/node_modules/zod/v4/core/doc.js.map +1 -0
  398. package/dist/node_modules/.pnpm/zod@3.25.76/node_modules/zod/v4/core/errors.js +71 -0
  399. package/dist/node_modules/.pnpm/zod@3.25.76/node_modules/zod/v4/core/errors.js.map +1 -0
  400. package/dist/node_modules/.pnpm/zod@3.25.76/node_modules/zod/v4/core/parse.js +74 -0
  401. package/dist/node_modules/.pnpm/zod@3.25.76/node_modules/zod/v4/core/parse.js.map +1 -0
  402. package/dist/node_modules/.pnpm/zod@3.25.76/node_modules/zod/v4/core/regexes.js +63 -0
  403. package/dist/node_modules/.pnpm/zod@3.25.76/node_modules/zod/v4/core/regexes.js.map +1 -0
  404. package/dist/node_modules/.pnpm/zod@3.25.76/node_modules/zod/v4/core/registries.js +50 -0
  405. package/dist/node_modules/.pnpm/zod@3.25.76/node_modules/zod/v4/core/registries.js.map +1 -0
  406. package/dist/node_modules/.pnpm/zod@3.25.76/node_modules/zod/v4/core/schemas.js +1098 -0
  407. package/dist/node_modules/.pnpm/zod@3.25.76/node_modules/zod/v4/core/schemas.js.map +1 -0
  408. package/dist/node_modules/.pnpm/zod@3.25.76/node_modules/zod/v4/core/to-json-schema.js +599 -0
  409. package/dist/node_modules/.pnpm/zod@3.25.76/node_modules/zod/v4/core/to-json-schema.js.map +1 -0
  410. package/dist/node_modules/.pnpm/zod@3.25.76/node_modules/zod/v4/core/util.js +267 -0
  411. package/dist/node_modules/.pnpm/zod@3.25.76/node_modules/zod/v4/core/util.js.map +1 -0
  412. package/dist/node_modules/.pnpm/zod@3.25.76/node_modules/zod/v4/core/versions.js +10 -0
  413. package/dist/node_modules/.pnpm/zod@3.25.76/node_modules/zod/v4/core/versions.js.map +1 -0
  414. package/dist/node_modules/.pnpm/zod@3.25.76/node_modules/zod/v4/mini/schemas.js +50 -0
  415. package/dist/node_modules/.pnpm/zod@3.25.76/node_modules/zod/v4/mini/schemas.js.map +1 -0
  416. package/dist/patching.d.ts +59 -0
  417. package/dist/patching.d.ts.map +1 -0
  418. package/dist/patching.js +891 -0
  419. package/dist/patching.js.map +1 -0
  420. package/dist/propagation.d.ts +8 -0
  421. package/dist/propagation.d.ts.map +1 -0
  422. package/dist/propagation.js +46 -0
  423. package/dist/propagation.js.map +1 -0
  424. package/dist/providers/anthropic.d.ts +44 -0
  425. package/dist/providers/anthropic.d.ts.map +1 -0
  426. package/dist/providers/anthropic.js +287 -0
  427. package/dist/providers/anthropic.js.map +1 -0
  428. package/dist/providers/azure-openai.d.ts +32 -0
  429. package/dist/providers/azure-openai.d.ts.map +1 -0
  430. package/dist/providers/azure-openai.js +39 -0
  431. package/dist/providers/azure-openai.js.map +1 -0
  432. package/dist/providers/base.d.ts +70 -0
  433. package/dist/providers/base.d.ts.map +1 -0
  434. package/dist/providers/base.js +141 -0
  435. package/dist/providers/base.js.map +1 -0
  436. package/dist/providers/bedrock.d.ts +41 -0
  437. package/dist/providers/bedrock.d.ts.map +1 -0
  438. package/dist/providers/bedrock.js +229 -0
  439. package/dist/providers/bedrock.js.map +1 -0
  440. package/dist/providers/gemini.d.ts +34 -0
  441. package/dist/providers/gemini.d.ts.map +1 -0
  442. package/dist/providers/gemini.js +225 -0
  443. package/dist/providers/gemini.js.map +1 -0
  444. package/dist/providers/mistral.d.ts +32 -0
  445. package/dist/providers/mistral.d.ts.map +1 -0
  446. package/dist/providers/mistral.js +218 -0
  447. package/dist/providers/mistral.js.map +1 -0
  448. package/dist/providers/openai.d.ts +61 -0
  449. package/dist/providers/openai.d.ts.map +1 -0
  450. package/dist/providers/openai.js +530 -0
  451. package/dist/providers/openai.js.map +1 -0
  452. package/dist/register.d.ts +1 -0
  453. package/dist/register.js +46 -0
  454. package/dist/register.js.map +1 -0
  455. package/dist/session.d.ts +46 -0
  456. package/dist/session.d.ts.map +1 -0
  457. package/dist/session.js +144 -0
  458. package/dist/session.js.map +1 -0
  459. package/dist/tenant.d.ts +30 -0
  460. package/dist/tenant.d.ts.map +1 -0
  461. package/dist/tenant.js +23 -0
  462. package/dist/tenant.js.map +1 -0
  463. package/dist/testing.d.ts +46 -0
  464. package/dist/testing.d.ts.map +1 -0
  465. package/dist/testing.js +120 -0
  466. package/dist/testing.js.map +1 -0
  467. package/dist/types.d.ts +384 -0
  468. package/dist/types.d.ts.map +1 -0
  469. package/dist/types.js +13 -0
  470. package/dist/types.js.map +1 -0
  471. package/dist/utils/costs.d.ts +27 -0
  472. package/dist/utils/costs.d.ts.map +1 -0
  473. package/dist/utils/costs.js +63 -0
  474. package/dist/utils/costs.js.map +1 -0
  475. package/dist/utils/debug.d.ts +6 -0
  476. package/dist/utils/debug.d.ts.map +1 -0
  477. package/dist/utils/debug.js +73 -0
  478. package/dist/utils/debug.js.map +1 -0
  479. package/dist/utils/logger.d.ts +11 -0
  480. package/dist/utils/logger.d.ts.map +1 -0
  481. package/dist/utils/logger.js +18 -0
  482. package/dist/utils/logger.js.map +1 -0
  483. package/dist/utils/model-tiers.d.ts +8 -0
  484. package/dist/utils/model-tiers.d.ts.map +1 -0
  485. package/dist/utils/model-tiers.js +76 -0
  486. package/dist/utils/model-tiers.js.map +1 -0
  487. package/dist/utils/providers.d.ts +5 -0
  488. package/dist/utils/providers.d.ts.map +1 -0
  489. package/dist/utils/providers.js +20 -0
  490. package/dist/utils/providers.js.map +1 -0
  491. package/dist/utils/resolve-module.d.ts +5 -0
  492. package/dist/utils/resolve-module.d.ts.map +1 -0
  493. package/dist/utils/resolve-module.js +29 -0
  494. package/dist/utils/resolve-module.js.map +1 -0
  495. package/dist/utils/streaming.d.ts +55 -0
  496. package/dist/utils/streaming.d.ts.map +1 -0
  497. package/dist/utils/streaming.js +72 -0
  498. package/dist/utils/streaming.js.map +1 -0
  499. package/dist/utils/tokens.d.ts +16 -0
  500. package/dist/utils/tokens.d.ts.map +1 -0
  501. package/dist/utils/tokens.js +80 -0
  502. package/dist/utils/tokens.js.map +1 -0
  503. package/dist/wrappers.d.ts +37 -0
  504. package/dist/wrappers.d.ts.map +1 -0
  505. package/dist/wrappers.js +61 -0
  506. package/dist/wrappers.js.map +1 -0
  507. package/llms-full.txt +127 -0
  508. package/llms.txt +28 -0
  509. package/mcp.schema.json +18 -0
  510. package/package.json +189 -0
@@ -0,0 +1,109 @@
1
+ import { PrivacyConfig } from "./core/privacy.js";
2
+ import { AmplitudeLike } from "./types.js";
3
+
4
+ //#region src/decorators.d.ts
5
+
6
+ declare class ToolCallTracker {
7
+ static _amplitude: AmplitudeLike | null;
8
+ static _userId: string | null;
9
+ static _sessionId: string | null;
10
+ static _traceId: string | null;
11
+ static _turnId: number;
12
+ static _env: string | null;
13
+ static _agentId: string | null;
14
+ static _parentAgentId: string | null;
15
+ static _customerOrgId: string | null;
16
+ static _agentVersion: string | null;
17
+ static _context: Record<string, unknown> | null;
18
+ static _privacyConfig: PrivacyConfig | null;
19
+ static _eventProperties: Record<string, unknown> | null;
20
+ static _userProperties: Record<string, unknown> | null;
21
+ static _groups: Record<string, unknown> | null;
22
+ static setAmplitude(amplitude: AmplitudeLike, userId: string, opts?: {
23
+ sessionId?: string | null;
24
+ traceId?: string | null;
25
+ turnId?: number;
26
+ env?: string | null;
27
+ agentId?: string | null;
28
+ parentAgentId?: string | null;
29
+ customerOrgId?: string | null;
30
+ agentVersion?: string | null;
31
+ context?: Record<string, unknown> | null;
32
+ privacyConfig?: PrivacyConfig | null;
33
+ eventProperties?: Record<string, unknown> | null;
34
+ userProperties?: Record<string, unknown> | null;
35
+ groups?: Record<string, unknown> | null;
36
+ }): void;
37
+ static clear(): void;
38
+ static isConfigured(): boolean;
39
+ }
40
+ interface ToolOptions {
41
+ name?: string;
42
+ amplitude?: AmplitudeLike | null;
43
+ userId?: string | null;
44
+ sessionId?: string | null;
45
+ traceId?: string | null;
46
+ turnId?: number | null;
47
+ env?: string | null;
48
+ agentId?: string | null;
49
+ parentAgentId?: string | null;
50
+ customerOrgId?: string | null;
51
+ agentVersion?: string | null;
52
+ context?: Record<string, unknown> | null;
53
+ privacyConfig?: PrivacyConfig | null;
54
+ eventProperties?: Record<string, unknown> | null;
55
+ userProperties?: Record<string, unknown> | null;
56
+ groups?: Record<string, unknown> | null;
57
+ inputSchema?: Record<string, unknown> | null;
58
+ timeoutMs?: number | null;
59
+ onError?: ((error: Error, toolName: string) => void) | null;
60
+ }
61
+ type AnyFn = (...args: unknown[]) => unknown;
62
+ /**
63
+ * Converts a function's return type to Promise-wrapped if not already.
64
+ * Reflects the fact that tool() always returns an async wrapper.
65
+ */
66
+ type ToolWrapped<T extends AnyFn> = T extends ((...args: infer A) => infer R) ? R extends Promise<unknown> ? (...args: A) => R : (...args: A) => Promise<R> : T;
67
+ /**
68
+ * Wraps a function and emits one `[Agent] Tool Call` event per invocation.
69
+ *
70
+ * Supports both forms:
71
+ * - `tool(fn, opts?)`
72
+ * - `tool(opts)(fn)`
73
+ *
74
+ * Resolution order for tracking context is:
75
+ * runtime overrides > decorator opts > active session context > `ToolCallTracker`.
76
+ * If tracking is not configured (`amplitude`/`userId` missing), the wrapped function
77
+ * still executes and no tracking event is emitted.
78
+ */
79
+ declare function tool<T extends AnyFn>(fn: T, opts?: ToolOptions): ToolWrapped<T>;
80
+ declare function tool(opts: ToolOptions): <T extends AnyFn>(fn: T) => ToolWrapped<T>;
81
+ interface ObserveOptions {
82
+ name?: string;
83
+ amplitude?: AmplitudeLike | null;
84
+ userId?: string | null;
85
+ agentId?: string | null;
86
+ env?: string | null;
87
+ privacyConfig?: PrivacyConfig | null;
88
+ }
89
+ /**
90
+ * Converts a function's return type to Promise-wrapped if not already.
91
+ * Reflects the fact that observe() always returns an async wrapper.
92
+ */
93
+ type ObserveWrapped<T extends AnyFn> = T extends ((...args: infer A) => infer R) ? R extends Promise<unknown> ? (...args: A) => R : (...args: A) => Promise<R> : T;
94
+ /**
95
+ * Wraps a function and emits one `[Agent] Span` event per invocation.
96
+ *
97
+ * Supports both forms:
98
+ * - `observe(fn, opts?)`
99
+ * - `observe(opts)(fn)`
100
+ *
101
+ * If called inside an active session context, spans attach to that session.
102
+ * If no context is active, observe creates a short-lived session boundary and
103
+ * emits a session-end event when the wrapped function completes.
104
+ */
105
+ declare function observe<T extends AnyFn>(fn: T, opts?: ObserveOptions): ObserveWrapped<T>;
106
+ declare function observe(opts: ObserveOptions): <T extends AnyFn>(fn: T) => ObserveWrapped<T>;
107
+ //#endregion
108
+ export { ObserveWrapped, ToolCallTracker, ToolWrapped, observe, tool };
109
+ //# sourceMappingURL=decorators.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"decorators.d.ts","names":[],"sources":["../src/decorators.ts"],"sourcesContent":[],"mappings":"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"}
@@ -0,0 +1,281 @@
1
+ import { getLogger } from "./utils/logger.js";
2
+ import { trackSessionEnd, trackSpan, trackToolCall } from "./core/tracking.js";
3
+ import { SessionContext, _sessionStorage, getActiveContext } from "./context.js";
4
+ import { randomUUID } from "node:crypto";
5
+
6
+ //#region src/decorators.ts
7
+ /**
8
+ * Higher-order functions for automatic tracking of function calls as tool and span events.
9
+ *
10
+ * TypeScript equivalent of Python's @tool and @observe decorators.
11
+ * Since TS/JS does not have native decorators with the same power as Python,
12
+ * these are implemented as HOFs (higher-order functions) that wrap callables.
13
+ */
14
+ var ToolCallTracker = class ToolCallTracker {
15
+ static _amplitude = null;
16
+ static _userId = null;
17
+ static _sessionId = null;
18
+ static _traceId = null;
19
+ static _turnId = 1;
20
+ static _env = null;
21
+ static _agentId = null;
22
+ static _parentAgentId = null;
23
+ static _customerOrgId = null;
24
+ static _agentVersion = null;
25
+ static _context = null;
26
+ static _privacyConfig = null;
27
+ static _eventProperties = null;
28
+ static _userProperties = null;
29
+ static _groups = null;
30
+ static setAmplitude(amplitude, userId, opts = {}) {
31
+ ToolCallTracker._amplitude = amplitude;
32
+ ToolCallTracker._userId = userId;
33
+ ToolCallTracker._sessionId = opts.sessionId ?? null;
34
+ ToolCallTracker._traceId = opts.traceId ?? null;
35
+ ToolCallTracker._turnId = opts.turnId ?? 1;
36
+ ToolCallTracker._env = opts.env ?? null;
37
+ ToolCallTracker._agentId = opts.agentId ?? null;
38
+ ToolCallTracker._parentAgentId = opts.parentAgentId ?? null;
39
+ ToolCallTracker._customerOrgId = opts.customerOrgId ?? null;
40
+ ToolCallTracker._agentVersion = opts.agentVersion ?? null;
41
+ ToolCallTracker._context = opts.context ?? null;
42
+ ToolCallTracker._privacyConfig = opts.privacyConfig ?? null;
43
+ ToolCallTracker._eventProperties = opts.eventProperties ?? null;
44
+ ToolCallTracker._userProperties = opts.userProperties ?? null;
45
+ ToolCallTracker._groups = opts.groups ?? null;
46
+ }
47
+ static clear() {
48
+ ToolCallTracker._amplitude = null;
49
+ ToolCallTracker._userId = null;
50
+ ToolCallTracker._sessionId = null;
51
+ ToolCallTracker._traceId = null;
52
+ ToolCallTracker._turnId = 1;
53
+ ToolCallTracker._env = null;
54
+ ToolCallTracker._agentId = null;
55
+ ToolCallTracker._parentAgentId = null;
56
+ ToolCallTracker._customerOrgId = null;
57
+ ToolCallTracker._agentVersion = null;
58
+ ToolCallTracker._context = null;
59
+ ToolCallTracker._privacyConfig = null;
60
+ ToolCallTracker._eventProperties = null;
61
+ ToolCallTracker._userProperties = null;
62
+ ToolCallTracker._groups = null;
63
+ }
64
+ static isConfigured() {
65
+ return ToolCallTracker._amplitude != null && ToolCallTracker._userId != null;
66
+ }
67
+ };
68
+ function _resolveContextFields(opts) {
69
+ const ctx = getActiveContext();
70
+ function resolve(decoratorVal, trackerVal, ctxVal = null) {
71
+ if (decoratorVal !== void 0 && decoratorVal !== null) return decoratorVal;
72
+ if (ctxVal !== void 0 && ctxVal !== null) return ctxVal;
73
+ if (trackerVal !== void 0 && trackerVal !== null) return trackerVal;
74
+ return null;
75
+ }
76
+ return {
77
+ amplitude: opts.amplitude ?? ToolCallTracker._amplitude ?? null,
78
+ userId: resolve(opts.userId, ToolCallTracker._userId, ctx?.userId),
79
+ sessionId: resolve(opts.sessionId, ToolCallTracker._sessionId, ctx?.sessionId),
80
+ traceId: resolve(opts.traceId, ToolCallTracker._traceId, ctx?.traceId),
81
+ turnId: opts.turnId ?? ToolCallTracker._turnId,
82
+ env: resolve(opts.env, ToolCallTracker._env, ctx?.env),
83
+ agentId: resolve(opts.agentId, ToolCallTracker._agentId, ctx?.agentId),
84
+ parentAgentId: resolve(opts.parentAgentId, ToolCallTracker._parentAgentId, ctx?.parentAgentId),
85
+ customerOrgId: resolve(opts.customerOrgId, ToolCallTracker._customerOrgId, ctx?.customerOrgId),
86
+ agentVersion: resolve(opts.agentVersion, ToolCallTracker._agentVersion, ctx?.agentVersion),
87
+ context: resolve(opts.context, ToolCallTracker._context, ctx?.context),
88
+ privacyConfig: resolve(opts.privacyConfig, ToolCallTracker._privacyConfig),
89
+ eventProperties: resolve(opts.eventProperties, ToolCallTracker._eventProperties),
90
+ userProperties: resolve(opts.userProperties, ToolCallTracker._userProperties),
91
+ groups: resolve(opts.groups, ToolCallTracker._groups, ctx?.groups)
92
+ };
93
+ }
94
+ function tool(fnOrOpts, maybeOpts) {
95
+ if (typeof fnOrOpts === "function") return _wrapTool(fnOrOpts, maybeOpts ?? {});
96
+ return (fn) => _wrapTool(fn, fnOrOpts);
97
+ }
98
+ function _wrapTool(fn, opts) {
99
+ const toolName = opts.name || fn.name || "anonymous";
100
+ const schemaJson = opts.inputSchema ? JSON.stringify(opts.inputSchema) : null;
101
+ const wrapper = async function(...args) {
102
+ const r = _resolveContextFields(opts);
103
+ if (r.amplitude == null || r.userId == null) {
104
+ getLogger().warn(`Tool '${toolName}' called but tracking not configured. Call ToolCallTracker.setAmplitude() or pass amplitude/userId to tool().`);
105
+ return fn.apply(this, args);
106
+ }
107
+ const toolInput = args.length === 1 && typeof args[0] === "object" && args[0] != null ? args[0] : args.length > 0 ? { args } : void 0;
108
+ const startTime = performance.now();
109
+ let success = true;
110
+ let errorMsg = null;
111
+ let result = void 0;
112
+ try {
113
+ if (opts.timeoutMs != null) result = await _runWithTimeout(fn.bind(this, ...args), opts.timeoutMs, toolName);
114
+ else result = await fn.apply(this, args);
115
+ return result;
116
+ } catch (e) {
117
+ success = false;
118
+ errorMsg = e instanceof Error ? e.message : String(e);
119
+ if (opts.onError != null) try {
120
+ opts.onError(e instanceof Error ? e : new Error(String(e)), toolName);
121
+ } catch {}
122
+ getLogger().error(`Tool '${toolName}' failed: ${errorMsg}`);
123
+ throw e;
124
+ } finally {
125
+ const latencyMs = performance.now() - startTime;
126
+ const extraProps = {};
127
+ if (schemaJson != null) extraProps["[Agent] Tool Input Schema"] = schemaJson;
128
+ const mergedEvtProps = {
129
+ ...r.eventProperties ?? {},
130
+ ...extraProps
131
+ };
132
+ try {
133
+ trackToolCall({
134
+ amplitude: r.amplitude,
135
+ userId: r.userId,
136
+ toolName,
137
+ success,
138
+ latencyMs,
139
+ sessionId: r.sessionId,
140
+ traceId: r.traceId,
141
+ turnId: r.turnId ?? void 0,
142
+ toolInput,
143
+ toolOutput: success ? result : void 0,
144
+ errorMessage: errorMsg,
145
+ env: r.env,
146
+ agentId: r.agentId,
147
+ parentAgentId: r.parentAgentId,
148
+ customerOrgId: r.customerOrgId,
149
+ agentVersion: r.agentVersion,
150
+ context: r.context,
151
+ eventProperties: Object.keys(extraProps).length > 0 ? mergedEvtProps : r.eventProperties,
152
+ userProperties: r.userProperties,
153
+ groups: r.groups,
154
+ privacyConfig: r.privacyConfig
155
+ });
156
+ } catch (trackError) {
157
+ getLogger().error(`Failed to track tool call '${toolName}': ${trackError}`);
158
+ }
159
+ }
160
+ };
161
+ Object.defineProperty(wrapper, "name", {
162
+ value: fn.name,
163
+ configurable: true
164
+ });
165
+ return wrapper;
166
+ }
167
+ async function _runWithTimeout(fn, timeoutMs, toolName) {
168
+ let timer;
169
+ const timeoutPromise = new Promise((_resolve, reject) => {
170
+ timer = setTimeout(() => reject(/* @__PURE__ */ new Error(`Tool '${toolName}' exceeded ${timeoutMs}ms timeout`)), timeoutMs);
171
+ });
172
+ try {
173
+ return await Promise.race([fn(), timeoutPromise]);
174
+ } finally {
175
+ clearTimeout(timer);
176
+ }
177
+ }
178
+ function observe(fnOrOpts, maybeOpts) {
179
+ if (typeof fnOrOpts === "function") return _wrapObserve(fnOrOpts, maybeOpts ?? {});
180
+ return (fn) => _wrapObserve(fn, fnOrOpts);
181
+ }
182
+ function _resolveObserveParams(opts) {
183
+ const ctx = getActiveContext();
184
+ return {
185
+ amplitude: opts.amplitude ?? ToolCallTracker._amplitude ?? null,
186
+ userId: opts.userId ?? ctx?.userId ?? ToolCallTracker._userId ?? "",
187
+ agentId: opts.agentId ?? ctx?.agentId ?? ToolCallTracker._agentId ?? null,
188
+ env: opts.env ?? ctx?.env ?? ToolCallTracker._env ?? null,
189
+ privacyConfig: opts.privacyConfig ?? ToolCallTracker._privacyConfig ?? null,
190
+ context: ctx
191
+ };
192
+ }
193
+ function _serializeState(value, pc) {
194
+ if (value == null) return null;
195
+ if (pc != null) {
196
+ const mode = pc.contentMode;
197
+ if (mode === "metadata_only" || mode == null && pc.privacyMode) return null;
198
+ }
199
+ if (typeof value === "object" && !Array.isArray(value)) return value;
200
+ return { value: String(value) };
201
+ }
202
+ function _wrapObserve(fn, opts) {
203
+ const spanName = opts.name || fn.name || "anonymous";
204
+ const wrapper = async function(...args) {
205
+ const params = _resolveObserveParams(opts);
206
+ const ctx = getActiveContext();
207
+ const ownsSession = ctx == null;
208
+ const sessionId = ctx?.sessionId ?? randomUUID();
209
+ const runFn = async () => {
210
+ const inputState = _serializeState(args.length === 1 ? args[0] : args.length > 0 ? { args } : null, params.privacyConfig);
211
+ const start = performance.now();
212
+ let isError = false;
213
+ let errorMessage = null;
214
+ let result = void 0;
215
+ try {
216
+ result = await fn.apply(this, args);
217
+ return result;
218
+ } catch (exc) {
219
+ isError = true;
220
+ errorMessage = exc instanceof Error ? exc.message : String(exc);
221
+ throw exc;
222
+ } finally {
223
+ const latencyMs = performance.now() - start;
224
+ const outputState = _serializeState(result, params.privacyConfig);
225
+ const activeCtx = getActiveContext();
226
+ if (params.amplitude != null) {
227
+ try {
228
+ trackSpan({
229
+ amplitude: params.amplitude,
230
+ userId: params.userId,
231
+ spanName,
232
+ traceId: activeCtx?.traceId ?? randomUUID(),
233
+ latencyMs,
234
+ inputState,
235
+ outputState,
236
+ isError,
237
+ errorMessage,
238
+ sessionId,
239
+ agentId: params.agentId || spanName,
240
+ env: params.env,
241
+ privacyConfig: params.privacyConfig
242
+ });
243
+ } catch (e) {
244
+ getLogger().error(`Failed to track @observe span '${spanName}': ${e}`);
245
+ }
246
+ if (ownsSession) try {
247
+ trackSessionEnd({
248
+ amplitude: params.amplitude,
249
+ userId: params.userId,
250
+ sessionId,
251
+ env: params.env,
252
+ agentId: params.agentId || spanName,
253
+ privacyConfig: params.privacyConfig
254
+ });
255
+ } catch (e) {
256
+ getLogger().error(`Failed to end @observe session '${spanName}': ${e}`);
257
+ }
258
+ }
259
+ }
260
+ };
261
+ if (ownsSession) {
262
+ const newCtx = new SessionContext({
263
+ sessionId,
264
+ userId: params.userId,
265
+ agentId: params.agentId || spanName,
266
+ env: params.env
267
+ });
268
+ return _sessionStorage.run(newCtx, runFn);
269
+ }
270
+ return runFn();
271
+ };
272
+ Object.defineProperty(wrapper, "name", {
273
+ value: fn.name,
274
+ configurable: true
275
+ });
276
+ return wrapper;
277
+ }
278
+
279
+ //#endregion
280
+ export { ToolCallTracker, observe, tool };
281
+ //# sourceMappingURL=decorators.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"decorators.js","names":["errorMsg: string | null","result: unknown","extraProps: Record<string, unknown>","timer: ReturnType<typeof setTimeout> | undefined","errorMessage: string | null"],"sources":["../src/decorators.ts"],"sourcesContent":["/**\n * Higher-order functions for automatic tracking of function calls as tool and span events.\n *\n * TypeScript equivalent of Python's @tool and @observe decorators.\n * Since TS/JS does not have native decorators with the same power as Python,\n * these are implemented as HOFs (higher-order functions) that wrap callables.\n */\n\nimport { randomUUID } from 'node:crypto';\nimport {\n _sessionStorage,\n getActiveContext,\n SessionContext,\n} from './context.js';\nimport type { PrivacyConfig } from './core/privacy.js';\nimport { trackSessionEnd, trackSpan, trackToolCall } from './core/tracking.js';\nimport type { AmplitudeLike } from './types.js';\nimport { getLogger } from './utils/logger.js';\n\n// ---------------------------------------------------------------------------\n// ToolCallTracker — global config singleton (parity with Python)\n// ---------------------------------------------------------------------------\n\n// biome-ignore lint/complexity/noStaticOnlyClass: mirrors Python SDK's ToolCallTracker API\nexport class ToolCallTracker {\n static _amplitude: AmplitudeLike | null = null;\n static _userId: string | null = null;\n static _sessionId: string | null = null;\n static _traceId: string | null = null;\n static _turnId = 1;\n static _env: string | null = null;\n static _agentId: string | null = null;\n static _parentAgentId: string | null = null;\n static _customerOrgId: string | null = null;\n static _agentVersion: string | null = null;\n static _context: Record<string, unknown> | null = null;\n static _privacyConfig: PrivacyConfig | null = null;\n static _eventProperties: Record<string, unknown> | null = null;\n static _userProperties: Record<string, unknown> | null = null;\n static _groups: Record<string, unknown> | null = null;\n\n static setAmplitude(\n amplitude: AmplitudeLike,\n userId: string,\n opts: {\n sessionId?: string | null;\n traceId?: string | null;\n turnId?: number;\n env?: string | null;\n agentId?: string | null;\n parentAgentId?: string | null;\n customerOrgId?: string | null;\n agentVersion?: string | null;\n context?: Record<string, unknown> | null;\n privacyConfig?: PrivacyConfig | null;\n eventProperties?: Record<string, unknown> | null;\n userProperties?: Record<string, unknown> | null;\n groups?: Record<string, unknown> | null;\n } = {},\n ): void {\n ToolCallTracker._amplitude = amplitude;\n ToolCallTracker._userId = userId;\n ToolCallTracker._sessionId = opts.sessionId ?? null;\n ToolCallTracker._traceId = opts.traceId ?? null;\n ToolCallTracker._turnId = opts.turnId ?? 1;\n ToolCallTracker._env = opts.env ?? null;\n ToolCallTracker._agentId = opts.agentId ?? null;\n ToolCallTracker._parentAgentId = opts.parentAgentId ?? null;\n ToolCallTracker._customerOrgId = opts.customerOrgId ?? null;\n ToolCallTracker._agentVersion = opts.agentVersion ?? null;\n ToolCallTracker._context = opts.context ?? null;\n ToolCallTracker._privacyConfig = opts.privacyConfig ?? null;\n ToolCallTracker._eventProperties = opts.eventProperties ?? null;\n ToolCallTracker._userProperties = opts.userProperties ?? null;\n ToolCallTracker._groups = opts.groups ?? null;\n }\n\n static clear(): void {\n ToolCallTracker._amplitude = null;\n ToolCallTracker._userId = null;\n ToolCallTracker._sessionId = null;\n ToolCallTracker._traceId = null;\n ToolCallTracker._turnId = 1;\n ToolCallTracker._env = null;\n ToolCallTracker._agentId = null;\n ToolCallTracker._parentAgentId = null;\n ToolCallTracker._customerOrgId = null;\n ToolCallTracker._agentVersion = null;\n ToolCallTracker._context = null;\n ToolCallTracker._privacyConfig = null;\n ToolCallTracker._eventProperties = null;\n ToolCallTracker._userProperties = null;\n ToolCallTracker._groups = null;\n }\n\n static isConfigured(): boolean {\n return (\n ToolCallTracker._amplitude != null && ToolCallTracker._userId != null\n );\n }\n}\n\n// ---------------------------------------------------------------------------\n// Context resolution (merges runtime overrides > explicit opts > session ctx > global)\n// ---------------------------------------------------------------------------\n\ninterface ToolOptions {\n name?: string;\n amplitude?: AmplitudeLike | null;\n userId?: string | null;\n sessionId?: string | null;\n traceId?: string | null;\n turnId?: number | null;\n env?: string | null;\n agentId?: string | null;\n parentAgentId?: string | null;\n customerOrgId?: string | null;\n agentVersion?: string | null;\n context?: Record<string, unknown> | null;\n privacyConfig?: PrivacyConfig | null;\n eventProperties?: Record<string, unknown> | null;\n userProperties?: Record<string, unknown> | null;\n groups?: Record<string, unknown> | null;\n inputSchema?: Record<string, unknown> | null;\n timeoutMs?: number | null;\n onError?: ((error: Error, toolName: string) => void) | null;\n}\n\ninterface ResolvedContext {\n amplitude: AmplitudeLike | null;\n userId: string | null;\n sessionId: string | null;\n traceId: string | null;\n turnId: number;\n env: string | null;\n agentId: string | null;\n parentAgentId: string | null;\n customerOrgId: string | null;\n agentVersion: string | null;\n context: Record<string, unknown> | null;\n privacyConfig: PrivacyConfig | null;\n eventProperties: Record<string, unknown> | null;\n userProperties: Record<string, unknown> | null;\n groups: Record<string, unknown> | null;\n}\n\nfunction _resolveContextFields(opts: ToolOptions): ResolvedContext {\n const ctx = getActiveContext();\n\n function resolve(\n decoratorVal: unknown,\n trackerVal: unknown,\n ctxVal: unknown = null,\n ): unknown {\n if (decoratorVal !== undefined && decoratorVal !== null)\n return decoratorVal;\n if (ctxVal !== undefined && ctxVal !== null) return ctxVal;\n if (trackerVal !== undefined && trackerVal !== null) return trackerVal;\n return null;\n }\n\n return {\n amplitude: opts.amplitude ?? ToolCallTracker._amplitude ?? null,\n userId: resolve(opts.userId, ToolCallTracker._userId, ctx?.userId) as\n | string\n | null,\n sessionId: resolve(\n opts.sessionId,\n ToolCallTracker._sessionId,\n ctx?.sessionId,\n ) as string | null,\n traceId: resolve(opts.traceId, ToolCallTracker._traceId, ctx?.traceId) as\n | string\n | null,\n turnId: opts.turnId ?? ToolCallTracker._turnId,\n env: resolve(opts.env, ToolCallTracker._env, ctx?.env) as string | null,\n agentId: resolve(opts.agentId, ToolCallTracker._agentId, ctx?.agentId) as\n | string\n | null,\n parentAgentId: resolve(\n opts.parentAgentId,\n ToolCallTracker._parentAgentId,\n ctx?.parentAgentId,\n ) as string | null,\n customerOrgId: resolve(\n opts.customerOrgId,\n ToolCallTracker._customerOrgId,\n ctx?.customerOrgId,\n ) as string | null,\n agentVersion: resolve(\n opts.agentVersion,\n ToolCallTracker._agentVersion,\n ctx?.agentVersion,\n ) as string | null,\n context: resolve(\n opts.context,\n ToolCallTracker._context,\n ctx?.context,\n ) as Record<string, unknown> | null,\n privacyConfig: resolve(\n opts.privacyConfig,\n ToolCallTracker._privacyConfig,\n ) as PrivacyConfig | null,\n eventProperties: resolve(\n opts.eventProperties,\n ToolCallTracker._eventProperties,\n ) as Record<string, unknown> | null,\n userProperties: resolve(\n opts.userProperties,\n ToolCallTracker._userProperties,\n ) as Record<string, unknown> | null,\n groups: resolve(\n opts.groups,\n ToolCallTracker._groups,\n ctx?.groups,\n ) as Record<string, unknown> | null,\n };\n}\n\n// ---------------------------------------------------------------------------\n// tool() HOF — wraps a function to auto-track as [Agent] Tool Call\n// ---------------------------------------------------------------------------\n\ntype AnyFn = (...args: unknown[]) => unknown;\ntype AsyncFn = (...args: unknown[]) => Promise<unknown>;\n\n/**\n * Converts a function's return type to Promise-wrapped if not already.\n * Reflects the fact that tool() always returns an async wrapper.\n */\nexport type ToolWrapped<T extends AnyFn> = T extends (\n ...args: infer A\n) => infer R\n ? R extends Promise<unknown>\n ? (...args: A) => R\n : (...args: A) => Promise<R>\n : T;\n\n/**\n * Wraps a function and emits one `[Agent] Tool Call` event per invocation.\n *\n * Supports both forms:\n * - `tool(fn, opts?)`\n * - `tool(opts)(fn)`\n *\n * Resolution order for tracking context is:\n * runtime overrides > decorator opts > active session context > `ToolCallTracker`.\n * If tracking is not configured (`amplitude`/`userId` missing), the wrapped function\n * still executes and no tracking event is emitted.\n */\nexport function tool<T extends AnyFn>(\n fn: T,\n opts?: ToolOptions,\n): ToolWrapped<T>;\nexport function tool(\n opts: ToolOptions,\n): <T extends AnyFn>(fn: T) => ToolWrapped<T>;\nexport function tool<T extends AnyFn>(\n fnOrOpts: T | ToolOptions,\n maybeOpts?: ToolOptions,\n): ToolWrapped<T> | (<U extends AnyFn>(fn: U) => ToolWrapped<U>) {\n if (typeof fnOrOpts === 'function') {\n return _wrapTool(fnOrOpts as T, maybeOpts ?? {}) as ToolWrapped<T>;\n }\n return <U extends AnyFn>(fn: U): ToolWrapped<U> =>\n _wrapTool(fn, fnOrOpts) as ToolWrapped<U>;\n}\n\nfunction _wrapTool<T extends AnyFn>(fn: T, opts: ToolOptions): ToolWrapped<T> {\n const toolName = opts.name || fn.name || 'anonymous';\n const schemaJson = opts.inputSchema ? JSON.stringify(opts.inputSchema) : null;\n\n const wrapper = async function (\n this: unknown,\n ...args: unknown[]\n ): Promise<unknown> {\n const r = _resolveContextFields(opts);\n\n if (r.amplitude == null || r.userId == null) {\n getLogger().warn(\n `Tool '${toolName}' called but tracking not configured. Call ToolCallTracker.setAmplitude() or pass amplitude/userId to tool().`,\n );\n return fn.apply(this, args);\n }\n\n const toolInput =\n args.length === 1 && typeof args[0] === 'object' && args[0] != null\n ? args[0]\n : args.length > 0\n ? { args }\n : undefined;\n\n const startTime = performance.now();\n let success = true;\n let errorMsg: string | null = null;\n let result: unknown = undefined;\n\n try {\n if (opts.timeoutMs != null) {\n result = await _runWithTimeout(\n fn.bind(this, ...args) as AsyncFn,\n opts.timeoutMs,\n toolName,\n );\n } else {\n result = await fn.apply(this, args);\n }\n return result;\n } catch (e) {\n success = false;\n errorMsg = e instanceof Error ? e.message : String(e);\n if (opts.onError != null) {\n try {\n opts.onError(e instanceof Error ? e : new Error(String(e)), toolName);\n } catch {\n // swallow callback errors\n }\n }\n getLogger().error(`Tool '${toolName}' failed: ${errorMsg}`);\n throw e;\n } finally {\n const latencyMs = performance.now() - startTime;\n\n const extraProps: Record<string, unknown> = {};\n if (schemaJson != null) {\n extraProps['[Agent] Tool Input Schema'] = schemaJson;\n }\n\n const mergedEvtProps = {\n ...(r.eventProperties ?? {}),\n ...extraProps,\n };\n\n try {\n trackToolCall({\n amplitude: r.amplitude,\n userId: r.userId,\n toolName,\n success,\n latencyMs,\n sessionId: r.sessionId,\n traceId: r.traceId,\n turnId: r.turnId ?? undefined,\n toolInput,\n toolOutput: success ? result : undefined,\n errorMessage: errorMsg,\n env: r.env,\n agentId: r.agentId,\n parentAgentId: r.parentAgentId,\n customerOrgId: r.customerOrgId,\n agentVersion: r.agentVersion,\n context: r.context,\n eventProperties:\n Object.keys(extraProps).length > 0\n ? mergedEvtProps\n : r.eventProperties,\n userProperties: r.userProperties,\n groups: r.groups,\n privacyConfig: r.privacyConfig,\n });\n } catch (trackError) {\n getLogger().error(\n `Failed to track tool call '${toolName}': ${trackError}`,\n );\n }\n }\n } as unknown as ToolWrapped<T>;\n\n Object.defineProperty(wrapper, 'name', {\n value: fn.name,\n configurable: true,\n });\n return wrapper;\n}\n\nasync function _runWithTimeout(\n fn: AsyncFn,\n timeoutMs: number,\n toolName: string,\n): Promise<unknown> {\n let timer: ReturnType<typeof setTimeout> | undefined;\n const timeoutPromise = new Promise<never>((_resolve, reject) => {\n timer = setTimeout(\n () =>\n reject(new Error(`Tool '${toolName}' exceeded ${timeoutMs}ms timeout`)),\n timeoutMs,\n );\n });\n\n try {\n return await Promise.race([fn(), timeoutPromise]);\n } finally {\n clearTimeout(timer);\n }\n}\n\n// ---------------------------------------------------------------------------\n// observe() HOF — wraps a function to auto-track as [Agent] Span\n// ---------------------------------------------------------------------------\n\ninterface ObserveOptions {\n name?: string;\n amplitude?: AmplitudeLike | null;\n userId?: string | null;\n agentId?: string | null;\n env?: string | null;\n privacyConfig?: PrivacyConfig | null;\n}\n\n/**\n * Converts a function's return type to Promise-wrapped if not already.\n * Reflects the fact that observe() always returns an async wrapper.\n */\nexport type ObserveWrapped<T extends AnyFn> = T extends (\n ...args: infer A\n) => infer R\n ? R extends Promise<unknown>\n ? (...args: A) => R\n : (...args: A) => Promise<R>\n : T;\n\n/**\n * Wraps a function and emits one `[Agent] Span` event per invocation.\n *\n * Supports both forms:\n * - `observe(fn, opts?)`\n * - `observe(opts)(fn)`\n *\n * If called inside an active session context, spans attach to that session.\n * If no context is active, observe creates a short-lived session boundary and\n * emits a session-end event when the wrapped function completes.\n */\nexport function observe<T extends AnyFn>(\n fn: T,\n opts?: ObserveOptions,\n): ObserveWrapped<T>;\nexport function observe(\n opts: ObserveOptions,\n): <T extends AnyFn>(fn: T) => ObserveWrapped<T>;\nexport function observe<T extends AnyFn>(\n fnOrOpts: T | ObserveOptions,\n maybeOpts?: ObserveOptions,\n): ObserveWrapped<T> | (<U extends AnyFn>(fn: U) => ObserveWrapped<U>) {\n if (typeof fnOrOpts === 'function') {\n return _wrapObserve(fnOrOpts as T, maybeOpts ?? {}) as ObserveWrapped<T>;\n }\n return <U extends AnyFn>(fn: U): ObserveWrapped<U> =>\n _wrapObserve(fn, fnOrOpts) as ObserveWrapped<U>;\n}\n\ninterface ResolvedObserveParams {\n amplitude: AmplitudeLike | null;\n userId: string;\n agentId: string | null;\n env: string | null;\n privacyConfig: PrivacyConfig | null;\n context: SessionContext | null;\n}\n\nfunction _resolveObserveParams(opts: ObserveOptions): ResolvedObserveParams {\n const ctx = getActiveContext();\n return {\n amplitude: opts.amplitude ?? ToolCallTracker._amplitude ?? null,\n userId: opts.userId ?? ctx?.userId ?? ToolCallTracker._userId ?? '',\n agentId: opts.agentId ?? ctx?.agentId ?? ToolCallTracker._agentId ?? null,\n env: opts.env ?? ctx?.env ?? ToolCallTracker._env ?? null,\n privacyConfig: opts.privacyConfig ?? ToolCallTracker._privacyConfig ?? null,\n context: ctx,\n };\n}\n\nfunction _serializeState(\n value: unknown,\n pc: PrivacyConfig | null,\n): Record<string, unknown> | null {\n if (value == null) return null;\n if (pc != null) {\n const mode = pc.contentMode;\n if (mode === 'metadata_only' || (mode == null && pc.privacyMode))\n return null;\n }\n if (typeof value === 'object' && !Array.isArray(value))\n return value as Record<string, unknown>;\n return { value: String(value) };\n}\n\nfunction _wrapObserve<T extends AnyFn>(fn: T, opts: ObserveOptions): T {\n const spanName = opts.name || fn.name || 'anonymous';\n\n const wrapper = async function (\n this: unknown,\n ...args: unknown[]\n ): Promise<unknown> {\n const params = _resolveObserveParams(opts);\n const ctx = getActiveContext();\n const ownsSession = ctx == null;\n const sessionId = ctx?.sessionId ?? randomUUID();\n\n const runFn = async (): Promise<unknown> => {\n const inputState = _serializeState(\n args.length === 1 ? args[0] : args.length > 0 ? { args } : null,\n params.privacyConfig,\n );\n\n const start = performance.now();\n let isError = false;\n let errorMessage: string | null = null;\n let result: unknown = undefined;\n\n try {\n result = await fn.apply(this, args);\n return result;\n } catch (exc) {\n isError = true;\n errorMessage = exc instanceof Error ? exc.message : String(exc);\n throw exc;\n } finally {\n const latencyMs = performance.now() - start;\n const outputState = _serializeState(result, params.privacyConfig);\n const activeCtx = getActiveContext();\n\n if (params.amplitude != null) {\n try {\n trackSpan({\n amplitude: params.amplitude,\n userId: params.userId,\n spanName,\n traceId: activeCtx?.traceId ?? randomUUID(),\n latencyMs,\n inputState,\n outputState,\n isError,\n errorMessage,\n sessionId,\n agentId: params.agentId || spanName,\n env: params.env,\n privacyConfig: params.privacyConfig,\n });\n } catch (e) {\n getLogger().error(\n `Failed to track @observe span '${spanName}': ${e}`,\n );\n }\n\n if (ownsSession) {\n try {\n trackSessionEnd({\n amplitude: params.amplitude,\n userId: params.userId,\n sessionId,\n env: params.env,\n agentId: params.agentId || spanName,\n privacyConfig: params.privacyConfig,\n });\n } catch (e) {\n getLogger().error(\n `Failed to end @observe session '${spanName}': ${e}`,\n );\n }\n }\n }\n }\n };\n\n if (ownsSession) {\n const newCtx = new SessionContext({\n sessionId,\n userId: params.userId,\n agentId: params.agentId || spanName,\n env: params.env,\n });\n return _sessionStorage.run(newCtx, runFn);\n }\n return runFn();\n } as unknown as T;\n\n Object.defineProperty(wrapper, 'name', {\n value: fn.name,\n configurable: true,\n });\n return wrapper;\n}\n"],"mappings":"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"}
@@ -0,0 +1,19 @@
1
+ //#region src/exceptions.d.ts
2
+ declare class AmplitudeAIError extends Error {
3
+ constructor(message: string);
4
+ }
5
+ declare class ConfigurationError extends AmplitudeAIError {
6
+ constructor(message: string);
7
+ }
8
+ declare class TrackingError extends AmplitudeAIError {
9
+ constructor(message: string);
10
+ }
11
+ declare class ProviderError extends AmplitudeAIError {
12
+ constructor(message: string);
13
+ }
14
+ declare class ValidationError extends AmplitudeAIError {
15
+ constructor(message: string);
16
+ }
17
+ //#endregion
18
+ export { AmplitudeAIError, ConfigurationError, ProviderError, TrackingError, ValidationError };
19
+ //# sourceMappingURL=exceptions.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"exceptions.d.ts","names":[],"sources":["../src/exceptions.ts"],"sourcesContent":[],"mappings":";cAAa,gBAAA,SAAyB,KAAA;EAAzB,WAAA,CAAA,OAAiB,EAAA,MAAA;AAO9B;AAOa,cAPA,kBAAA,SAA2B,gBAAA,CAOW;EAOtC,WAAA,CAAA,OAAc,EAAA,MAAA;AAO3B;cAda,aAAA,SAAsB,gBAAA;;;cAOtB,aAAA,SAAsB,gBAAA;;;cAOtB,eAAA,SAAwB,gBAAA"}
@@ -0,0 +1,35 @@
1
+ //#region src/exceptions.ts
2
+ var AmplitudeAIError = class extends Error {
3
+ constructor(message) {
4
+ super(message);
5
+ this.name = "AmplitudeAIError";
6
+ }
7
+ };
8
+ var ConfigurationError = class extends AmplitudeAIError {
9
+ constructor(message) {
10
+ super(message);
11
+ this.name = "ConfigurationError";
12
+ }
13
+ };
14
+ var TrackingError = class extends AmplitudeAIError {
15
+ constructor(message) {
16
+ super(message);
17
+ this.name = "TrackingError";
18
+ }
19
+ };
20
+ var ProviderError = class extends AmplitudeAIError {
21
+ constructor(message) {
22
+ super(message);
23
+ this.name = "ProviderError";
24
+ }
25
+ };
26
+ var ValidationError = class extends AmplitudeAIError {
27
+ constructor(message) {
28
+ super(message);
29
+ this.name = "ValidationError";
30
+ }
31
+ };
32
+
33
+ //#endregion
34
+ export { AmplitudeAIError, ConfigurationError, ProviderError, TrackingError, ValidationError };
35
+ //# sourceMappingURL=exceptions.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"exceptions.js","names":[],"sources":["../src/exceptions.ts"],"sourcesContent":["export class AmplitudeAIError extends Error {\n constructor(message: string) {\n super(message);\n this.name = 'AmplitudeAIError';\n }\n}\n\nexport class ConfigurationError extends AmplitudeAIError {\n constructor(message: string) {\n super(message);\n this.name = 'ConfigurationError';\n }\n}\n\nexport class TrackingError extends AmplitudeAIError {\n constructor(message: string) {\n super(message);\n this.name = 'TrackingError';\n }\n}\n\nexport class ProviderError extends AmplitudeAIError {\n constructor(message: string) {\n super(message);\n this.name = 'ProviderError';\n }\n}\n\nexport class ValidationError extends AmplitudeAIError {\n constructor(message: string) {\n super(message);\n this.name = 'ValidationError';\n }\n}\n"],"mappings":";AAAA,IAAa,mBAAb,cAAsC,MAAM;CAC1C,YAAY,SAAiB;AAC3B,QAAM,QAAQ;AACd,OAAK,OAAO;;;AAIhB,IAAa,qBAAb,cAAwC,iBAAiB;CACvD,YAAY,SAAiB;AAC3B,QAAM,QAAQ;AACd,OAAK,OAAO;;;AAIhB,IAAa,gBAAb,cAAmC,iBAAiB;CAClD,YAAY,SAAiB;AAC3B,QAAM,QAAQ;AACd,OAAK,OAAO;;;AAIhB,IAAa,gBAAb,cAAmC,iBAAiB;CAClD,YAAY,SAAiB;AAC3B,QAAM,QAAQ;AACd,OAAK,OAAO;;;AAIhB,IAAa,kBAAb,cAAqC,iBAAiB;CACpD,YAAY,SAAiB;AAC3B,QAAM,QAAQ;AACd,OAAK,OAAO"}
@@ -0,0 +1,37 @@
1
+ import { PrivacyConfig } from "./core/privacy.js";
2
+ import { AIConfig, AIConfigOptions, ContentMode } from "./config.js";
3
+ import { EvidenceQuote, MessageLabel, RubricScore, SessionEnrichments, TopicClassification } from "./core/enrichments.js";
4
+ import { TenantHandle } from "./tenant.js";
5
+ import { AmplitudeAILike, AmplitudeClientLike, AmplitudeEvent, AmplitudeLike, AmplitudeOrAI, AnthropicParams, AnthropicResponse, Attachment, BedrockConverseParams, BedrockConverseResponse, ChatCompletionParams, ChatCompletionResponse, ChatMessage, ContentBlock, MistralChatParams, MistralChatResponse, ToolCallShape, TrackCallOptions, TrackFn, resolveAmplitude } from "./types.js";
6
+ import { AmplitudeAI } from "./client.js";
7
+ import { Session } from "./session.js";
8
+ import { AiMessageOpts, BoundAgent, EmbeddingOpts, ScoreOpts, SessionEndOpts, SessionEnrichmentOpts, SpanOpts, ToolCallOpts, UserMessageOpts } from "./bound-agent.js";
9
+ import { SessionContext, getActiveContext, runWithContext, runWithContextAsync } from "./context.js";
10
+ import { EVENT_AI_RESPONSE, EVENT_EMBEDDING, EVENT_SCORE, EVENT_SESSION_END, EVENT_SESSION_ENRICHMENT, EVENT_SPAN, EVENT_TOOL_CALL, EVENT_USER_MESSAGE, MAX_SERIALIZED_LENGTH, PROP_ABANDONMENT_TURN, PROP_AGENT_CHAIN, PROP_AGENT_ID, PROP_AGENT_VERSION, PROP_ATTACHMENTS, PROP_ATTACHMENT_COUNT, PROP_ATTACHMENT_TYPES, PROP_CACHE_CREATION_TOKENS, PROP_CACHE_READ_TOKENS, PROP_COMMENT, PROP_COMPONENT_TYPE, PROP_CONTEXT, PROP_COST_USD, PROP_CUSTOMER_ORG_ID, PROP_EDITED_MESSAGE_ID, PROP_EMBEDDING_DIMENSIONS, PROP_ENRICHMENTS, PROP_ENV, PROP_ERROR_MESSAGE, PROP_EVALUATION_SOURCE, PROP_FINISH_REASON, PROP_HAS_ATTACHMENTS, PROP_HAS_REASONING, PROP_IDLE_TIMEOUT_MINUTES, PROP_INPUT_STATE, PROP_INPUT_TOKENS, PROP_INVOCATION_ID, PROP_IS_EDIT, PROP_IS_ERROR, PROP_IS_REGENERATION, PROP_IS_STREAMING, PROP_LATENCY_MS, PROP_LOCALE, PROP_MAX_OUTPUT_TOKENS, PROP_MESSAGE_ID, PROP_MESSAGE_LABELS, PROP_MESSAGE_LABEL_MAP, PROP_MODEL_NAME, PROP_MODEL_TIER, PROP_OUTPUT_STATE, PROP_OUTPUT_TOKENS, PROP_PARENT_AGENT_ID, PROP_PARENT_MESSAGE_ID, PROP_PARENT_SPAN_ID, PROP_PROMPT_ID, PROP_PROVIDER, PROP_QUALITY_SCORE, PROP_REASONING_CONTENT, PROP_REASONING_TOKENS, PROP_REQUEST_COMPLEXITY, PROP_ROOT_AGENT_NAME, PROP_RUNTIME, PROP_SCORE_NAME, PROP_SCORE_VALUE, PROP_SDK_VERSION, PROP_SENTIMENT_SCORE, PROP_SESSION_ID, PROP_SESSION_REPLAY_ID, PROP_SPAN_ID, PROP_SPAN_KIND, PROP_SPAN_NAME, PROP_SYSTEM_PROMPT, PROP_SYSTEM_PROMPT_LENGTH, PROP_TARGET_ID, PROP_TARGET_TYPE, PROP_TASK_FAILURE_REASON, PROP_TASK_FAILURE_TYPE, PROP_TEMPERATURE, PROP_TOOL_CALLS, PROP_TOOL_INPUT, PROP_TOOL_NAME, PROP_TOOL_OUTPUT, PROP_TOOL_SUCCESS, PROP_TOP_P, PROP_TOTAL_ATTACHMENT_SIZE, PROP_TOTAL_TOKENS, PROP_TRACE_ID, PROP_TTFB_MS, PROP_TURN_ID, PROP_WAS_CACHED, PROP_WAS_COPIED, SDK_RUNTIME, SDK_VERSION } from "./core/constants.js";
11
+ import { serializeToJsonString, trackAiMessage, trackConversation, trackEmbedding, trackScore, trackSessionEnd, trackSessionEnrichment, trackSpan, trackToolCall, trackUserMessage } from "./core/tracking.js";
12
+ import { ObserveWrapped, ToolCallTracker, ToolWrapped, observe, tool } from "./decorators.js";
13
+ import { AmplitudeAIError, ConfigurationError, ProviderError, TrackingError, ValidationError } from "./exceptions.js";
14
+ import { MockAmplitudeAI } from "./testing.js";
15
+ import { GENERATED_FILES, MCP_PROMPTS, MCP_RESOURCES, MCP_SERVER_NAME, MCP_TOOLS } from "./mcp/contract.js";
16
+ import { extractContext, injectContext } from "./propagation.js";
17
+ import { MiddlewareOptions, createAmplitudeAIMiddleware } from "./middleware.js";
18
+ import { StreamingAccumulator } from "./utils/streaming.js";
19
+ import { ANTHROPIC_AVAILABLE, Anthropic, extractAnthropicContent, extractAnthropicSystemPrompt } from "./providers/anthropic.js";
20
+ import { OPENAI_AVAILABLE, OpenAI, WrappedResponses, extractSystemPrompt } from "./providers/openai.js";
21
+ import { AzureOpenAI } from "./providers/azure-openai.js";
22
+ import { AmplitudeAIWrapError, wrap } from "./wrappers.js";
23
+ import { patch, patchAnthropic, patchAzureOpenAI, patchBedrock, patchGemini, patchMistral, patchOpenAI, patchedProviders, unpatch, unpatchAnthropic, unpatchAzureOpenAI, unpatchBedrock, unpatchGemini, unpatchMistral, unpatchOpenAI } from "./patching.js";
24
+ import { GEMINI_AVAILABLE, Gemini, extractGeminiResponse } from "./providers/gemini.js";
25
+ import { BEDROCK_AVAILABLE, Bedrock, extractBedrockResponse } from "./providers/bedrock.js";
26
+ import { MISTRAL_AVAILABLE, Mistral } from "./providers/mistral.js";
27
+ import { AmplitudeCallbackHandler, createAmplitudeCallback } from "./integrations/langchain.js";
28
+ import { AmplitudeAgentExporter, AmplitudeGenAIExporter, AmplitudeSpanExporter } from "./integrations/opentelemetry.js";
29
+ import { AmplitudeLlamaIndexHandler, createAmplitudeLlamaIndexHandler } from "./integrations/llamaindex.js";
30
+ import { AmplitudeTracingProcessor } from "./integrations/openai-agents.js";
31
+ import { AmplitudeToolLoop } from "./integrations/anthropic-tools.js";
32
+ import { AmplitudeCrewAIHooks } from "./integrations/crewai.js";
33
+ import { inferProviderFromModel } from "./utils/providers.js";
34
+ import { calculateCost, getGenaiPriceLookupCandidates, inferProvider, stripProviderPrefix } from "./utils/costs.js";
35
+ import { countMessageTokens, countTokens, estimateTokens } from "./utils/tokens.js";
36
+ import { TIER_FAST, TIER_REASONING, TIER_STANDARD, inferModelTier } from "./utils/model-tiers.js";
37
+ export { AIConfig, type AIConfigOptions, ANTHROPIC_AVAILABLE, OPENAI_AVAILABLE as AZURE_OPENAI_AVAILABLE, type AiMessageOpts, AmplitudeAI, AmplitudeAIError, type AmplitudeAILike, AmplitudeAIWrapError, AmplitudeAgentExporter, AmplitudeCallbackHandler, type AmplitudeClientLike, AmplitudeCrewAIHooks, type AmplitudeEvent, AmplitudeGenAIExporter, type AmplitudeLike, AmplitudeLlamaIndexHandler, type AmplitudeOrAI, AmplitudeSpanExporter, AmplitudeToolLoop, AmplitudeTracingProcessor, Anthropic, type AnthropicParams, type AnthropicResponse, type Attachment, AzureOpenAI, BEDROCK_AVAILABLE, Bedrock, type BedrockConverseParams, type BedrockConverseResponse, BoundAgent, type ChatCompletionParams, type ChatCompletionResponse, type ChatMessage, ConfigurationError, type ContentBlock, ContentMode, EVENT_AI_RESPONSE, EVENT_EMBEDDING, EVENT_SCORE, EVENT_SESSION_END, EVENT_SESSION_ENRICHMENT, EVENT_SPAN, EVENT_TOOL_CALL, EVENT_USER_MESSAGE, type EmbeddingOpts, EvidenceQuote, GEMINI_AVAILABLE, GENERATED_FILES, Gemini, MAX_SERIALIZED_LENGTH, MCP_PROMPTS, MCP_RESOURCES, MCP_SERVER_NAME, MCP_TOOLS, MISTRAL_AVAILABLE, MessageLabel, type MiddlewareOptions, Mistral, type MistralChatParams, type MistralChatResponse, MockAmplitudeAI, OPENAI_AVAILABLE, type ObserveWrapped, OpenAI, PROP_ABANDONMENT_TURN, PROP_AGENT_CHAIN, PROP_AGENT_ID, PROP_AGENT_VERSION, PROP_ATTACHMENTS, PROP_ATTACHMENT_COUNT, PROP_ATTACHMENT_TYPES, PROP_CACHE_CREATION_TOKENS, PROP_CACHE_READ_TOKENS, PROP_COMMENT, PROP_COMPONENT_TYPE, PROP_CONTEXT, PROP_COST_USD, PROP_CUSTOMER_ORG_ID, PROP_EDITED_MESSAGE_ID, PROP_EMBEDDING_DIMENSIONS, PROP_ENRICHMENTS, PROP_ENV, PROP_ERROR_MESSAGE, PROP_EVALUATION_SOURCE, PROP_FINISH_REASON, PROP_HAS_ATTACHMENTS, PROP_HAS_REASONING, PROP_IDLE_TIMEOUT_MINUTES, PROP_INPUT_STATE, PROP_INPUT_TOKENS, PROP_INVOCATION_ID, PROP_IS_EDIT, PROP_IS_ERROR, PROP_IS_REGENERATION, PROP_IS_STREAMING, PROP_LATENCY_MS, PROP_LOCALE, PROP_MAX_OUTPUT_TOKENS, PROP_MESSAGE_ID, PROP_MESSAGE_LABELS, PROP_MESSAGE_LABEL_MAP, PROP_MODEL_NAME, PROP_MODEL_TIER, PROP_OUTPUT_STATE, PROP_OUTPUT_TOKENS, PROP_PARENT_AGENT_ID, PROP_PARENT_MESSAGE_ID, PROP_PARENT_SPAN_ID, PROP_PROMPT_ID, PROP_PROVIDER, PROP_QUALITY_SCORE, PROP_REASONING_CONTENT, PROP_REASONING_TOKENS, PROP_REQUEST_COMPLEXITY, PROP_ROOT_AGENT_NAME, PROP_RUNTIME, PROP_SCORE_NAME, PROP_SCORE_VALUE, PROP_SDK_VERSION, PROP_SENTIMENT_SCORE, PROP_SESSION_ID, PROP_SESSION_REPLAY_ID, PROP_SPAN_ID, PROP_SPAN_KIND, PROP_SPAN_NAME, PROP_SYSTEM_PROMPT, PROP_SYSTEM_PROMPT_LENGTH, PROP_TARGET_ID, PROP_TARGET_TYPE, PROP_TASK_FAILURE_REASON, PROP_TASK_FAILURE_TYPE, PROP_TEMPERATURE, PROP_TOOL_CALLS, PROP_TOOL_INPUT, PROP_TOOL_NAME, PROP_TOOL_OUTPUT, PROP_TOOL_SUCCESS, PROP_TOP_P, PROP_TOTAL_ATTACHMENT_SIZE, PROP_TOTAL_TOKENS, PROP_TRACE_ID, PROP_TTFB_MS, PROP_TURN_ID, PROP_WAS_CACHED, PROP_WAS_COPIED, PrivacyConfig, ProviderError, RubricScore, SDK_RUNTIME, SDK_VERSION, type ScoreOpts, Session, SessionContext, type SessionEndOpts, type SessionEnrichmentOpts, SessionEnrichments, type SpanOpts, StreamingAccumulator, TIER_FAST, TIER_REASONING, TIER_STANDARD, TenantHandle, type ToolCallOpts, type ToolCallShape, ToolCallTracker, type ToolWrapped, TopicClassification, type TrackCallOptions, type TrackFn, TrackingError, type UserMessageOpts, ValidationError, WrappedResponses, calculateCost, countMessageTokens, countTokens, createAmplitudeAIMiddleware, createAmplitudeCallback, createAmplitudeLlamaIndexHandler, estimateTokens, extractAnthropicContent, extractAnthropicSystemPrompt, extractBedrockResponse, extractContext, extractGeminiResponse, extractSystemPrompt, getActiveContext, getGenaiPriceLookupCandidates, inferModelTier, inferProvider, inferProviderFromModel, injectContext, observe, patch, patchAnthropic, patchAzureOpenAI, patchBedrock, patchGemini, patchMistral, patchOpenAI, patchedProviders, resolveAmplitude, runWithContext, runWithContextAsync, serializeToJsonString, stripProviderPrefix, tool, trackAiMessage, trackConversation, trackEmbedding, trackScore, trackSessionEnd, trackSessionEnrichment, trackSpan, trackToolCall, trackUserMessage, unpatch, unpatchAnthropic, unpatchAzureOpenAI, unpatchBedrock, unpatchGemini, unpatchMistral, unpatchOpenAI, wrap };
package/dist/index.js ADDED
@@ -0,0 +1,38 @@
1
+ import { AmplitudeAIError, ConfigurationError, ProviderError, TrackingError, ValidationError } from "./exceptions.js";
2
+ import { TIER_FAST, TIER_REASONING, TIER_STANDARD, inferModelTier } from "./utils/model-tiers.js";
3
+ import { EVENT_AI_RESPONSE, EVENT_EMBEDDING, EVENT_SCORE, EVENT_SESSION_END, EVENT_SESSION_ENRICHMENT, EVENT_SPAN, EVENT_TOOL_CALL, EVENT_USER_MESSAGE, MAX_SERIALIZED_LENGTH, PROP_ABANDONMENT_TURN, PROP_AGENT_CHAIN, PROP_AGENT_ID, PROP_AGENT_VERSION, PROP_ATTACHMENTS, PROP_ATTACHMENT_COUNT, PROP_ATTACHMENT_TYPES, PROP_CACHE_CREATION_TOKENS, PROP_CACHE_READ_TOKENS, PROP_COMMENT, PROP_COMPONENT_TYPE, PROP_CONTEXT, PROP_COST_USD, PROP_CUSTOMER_ORG_ID, PROP_EDITED_MESSAGE_ID, PROP_EMBEDDING_DIMENSIONS, PROP_ENRICHMENTS, PROP_ENV, PROP_ERROR_MESSAGE, PROP_EVALUATION_SOURCE, PROP_FINISH_REASON, PROP_HAS_ATTACHMENTS, PROP_HAS_REASONING, PROP_IDLE_TIMEOUT_MINUTES, PROP_INPUT_STATE, PROP_INPUT_TOKENS, PROP_INVOCATION_ID, PROP_IS_EDIT, PROP_IS_ERROR, PROP_IS_REGENERATION, PROP_IS_STREAMING, PROP_LATENCY_MS, PROP_LOCALE, PROP_MAX_OUTPUT_TOKENS, PROP_MESSAGE_ID, PROP_MESSAGE_LABELS, PROP_MESSAGE_LABEL_MAP, PROP_MODEL_NAME, PROP_MODEL_TIER, PROP_OUTPUT_STATE, PROP_OUTPUT_TOKENS, PROP_PARENT_AGENT_ID, PROP_PARENT_MESSAGE_ID, PROP_PARENT_SPAN_ID, PROP_PROMPT_ID, PROP_PROVIDER, PROP_QUALITY_SCORE, PROP_REASONING_CONTENT, PROP_REASONING_TOKENS, PROP_REQUEST_COMPLEXITY, PROP_ROOT_AGENT_NAME, PROP_RUNTIME, PROP_SCORE_NAME, PROP_SCORE_VALUE, PROP_SDK_VERSION, PROP_SENTIMENT_SCORE, PROP_SESSION_ID, PROP_SESSION_REPLAY_ID, PROP_SPAN_ID, PROP_SPAN_KIND, PROP_SPAN_NAME, PROP_SYSTEM_PROMPT, PROP_SYSTEM_PROMPT_LENGTH, PROP_TARGET_ID, PROP_TARGET_TYPE, PROP_TASK_FAILURE_REASON, PROP_TASK_FAILURE_TYPE, PROP_TEMPERATURE, PROP_TOOL_CALLS, PROP_TOOL_INPUT, PROP_TOOL_NAME, PROP_TOOL_OUTPUT, PROP_TOOL_SUCCESS, PROP_TOP_P, PROP_TOTAL_ATTACHMENT_SIZE, PROP_TOTAL_TOKENS, PROP_TRACE_ID, PROP_TTFB_MS, PROP_TURN_ID, PROP_WAS_CACHED, PROP_WAS_COPIED, SDK_RUNTIME, SDK_VERSION } from "./core/constants.js";
4
+ import { PrivacyConfig } from "./core/privacy.js";
5
+ import { serializeToJsonString, trackAiMessage, trackConversation, trackEmbedding, trackScore, trackSessionEnd, trackSessionEnrichment, trackSpan, trackToolCall, trackUserMessage } from "./core/tracking.js";
6
+ import { SessionContext, getActiveContext, runWithContext, runWithContextAsync } from "./context.js";
7
+ import { Session } from "./session.js";
8
+ import { BoundAgent } from "./bound-agent.js";
9
+ import { AIConfig, ContentMode } from "./config.js";
10
+ import { extractContext, injectContext } from "./propagation.js";
11
+ import { inferProviderFromModel } from "./utils/providers.js";
12
+ import { calculateCost, getGenaiPriceLookupCandidates, inferProvider, stripProviderPrefix } from "./utils/costs.js";
13
+ import { StreamingAccumulator } from "./utils/streaming.js";
14
+ import { resolveAmplitude } from "./types.js";
15
+ import { ANTHROPIC_AVAILABLE, Anthropic, extractAnthropicContent, extractAnthropicSystemPrompt } from "./providers/anthropic.js";
16
+ import { BEDROCK_AVAILABLE, Bedrock, extractBedrockResponse } from "./providers/bedrock.js";
17
+ import { GEMINI_AVAILABLE, Gemini, extractGeminiResponse } from "./providers/gemini.js";
18
+ import { MISTRAL_AVAILABLE, Mistral } from "./providers/mistral.js";
19
+ import { OPENAI_AVAILABLE, OpenAI, WrappedResponses, extractSystemPrompt } from "./providers/openai.js";
20
+ import { patch, patchAnthropic, patchAzureOpenAI, patchBedrock, patchGemini, patchMistral, patchOpenAI, patchedProviders, unpatch, unpatchAnthropic, unpatchAzureOpenAI, unpatchBedrock, unpatchGemini, unpatchMistral, unpatchOpenAI } from "./patching.js";
21
+ import { TenantHandle } from "./tenant.js";
22
+ import { AmplitudeAI } from "./client.js";
23
+ import { ToolCallTracker, observe, tool } from "./decorators.js";
24
+ import { EvidenceQuote, MessageLabel, RubricScore, SessionEnrichments, TopicClassification } from "./core/enrichments.js";
25
+ import { MockAmplitudeAI } from "./testing.js";
26
+ import { GENERATED_FILES, MCP_PROMPTS, MCP_RESOURCES, MCP_SERVER_NAME, MCP_TOOLS } from "./mcp/contract.js";
27
+ import { createAmplitudeAIMiddleware } from "./middleware.js";
28
+ import { AzureOpenAI } from "./providers/azure-openai.js";
29
+ import { AmplitudeAIWrapError, wrap } from "./wrappers.js";
30
+ import { AmplitudeCallbackHandler, createAmplitudeCallback } from "./integrations/langchain.js";
31
+ import { AmplitudeAgentExporter, AmplitudeGenAIExporter, AmplitudeSpanExporter } from "./integrations/opentelemetry.js";
32
+ import { AmplitudeLlamaIndexHandler, createAmplitudeLlamaIndexHandler } from "./integrations/llamaindex.js";
33
+ import { AmplitudeTracingProcessor } from "./integrations/openai-agents.js";
34
+ import { AmplitudeToolLoop } from "./integrations/anthropic-tools.js";
35
+ import { AmplitudeCrewAIHooks } from "./integrations/crewai.js";
36
+ import { countMessageTokens, countTokens, estimateTokens } from "./utils/tokens.js";
37
+
38
+ export { AIConfig, ANTHROPIC_AVAILABLE, OPENAI_AVAILABLE as AZURE_OPENAI_AVAILABLE, AmplitudeAI, AmplitudeAIError, AmplitudeAIWrapError, AmplitudeAgentExporter, AmplitudeCallbackHandler, AmplitudeCrewAIHooks, AmplitudeGenAIExporter, AmplitudeLlamaIndexHandler, AmplitudeSpanExporter, AmplitudeToolLoop, AmplitudeTracingProcessor, Anthropic, AzureOpenAI, BEDROCK_AVAILABLE, Bedrock, BoundAgent, ConfigurationError, ContentMode, EVENT_AI_RESPONSE, EVENT_EMBEDDING, EVENT_SCORE, EVENT_SESSION_END, EVENT_SESSION_ENRICHMENT, EVENT_SPAN, EVENT_TOOL_CALL, EVENT_USER_MESSAGE, EvidenceQuote, GEMINI_AVAILABLE, GENERATED_FILES, Gemini, MAX_SERIALIZED_LENGTH, MCP_PROMPTS, MCP_RESOURCES, MCP_SERVER_NAME, MCP_TOOLS, MISTRAL_AVAILABLE, MessageLabel, Mistral, MockAmplitudeAI, OPENAI_AVAILABLE, OpenAI, PROP_ABANDONMENT_TURN, PROP_AGENT_CHAIN, PROP_AGENT_ID, PROP_AGENT_VERSION, PROP_ATTACHMENTS, PROP_ATTACHMENT_COUNT, PROP_ATTACHMENT_TYPES, PROP_CACHE_CREATION_TOKENS, PROP_CACHE_READ_TOKENS, PROP_COMMENT, PROP_COMPONENT_TYPE, PROP_CONTEXT, PROP_COST_USD, PROP_CUSTOMER_ORG_ID, PROP_EDITED_MESSAGE_ID, PROP_EMBEDDING_DIMENSIONS, PROP_ENRICHMENTS, PROP_ENV, PROP_ERROR_MESSAGE, PROP_EVALUATION_SOURCE, PROP_FINISH_REASON, PROP_HAS_ATTACHMENTS, PROP_HAS_REASONING, PROP_IDLE_TIMEOUT_MINUTES, PROP_INPUT_STATE, PROP_INPUT_TOKENS, PROP_INVOCATION_ID, PROP_IS_EDIT, PROP_IS_ERROR, PROP_IS_REGENERATION, PROP_IS_STREAMING, PROP_LATENCY_MS, PROP_LOCALE, PROP_MAX_OUTPUT_TOKENS, PROP_MESSAGE_ID, PROP_MESSAGE_LABELS, PROP_MESSAGE_LABEL_MAP, PROP_MODEL_NAME, PROP_MODEL_TIER, PROP_OUTPUT_STATE, PROP_OUTPUT_TOKENS, PROP_PARENT_AGENT_ID, PROP_PARENT_MESSAGE_ID, PROP_PARENT_SPAN_ID, PROP_PROMPT_ID, PROP_PROVIDER, PROP_QUALITY_SCORE, PROP_REASONING_CONTENT, PROP_REASONING_TOKENS, PROP_REQUEST_COMPLEXITY, PROP_ROOT_AGENT_NAME, PROP_RUNTIME, PROP_SCORE_NAME, PROP_SCORE_VALUE, PROP_SDK_VERSION, PROP_SENTIMENT_SCORE, PROP_SESSION_ID, PROP_SESSION_REPLAY_ID, PROP_SPAN_ID, PROP_SPAN_KIND, PROP_SPAN_NAME, PROP_SYSTEM_PROMPT, PROP_SYSTEM_PROMPT_LENGTH, PROP_TARGET_ID, PROP_TARGET_TYPE, PROP_TASK_FAILURE_REASON, PROP_TASK_FAILURE_TYPE, PROP_TEMPERATURE, PROP_TOOL_CALLS, PROP_TOOL_INPUT, PROP_TOOL_NAME, PROP_TOOL_OUTPUT, PROP_TOOL_SUCCESS, PROP_TOP_P, PROP_TOTAL_ATTACHMENT_SIZE, PROP_TOTAL_TOKENS, PROP_TRACE_ID, PROP_TTFB_MS, PROP_TURN_ID, PROP_WAS_CACHED, PROP_WAS_COPIED, PrivacyConfig, ProviderError, RubricScore, SDK_RUNTIME, SDK_VERSION, Session, SessionContext, SessionEnrichments, StreamingAccumulator, TIER_FAST, TIER_REASONING, TIER_STANDARD, TenantHandle, ToolCallTracker, TopicClassification, TrackingError, ValidationError, WrappedResponses, calculateCost, countMessageTokens, countTokens, createAmplitudeAIMiddleware, createAmplitudeCallback, createAmplitudeLlamaIndexHandler, estimateTokens, extractAnthropicContent, extractAnthropicSystemPrompt, extractBedrockResponse, extractContext, extractGeminiResponse, extractSystemPrompt, getActiveContext, getGenaiPriceLookupCandidates, inferModelTier, inferProvider, inferProviderFromModel, injectContext, observe, patch, patchAnthropic, patchAzureOpenAI, patchBedrock, patchGemini, patchMistral, patchOpenAI, patchedProviders, resolveAmplitude, runWithContext, runWithContextAsync, serializeToJsonString, stripProviderPrefix, tool, trackAiMessage, trackConversation, trackEmbedding, trackScore, trackSessionEnd, trackSessionEnrichment, trackSpan, trackToolCall, trackUserMessage, unpatch, unpatchAnthropic, unpatchAzureOpenAI, unpatchBedrock, unpatchGemini, unpatchMistral, unpatchOpenAI, wrap };