@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,31 @@
1
+ import { createRequire } from "node:module";
2
+
3
+ //#region rolldown:runtime
4
+ var __create = Object.create;
5
+ var __defProp = Object.defineProperty;
6
+ var __getOwnPropDesc = Object.getOwnPropertyDescriptor;
7
+ var __getOwnPropNames = Object.getOwnPropertyNames;
8
+ var __getProtoOf = Object.getPrototypeOf;
9
+ var __hasOwnProp = Object.prototype.hasOwnProperty;
10
+ var __commonJSMin = (cb, mod) => () => (mod || cb((mod = { exports: {} }).exports, mod), mod.exports);
11
+ var __copyProps = (to, from, except, desc) => {
12
+ if (from && typeof from === "object" || typeof from === "function") {
13
+ for (var keys = __getOwnPropNames(from), i = 0, n = keys.length, key; i < n; i++) {
14
+ key = keys[i];
15
+ if (!__hasOwnProp.call(to, key) && key !== except) {
16
+ __defProp(to, key, {
17
+ get: ((k) => from[k]).bind(null, key),
18
+ enumerable: !(desc = __getOwnPropDesc(from, key)) || desc.enumerable
19
+ });
20
+ }
21
+ }
22
+ }
23
+ return to;
24
+ };
25
+ var __toESM = (mod, isNodeMode, target) => (target = mod != null ? __create(__getProtoOf(mod)) : {}, __copyProps(isNodeMode || !mod || !mod.__esModule ? __defProp(target, "default", {
26
+ value: mod,
27
+ enumerable: true
28
+ }) : target, mod));
29
+
30
+ //#endregion
31
+ export { __commonJSMin, __toESM };
@@ -0,0 +1,56 @@
1
+ import { SessionEnrichments } from "./core/enrichments.js";
2
+ import { AmplitudeAI } from "./client.js";
3
+ import { Session } from "./session.js";
4
+
5
+ //#region src/bound-agent.d.ts
6
+
7
+ type UserMessageOpts = Partial<Omit<Parameters<AmplitudeAI['trackUserMessage']>[0], 'content'>>;
8
+ type AiMessageOpts = Partial<Omit<Parameters<AmplitudeAI['trackAiMessage']>[0], 'content' | 'model' | 'provider' | 'latencyMs'>>;
9
+ type ToolCallOpts = Partial<Omit<Parameters<AmplitudeAI['trackToolCall']>[0], 'toolName' | 'latencyMs' | 'success'>>;
10
+ type EmbeddingOpts = Partial<Omit<Parameters<AmplitudeAI['trackEmbedding']>[0], 'model' | 'provider' | 'latencyMs'>>;
11
+ type SpanOpts = Partial<Omit<Parameters<AmplitudeAI['trackSpan']>[0], 'spanName' | 'latencyMs'>>;
12
+ type SessionEndOpts = Partial<Parameters<AmplitudeAI['trackSessionEnd']>[0]>;
13
+ type SessionEnrichmentOpts = Partial<Omit<Parameters<AmplitudeAI['trackSessionEnrichment']>[0], 'enrichments'>>;
14
+ type ScoreOpts = Partial<Omit<Parameters<AmplitudeAI['score']>[0], 'name' | 'value' | 'targetId'>>;
15
+ declare class BoundAgent {
16
+ readonly _ai: AmplitudeAI;
17
+ readonly _defaults: Record<string, unknown>;
18
+ constructor(ai: AmplitudeAI, opts: {
19
+ agentId: string;
20
+ userId?: string | null;
21
+ parentAgentId?: string | null;
22
+ customerOrgId?: string | null;
23
+ agentVersion?: string | null;
24
+ context?: Record<string, unknown> | null;
25
+ env?: string | null;
26
+ sessionId?: string | null;
27
+ traceId?: string | null;
28
+ groups?: Record<string, unknown> | null;
29
+ deviceId?: string | null;
30
+ browserSessionId?: string | null;
31
+ });
32
+ get agentId(): string;
33
+ get ai(): AmplitudeAI;
34
+ child(agentId: string, overrides?: Record<string, unknown>): BoundAgent;
35
+ private _merge;
36
+ trackUserMessage(content: string, opts?: UserMessageOpts): string;
37
+ trackAiMessage(content: string, model: string, provider: string, latencyMs: number, opts?: AiMessageOpts): string;
38
+ trackToolCall(toolName: string, latencyMs: number, success: boolean, opts?: ToolCallOpts): string;
39
+ trackEmbedding(model: string, provider: string, latencyMs: number, opts?: EmbeddingOpts): string;
40
+ trackSpan(spanName: string, latencyMs: number, opts?: SpanOpts): string;
41
+ trackSessionEnd(opts?: SessionEndOpts): void;
42
+ trackSessionEnrichment(enrichments: SessionEnrichments, opts?: SessionEnrichmentOpts): void;
43
+ score(name: string, value: number, targetId: string, opts?: ScoreOpts): void;
44
+ session(opts?: {
45
+ sessionId?: string | null;
46
+ idleTimeoutMinutes?: number | null;
47
+ userId?: string | null;
48
+ deviceId?: string | null;
49
+ browserSessionId?: string | null;
50
+ }): Session;
51
+ flush(): unknown;
52
+ shutdown(): void;
53
+ }
54
+ //#endregion
55
+ export { AiMessageOpts, BoundAgent, EmbeddingOpts, ScoreOpts, SessionEndOpts, SessionEnrichmentOpts, SpanOpts, ToolCallOpts, UserMessageOpts };
56
+ //# sourceMappingURL=bound-agent.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"bound-agent.d.ts","names":[],"sources":["../src/bound-agent.ts"],"sourcesContent":[],"mappings":"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"}
@@ -0,0 +1,155 @@
1
+ import { PROP_SESSION_REPLAY_ID } from "./core/constants.js";
2
+ import { Session } from "./session.js";
3
+
4
+ //#region src/bound-agent.ts
5
+ const CONTEXT_FIELDS = [
6
+ "userId",
7
+ "agentId",
8
+ "parentAgentId",
9
+ "customerOrgId",
10
+ "agentVersion",
11
+ "context",
12
+ "env",
13
+ "sessionId",
14
+ "traceId",
15
+ "groups"
16
+ ];
17
+ var BoundAgent = class BoundAgent {
18
+ _ai;
19
+ _defaults;
20
+ constructor(ai, opts) {
21
+ this._ai = ai;
22
+ this._defaults = {
23
+ userId: opts.userId ?? null,
24
+ agentId: opts.agentId,
25
+ parentAgentId: opts.parentAgentId ?? null,
26
+ customerOrgId: opts.customerOrgId ?? null,
27
+ agentVersion: opts.agentVersion ?? null,
28
+ context: opts.context ?? null,
29
+ env: opts.env ?? null,
30
+ sessionId: opts.sessionId ?? null,
31
+ traceId: opts.traceId ?? null,
32
+ groups: opts.groups ?? null,
33
+ deviceId: opts.deviceId ?? null,
34
+ browserSessionId: opts.browserSessionId ?? null
35
+ };
36
+ }
37
+ get agentId() {
38
+ return String(this._defaults.agentId);
39
+ }
40
+ get ai() {
41
+ return this._ai;
42
+ }
43
+ child(agentId, overrides = {}) {
44
+ const inherited = {
45
+ userId: this._defaults.userId,
46
+ env: this._defaults.env,
47
+ customerOrgId: this._defaults.customerOrgId,
48
+ agentVersion: this._defaults.agentVersion,
49
+ sessionId: this._defaults.sessionId,
50
+ traceId: this._defaults.traceId,
51
+ groups: this._defaults.groups,
52
+ deviceId: this._defaults.deviceId,
53
+ browserSessionId: this._defaults.browserSessionId
54
+ };
55
+ const parentCtx = this._defaults.context;
56
+ const childCtx = overrides.context;
57
+ const overrideEntries = Object.entries(overrides).filter(([k]) => k !== "context");
58
+ if (parentCtx || childCtx) {
59
+ const merged = { ...parentCtx ?? {} };
60
+ if (childCtx) Object.assign(merged, childCtx);
61
+ inherited.context = merged;
62
+ }
63
+ for (const [k, v] of overrideEntries) if (v != null) inherited[k] = v;
64
+ const { parentAgentId: inheritedParentAgentId, ...inheritedWithoutParent } = inherited;
65
+ const explicitParent = inheritedParentAgentId ?? this._defaults.agentId;
66
+ return new BoundAgent(this._ai, {
67
+ agentId,
68
+ parentAgentId: explicitParent,
69
+ ...inheritedWithoutParent
70
+ });
71
+ }
72
+ _merge(kwargs, fields = CONTEXT_FIELDS) {
73
+ const merged = { ...kwargs };
74
+ for (const field of fields) if (merged[field] == null && this._defaults[field] != null) merged[field] = this._defaults[field];
75
+ const deviceId = this._defaults.deviceId;
76
+ const browserSessionId = this._defaults.browserSessionId;
77
+ if (deviceId && browserSessionId) {
78
+ const existingEp = merged.eventProperties;
79
+ const ep = existingEp != null ? { ...existingEp } : {};
80
+ if (!(PROP_SESSION_REPLAY_ID in ep)) {
81
+ ep[PROP_SESSION_REPLAY_ID] = `${deviceId}/${browserSessionId}`;
82
+ merged.eventProperties = ep;
83
+ }
84
+ }
85
+ return merged;
86
+ }
87
+ trackUserMessage(content, opts = {}) {
88
+ return this._ai.trackUserMessage({
89
+ ...this._merge(opts),
90
+ content
91
+ });
92
+ }
93
+ trackAiMessage(content, model, provider, latencyMs, opts = {}) {
94
+ return this._ai.trackAiMessage({
95
+ ...this._merge(opts),
96
+ content,
97
+ model,
98
+ provider,
99
+ latencyMs
100
+ });
101
+ }
102
+ trackToolCall(toolName, latencyMs, success, opts = {}) {
103
+ return this._ai.trackToolCall({
104
+ ...this._merge(opts),
105
+ toolName,
106
+ latencyMs,
107
+ success
108
+ });
109
+ }
110
+ trackEmbedding(model, provider, latencyMs, opts = {}) {
111
+ return this._ai.trackEmbedding({
112
+ ...this._merge(opts),
113
+ model,
114
+ provider,
115
+ latencyMs
116
+ });
117
+ }
118
+ trackSpan(spanName, latencyMs, opts = {}) {
119
+ return this._ai.trackSpan({
120
+ ...this._merge(opts),
121
+ spanName,
122
+ latencyMs
123
+ });
124
+ }
125
+ trackSessionEnd(opts = {}) {
126
+ this._ai.trackSessionEnd(this._merge(opts));
127
+ }
128
+ trackSessionEnrichment(enrichments, opts = {}) {
129
+ this._ai.trackSessionEnrichment({
130
+ ...this._merge(opts),
131
+ enrichments
132
+ });
133
+ }
134
+ score(name, value, targetId, opts = {}) {
135
+ this._ai.score({
136
+ ...this._merge(opts),
137
+ name,
138
+ value,
139
+ targetId
140
+ });
141
+ }
142
+ session(opts = {}) {
143
+ return new Session(this, opts);
144
+ }
145
+ flush() {
146
+ return this._ai.flush();
147
+ }
148
+ shutdown() {
149
+ this._ai.shutdown();
150
+ }
151
+ };
152
+
153
+ //#endregion
154
+ export { BoundAgent };
155
+ //# sourceMappingURL=bound-agent.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"bound-agent.js","names":["inherited: Record<string, unknown>"],"sources":["../src/bound-agent.ts"],"sourcesContent":["/**\n * BoundAgent — agent with pre-bound defaults for tracking context fields.\n *\n * Created via `ai.agent(agentId, opts)`. All tracking calls\n * automatically inherit agentId, userId, env, and other defaults.\n */\n\nimport type { AmplitudeAI } from './client.js';\nimport type { SessionEnrichments } from './core/enrichments.js';\nimport { PROP_SESSION_REPLAY_ID } from './core/tracking.js';\nimport { Session } from './session.js';\n\nexport type UserMessageOpts = Partial<\n Omit<Parameters<AmplitudeAI['trackUserMessage']>[0], 'content'>\n>;\n\nexport type AiMessageOpts = Partial<\n Omit<\n Parameters<AmplitudeAI['trackAiMessage']>[0],\n 'content' | 'model' | 'provider' | 'latencyMs'\n >\n>;\n\nexport type ToolCallOpts = Partial<\n Omit<\n Parameters<AmplitudeAI['trackToolCall']>[0],\n 'toolName' | 'latencyMs' | 'success'\n >\n>;\n\nexport type EmbeddingOpts = Partial<\n Omit<\n Parameters<AmplitudeAI['trackEmbedding']>[0],\n 'model' | 'provider' | 'latencyMs'\n >\n>;\n\nexport type SpanOpts = Partial<\n Omit<Parameters<AmplitudeAI['trackSpan']>[0], 'spanName' | 'latencyMs'>\n>;\n\nexport type SessionEndOpts = Partial<\n Parameters<AmplitudeAI['trackSessionEnd']>[0]\n>;\n\nexport type SessionEnrichmentOpts = Partial<\n Omit<Parameters<AmplitudeAI['trackSessionEnrichment']>[0], 'enrichments'>\n>;\n\nexport type ScoreOpts = Partial<\n Omit<Parameters<AmplitudeAI['score']>[0], 'name' | 'value' | 'targetId'>\n>;\n\nconst CONTEXT_FIELDS = [\n 'userId',\n 'agentId',\n 'parentAgentId',\n 'customerOrgId',\n 'agentVersion',\n 'context',\n 'env',\n 'sessionId',\n 'traceId',\n 'groups',\n] as const;\n\nexport class BoundAgent {\n readonly _ai: AmplitudeAI;\n readonly _defaults: Record<string, unknown>;\n\n constructor(\n ai: AmplitudeAI,\n opts: {\n agentId: string;\n userId?: string | null;\n parentAgentId?: string | null;\n customerOrgId?: string | null;\n agentVersion?: string | null;\n context?: Record<string, unknown> | null;\n env?: string | null;\n sessionId?: string | null;\n traceId?: string | null;\n groups?: Record<string, unknown> | null;\n deviceId?: string | null;\n browserSessionId?: string | null;\n },\n ) {\n this._ai = ai;\n this._defaults = {\n userId: opts.userId ?? null,\n agentId: opts.agentId,\n parentAgentId: opts.parentAgentId ?? null,\n customerOrgId: opts.customerOrgId ?? null,\n agentVersion: opts.agentVersion ?? null,\n context: opts.context ?? null,\n env: opts.env ?? null,\n sessionId: opts.sessionId ?? null,\n traceId: opts.traceId ?? null,\n groups: opts.groups ?? null,\n deviceId: opts.deviceId ?? null,\n browserSessionId: opts.browserSessionId ?? null,\n };\n }\n\n get agentId(): string {\n return String(this._defaults.agentId);\n }\n\n get ai(): AmplitudeAI {\n return this._ai;\n }\n\n child(agentId: string, overrides: Record<string, unknown> = {}): BoundAgent {\n const inherited: Record<string, unknown> = {\n userId: this._defaults.userId,\n env: this._defaults.env,\n customerOrgId: this._defaults.customerOrgId,\n agentVersion: this._defaults.agentVersion,\n sessionId: this._defaults.sessionId,\n traceId: this._defaults.traceId,\n groups: this._defaults.groups,\n deviceId: this._defaults.deviceId,\n browserSessionId: this._defaults.browserSessionId,\n };\n\n const parentCtx = this._defaults.context as Record<string, unknown> | null;\n const childCtx = overrides.context as\n | Record<string, unknown>\n | null\n | undefined;\n const overrideEntries = Object.entries(overrides).filter(\n ([k]) => k !== 'context',\n );\n if (parentCtx || childCtx) {\n const merged = { ...(parentCtx ?? {}) };\n if (childCtx) Object.assign(merged, childCtx);\n inherited.context = merged;\n }\n\n for (const [k, v] of overrideEntries) {\n if (v != null) inherited[k] = v;\n }\n\n const { parentAgentId: inheritedParentAgentId, ...inheritedWithoutParent } =\n inherited;\n const explicitParent =\n (inheritedParentAgentId as string | null) ??\n (this._defaults.agentId as string);\n\n return new BoundAgent(this._ai, {\n agentId,\n parentAgentId: explicitParent,\n ...(inheritedWithoutParent as Record<string, string | null>),\n });\n }\n\n private _merge<T extends Record<string, unknown>>(\n kwargs: T,\n fields: readonly string[] = CONTEXT_FIELDS,\n ): T {\n const merged = { ...kwargs } as Record<string, unknown>;\n for (const field of fields) {\n if (merged[field] == null && this._defaults[field] != null) {\n merged[field] = this._defaults[field];\n }\n }\n const deviceId = this._defaults.deviceId as string | null;\n const browserSessionId = this._defaults.browserSessionId as string | null;\n if (deviceId && browserSessionId) {\n const existingEp = merged.eventProperties as\n | Record<string, unknown>\n | undefined;\n const ep = existingEp != null ? { ...existingEp } : {};\n if (!(PROP_SESSION_REPLAY_ID in ep)) {\n ep[PROP_SESSION_REPLAY_ID] = `${deviceId}/${browserSessionId}`;\n merged.eventProperties = ep;\n }\n }\n return merged as T;\n }\n\n trackUserMessage(content: string, opts: UserMessageOpts = {}): string {\n return this._ai.trackUserMessage({\n ...this._merge(opts),\n content,\n } as Parameters<AmplitudeAI['trackUserMessage']>[0]);\n }\n\n trackAiMessage(\n content: string,\n model: string,\n provider: string,\n latencyMs: number,\n opts: AiMessageOpts = {},\n ): string {\n return this._ai.trackAiMessage({\n ...this._merge(opts),\n content,\n model,\n provider,\n latencyMs,\n } as Parameters<AmplitudeAI['trackAiMessage']>[0]);\n }\n\n trackToolCall(\n toolName: string,\n latencyMs: number,\n success: boolean,\n opts: ToolCallOpts = {},\n ): string {\n return this._ai.trackToolCall({\n ...this._merge(opts),\n toolName,\n latencyMs,\n success,\n } as Parameters<AmplitudeAI['trackToolCall']>[0]);\n }\n\n trackEmbedding(\n model: string,\n provider: string,\n latencyMs: number,\n opts: EmbeddingOpts = {},\n ): string {\n return this._ai.trackEmbedding({\n ...this._merge(opts),\n model,\n provider,\n latencyMs,\n } as Parameters<AmplitudeAI['trackEmbedding']>[0]);\n }\n\n trackSpan(spanName: string, latencyMs: number, opts: SpanOpts = {}): string {\n return this._ai.trackSpan({\n ...this._merge(opts),\n spanName,\n latencyMs,\n } as Parameters<AmplitudeAI['trackSpan']>[0]);\n }\n\n trackSessionEnd(opts: SessionEndOpts = {}): void {\n this._ai.trackSessionEnd(\n this._merge(opts) as Parameters<AmplitudeAI['trackSessionEnd']>[0],\n );\n }\n\n trackSessionEnrichment(\n enrichments: SessionEnrichments,\n opts: SessionEnrichmentOpts = {},\n ): void {\n this._ai.trackSessionEnrichment({\n ...this._merge(opts),\n enrichments,\n } as Parameters<AmplitudeAI['trackSessionEnrichment']>[0]);\n }\n\n score(\n name: string,\n value: number,\n targetId: string,\n opts: ScoreOpts = {},\n ): void {\n this._ai.score({\n ...this._merge(opts),\n name,\n value,\n targetId,\n } as Parameters<AmplitudeAI['score']>[0]);\n }\n\n session(\n opts: {\n sessionId?: string | null;\n idleTimeoutMinutes?: number | null;\n userId?: string | null;\n deviceId?: string | null;\n browserSessionId?: string | null;\n } = {},\n ): Session {\n return new Session(this, opts);\n }\n\n flush(): unknown {\n return this._ai.flush();\n }\n\n shutdown(): void {\n this._ai.shutdown();\n }\n}\n"],"mappings":"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"}
@@ -0,0 +1,17 @@
1
+ //#region src/cli/doctor.d.ts
2
+ type DoctorResult = {
3
+ ok: boolean;
4
+ checks: Array<{
5
+ name: string;
6
+ ok: boolean;
7
+ detail: string;
8
+ fix?: string;
9
+ }>;
10
+ };
11
+ type DoctorOptions = {
12
+ includeMockCheck?: boolean;
13
+ };
14
+ declare const runDoctor: (cwd: string, options?: DoctorOptions) => DoctorResult;
15
+ //#endregion
16
+ export { type DoctorOptions, type DoctorResult, runDoctor };
17
+ //# sourceMappingURL=doctor.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"doctor.d.ts","names":[],"sources":["../../src/cli/doctor.ts"],"sourcesContent":[],"mappings":";KAKK,YAAA;EAAA,EAAA,EAAA,OAAA;EAKA,MAAA,EAHK,KAGL,CAAA;IAgCC,IAAA,EAAA,MAkFL;;;;;;KAlHI,aAAA;;;cAgCC,mCAAmC,kBAAqB"}
@@ -0,0 +1,89 @@
1
+ import { MockAmplitudeAI } from "../testing.js";
2
+ import { PROVIDER_NPM_PACKAGES } from "./providers.js";
3
+ import { existsSync, readFileSync } from "node:fs";
4
+ import { join } from "node:path";
5
+
6
+ //#region src/cli/doctor.ts
7
+ const readPackageJson = (cwd) => {
8
+ const path = join(cwd, "package.json");
9
+ if (!existsSync(path)) return null;
10
+ const raw = readFileSync(path, "utf8");
11
+ return JSON.parse(raw);
12
+ };
13
+ const collectDependencyNames = (packageJson) => {
14
+ const names = /* @__PURE__ */ new Set();
15
+ if (!packageJson) return names;
16
+ for (const field of [
17
+ "dependencies",
18
+ "devDependencies",
19
+ "peerDependencies"
20
+ ]) {
21
+ const value = packageJson[field];
22
+ if (!value || typeof value !== "object") continue;
23
+ for (const name of Object.keys(value)) names.add(name);
24
+ }
25
+ return names;
26
+ };
27
+ const runDoctor = (cwd, options = {}) => {
28
+ const checks = [];
29
+ const hasApiKey = Boolean(process.env.AMPLITUDE_AI_API_KEY);
30
+ checks.push({
31
+ name: "env.AMPLITUDE_AI_API_KEY",
32
+ ok: hasApiKey,
33
+ detail: hasApiKey ? "present" : "missing",
34
+ ...!hasApiKey && { fix: "export AMPLITUDE_AI_API_KEY=your_project_api_key" }
35
+ });
36
+ const packageJson = readPackageJson(cwd);
37
+ checks.push({
38
+ name: "package.json",
39
+ ok: packageJson !== null,
40
+ detail: packageJson ? "found" : "missing",
41
+ ...!packageJson && { fix: "npm init -y && npx amplitude-ai init" }
42
+ });
43
+ const depNames = collectDependencyNames(packageJson);
44
+ const detectedProviders = PROVIDER_NPM_PACKAGES.filter((pkg) => depNames.has(pkg));
45
+ checks.push({
46
+ name: "provider_dependency",
47
+ ok: detectedProviders.length > 0,
48
+ detail: detectedProviders.length > 0 ? `found ${detectedProviders.join(", ")}` : "no known provider package found",
49
+ ...detectedProviders.length === 0 && { fix: "pnpm add openai # or @anthropic-ai/sdk, @google/generative-ai" }
50
+ });
51
+ if (options.includeMockCheck ?? true) try {
52
+ const mock = new MockAmplitudeAI();
53
+ mock.trackUserMessage({
54
+ userId: "doctor-user",
55
+ content: "doctor probe",
56
+ sessionId: "doctor-session"
57
+ });
58
+ const userEvents = mock.getEvents("[Agent] User Message");
59
+ checks.push({
60
+ name: "mock_event_delivery",
61
+ ok: userEvents.length > 0,
62
+ detail: userEvents.length > 0 ? `captured ${userEvents.length} event(s)` : "no events captured",
63
+ ...userEvents.length === 0 && { fix: "Ensure @amplitude/analytics-node is installed: pnpm add @amplitude/analytics-node" }
64
+ });
65
+ const flushed = mock.flush();
66
+ const flushOk = Array.isArray(flushed);
67
+ checks.push({
68
+ name: "mock_flush_path",
69
+ ok: flushOk,
70
+ detail: flushOk ? `flush returned ${flushed.length} item(s)` : "flush did not return an array",
71
+ ...!flushOk && { fix: "Check that AmplitudeAI is initialized correctly and flush() is called before exit" }
72
+ });
73
+ } catch (error) {
74
+ checks.push({
75
+ name: "mock_event_delivery",
76
+ ok: false,
77
+ detail: `mock check failed: ${String(error)}`,
78
+ fix: "Ensure @amplitude/analytics-node is installed: pnpm add @amplitude/analytics-node"
79
+ });
80
+ }
81
+ return {
82
+ ok: checks.every((check) => check.ok),
83
+ checks
84
+ };
85
+ };
86
+
87
+ //#endregion
88
+ export { runDoctor };
89
+ //# sourceMappingURL=doctor.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"doctor.js","names":["checks: DoctorResult['checks']"],"sources":["../../src/cli/doctor.ts"],"sourcesContent":["import { existsSync, readFileSync } from 'node:fs';\nimport { join } from 'node:path';\nimport { MockAmplitudeAI } from '../testing.js';\nimport { PROVIDER_NPM_PACKAGES } from './providers.js';\n\ntype DoctorResult = {\n ok: boolean;\n checks: Array<{ name: string; ok: boolean; detail: string; fix?: string }>;\n};\n\ntype DoctorOptions = {\n includeMockCheck?: boolean;\n};\n\nconst readPackageJson = (cwd: string): Record<string, unknown> | null => {\n const path = join(cwd, 'package.json');\n if (!existsSync(path)) {\n return null;\n }\n const raw = readFileSync(path, 'utf8');\n return JSON.parse(raw) as Record<string, unknown>;\n};\n\nconst collectDependencyNames = (\n packageJson: Record<string, unknown> | null,\n): Set<string> => {\n const names = new Set<string>();\n if (!packageJson) {\n return names;\n }\n for (const field of ['dependencies', 'devDependencies', 'peerDependencies']) {\n const value = packageJson[field];\n if (!value || typeof value !== 'object') {\n continue;\n }\n for (const name of Object.keys(value as Record<string, string>)) {\n names.add(name);\n }\n }\n return names;\n};\n\nconst runDoctor = (cwd: string, options: DoctorOptions = {}): DoctorResult => {\n const checks: DoctorResult['checks'] = [];\n\n const hasApiKey = Boolean(process.env.AMPLITUDE_AI_API_KEY);\n checks.push({\n name: 'env.AMPLITUDE_AI_API_KEY',\n ok: hasApiKey,\n detail: hasApiKey ? 'present' : 'missing',\n ...(!hasApiKey && {\n fix: 'export AMPLITUDE_AI_API_KEY=your_project_api_key',\n }),\n });\n\n const packageJson = readPackageJson(cwd);\n checks.push({\n name: 'package.json',\n ok: packageJson !== null,\n detail: packageJson ? 'found' : 'missing',\n ...(!packageJson && { fix: 'npm init -y && npx amplitude-ai init' }),\n });\n\n const depNames = collectDependencyNames(packageJson);\n const detectedProviders = PROVIDER_NPM_PACKAGES.filter((pkg) =>\n depNames.has(pkg),\n );\n checks.push({\n name: 'provider_dependency',\n ok: detectedProviders.length > 0,\n detail:\n detectedProviders.length > 0\n ? `found ${detectedProviders.join(', ')}`\n : 'no known provider package found',\n ...(detectedProviders.length === 0 && {\n fix: 'pnpm add openai # or @anthropic-ai/sdk, @google/generative-ai',\n }),\n });\n\n if (options.includeMockCheck ?? true) {\n try {\n const mock = new MockAmplitudeAI();\n mock.trackUserMessage({\n userId: 'doctor-user',\n content: 'doctor probe',\n sessionId: 'doctor-session',\n });\n const userEvents = mock.getEvents('[Agent] User Message');\n checks.push({\n name: 'mock_event_delivery',\n ok: userEvents.length > 0,\n detail:\n userEvents.length > 0\n ? `captured ${userEvents.length} event(s)`\n : 'no events captured',\n ...(userEvents.length === 0 && {\n fix: 'Ensure @amplitude/analytics-node is installed: pnpm add @amplitude/analytics-node',\n }),\n });\n\n const flushed = mock.flush();\n const flushOk = Array.isArray(flushed);\n checks.push({\n name: 'mock_flush_path',\n ok: flushOk,\n detail: flushOk\n ? `flush returned ${flushed.length} item(s)`\n : 'flush did not return an array',\n ...(!flushOk && {\n fix: 'Check that AmplitudeAI is initialized correctly and flush() is called before exit',\n }),\n });\n } catch (error) {\n checks.push({\n name: 'mock_event_delivery',\n ok: false,\n detail: `mock check failed: ${String(error)}`,\n fix: 'Ensure @amplitude/analytics-node is installed: pnpm add @amplitude/analytics-node',\n });\n }\n }\n\n const ok = checks.every((check) => check.ok);\n return { ok, checks };\n};\n\nexport { runDoctor, type DoctorResult, type DoctorOptions };\n"],"mappings":";;;;;;AAcA,MAAM,mBAAmB,QAAgD;CACvE,MAAM,OAAO,KAAK,KAAK,eAAe;AACtC,KAAI,CAAC,WAAW,KAAK,CACnB,QAAO;CAET,MAAM,MAAM,aAAa,MAAM,OAAO;AACtC,QAAO,KAAK,MAAM,IAAI;;AAGxB,MAAM,0BACJ,gBACgB;CAChB,MAAM,wBAAQ,IAAI,KAAa;AAC/B,KAAI,CAAC,YACH,QAAO;AAET,MAAK,MAAM,SAAS;EAAC;EAAgB;EAAmB;EAAmB,EAAE;EAC3E,MAAM,QAAQ,YAAY;AAC1B,MAAI,CAAC,SAAS,OAAO,UAAU,SAC7B;AAEF,OAAK,MAAM,QAAQ,OAAO,KAAK,MAAgC,CAC7D,OAAM,IAAI,KAAK;;AAGnB,QAAO;;AAGT,MAAM,aAAa,KAAa,UAAyB,EAAE,KAAmB;CAC5E,MAAMA,SAAiC,EAAE;CAEzC,MAAM,YAAY,QAAQ,QAAQ,IAAI,qBAAqB;AAC3D,QAAO,KAAK;EACV,MAAM;EACN,IAAI;EACJ,QAAQ,YAAY,YAAY;EAChC,GAAI,CAAC,aAAa,EAChB,KAAK,oDACN;EACF,CAAC;CAEF,MAAM,cAAc,gBAAgB,IAAI;AACxC,QAAO,KAAK;EACV,MAAM;EACN,IAAI,gBAAgB;EACpB,QAAQ,cAAc,UAAU;EAChC,GAAI,CAAC,eAAe,EAAE,KAAK,wCAAwC;EACpE,CAAC;CAEF,MAAM,WAAW,uBAAuB,YAAY;CACpD,MAAM,oBAAoB,sBAAsB,QAAQ,QACtD,SAAS,IAAI,IAAI,CAClB;AACD,QAAO,KAAK;EACV,MAAM;EACN,IAAI,kBAAkB,SAAS;EAC/B,QACE,kBAAkB,SAAS,IACvB,SAAS,kBAAkB,KAAK,KAAK,KACrC;EACN,GAAI,kBAAkB,WAAW,KAAK,EACpC,KAAK,kEACN;EACF,CAAC;AAEF,KAAI,QAAQ,oBAAoB,KAC9B,KAAI;EACF,MAAM,OAAO,IAAI,iBAAiB;AAClC,OAAK,iBAAiB;GACpB,QAAQ;GACR,SAAS;GACT,WAAW;GACZ,CAAC;EACF,MAAM,aAAa,KAAK,UAAU,uBAAuB;AACzD,SAAO,KAAK;GACV,MAAM;GACN,IAAI,WAAW,SAAS;GACxB,QACE,WAAW,SAAS,IAChB,YAAY,WAAW,OAAO,aAC9B;GACN,GAAI,WAAW,WAAW,KAAK,EAC7B,KAAK,qFACN;GACF,CAAC;EAEF,MAAM,UAAU,KAAK,OAAO;EAC5B,MAAM,UAAU,MAAM,QAAQ,QAAQ;AACtC,SAAO,KAAK;GACV,MAAM;GACN,IAAI;GACJ,QAAQ,UACJ,kBAAkB,QAAQ,OAAO,YACjC;GACJ,GAAI,CAAC,WAAW,EACd,KAAK,qFACN;GACF,CAAC;UACK,OAAO;AACd,SAAO,KAAK;GACV,MAAM;GACN,IAAI;GACJ,QAAQ,sBAAsB,OAAO,MAAM;GAC3C,KAAK;GACN,CAAC;;AAKN,QAAO;EAAE,IADE,OAAO,OAAO,UAAU,MAAM,GAAG;EAC/B;EAAQ"}
@@ -0,0 +1,14 @@
1
+ //#region src/cli/init.d.ts
2
+ type InitOptions = {
3
+ cwd: string;
4
+ force: boolean;
5
+ dryRun: boolean;
6
+ };
7
+ type InitResult = {
8
+ created: string[];
9
+ skipped: string[];
10
+ };
11
+ declare const runInit: (options: InitOptions) => InitResult;
12
+ //#endregion
13
+ export { type InitOptions, type InitResult, runInit };
14
+ //# sourceMappingURL=init.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"init.d.ts","names":[],"sources":["../../src/cli/init.ts"],"sourcesContent":[],"mappings":";KAGK,WAAA;EAAA,GAAA,EAAA,MAAA;EAMA,KAAA,EAAA,OAAU;EAqBT,MAAA,EAAA,OAmBL;;KAxCI,UAAA;;;;cAqBC,mBAAoB,gBAAc"}
@@ -0,0 +1,40 @@
1
+ import { existsSync, writeFileSync } from "node:fs";
2
+ import { join } from "node:path";
3
+
4
+ //#region src/cli/init.ts
5
+ const INIT_FILES = {
6
+ ".env.example": [
7
+ "AMPLITUDE_AI_API_KEY=your_project_api_key",
8
+ "AMPLITUDE_AI_AUTO_PATCH=true",
9
+ ""
10
+ ].join("\n"),
11
+ "amplitude-ai.setup.ts": [
12
+ "import { AmplitudeAI } from \"@amplitude/ai\";",
13
+ "",
14
+ "export const amplitudeAI = new AmplitudeAI({",
15
+ " apiKey: process.env.AMPLITUDE_AI_API_KEY ?? \"\",",
16
+ "});",
17
+ ""
18
+ ].join("\n")
19
+ };
20
+ const runInit = (options) => {
21
+ const created = [];
22
+ const skipped = [];
23
+ for (const [relativePath, contents] of Object.entries(INIT_FILES)) {
24
+ const absolutePath = join(options.cwd, relativePath);
25
+ if (existsSync(absolutePath) && !options.force) {
26
+ skipped.push(relativePath);
27
+ continue;
28
+ }
29
+ if (!options.dryRun) writeFileSync(absolutePath, contents, "utf8");
30
+ created.push(relativePath);
31
+ }
32
+ return {
33
+ created,
34
+ skipped
35
+ };
36
+ };
37
+
38
+ //#endregion
39
+ export { runInit };
40
+ //# sourceMappingURL=init.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"init.js","names":["INIT_FILES: Record<string, string>","created: string[]","skipped: string[]"],"sources":["../../src/cli/init.ts"],"sourcesContent":["import { existsSync, writeFileSync } from 'node:fs';\nimport { join } from 'node:path';\n\ntype InitOptions = {\n cwd: string;\n force: boolean;\n dryRun: boolean;\n};\n\ntype InitResult = {\n created: string[];\n skipped: string[];\n};\n\nconst INIT_FILES: Record<string, string> = {\n '.env.example': [\n 'AMPLITUDE_AI_API_KEY=your_project_api_key',\n 'AMPLITUDE_AI_AUTO_PATCH=true',\n '',\n ].join('\\n'),\n 'amplitude-ai.setup.ts': [\n 'import { AmplitudeAI } from \"@amplitude/ai\";',\n '',\n 'export const amplitudeAI = new AmplitudeAI({',\n ' apiKey: process.env.AMPLITUDE_AI_API_KEY ?? \"\",',\n '});',\n '',\n ].join('\\n'),\n};\n\nconst runInit = (options: InitOptions): InitResult => {\n const created: string[] = [];\n const skipped: string[] = [];\n\n for (const [relativePath, contents] of Object.entries(INIT_FILES)) {\n const absolutePath = join(options.cwd, relativePath);\n const alreadyExists = existsSync(absolutePath);\n if (alreadyExists && !options.force) {\n skipped.push(relativePath);\n continue;\n }\n\n if (!options.dryRun) {\n writeFileSync(absolutePath, contents, 'utf8');\n }\n created.push(relativePath);\n }\n\n return { created, skipped };\n};\n\nexport { runInit, type InitOptions, type InitResult };\n"],"mappings":";;;;AAcA,MAAMA,aAAqC;CACzC,gBAAgB;EACd;EACA;EACA;EACD,CAAC,KAAK,KAAK;CACZ,yBAAyB;EACvB;EACA;EACA;EACA;EACA;EACA;EACD,CAAC,KAAK,KAAK;CACb;AAED,MAAM,WAAW,YAAqC;CACpD,MAAMC,UAAoB,EAAE;CAC5B,MAAMC,UAAoB,EAAE;AAE5B,MAAK,MAAM,CAAC,cAAc,aAAa,OAAO,QAAQ,WAAW,EAAE;EACjE,MAAM,eAAe,KAAK,QAAQ,KAAK,aAAa;AAEpD,MADsB,WAAW,aAAa,IACzB,CAAC,QAAQ,OAAO;AACnC,WAAQ,KAAK,aAAa;AAC1B;;AAGF,MAAI,CAAC,QAAQ,OACX,eAAc,cAAc,UAAU,OAAO;AAE/C,UAAQ,KAAK,aAAa;;AAG5B,QAAO;EAAE;EAAS;EAAS"}
@@ -0,0 +1,32 @@
1
+ //#region src/cli/providers.d.ts
2
+ /**
3
+ * Single source of truth for provider npm package names.
4
+ * Used by both doctor.ts and status.ts to avoid drift.
5
+ */
6
+ declare const PROVIDER_NPM_PACKAGES: readonly ["openai", "@anthropic-ai/sdk", "@google/generative-ai", "@mistralai/mistralai", "@aws-sdk/client-bedrock-runtime"];
7
+ /**
8
+ * Provider entries with friendly names for status display.
9
+ * azure-openai shares the openai npm package.
10
+ */
11
+ declare const PROVIDER_ENTRIES: readonly [{
12
+ readonly name: "openai";
13
+ readonly npm: "openai";
14
+ }, {
15
+ readonly name: "anthropic";
16
+ readonly npm: "@anthropic-ai/sdk";
17
+ }, {
18
+ readonly name: "gemini";
19
+ readonly npm: "@google/generative-ai";
20
+ }, {
21
+ readonly name: "azure-openai";
22
+ readonly npm: "openai";
23
+ }, {
24
+ readonly name: "bedrock";
25
+ readonly npm: "@aws-sdk/client-bedrock-runtime";
26
+ }, {
27
+ readonly name: "mistral";
28
+ readonly npm: "@mistralai/mistralai";
29
+ }];
30
+ //#endregion
31
+ export { PROVIDER_ENTRIES, PROVIDER_NPM_PACKAGES };
32
+ //# sourceMappingURL=providers.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"providers.d.ts","names":[],"sources":["../../src/cli/providers.ts"],"sourcesContent":[],"mappings":";;AAIA;AAYA;;cAZa;;;;;cAYA"}
@@ -0,0 +1,46 @@
1
+ //#region src/cli/providers.ts
2
+ /**
3
+ * Single source of truth for provider npm package names.
4
+ * Used by both doctor.ts and status.ts to avoid drift.
5
+ */
6
+ const PROVIDER_NPM_PACKAGES = [
7
+ "openai",
8
+ "@anthropic-ai/sdk",
9
+ "@google/generative-ai",
10
+ "@mistralai/mistralai",
11
+ "@aws-sdk/client-bedrock-runtime"
12
+ ];
13
+ /**
14
+ * Provider entries with friendly names for status display.
15
+ * azure-openai shares the openai npm package.
16
+ */
17
+ const PROVIDER_ENTRIES = [
18
+ {
19
+ name: "openai",
20
+ npm: "openai"
21
+ },
22
+ {
23
+ name: "anthropic",
24
+ npm: "@anthropic-ai/sdk"
25
+ },
26
+ {
27
+ name: "gemini",
28
+ npm: "@google/generative-ai"
29
+ },
30
+ {
31
+ name: "azure-openai",
32
+ npm: "openai"
33
+ },
34
+ {
35
+ name: "bedrock",
36
+ npm: "@aws-sdk/client-bedrock-runtime"
37
+ },
38
+ {
39
+ name: "mistral",
40
+ npm: "@mistralai/mistralai"
41
+ }
42
+ ];
43
+
44
+ //#endregion
45
+ export { PROVIDER_ENTRIES, PROVIDER_NPM_PACKAGES };
46
+ //# sourceMappingURL=providers.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"providers.js","names":[],"sources":["../../src/cli/providers.ts"],"sourcesContent":["/**\n * Single source of truth for provider npm package names.\n * Used by both doctor.ts and status.ts to avoid drift.\n */\nexport const PROVIDER_NPM_PACKAGES = [\n 'openai',\n '@anthropic-ai/sdk',\n '@google/generative-ai',\n '@mistralai/mistralai',\n '@aws-sdk/client-bedrock-runtime',\n] as const;\n\n/**\n * Provider entries with friendly names for status display.\n * azure-openai shares the openai npm package.\n */\nexport const PROVIDER_ENTRIES = [\n { name: 'openai', npm: 'openai' },\n { name: 'anthropic', npm: '@anthropic-ai/sdk' },\n { name: 'gemini', npm: '@google/generative-ai' },\n { name: 'azure-openai', npm: 'openai' },\n { name: 'bedrock', npm: '@aws-sdk/client-bedrock-runtime' },\n { name: 'mistral', npm: '@mistralai/mistralai' },\n] as const;\n"],"mappings":";;;;;AAIA,MAAa,wBAAwB;CACnC;CACA;CACA;CACA;CACA;CACD;;;;;AAMD,MAAa,mBAAmB;CAC9B;EAAE,MAAM;EAAU,KAAK;EAAU;CACjC;EAAE,MAAM;EAAa,KAAK;EAAqB;CAC/C;EAAE,MAAM;EAAU,KAAK;EAAyB;CAChD;EAAE,MAAM;EAAgB,KAAK;EAAU;CACvC;EAAE,MAAM;EAAW,KAAK;EAAmC;CAC3D;EAAE,MAAM;EAAW,KAAK;EAAwB;CACjD"}
@@ -0,0 +1,14 @@
1
+ //#region src/cli/status.d.ts
2
+ type StatusResult = {
3
+ version: string;
4
+ providers: Array<{
5
+ name: string;
6
+ installed: boolean;
7
+ }>;
8
+ env: Record<string, boolean>;
9
+ patchActive: boolean;
10
+ };
11
+ declare const runStatus: (cwd: string) => StatusResult;
12
+ //#endregion
13
+ export { type StatusResult, runStatus };
14
+ //# sourceMappingURL=status.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"status.d.ts","names":[],"sources":["../../src/cli/status.ts"],"sourcesContent":[],"mappings":";KAIK,YAAA;EAAA,OAAA,EAAA,MAAY;EAYX,SAAA,EAVO,KAkDZ,CAAA;;;;OAjDM;;;cASD,4BAA2B"}
@@ -0,0 +1,38 @@
1
+ import { PROVIDER_ENTRIES } from "./providers.js";
2
+ import { existsSync, readFileSync } from "node:fs";
3
+ import { join } from "node:path";
4
+
5
+ //#region src/cli/status.ts
6
+ const isPackageInstalled = (cwd, pkg) => {
7
+ return existsSync(join(cwd, "node_modules", ...pkg.split("/")));
8
+ };
9
+ const runStatus = (cwd) => {
10
+ let version = "unknown";
11
+ try {
12
+ const pkgPath = join(cwd, "node_modules", "@amplitude", "ai", "package.json");
13
+ if (existsSync(pkgPath)) version = JSON.parse(readFileSync(pkgPath, "utf8")).version ?? "unknown";
14
+ } catch {}
15
+ const installedCache = /* @__PURE__ */ new Map();
16
+ const providers = PROVIDER_ENTRIES.map(({ name, npm }) => {
17
+ if (!installedCache.has(npm)) installedCache.set(npm, isPackageInstalled(cwd, npm));
18
+ return {
19
+ name,
20
+ installed: installedCache.get(npm) ?? false
21
+ };
22
+ });
23
+ const env = {
24
+ AMPLITUDE_AI_API_KEY: Boolean(process.env.AMPLITUDE_AI_API_KEY),
25
+ AMPLITUDE_AI_CONTENT_MODE: Boolean(process.env.AMPLITUDE_AI_CONTENT_MODE),
26
+ AMPLITUDE_AI_DEBUG: Boolean(process.env.AMPLITUDE_AI_DEBUG)
27
+ };
28
+ return {
29
+ version,
30
+ providers,
31
+ env,
32
+ patchActive: false
33
+ };
34
+ };
35
+
36
+ //#endregion
37
+ export { runStatus };
38
+ //# sourceMappingURL=status.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"status.js","names":["env: Record<string, boolean>"],"sources":["../../src/cli/status.ts"],"sourcesContent":["import { existsSync, readFileSync } from 'node:fs';\nimport { join } from 'node:path';\nimport { PROVIDER_ENTRIES } from './providers.js';\n\ntype StatusResult = {\n version: string;\n providers: Array<{ name: string; installed: boolean }>;\n env: Record<string, boolean>;\n patchActive: boolean;\n};\n\nconst isPackageInstalled = (cwd: string, pkg: string): boolean => {\n const nmPath = join(cwd, 'node_modules', ...pkg.split('/'));\n return existsSync(nmPath);\n};\n\nconst runStatus = (cwd: string): StatusResult => {\n let version = 'unknown';\n try {\n const pkgPath = join(\n cwd,\n 'node_modules',\n '@amplitude',\n 'ai',\n 'package.json',\n );\n if (existsSync(pkgPath)) {\n const pkg = JSON.parse(readFileSync(pkgPath, 'utf8')) as {\n version?: string;\n };\n version = pkg.version ?? 'unknown';\n }\n } catch {\n // fall through\n }\n\n const installedCache = new Map<string, boolean>();\n const providers = PROVIDER_ENTRIES.map(({ name, npm }) => {\n if (!installedCache.has(npm)) {\n installedCache.set(npm, isPackageInstalled(cwd, npm));\n }\n return { name, installed: installedCache.get(npm) ?? false };\n });\n\n const env: Record<string, boolean> = {\n AMPLITUDE_AI_API_KEY: Boolean(process.env.AMPLITUDE_AI_API_KEY),\n AMPLITUDE_AI_CONTENT_MODE: Boolean(process.env.AMPLITUDE_AI_CONTENT_MODE),\n AMPLITUDE_AI_DEBUG: Boolean(process.env.AMPLITUDE_AI_DEBUG),\n };\n\n return {\n version,\n providers,\n env,\n patchActive: false,\n };\n};\n\nexport { runStatus, type StatusResult };\n"],"mappings":";;;;;AAWA,MAAM,sBAAsB,KAAa,QAAyB;AAEhE,QAAO,WADQ,KAAK,KAAK,gBAAgB,GAAG,IAAI,MAAM,IAAI,CAAC,CAClC;;AAG3B,MAAM,aAAa,QAA8B;CAC/C,IAAI,UAAU;AACd,KAAI;EACF,MAAM,UAAU,KACd,KACA,gBACA,cACA,MACA,eACD;AACD,MAAI,WAAW,QAAQ,CAIrB,WAHY,KAAK,MAAM,aAAa,SAAS,OAAO,CAAC,CAGvC,WAAW;SAErB;CAIR,MAAM,iCAAiB,IAAI,KAAsB;CACjD,MAAM,YAAY,iBAAiB,KAAK,EAAE,MAAM,UAAU;AACxD,MAAI,CAAC,eAAe,IAAI,IAAI,CAC1B,gBAAe,IAAI,KAAK,mBAAmB,KAAK,IAAI,CAAC;AAEvD,SAAO;GAAE;GAAM,WAAW,eAAe,IAAI,IAAI,IAAI;GAAO;GAC5D;CAEF,MAAMA,MAA+B;EACnC,sBAAsB,QAAQ,QAAQ,IAAI,qBAAqB;EAC/D,2BAA2B,QAAQ,QAAQ,IAAI,0BAA0B;EACzE,oBAAoB,QAAQ,QAAQ,IAAI,mBAAmB;EAC5D;AAED,QAAO;EACL;EACA;EACA;EACA,aAAa;EACd"}