@inkeep/agents-api 0.0.0-dev-20260121145510

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 (352) hide show
  1. package/LICENSE.md +56 -0
  2. package/SUPPLEMENTAL_TERMS.md +40 -0
  3. package/dist/.well-known/workflow/v1/flow.cjs +46383 -0
  4. package/dist/.well-known/workflow/v1/flow.cjs.debug.json +6 -0
  5. package/dist/.well-known/workflow/v1/manifest.debug.json +55 -0
  6. package/dist/.well-known/workflow/v1/step.cjs +218683 -0
  7. package/dist/.well-known/workflow/v1/step.cjs.debug.json +6 -0
  8. package/dist/.well-known/workflow/v1/webhook.mjs +29 -0
  9. package/dist/createApp.d.ts +10 -0
  10. package/dist/createApp.js +170 -0
  11. package/dist/data/db/index.d.ts +4 -0
  12. package/dist/data/db/index.js +5 -0
  13. package/dist/data/db/manageDbClient.d.ts +6 -0
  14. package/dist/data/db/manageDbClient.js +9 -0
  15. package/dist/data/db/manageDbPool.d.ts +6 -0
  16. package/dist/data/db/manageDbPool.js +9 -0
  17. package/dist/data/db/runDbClient.d.ts +6 -0
  18. package/dist/data/db/runDbClient.js +9 -0
  19. package/dist/domains/evals/index.d.ts +13 -0
  20. package/dist/domains/evals/index.js +13 -0
  21. package/dist/domains/evals/routes/datasetTriggers.d.ts +7 -0
  22. package/dist/domains/evals/routes/datasetTriggers.js +65 -0
  23. package/dist/domains/evals/routes/evaluationTriggers.d.ts +11 -0
  24. package/dist/domains/evals/routes/evaluationTriggers.js +311 -0
  25. package/dist/domains/evals/routes/index.d.ts +7 -0
  26. package/dist/domains/evals/routes/index.js +12 -0
  27. package/dist/domains/evals/scripts/build-workflow.d.ts +1 -0
  28. package/dist/domains/evals/scripts/build-workflow.js +31 -0
  29. package/dist/domains/evals/services/EvaluationService.d.ts +96 -0
  30. package/dist/domains/evals/services/EvaluationService.js +863 -0
  31. package/dist/domains/evals/services/conversationEvaluation.d.ts +15 -0
  32. package/dist/domains/evals/services/conversationEvaluation.js +102 -0
  33. package/dist/domains/evals/services/datasetRun.d.ts +16 -0
  34. package/dist/domains/evals/services/datasetRun.js +43 -0
  35. package/dist/domains/evals/services/evaluationJob.d.ts +17 -0
  36. package/dist/domains/evals/services/evaluationJob.js +65 -0
  37. package/dist/domains/evals/services/startEvaluation.d.ts +19 -0
  38. package/dist/domains/evals/services/startEvaluation.js +18 -0
  39. package/dist/domains/evals/workflow/functions/evaluateConversation.d.ts +31 -0
  40. package/dist/domains/evals/workflow/functions/evaluateConversation.js +135 -0
  41. package/dist/domains/evals/workflow/functions/runDatasetItem.d.ts +39 -0
  42. package/dist/domains/evals/workflow/functions/runDatasetItem.js +205 -0
  43. package/dist/domains/evals/workflow/index.d.ts +4 -0
  44. package/dist/domains/evals/workflow/index.js +5 -0
  45. package/dist/domains/evals/workflow/routes.d.ts +7 -0
  46. package/dist/domains/evals/workflow/routes.js +106 -0
  47. package/dist/domains/evals/workflow/world.d.ts +4 -0
  48. package/dist/domains/evals/workflow/world.js +36 -0
  49. package/dist/domains/index.d.ts +4 -0
  50. package/dist/domains/index.js +5 -0
  51. package/dist/domains/manage/index.d.ts +12 -0
  52. package/dist/domains/manage/index.js +31 -0
  53. package/dist/domains/manage/routes/agent.d.ts +9 -0
  54. package/dist/domains/manage/routes/agent.js +266 -0
  55. package/dist/domains/manage/routes/agentFull.d.ts +9 -0
  56. package/dist/domains/manage/routes/agentFull.js +207 -0
  57. package/dist/domains/manage/routes/agentToolRelations.d.ts +9 -0
  58. package/dist/domains/manage/routes/agentToolRelations.js +289 -0
  59. package/dist/domains/manage/routes/apiKeys.d.ts +9 -0
  60. package/dist/domains/manage/routes/apiKeys.js +217 -0
  61. package/dist/domains/manage/routes/artifactComponents.d.ts +9 -0
  62. package/dist/domains/manage/routes/artifactComponents.js +210 -0
  63. package/dist/domains/manage/routes/branches.d.ts +9 -0
  64. package/dist/domains/manage/routes/branches.js +182 -0
  65. package/dist/domains/manage/routes/cliAuth.d.ts +9 -0
  66. package/dist/domains/manage/routes/cliAuth.js +60 -0
  67. package/dist/domains/manage/routes/contextConfigs.d.ts +9 -0
  68. package/dist/domains/manage/routes/contextConfigs.js +189 -0
  69. package/dist/domains/manage/routes/conversations.d.ts +7 -0
  70. package/dist/domains/manage/routes/conversations.js +59 -0
  71. package/dist/domains/manage/routes/credentialStores.d.ts +9 -0
  72. package/dist/domains/manage/routes/credentialStores.js +86 -0
  73. package/dist/domains/manage/routes/credentials.d.ts +9 -0
  74. package/dist/domains/manage/routes/credentials.js +207 -0
  75. package/dist/domains/manage/routes/dataComponents.d.ts +9 -0
  76. package/dist/domains/manage/routes/dataComponents.js +192 -0
  77. package/dist/domains/manage/routes/evals/datasetItems.d.ts +9 -0
  78. package/dist/domains/manage/routes/evals/datasetItems.js +310 -0
  79. package/dist/domains/manage/routes/evals/datasetRunConfigs.d.ts +9 -0
  80. package/dist/domains/manage/routes/evals/datasetRunConfigs.js +402 -0
  81. package/dist/domains/manage/routes/evals/datasetRuns.d.ts +9 -0
  82. package/dist/domains/manage/routes/evals/datasetRuns.js +256 -0
  83. package/dist/domains/manage/routes/evals/datasets.d.ts +9 -0
  84. package/dist/domains/manage/routes/evals/datasets.js +238 -0
  85. package/dist/domains/manage/routes/evals/evaluationJobConfigEvaluatorRelations.d.ts +9 -0
  86. package/dist/domains/manage/routes/evals/evaluationJobConfigEvaluatorRelations.js +146 -0
  87. package/dist/domains/manage/routes/evals/evaluationJobConfigs.d.ts +9 -0
  88. package/dist/domains/manage/routes/evals/evaluationJobConfigs.js +364 -0
  89. package/dist/domains/manage/routes/evals/evaluationResults.d.ts +7 -0
  90. package/dist/domains/manage/routes/evals/evaluationResults.js +192 -0
  91. package/dist/domains/manage/routes/evals/evaluationRunConfigs.d.ts +9 -0
  92. package/dist/domains/manage/routes/evals/evaluationRunConfigs.js +403 -0
  93. package/dist/domains/manage/routes/evals/evaluationSuiteConfigEvaluatorRelations.d.ts +9 -0
  94. package/dist/domains/manage/routes/evals/evaluationSuiteConfigEvaluatorRelations.js +146 -0
  95. package/dist/domains/manage/routes/evals/evaluationSuiteConfigs.d.ts +9 -0
  96. package/dist/domains/manage/routes/evals/evaluationSuiteConfigs.js +246 -0
  97. package/dist/domains/manage/routes/evals/evaluators.d.ts +9 -0
  98. package/dist/domains/manage/routes/evals/evaluators.js +281 -0
  99. package/dist/domains/manage/routes/evals/index.d.ts +9 -0
  100. package/dist/domains/manage/routes/evals/index.js +26 -0
  101. package/dist/domains/manage/routes/externalAgents.d.ts +9 -0
  102. package/dist/domains/manage/routes/externalAgents.js +199 -0
  103. package/dist/domains/manage/routes/functionTools.d.ts +9 -0
  104. package/dist/domains/manage/routes/functionTools.js +256 -0
  105. package/dist/domains/manage/routes/functions.d.ts +9 -0
  106. package/dist/domains/manage/routes/functions.js +285 -0
  107. package/dist/domains/manage/routes/index.d.ts +7 -0
  108. package/dist/domains/manage/routes/index.js +68 -0
  109. package/dist/domains/manage/routes/invitations.d.ts +9 -0
  110. package/dist/domains/manage/routes/invitations.js +41 -0
  111. package/dist/domains/manage/routes/mcp.d.ts +7 -0
  112. package/dist/domains/manage/routes/mcp.js +45 -0
  113. package/dist/domains/manage/routes/mcpCatalog.d.ts +9 -0
  114. package/dist/domains/manage/routes/mcpCatalog.js +454 -0
  115. package/dist/domains/manage/routes/oauth.d.ts +10 -0
  116. package/dist/domains/manage/routes/oauth.js +327 -0
  117. package/dist/domains/manage/routes/playgroundToken.d.ts +9 -0
  118. package/dist/domains/manage/routes/playgroundToken.js +127 -0
  119. package/dist/domains/manage/routes/projectFull.d.ts +9 -0
  120. package/dist/domains/manage/routes/projectFull.js +304 -0
  121. package/dist/domains/manage/routes/projectMembers.d.ts +9 -0
  122. package/dist/domains/manage/routes/projectMembers.js +201 -0
  123. package/dist/domains/manage/routes/projectPermissions.d.ts +9 -0
  124. package/dist/domains/manage/routes/projectPermissions.js +68 -0
  125. package/dist/domains/manage/routes/projects.d.ts +9 -0
  126. package/dist/domains/manage/routes/projects.js +279 -0
  127. package/dist/domains/manage/routes/ref.d.ts +9 -0
  128. package/dist/domains/manage/routes/ref.js +33 -0
  129. package/dist/domains/manage/routes/signoz.d.ts +10 -0
  130. package/dist/domains/manage/routes/signoz.js +159 -0
  131. package/dist/domains/manage/routes/subAgentArtifactComponents.d.ts +9 -0
  132. package/dist/domains/manage/routes/subAgentArtifactComponents.js +202 -0
  133. package/dist/domains/manage/routes/subAgentDataComponents.d.ts +9 -0
  134. package/dist/domains/manage/routes/subAgentDataComponents.js +201 -0
  135. package/dist/domains/manage/routes/subAgentExternalAgentRelations.d.ts +9 -0
  136. package/dist/domains/manage/routes/subAgentExternalAgentRelations.js +216 -0
  137. package/dist/domains/manage/routes/subAgentFunctionTools.d.ts +9 -0
  138. package/dist/domains/manage/routes/subAgentFunctionTools.js +205 -0
  139. package/dist/domains/manage/routes/subAgentRelations.d.ts +9 -0
  140. package/dist/domains/manage/routes/subAgentRelations.js +263 -0
  141. package/dist/domains/manage/routes/subAgentTeamAgentRelations.d.ts +9 -0
  142. package/dist/domains/manage/routes/subAgentTeamAgentRelations.js +216 -0
  143. package/dist/domains/manage/routes/subAgentToolRelations.d.ts +9 -0
  144. package/dist/domains/manage/routes/subAgentToolRelations.js +289 -0
  145. package/dist/domains/manage/routes/subAgents.d.ts +9 -0
  146. package/dist/domains/manage/routes/subAgents.js +220 -0
  147. package/dist/domains/manage/routes/thirdPartyMCPServers.d.ts +9 -0
  148. package/dist/domains/manage/routes/thirdPartyMCPServers.js +72 -0
  149. package/dist/domains/manage/routes/tools.d.ts +9 -0
  150. package/dist/domains/manage/routes/tools.js +261 -0
  151. package/dist/domains/manage/routes/triggers.d.ts +9 -0
  152. package/dist/domains/manage/routes/triggers.js +455 -0
  153. package/dist/domains/manage/routes/userOrganizations.d.ts +9 -0
  154. package/dist/domains/manage/routes/userOrganizations.js +58 -0
  155. package/dist/domains/run/a2a/client.d.ts +186 -0
  156. package/dist/domains/run/a2a/client.js +524 -0
  157. package/dist/domains/run/a2a/handlers.d.ts +7 -0
  158. package/dist/domains/run/a2a/handlers.js +574 -0
  159. package/dist/domains/run/a2a/transfer.d.ts +27 -0
  160. package/dist/domains/run/a2a/transfer.js +50 -0
  161. package/dist/domains/run/a2a/types.d.ts +75 -0
  162. package/dist/domains/run/a2a/types.js +22 -0
  163. package/dist/domains/run/agents/Agent.d.ts +273 -0
  164. package/dist/domains/run/agents/Agent.js +2104 -0
  165. package/dist/domains/run/agents/ModelFactory.d.ts +63 -0
  166. package/dist/domains/run/agents/ModelFactory.js +194 -0
  167. package/dist/domains/run/agents/SystemPromptBuilder.d.ts +21 -0
  168. package/dist/domains/run/agents/SystemPromptBuilder.js +48 -0
  169. package/dist/domains/run/agents/ToolSessionManager.d.ts +63 -0
  170. package/dist/domains/run/agents/ToolSessionManager.js +146 -0
  171. package/dist/domains/run/agents/generateTaskHandler.d.ts +44 -0
  172. package/dist/domains/run/agents/generateTaskHandler.js +396 -0
  173. package/dist/domains/run/agents/relationTools.d.ts +64 -0
  174. package/dist/domains/run/agents/relationTools.js +365 -0
  175. package/dist/domains/run/agents/types.d.ts +31 -0
  176. package/dist/domains/run/agents/types.js +1 -0
  177. package/dist/domains/run/agents/versions/v1/Phase1Config.d.ts +29 -0
  178. package/dist/domains/run/agents/versions/v1/Phase1Config.js +458 -0
  179. package/dist/domains/run/agents/versions/v1/Phase2Config.d.ts +33 -0
  180. package/dist/domains/run/agents/versions/v1/Phase2Config.js +341 -0
  181. package/dist/domains/run/constants/execution-limits/defaults.d.ts +51 -0
  182. package/dist/domains/run/constants/execution-limits/defaults.js +52 -0
  183. package/dist/domains/run/constants/execution-limits/index.d.ts +6 -0
  184. package/dist/domains/run/constants/execution-limits/index.js +21 -0
  185. package/dist/domains/run/context/ContextFetcher.d.ts +68 -0
  186. package/dist/domains/run/context/ContextFetcher.js +276 -0
  187. package/dist/domains/run/context/ContextResolver.d.ts +56 -0
  188. package/dist/domains/run/context/ContextResolver.js +273 -0
  189. package/dist/domains/run/context/context.d.ts +19 -0
  190. package/dist/domains/run/context/context.js +108 -0
  191. package/dist/domains/run/context/contextCache.d.ts +56 -0
  192. package/dist/domains/run/context/contextCache.js +174 -0
  193. package/dist/domains/run/context/index.d.ts +6 -0
  194. package/dist/domains/run/context/index.js +7 -0
  195. package/dist/domains/run/context/validation.d.ts +39 -0
  196. package/dist/domains/run/context/validation.js +255 -0
  197. package/dist/domains/run/data/agent.d.ts +7 -0
  198. package/dist/domains/run/data/agent.js +67 -0
  199. package/dist/domains/run/data/agents.d.ts +34 -0
  200. package/dist/domains/run/data/agents.js +131 -0
  201. package/dist/domains/run/data/conversations.d.ts +129 -0
  202. package/dist/domains/run/data/conversations.js +517 -0
  203. package/dist/domains/run/handlers/executionHandler.d.ts +44 -0
  204. package/dist/domains/run/handlers/executionHandler.js +485 -0
  205. package/dist/domains/run/index.d.ts +13 -0
  206. package/dist/domains/run/index.js +21 -0
  207. package/dist/domains/run/routes/agents.d.ts +13 -0
  208. package/dist/domains/run/routes/agents.js +141 -0
  209. package/dist/domains/run/routes/chat.d.ts +14 -0
  210. package/dist/domains/run/routes/chat.js +300 -0
  211. package/dist/domains/run/routes/chatDataStream.d.ts +14 -0
  212. package/dist/domains/run/routes/chatDataStream.js +381 -0
  213. package/dist/domains/run/routes/mcp.d.ts +14 -0
  214. package/dist/domains/run/routes/mcp.js +483 -0
  215. package/dist/domains/run/routes/webhooks.d.ts +15 -0
  216. package/dist/domains/run/routes/webhooks.js +416 -0
  217. package/dist/domains/run/services/AgentSession.d.ts +354 -0
  218. package/dist/domains/run/services/AgentSession.js +1203 -0
  219. package/dist/domains/run/services/ArtifactParser.d.ts +105 -0
  220. package/dist/domains/run/services/ArtifactParser.js +338 -0
  221. package/dist/domains/run/services/ArtifactService.d.ts +122 -0
  222. package/dist/domains/run/services/ArtifactService.js +629 -0
  223. package/dist/domains/run/services/BaseCompressor.d.ts +183 -0
  224. package/dist/domains/run/services/BaseCompressor.js +500 -0
  225. package/dist/domains/run/services/ConversationCompressor.d.ts +32 -0
  226. package/dist/domains/run/services/ConversationCompressor.js +91 -0
  227. package/dist/domains/run/services/IncrementalStreamParser.d.ts +98 -0
  228. package/dist/domains/run/services/IncrementalStreamParser.js +327 -0
  229. package/dist/domains/run/services/MidGenerationCompressor.d.ts +63 -0
  230. package/dist/domains/run/services/MidGenerationCompressor.js +104 -0
  231. package/dist/domains/run/services/PendingToolApprovalManager.d.ts +62 -0
  232. package/dist/domains/run/services/PendingToolApprovalManager.js +133 -0
  233. package/dist/domains/run/services/ResponseFormatter.d.ts +39 -0
  234. package/dist/domains/run/services/ResponseFormatter.js +152 -0
  235. package/dist/domains/run/services/evaluationRunConfigMatcher.d.ts +4 -0
  236. package/dist/domains/run/services/evaluationRunConfigMatcher.js +7 -0
  237. package/dist/domains/run/tools/NativeSandboxExecutor.d.ts +38 -0
  238. package/dist/domains/run/tools/NativeSandboxExecutor.js +432 -0
  239. package/dist/domains/run/tools/SandboxExecutorFactory.d.ts +36 -0
  240. package/dist/domains/run/tools/SandboxExecutorFactory.js +80 -0
  241. package/dist/domains/run/tools/VercelSandboxExecutor.d.ts +71 -0
  242. package/dist/domains/run/tools/VercelSandboxExecutor.js +340 -0
  243. package/dist/domains/run/tools/distill-conversation-history-tool.d.ts +62 -0
  244. package/dist/domains/run/tools/distill-conversation-history-tool.js +206 -0
  245. package/dist/domains/run/tools/distill-conversation-tool.d.ts +41 -0
  246. package/dist/domains/run/tools/distill-conversation-tool.js +141 -0
  247. package/dist/domains/run/tools/sandbox-utils.d.ts +18 -0
  248. package/dist/domains/run/tools/sandbox-utils.js +53 -0
  249. package/dist/domains/run/types/chat.d.ts +27 -0
  250. package/dist/domains/run/types/chat.js +1 -0
  251. package/dist/domains/run/types/executionContext.d.ts +40 -0
  252. package/dist/domains/run/types/executionContext.js +28 -0
  253. package/dist/domains/run/types/xml.d.ts +5 -0
  254. package/dist/domains/run/utils/SchemaProcessor.d.ts +52 -0
  255. package/dist/domains/run/utils/SchemaProcessor.js +182 -0
  256. package/dist/domains/run/utils/agent-operations.d.ts +62 -0
  257. package/dist/domains/run/utils/agent-operations.js +53 -0
  258. package/dist/domains/run/utils/artifact-component-schema.d.ts +42 -0
  259. package/dist/domains/run/utils/artifact-component-schema.js +186 -0
  260. package/dist/domains/run/utils/cleanup.d.ts +21 -0
  261. package/dist/domains/run/utils/cleanup.js +59 -0
  262. package/dist/domains/run/utils/data-component-schema.d.ts +2 -0
  263. package/dist/domains/run/utils/data-component-schema.js +3 -0
  264. package/dist/domains/run/utils/default-status-schemas.d.ts +20 -0
  265. package/dist/domains/run/utils/default-status-schemas.js +24 -0
  266. package/dist/domains/run/utils/json-postprocessor.d.ts +13 -0
  267. package/dist/domains/run/utils/json-postprocessor.js +19 -0
  268. package/dist/domains/run/utils/model-context-utils.d.ts +39 -0
  269. package/dist/domains/run/utils/model-context-utils.js +181 -0
  270. package/dist/domains/run/utils/model-resolver.d.ts +6 -0
  271. package/dist/domains/run/utils/model-resolver.js +24 -0
  272. package/dist/domains/run/utils/project.d.ts +207 -0
  273. package/dist/domains/run/utils/project.js +315 -0
  274. package/dist/domains/run/utils/schema-validation.d.ts +44 -0
  275. package/dist/domains/run/utils/schema-validation.js +97 -0
  276. package/dist/domains/run/utils/stream-helpers.d.ts +193 -0
  277. package/dist/domains/run/utils/stream-helpers.js +510 -0
  278. package/dist/domains/run/utils/stream-registry.d.ts +22 -0
  279. package/dist/domains/run/utils/stream-registry.js +33 -0
  280. package/dist/domains/run/utils/token-estimator.d.ts +23 -0
  281. package/dist/domains/run/utils/token-estimator.js +17 -0
  282. package/dist/domains/run/utils/tracer.d.ts +7 -0
  283. package/dist/domains/run/utils/tracer.js +7 -0
  284. package/dist/env.d.ts +89 -0
  285. package/dist/env.js +69 -0
  286. package/dist/factory.d.ts +1535 -0
  287. package/dist/factory.js +42 -0
  288. package/dist/index.d.ts +1530 -0
  289. package/dist/index.js +59 -0
  290. package/dist/initialization.d.ts +6 -0
  291. package/dist/initialization.js +65 -0
  292. package/dist/instrumentation.d.ts +17 -0
  293. package/dist/instrumentation.js +68 -0
  294. package/dist/logger.d.ts +2 -0
  295. package/dist/logger.js +3 -0
  296. package/dist/middleware/branchScopedDb.d.ts +31 -0
  297. package/dist/middleware/branchScopedDb.js +137 -0
  298. package/dist/middleware/cors.d.ts +36 -0
  299. package/dist/middleware/cors.js +131 -0
  300. package/dist/middleware/errorHandler.d.ts +12 -0
  301. package/dist/middleware/errorHandler.js +88 -0
  302. package/dist/middleware/evalsAuth.d.ts +16 -0
  303. package/dist/middleware/evalsAuth.js +52 -0
  304. package/dist/middleware/index.d.ts +8 -0
  305. package/dist/middleware/index.js +9 -0
  306. package/dist/middleware/manageAuth.d.ts +25 -0
  307. package/dist/middleware/manageAuth.js +80 -0
  308. package/dist/middleware/projectAccess.d.ts +31 -0
  309. package/dist/middleware/projectAccess.js +118 -0
  310. package/dist/middleware/projectConfig.d.ts +25 -0
  311. package/dist/middleware/projectConfig.js +89 -0
  312. package/dist/middleware/ref.d.ts +61 -0
  313. package/dist/middleware/ref.js +239 -0
  314. package/dist/middleware/requirePermission.d.ts +14 -0
  315. package/dist/middleware/requirePermission.js +80 -0
  316. package/dist/middleware/runAuth.d.ts +29 -0
  317. package/dist/middleware/runAuth.js +253 -0
  318. package/dist/middleware/sessionAuth.d.ts +17 -0
  319. package/dist/middleware/sessionAuth.js +58 -0
  320. package/dist/middleware/tenantAccess.d.ts +22 -0
  321. package/dist/middleware/tenantAccess.js +63 -0
  322. package/dist/middleware/tracing.d.ts +7 -0
  323. package/dist/middleware/tracing.js +50 -0
  324. package/dist/openapi.d.ts +7 -0
  325. package/dist/openapi.js +156 -0
  326. package/dist/ssoHelpers.d.ts +20 -0
  327. package/dist/ssoHelpers.js +51 -0
  328. package/dist/templates/v1/phase1/system-prompt.js +5 -0
  329. package/dist/templates/v1/phase1/thinking-preparation.js +5 -0
  330. package/dist/templates/v1/phase1/tool.js +5 -0
  331. package/dist/templates/v1/phase2/data-component.js +5 -0
  332. package/dist/templates/v1/phase2/data-components.js +5 -0
  333. package/dist/templates/v1/phase2/system-prompt.js +5 -0
  334. package/dist/templates/v1/shared/artifact-retrieval-guidance.js +5 -0
  335. package/dist/templates/v1/shared/artifact.js +5 -0
  336. package/dist/types/app.d.ts +64 -0
  337. package/dist/types/app.js +1 -0
  338. package/dist/types/index.d.ts +2 -0
  339. package/dist/types/index.js +1 -0
  340. package/dist/types/runExecutionContext.d.ts +25 -0
  341. package/dist/types/runExecutionContext.js +28 -0
  342. package/dist/utils/oauthService.d.ts +71 -0
  343. package/dist/utils/oauthService.js +106 -0
  344. package/dist/utils/signozHelpers.d.ts +9 -0
  345. package/dist/utils/signozHelpers.js +33 -0
  346. package/dist/utils/speakeasy.d.ts +93 -0
  347. package/dist/utils/speakeasy.js +44 -0
  348. package/dist/utils/tempApiKeys.d.ts +17 -0
  349. package/dist/utils/tempApiKeys.js +26 -0
  350. package/dist/utils/workflowApiHelpers.d.ts +1 -0
  351. package/dist/utils/workflowApiHelpers.js +1 -0
  352. package/package.json +125 -0
@@ -0,0 +1,14 @@
1
+ import { OpenAPIHono } from "@hono/zod-openapi";
2
+ import { CredentialStoreRegistry, FullExecutionContext } from "@inkeep/agents-core";
3
+
4
+ //#region src/domains/run/routes/mcp.d.ts
5
+ type AppVariables = {
6
+ credentialStores: CredentialStoreRegistry;
7
+ requestBody?: any;
8
+ executionContext: FullExecutionContext;
9
+ };
10
+ declare const app: OpenAPIHono<{
11
+ Variables: AppVariables;
12
+ }, {}, "/">;
13
+ //#endregion
14
+ export { app as default };
@@ -0,0 +1,483 @@
1
+ import { getLogger as getLogger$1 } from "../../../logger.js";
2
+ import runDbClient_default from "../../../data/db/runDbClient.js";
3
+ import { contextValidationMiddleware } from "../context/validation.js";
4
+ import { handleContextResolution } from "../context/context.js";
5
+ import "../context/index.js";
6
+ import { createMCPStreamHelper } from "../utils/stream-helpers.js";
7
+ import { ExecutionHandler } from "../handlers/executionHandler.js";
8
+ import { OpenAPIHono, createRoute, z } from "@hono/zod-openapi";
9
+ import { HeadersScopeSchema, createMessage, createOrGetConversation, generateId, getConversation, getConversationId, updateConversation } from "@inkeep/agents-core";
10
+ import { context, propagation, trace } from "@opentelemetry/api";
11
+ import { McpServer } from "@modelcontextprotocol/sdk/server/mcp.js";
12
+ import { StreamableHTTPServerTransport } from "@modelcontextprotocol/sdk/server/streamableHttp.js";
13
+ import { toFetchResponse, toReqRes } from "fetch-to-node";
14
+
15
+ //#region src/domains/run/routes/mcp.ts
16
+ const logger = getLogger$1("mcp");
17
+ /**
18
+ * Singleton mock response object for spoof initialization
19
+ */
20
+ var MockResponseSingleton = class MockResponseSingleton {
21
+ static instance;
22
+ mockRes;
23
+ constructor() {
24
+ this.mockRes = {
25
+ statusCode: 200,
26
+ headers: {},
27
+ setHeader: function(name, value) {
28
+ this.headers[name] = value;
29
+ },
30
+ getHeaders: function() {
31
+ return this.headers;
32
+ },
33
+ end: () => {},
34
+ write: () => {},
35
+ writeHead: () => {}
36
+ };
37
+ }
38
+ static getInstance() {
39
+ if (!MockResponseSingleton.instance) MockResponseSingleton.instance = new MockResponseSingleton();
40
+ return MockResponseSingleton.instance;
41
+ }
42
+ getMockResponse() {
43
+ this.mockRes.headers = {};
44
+ this.mockRes.statusCode = 200;
45
+ return this.mockRes;
46
+ }
47
+ };
48
+ /**
49
+ * Creates a spoof initialization message with the given protocol version
50
+ * Extracted as a pure function for better testability and reuse
51
+ */
52
+ const createSpoofInitMessage = (mcpProtocolVersion) => ({
53
+ method: "initialize",
54
+ params: {
55
+ protocolVersion: mcpProtocolVersion || "2025-06-18",
56
+ capabilities: {
57
+ tools: true,
58
+ prompts: true,
59
+ resources: false,
60
+ logging: false,
61
+ roots: { listChanged: false }
62
+ },
63
+ clientInfo: {
64
+ name: "inkeep-mcp-server",
65
+ version: "1.0.0"
66
+ }
67
+ },
68
+ jsonrpc: "2.0",
69
+ id: 0
70
+ });
71
+ /**
72
+ * Spoofs an initialization message to set the transport's initialized flag
73
+ * This is necessary when recreating transports for existing sessions because the transport expects to have received an initialization message from the client.
74
+ */
75
+ const spoofTransportInitialization = async (transport, req, sessionId, mcpProtocolVersion) => {
76
+ logger.info({ sessionId }, "Spoofing initialization message to set transport state");
77
+ const spoofInitMessage = createSpoofInitMessage(mcpProtocolVersion);
78
+ const mockRes = MockResponseSingleton.getInstance().getMockResponse();
79
+ try {
80
+ await transport.handleRequest(req, mockRes, spoofInitMessage);
81
+ logger.info({ sessionId }, "Successfully spoofed initialization");
82
+ } catch (spoofError) {
83
+ logger.warn({
84
+ sessionId,
85
+ error: spoofError
86
+ }, "Spoof initialization failed, continuing anyway");
87
+ }
88
+ };
89
+ const validateSession = async (req, res, body, tenantId, projectId, agentId) => {
90
+ const sessionId = req.headers["mcp-session-id"];
91
+ logger.info({ sessionId }, "Received MCP session ID");
92
+ if (!sessionId) {
93
+ logger.info({ body }, "Missing session ID");
94
+ res.writeHead(400).end(JSON.stringify({
95
+ jsonrpc: "2.0",
96
+ error: {
97
+ code: -32602,
98
+ message: "Bad Request: Mcp-Session-Id header is required"
99
+ },
100
+ id: null
101
+ }));
102
+ return false;
103
+ }
104
+ if (Array.isArray(sessionId)) {
105
+ res.writeHead(400).end(JSON.stringify({
106
+ jsonrpc: "2.0",
107
+ error: {
108
+ code: -32e3,
109
+ message: "Bad Request: Mcp-Session-Id header must be a single value"
110
+ },
111
+ id: null
112
+ }));
113
+ return false;
114
+ }
115
+ const conversation = await getConversation(runDbClient_default)({
116
+ scopes: {
117
+ tenantId,
118
+ projectId
119
+ },
120
+ conversationId: sessionId
121
+ });
122
+ logger.info({
123
+ sessionId,
124
+ conversationFound: !!conversation,
125
+ sessionType: conversation?.metadata?.sessionData?.sessionType,
126
+ storedAgentId: conversation?.metadata?.sessionData?.agentId,
127
+ requestAgentId: agentId
128
+ }, "Conversation lookup result");
129
+ if (!conversation || conversation.metadata?.sessionData?.sessionType !== "mcp" || conversation.metadata?.sessionData?.agentId !== agentId) {
130
+ logger.info({
131
+ sessionId,
132
+ conversationId: conversation?.id
133
+ }, "MCP session not found or invalid");
134
+ res.writeHead(404).end(JSON.stringify({
135
+ jsonrpc: "2.0",
136
+ error: {
137
+ code: -32001,
138
+ message: "Session not found"
139
+ },
140
+ id: null
141
+ }));
142
+ return false;
143
+ }
144
+ return conversation;
145
+ };
146
+ /**
147
+ * Sets up tracing attributes for the active span
148
+ */
149
+ const setupTracing = (conversationId, tenantId, agentId) => {
150
+ const activeSpan = trace.getActiveSpan();
151
+ if (activeSpan) activeSpan.setAttributes({
152
+ "conversation.id": conversationId,
153
+ "tenant.id": tenantId,
154
+ "agent.id": agentId
155
+ });
156
+ };
157
+ /**
158
+ * Processes and stores the user message
159
+ */
160
+ const processUserMessage = async (tenantId, projectId, conversationId, query) => {
161
+ const messageSpan = trace.getActiveSpan();
162
+ if (messageSpan) messageSpan.setAttributes({
163
+ "message.content": query,
164
+ "message.timestamp": Date.now()
165
+ });
166
+ await createMessage(runDbClient_default)({
167
+ id: generateId(),
168
+ tenantId,
169
+ projectId,
170
+ conversationId,
171
+ role: "user",
172
+ content: { text: query },
173
+ visibility: "user-facing",
174
+ messageType: "chat"
175
+ });
176
+ };
177
+ /**
178
+ * Executes the agent query and returns the result
179
+ */
180
+ const executeAgentQuery = async (executionContext, conversationId, query, defaultSubAgentId) => {
181
+ const requestId = `mcp-${Date.now()}`;
182
+ const mcpStreamHelper = createMCPStreamHelper();
183
+ const result = await new ExecutionHandler().execute({
184
+ executionContext,
185
+ conversationId,
186
+ userMessage: query,
187
+ initialAgentId: defaultSubAgentId,
188
+ requestId,
189
+ sseHelper: mcpStreamHelper
190
+ });
191
+ logger.info({ result }, `Execution completed: ${result.success ? "success" : "failed"} after ${result.iterations} iterations`);
192
+ if (!result.success) return {
193
+ content: [{
194
+ type: "text",
195
+ text: result.error || `Sorry, I was unable to process your request at this time. Please try again.`
196
+ }],
197
+ isError: true
198
+ };
199
+ return { content: [{
200
+ type: "text",
201
+ text: result.response || "No response generated"
202
+ }] };
203
+ };
204
+ /**
205
+ * Creates and configures an MCP server for the given context
206
+ */
207
+ const getServer = async (headers$1, executionContext, conversationId, credentialStores) => {
208
+ const { tenantId, projectId, agentId } = executionContext;
209
+ setupTracing(conversationId, tenantId, agentId);
210
+ const agent = executionContext.project.agents[agentId];
211
+ if (!agent) throw new Error("Agent not found");
212
+ const server = new McpServer({
213
+ name: "inkeep-chat-api-server",
214
+ version: "1.0.0"
215
+ }, { capabilities: { logging: {} } });
216
+ server.tool("send-query-to-agent", `Send a query to the ${agent.name} agent. The agent has the following description: ${agent.description}`, { query: z.string().describe("The query to send to the agent") }, async ({ query }) => {
217
+ try {
218
+ if (!agent.defaultSubAgentId) return {
219
+ content: [{
220
+ type: "text",
221
+ text: `Agent does not have a default agent configured`
222
+ }],
223
+ isError: true
224
+ };
225
+ const defaultSubAgentId = agent.defaultSubAgentId;
226
+ if (!executionContext.project.agents[agentId]?.subAgents[defaultSubAgentId]) return {
227
+ content: [{
228
+ type: "text",
229
+ text: `Agent not found`
230
+ }],
231
+ isError: true
232
+ };
233
+ const resolvedContext = await handleContextResolution({
234
+ executionContext,
235
+ conversationId,
236
+ headers: headers$1,
237
+ credentialStores
238
+ });
239
+ logger.info({
240
+ tenantId,
241
+ projectId,
242
+ agentId,
243
+ conversationId,
244
+ hasContextConfig: !!agent.contextConfigId,
245
+ hasHeaders: !!headers$1,
246
+ hasValidatedContext: !!resolvedContext
247
+ }, "parameters");
248
+ await processUserMessage(tenantId, projectId, conversationId, query);
249
+ return executeAgentQuery(executionContext, conversationId, query, defaultSubAgentId);
250
+ } catch (error) {
251
+ return {
252
+ content: [{
253
+ type: "text",
254
+ text: `Error sending query: ${error instanceof Error ? error.message : "Unknown error"}`
255
+ }],
256
+ isError: true
257
+ };
258
+ }
259
+ });
260
+ return server;
261
+ };
262
+ const app = new OpenAPIHono();
263
+ app.use("/", async (c, next) => {
264
+ if (c.req.method === "POST") return contextValidationMiddleware(c, next);
265
+ return next();
266
+ });
267
+ /**
268
+ * Validates request parameters and returns execution context if valid
269
+ */
270
+ const validateRequestParameters = (c) => {
271
+ try {
272
+ const executionContext = c.get("executionContext");
273
+ const { tenantId, projectId, agentId } = executionContext;
274
+ getLogger$1("mcp").debug({
275
+ tenantId,
276
+ projectId,
277
+ agentId
278
+ }, "Extracted MCP entity parameters");
279
+ return {
280
+ valid: true,
281
+ executionContext
282
+ };
283
+ } catch (error) {
284
+ getLogger$1("chat").warn({ error: error instanceof Error ? error.message : "Unknown error" }, "Failed to get execution context");
285
+ return {
286
+ valid: false,
287
+ response: c.json({
288
+ jsonrpc: "2.0",
289
+ error: {
290
+ code: -32602,
291
+ message: "API key authentication required"
292
+ },
293
+ id: null
294
+ }, { status: 401 })
295
+ };
296
+ }
297
+ };
298
+ /**
299
+ * Creates a new MCP session and handles initialization
300
+ */
301
+ const handleInitializationRequest = async (body, executionContext, validatedContext, req, res, c, credentialStores) => {
302
+ const { tenantId, projectId, agentId, resolvedRef, project } = executionContext;
303
+ logger.info({ body }, "Received initialization request");
304
+ const sessionId = getConversationId();
305
+ const activeSpan = trace.getActiveSpan();
306
+ if (activeSpan) activeSpan.setAttributes({
307
+ "conversation.id": sessionId,
308
+ "tenant.id": tenantId,
309
+ "agent.id": agentId,
310
+ "project.id": projectId
311
+ });
312
+ let currentBag = propagation.getBaggage(context.active());
313
+ if (!currentBag) currentBag = propagation.createBaggage();
314
+ currentBag = currentBag.setEntry("conversation.id", { value: sessionId });
315
+ const ctxWithBaggage = propagation.setBaggage(context.active(), currentBag);
316
+ return await context.with(ctxWithBaggage, async () => {
317
+ const agent = project.agents[agentId];
318
+ if (!agent) return c.json({
319
+ jsonrpc: "2.0",
320
+ error: {
321
+ code: -32001,
322
+ message: "Agent not found"
323
+ },
324
+ id: body.id || null
325
+ }, { status: 404 });
326
+ if (!agent.defaultSubAgentId) return c.json({
327
+ jsonrpc: "2.0",
328
+ error: {
329
+ code: -32001,
330
+ message: "Agent does not have a default agent configured"
331
+ },
332
+ id: body.id || null
333
+ }, { status: 400 });
334
+ const activeSubAgentId = agent.defaultSubAgentId;
335
+ const conversation = await createOrGetConversation(runDbClient_default)({
336
+ id: sessionId,
337
+ tenantId,
338
+ projectId,
339
+ activeSubAgentId,
340
+ agentId,
341
+ ref: resolvedRef,
342
+ metadata: { sessionData: {
343
+ agentId,
344
+ sessionType: "mcp",
345
+ mcpProtocolVersion: c.req.header("mcp-protocol-version"),
346
+ initialized: false
347
+ } }
348
+ });
349
+ logger.info({
350
+ sessionId,
351
+ conversationId: conversation.id
352
+ }, "Created MCP session as conversation");
353
+ const transport = new StreamableHTTPServerTransport({ sessionIdGenerator: () => sessionId });
354
+ await (await getServer(validatedContext, executionContext, sessionId, credentialStores)).connect(transport);
355
+ logger.info({ sessionId }, "Server connected for initialization");
356
+ res.setHeader("Mcp-Session-Id", sessionId);
357
+ logger.info({
358
+ sessionId,
359
+ bodyMethod: body?.method,
360
+ bodyId: body?.id
361
+ }, "About to handle initialization request");
362
+ await transport.handleRequest(req, res, body);
363
+ logger.info({ sessionId }, "Successfully handled initialization request");
364
+ return toFetchResponse(res);
365
+ });
366
+ };
367
+ /**
368
+ * Handles requests for existing MCP sessions
369
+ */
370
+ const handleExistingSessionRequest = async (body, executionContext, validatedContext, req, res, credentialStores) => {
371
+ const { tenantId, projectId, agentId } = executionContext;
372
+ const conversation = await validateSession(req, res, body, tenantId, projectId, agentId);
373
+ if (!conversation) return toFetchResponse(res);
374
+ const sessionId = conversation.id;
375
+ await updateConversation(runDbClient_default)({
376
+ scopes: {
377
+ tenantId,
378
+ projectId
379
+ },
380
+ conversationId: sessionId,
381
+ data: {}
382
+ });
383
+ const transport = new StreamableHTTPServerTransport({ sessionIdGenerator: () => sessionId });
384
+ await (await getServer(validatedContext, executionContext, sessionId, credentialStores)).connect(transport);
385
+ await spoofTransportInitialization(transport, req, sessionId, conversation.metadata?.session_data?.mcpProtocolVersion);
386
+ logger.info({ sessionId }, "Server connected and transport initialized");
387
+ logger.info({
388
+ sessionId,
389
+ bodyKeys: Object.keys(body || {}),
390
+ bodyMethod: body?.method,
391
+ bodyId: body?.id,
392
+ requestHeaders: Object.fromEntries(Object.entries(req.headers || {}).filter(([k]) => k.startsWith("mcp-")))
393
+ }, "About to handle MCP request with existing session");
394
+ try {
395
+ await transport.handleRequest(req, res, body);
396
+ logger.info({ sessionId }, "Successfully handled MCP request");
397
+ } catch (transportError) {
398
+ logger.error({
399
+ sessionId,
400
+ error: transportError,
401
+ errorMessage: transportError instanceof Error ? transportError.message : "Unknown error"
402
+ }, "Transport handleRequest failed");
403
+ throw transportError;
404
+ }
405
+ return toFetchResponse(res);
406
+ };
407
+ /**
408
+ * Creates a JSON-RPC error response
409
+ */
410
+ const createErrorResponse = (code, message, id = null) => ({
411
+ jsonrpc: "2.0",
412
+ error: {
413
+ code,
414
+ message
415
+ },
416
+ id
417
+ });
418
+ app.openapi(createRoute({
419
+ method: "post",
420
+ path: "/",
421
+ tags: ["MCP"],
422
+ summary: "MCP Protocol",
423
+ description: "Handles Model Context Protocol (MCP) JSON-RPC requests",
424
+ security: [{ bearerAuth: [] }],
425
+ request: { headers: HeadersScopeSchema },
426
+ responses: {
427
+ 200: { description: "MCP response" },
428
+ 401: { description: "Unauthorized - API key authentication required" },
429
+ 404: { description: "Not Found - Agent not found" },
430
+ 500: { description: "Internal Server Error" }
431
+ }
432
+ }), async (c) => {
433
+ try {
434
+ const paramValidation = validateRequestParameters(c);
435
+ if (!paramValidation.valid) return paramValidation.response;
436
+ const { executionContext } = paramValidation;
437
+ const body = c.get("requestBody") || {};
438
+ logger.info({
439
+ body,
440
+ bodyKeys: Object.keys(body || {})
441
+ }, "Parsed request body");
442
+ const isInitRequest = body.method === "initialize";
443
+ const { req, res } = toReqRes(c.req.raw);
444
+ const validatedContext = c.get("validatedContext") || {};
445
+ const credentialStores = c.get("credentialStores");
446
+ logger.info({ validatedContext }, "Validated context");
447
+ logger.info({ req }, "request");
448
+ if (isInitRequest) return await handleInitializationRequest(body, executionContext, validatedContext, req, res, c, credentialStores);
449
+ return await handleExistingSessionRequest(body, executionContext, validatedContext, req, res, credentialStores);
450
+ } catch (e) {
451
+ logger.error({
452
+ error: e instanceof Error ? e.message : e,
453
+ stack: e instanceof Error ? e.stack : void 0
454
+ }, "MCP request error");
455
+ return c.json(createErrorResponse(-32603, "Internal server error"), { status: 500 });
456
+ }
457
+ });
458
+ app.get("/", async (c) => {
459
+ logger.info({}, "Received GET MCP request");
460
+ return c.json({
461
+ jsonrpc: "2.0",
462
+ error: {
463
+ code: -32e3,
464
+ message: "Method not allowed."
465
+ },
466
+ id: null
467
+ }, { status: 405 });
468
+ });
469
+ app.delete("/", async (c) => {
470
+ logger.info({}, "Received DELETE MCP request");
471
+ return c.json({
472
+ jsonrpc: "2.0",
473
+ error: {
474
+ code: -32001,
475
+ message: "Method Not Allowed"
476
+ },
477
+ id: null
478
+ }, { status: 405 });
479
+ });
480
+ var mcp_default = app;
481
+
482
+ //#endregion
483
+ export { mcp_default as default };
@@ -0,0 +1,15 @@
1
+ import { OpenAPIHono } from "@hono/zod-openapi";
2
+ import { CredentialStoreRegistry, FullExecutionContext, ResolvedRef } from "@inkeep/agents-core";
3
+
4
+ //#region src/domains/run/routes/webhooks.d.ts
5
+ type AppVariables = {
6
+ credentialStores: CredentialStoreRegistry;
7
+ executionContext: FullExecutionContext;
8
+ requestBody?: unknown;
9
+ resolvedRef: ResolvedRef;
10
+ };
11
+ declare const app: OpenAPIHono<{
12
+ Variables: AppVariables;
13
+ }, {}, "/">;
14
+ //#endregion
15
+ export { app as default };