@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,485 @@
1
+ import { getLogger as getLogger$1 } from "../../../logger.js";
2
+ import runDbClient_default from "../../../data/db/runDbClient.js";
3
+ import { AGENT_EXECUTION_MAX_CONSECUTIVE_ERRORS } from "../constants/execution-limits/index.js";
4
+ import { tracer } from "../utils/tracer.js";
5
+ import { registerStreamHelper, unregisterStreamHelper } from "../utils/stream-registry.js";
6
+ import { agentSessionManager } from "../services/AgentSession.js";
7
+ import { resolveModelConfig } from "../utils/model-resolver.js";
8
+ import { agentInitializingOp, completionOp, errorOp } from "../utils/agent-operations.js";
9
+ import { A2AClient } from "../a2a/client.js";
10
+ import { flushBatchProcessor } from "../../../instrumentation.js";
11
+ import { triggerConversationEvaluation } from "../../evals/services/conversationEvaluation.js";
12
+ import { extractTransferData, isTransferTask } from "../a2a/types.js";
13
+ import { executeTransfer } from "../a2a/transfer.js";
14
+ import { BufferingStreamHelper } from "../utils/stream-helpers.js";
15
+ import { AGENT_EXECUTION_TRANSFER_COUNT_DEFAULT, createMessage, createTask, generateId, getActiveAgentForConversation, getTask, setSpanWithError, updateTask } from "@inkeep/agents-core";
16
+
17
+ //#region src/domains/run/handlers/executionHandler.ts
18
+ const logger = getLogger$1("ExecutionHandler");
19
+ var ExecutionHandler = class {
20
+ MAX_ERRORS = AGENT_EXECUTION_MAX_CONSECUTIVE_ERRORS;
21
+ /**
22
+ * performs exeuction loop
23
+ *
24
+ * Do up to limit of MAX_ITERATIONS
25
+ *
26
+ * 1. lookup active agent for thread
27
+ * 2. Send A2A message to selected agent
28
+ * 3. Parse A2A message response
29
+ * 4. Handle transfer messages (if any)
30
+ * 5. Handle completion messages (if any)
31
+ * 6. If no valid response or transfer, return error
32
+ * @param params
33
+ * @returns
34
+ */
35
+ async execute(params) {
36
+ const { executionContext, conversationId, userMessage, messageParts, initialAgentId, requestId, sseHelper, emitOperations, forwardedHeaders } = params;
37
+ const { tenantId, projectId, project, agentId, apiKey, baseUrl, resolvedRef } = executionContext;
38
+ registerStreamHelper(requestId, sseHelper);
39
+ agentSessionManager.createSession(requestId, executionContext, conversationId);
40
+ if (emitOperations) agentSessionManager.enableEmitOperations(requestId);
41
+ logger.info({
42
+ sessionId: requestId,
43
+ agentId,
44
+ conversationId,
45
+ emitOperations
46
+ }, "Created AgentSession for message execution");
47
+ const agent = project.agents[agentId];
48
+ try {
49
+ if (agent?.statusUpdates && agent.statusUpdates.enabled !== false) try {
50
+ if (agent?.defaultSubAgentId) {
51
+ const resolvedModels = await resolveModelConfig(executionContext, agent.subAgents[agent.defaultSubAgentId]);
52
+ agentSessionManager.initializeStatusUpdates(requestId, agent.statusUpdates, resolvedModels.summarizer, resolvedModels.base);
53
+ } else agentSessionManager.initializeStatusUpdates(requestId, agent.statusUpdates, agent.models?.summarizer);
54
+ } catch (modelError) {
55
+ logger.warn({
56
+ error: modelError instanceof Error ? modelError.message : "Unknown error",
57
+ agentId
58
+ }, "Failed to resolve models for status updates, using agent-level config");
59
+ agentSessionManager.initializeStatusUpdates(requestId, agent.statusUpdates, agent.models?.summarizer);
60
+ }
61
+ } catch (error) {
62
+ logger.error({
63
+ error: error instanceof Error ? error.message : "Unknown error",
64
+ stack: error instanceof Error ? error.stack : void 0
65
+ }, "❌ Failed to initialize status updates, continuing without them");
66
+ }
67
+ let currentAgentId = initialAgentId;
68
+ let iterations = 0;
69
+ let errorCount = 0;
70
+ let task = null;
71
+ let fromSubAgentId;
72
+ try {
73
+ await sseHelper.writeOperation(agentInitializingOp(requestId, agentId));
74
+ const taskId = `task_${conversationId}-${requestId}`;
75
+ logger.info({
76
+ taskId,
77
+ currentAgentId,
78
+ conversationId,
79
+ requestId
80
+ }, "Attempting to create or reuse existing task");
81
+ try {
82
+ task = await createTask(runDbClient_default)({
83
+ id: taskId,
84
+ tenantId,
85
+ projectId,
86
+ agentId,
87
+ subAgentId: currentAgentId,
88
+ contextId: conversationId,
89
+ status: "pending",
90
+ ref: resolvedRef,
91
+ metadata: {
92
+ conversation_id: conversationId,
93
+ message_id: requestId,
94
+ stream_request_id: requestId,
95
+ created_at: (/* @__PURE__ */ new Date()).toISOString(),
96
+ updated_at: (/* @__PURE__ */ new Date()).toISOString(),
97
+ root_sub_agent_id: initialAgentId,
98
+ sub_agent_id: currentAgentId
99
+ }
100
+ });
101
+ logger.info({
102
+ taskId,
103
+ createdTaskMetadata: Array.isArray(task) ? task[0]?.metadata : task?.metadata
104
+ }, "Task created with metadata");
105
+ } catch (error) {
106
+ if (error?.cause?.code === "23505") {
107
+ logger.info({
108
+ taskId,
109
+ error: error.message
110
+ }, "Task already exists, fetching existing task");
111
+ const existingTask = await getTask(runDbClient_default)({ id: taskId });
112
+ if (existingTask) {
113
+ task = existingTask;
114
+ logger.info({
115
+ taskId,
116
+ existingTask
117
+ }, "Successfully reused existing task from race condition");
118
+ } else {
119
+ logger.error({
120
+ taskId,
121
+ error
122
+ }, "Task constraint failed but task not found");
123
+ throw error;
124
+ }
125
+ } else {
126
+ logger.error({
127
+ taskId,
128
+ error
129
+ }, "Failed to create task due to non-constraint error");
130
+ throw error;
131
+ }
132
+ }
133
+ logger.debug({
134
+ timestamp: /* @__PURE__ */ new Date(),
135
+ executionType: "create_initial_task",
136
+ conversationId,
137
+ agentId,
138
+ requestId,
139
+ currentAgentId,
140
+ taskId: Array.isArray(task) ? task[0]?.id : task?.id,
141
+ userMessage: userMessage.substring(0, 100)
142
+ }, "ExecutionHandler: Initial task created");
143
+ if (Array.isArray(task)) task = task[0];
144
+ let currentMessage = userMessage;
145
+ const maxTransfers = agent?.stopWhen?.transferCountIs ?? AGENT_EXECUTION_TRANSFER_COUNT_DEFAULT;
146
+ while (iterations < maxTransfers) {
147
+ iterations++;
148
+ logger.info({
149
+ iterations,
150
+ currentAgentId,
151
+ agentId,
152
+ conversationId,
153
+ fromSubAgentId
154
+ }, `Execution loop iteration ${iterations} with agent ${currentAgentId}, transfer from: ${fromSubAgentId || "none"}`);
155
+ const activeAgent = await getActiveAgentForConversation(runDbClient_default)({
156
+ scopes: {
157
+ tenantId,
158
+ projectId
159
+ },
160
+ conversationId
161
+ });
162
+ logger.info({ activeAgent }, "activeAgent");
163
+ if (activeAgent && activeAgent.activeSubAgentId !== currentAgentId) {
164
+ currentAgentId = activeAgent.activeSubAgentId;
165
+ logger.info({ currentAgentId }, `Updated current agent to: ${currentAgentId}`);
166
+ }
167
+ const a2aClient = new A2AClient(`${baseUrl}/run/agents`, { headers: {
168
+ Authorization: `Bearer ${apiKey}`,
169
+ "x-inkeep-tenant-id": tenantId,
170
+ "x-inkeep-project-id": projectId,
171
+ "x-inkeep-agent-id": agentId,
172
+ "x-inkeep-sub-agent-id": currentAgentId,
173
+ ...forwardedHeaders || {}
174
+ } });
175
+ let messageResponse = null;
176
+ const messageMetadata = {
177
+ stream_request_id: requestId,
178
+ forwardedHeaders
179
+ };
180
+ if (fromSubAgentId) messageMetadata.fromSubAgentId = fromSubAgentId;
181
+ const partsToSend = iterations === 1 && messageParts && messageParts.length > 0 ? messageParts : [{
182
+ kind: "text",
183
+ text: currentMessage
184
+ }];
185
+ messageResponse = await a2aClient.sendMessage({
186
+ message: {
187
+ role: "user",
188
+ parts: partsToSend,
189
+ messageId: `${requestId}-iter-${iterations}`,
190
+ kind: "message",
191
+ contextId: conversationId,
192
+ metadata: messageMetadata
193
+ },
194
+ configuration: {
195
+ acceptedOutputModes: ["text", "text/plain"],
196
+ blocking: false
197
+ }
198
+ });
199
+ if (!messageResponse?.result) {
200
+ errorCount++;
201
+ logger.error({
202
+ currentAgentId,
203
+ iterations,
204
+ errorCount,
205
+ hasError: !!messageResponse?.error,
206
+ errorDetails: messageResponse?.error,
207
+ fullResponse: messageResponse
208
+ }, `No response from agent ${currentAgentId} on iteration ${iterations} (error ${errorCount}/${this.MAX_ERRORS})`);
209
+ if (errorCount >= this.MAX_ERRORS) {
210
+ const errorMessage$1 = `Maximum error limit (${this.MAX_ERRORS}) reached`;
211
+ logger.error({
212
+ maxErrors: this.MAX_ERRORS,
213
+ errorCount
214
+ }, errorMessage$1);
215
+ await sseHelper.writeOperation(errorOp(errorMessage$1, currentAgentId || "system"));
216
+ if (task) await updateTask(runDbClient_default)({
217
+ taskId: task.id,
218
+ data: {
219
+ status: "failed",
220
+ metadata: {
221
+ ...task.metadata,
222
+ failed_at: (/* @__PURE__ */ new Date()).toISOString(),
223
+ error: errorMessage$1
224
+ }
225
+ }
226
+ });
227
+ await agentSessionManager.endSession(requestId);
228
+ unregisterStreamHelper(requestId);
229
+ return {
230
+ success: false,
231
+ error: errorMessage$1,
232
+ iterations
233
+ };
234
+ }
235
+ continue;
236
+ }
237
+ if (isTransferTask(messageResponse.result)) {
238
+ const transferData = extractTransferData(messageResponse.result);
239
+ if (!transferData) {
240
+ logger.error({ result: messageResponse.result }, "Transfer detected but no transfer data found");
241
+ continue;
242
+ }
243
+ const { targetSubAgentId, fromSubAgentId: transferFromAgent } = transferData;
244
+ const firstArtifact = messageResponse.result.artifacts[0];
245
+ const transferReason = firstArtifact?.parts[1]?.kind === "text" ? firstArtifact.parts[1].text : "Transfer initiated";
246
+ logger.info({
247
+ targetSubAgentId,
248
+ transferReason,
249
+ transferFromAgent
250
+ }, "Transfer response");
251
+ await createMessage(runDbClient_default)({
252
+ id: generateId(),
253
+ tenantId,
254
+ projectId,
255
+ conversationId,
256
+ role: "agent",
257
+ content: {
258
+ text: transferReason,
259
+ parts: [{
260
+ kind: "text",
261
+ text: transferReason
262
+ }]
263
+ },
264
+ visibility: "user-facing",
265
+ messageType: "chat",
266
+ fromSubAgentId: currentAgentId,
267
+ taskId: task.id
268
+ });
269
+ currentMessage = currentMessage + "\n\nPlease continue this conversation seamlessly. The previous response in conversation history was from another internal agent, but you must continue as if YOU made that response. All responses must appear as one unified agent - do not repeat what was already communicated.";
270
+ const { success, targetSubAgentId: newAgentId } = await executeTransfer({
271
+ projectId,
272
+ tenantId,
273
+ threadId: conversationId,
274
+ agentId,
275
+ targetSubAgentId,
276
+ ref: resolvedRef
277
+ });
278
+ if (success) {
279
+ fromSubAgentId = currentAgentId;
280
+ currentAgentId = newAgentId;
281
+ logger.info({
282
+ transferFrom: fromSubAgentId,
283
+ transferTo: currentAgentId,
284
+ reason: transferReason
285
+ }, "Transfer executed, tracking fromSubAgentId for next iteration");
286
+ }
287
+ continue;
288
+ }
289
+ let responseParts = [];
290
+ if (messageResponse.result.streamedContent?.parts) {
291
+ responseParts = messageResponse.result.streamedContent.parts;
292
+ logger.info({ partsCount: responseParts.length }, "Using streamed content for conversation history");
293
+ } else {
294
+ responseParts = messageResponse.result.artifacts?.flatMap((artifact) => artifact.parts || []) || [];
295
+ logger.info({ partsCount: responseParts.length }, "Using artifacts for conversation history (fallback)");
296
+ }
297
+ if (responseParts && responseParts.length > 0) {
298
+ const agentSessionData = agentSessionManager.getSession(requestId);
299
+ if (agentSessionData) {
300
+ const sessionSummary = agentSessionData.getSummary();
301
+ logger.info(sessionSummary, "AgentSession data after completion");
302
+ }
303
+ let textContent = "";
304
+ for (const part of responseParts) if ((part.kind === "text" || part.type === "text") && part.text) textContent += part.text;
305
+ return tracer.startActiveSpan("execution_handler.execute", {}, async (span) => {
306
+ try {
307
+ span.setAttributes({
308
+ "ai.response.content": textContent || "No response content",
309
+ "ai.response.timestamp": (/* @__PURE__ */ new Date()).toISOString(),
310
+ "subAgent.name": agent?.subAgents[currentAgentId]?.name,
311
+ "subAgent.id": currentAgentId
312
+ });
313
+ await createMessage(runDbClient_default)({
314
+ id: generateId(),
315
+ tenantId,
316
+ projectId,
317
+ conversationId,
318
+ role: "agent",
319
+ content: {
320
+ text: textContent || void 0,
321
+ parts: responseParts.map((part) => ({
322
+ type: part.kind === "text" ? "text" : "data",
323
+ text: part.kind === "text" ? part.text : void 0,
324
+ data: part.kind === "data" ? JSON.stringify(part.data) : void 0
325
+ }))
326
+ },
327
+ visibility: "user-facing",
328
+ messageType: "chat",
329
+ fromSubAgentId: currentAgentId,
330
+ taskId: task.id
331
+ });
332
+ const updateTaskStart = Date.now();
333
+ await updateTask(runDbClient_default)({
334
+ taskId: task.id,
335
+ data: {
336
+ status: "completed",
337
+ metadata: {
338
+ ...task.metadata,
339
+ completed_at: /* @__PURE__ */ new Date(),
340
+ response: {
341
+ text: textContent,
342
+ parts: responseParts,
343
+ hasText: !!textContent,
344
+ hasData: responseParts.some((p) => p.kind === "data")
345
+ }
346
+ }
347
+ }
348
+ });
349
+ const updateTaskEnd = Date.now();
350
+ logger.info({ duration: updateTaskEnd - updateTaskStart }, "Completed updateTask operation");
351
+ await sseHelper.writeOperation(completionOp(currentAgentId, iterations));
352
+ await sseHelper.complete();
353
+ logger.info({}, "Ending AgentSession and cleaning up");
354
+ await agentSessionManager.endSession(requestId);
355
+ logger.info({}, "Cleaning up streamHelper");
356
+ unregisterStreamHelper(requestId);
357
+ let response;
358
+ if (sseHelper instanceof BufferingStreamHelper) response = sseHelper.getCapturedResponse().text || "No response content";
359
+ logger.info({}, "ExecutionHandler returning success");
360
+ if (!params.datasetRunId) triggerConversationEvaluation({
361
+ tenantId,
362
+ projectId,
363
+ conversationId,
364
+ resolvedRef
365
+ }).catch((error) => {
366
+ logger.error({
367
+ error,
368
+ conversationId,
369
+ tenantId,
370
+ projectId,
371
+ resolvedRef
372
+ }, "Failed to trigger conversation evaluation (non-blocking)");
373
+ });
374
+ return {
375
+ success: true,
376
+ iterations,
377
+ response
378
+ };
379
+ } catch (error) {
380
+ setSpanWithError(span, error instanceof Error ? error : new Error(String(error)));
381
+ throw error;
382
+ } finally {
383
+ span.end();
384
+ await new Promise((resolve) => setImmediate(resolve));
385
+ await flushBatchProcessor();
386
+ }
387
+ });
388
+ }
389
+ errorCount++;
390
+ logger.warn({
391
+ iterations,
392
+ errorCount
393
+ }, `No valid response or transfer on iteration ${iterations} (error ${errorCount}/${this.MAX_ERRORS})`);
394
+ if (errorCount >= this.MAX_ERRORS) {
395
+ const errorMessage$1 = `Maximum error limit (${this.MAX_ERRORS}) reached`;
396
+ logger.error({
397
+ maxErrors: this.MAX_ERRORS,
398
+ errorCount
399
+ }, errorMessage$1);
400
+ await sseHelper.writeOperation(errorOp(errorMessage$1, currentAgentId || "system"));
401
+ if (task) await updateTask(runDbClient_default)({
402
+ taskId: task.id,
403
+ data: {
404
+ status: "failed",
405
+ metadata: {
406
+ ...task.metadata,
407
+ failed_at: /* @__PURE__ */ new Date(),
408
+ error: errorMessage$1
409
+ }
410
+ }
411
+ });
412
+ await agentSessionManager.endSession(requestId);
413
+ unregisterStreamHelper(requestId);
414
+ if (!params.datasetRunId) triggerConversationEvaluation({
415
+ tenantId,
416
+ projectId,
417
+ conversationId,
418
+ resolvedRef
419
+ }).catch((error) => {
420
+ logger.error({
421
+ error,
422
+ conversationId,
423
+ tenantId,
424
+ projectId
425
+ }, "Failed to trigger conversation evaluation (non-blocking)");
426
+ });
427
+ return {
428
+ success: false,
429
+ error: errorMessage$1,
430
+ iterations
431
+ };
432
+ }
433
+ }
434
+ const errorMessage = `Maximum transfer limit (${maxTransfers}) reached without completion`;
435
+ logger.error({
436
+ maxTransfers,
437
+ iterations
438
+ }, errorMessage);
439
+ await sseHelper.writeOperation(errorOp(errorMessage, currentAgentId || "system"));
440
+ if (task) await updateTask(runDbClient_default)({
441
+ taskId: task.id,
442
+ data: {
443
+ status: "failed",
444
+ metadata: {
445
+ ...task.metadata,
446
+ failed_at: /* @__PURE__ */ new Date(),
447
+ error: errorMessage
448
+ }
449
+ }
450
+ });
451
+ await agentSessionManager.endSession(requestId);
452
+ unregisterStreamHelper(requestId);
453
+ return {
454
+ success: false,
455
+ error: errorMessage,
456
+ iterations
457
+ };
458
+ } catch (error) {
459
+ logger.error({ error }, "Error in execution handler");
460
+ const errorMessage = error instanceof Error ? error.message : "Unknown execution error";
461
+ await sseHelper.writeOperation(errorOp(`Execution error: ${errorMessage}`, currentAgentId || "system"));
462
+ if (task) await updateTask(runDbClient_default)({
463
+ taskId: task.id,
464
+ data: {
465
+ status: "failed",
466
+ metadata: {
467
+ ...task.metadata,
468
+ failed_at: /* @__PURE__ */ new Date(),
469
+ error: errorMessage
470
+ }
471
+ }
472
+ });
473
+ await agentSessionManager.endSession(requestId);
474
+ unregisterStreamHelper(requestId);
475
+ return {
476
+ success: false,
477
+ error: errorMessage,
478
+ iterations
479
+ };
480
+ }
481
+ }
482
+ };
483
+
484
+ //#endregion
485
+ export { ExecutionHandler };
@@ -0,0 +1,13 @@
1
+ import { AppVariables } from "../../types/app.js";
2
+ import "../../types/index.js";
3
+ import { OpenAPIHono } from "@hono/zod-openapi";
4
+
5
+ //#region src/domains/run/index.d.ts
6
+ declare function createRunRoutes(): OpenAPIHono<{
7
+ Variables: AppVariables;
8
+ }, {}, "/">;
9
+ declare const runRoutes: OpenAPIHono<{
10
+ Variables: AppVariables;
11
+ }, {}, "/">;
12
+ //#endregion
13
+ export { createRunRoutes, runRoutes };
@@ -0,0 +1,21 @@
1
+ import agents_default from "./routes/agents.js";
2
+ import chat_default from "./routes/chat.js";
3
+ import chatDataStream_default from "./routes/chatDataStream.js";
4
+ import mcp_default from "./routes/mcp.js";
5
+ import webhooks_default from "./routes/webhooks.js";
6
+ import { OpenAPIHono } from "@hono/zod-openapi";
7
+
8
+ //#region src/domains/run/index.ts
9
+ function createRunRoutes() {
10
+ const app = new OpenAPIHono();
11
+ app.route("/v1/chat", chat_default);
12
+ app.route("/api", chatDataStream_default);
13
+ app.route("/v1/mcp", mcp_default);
14
+ app.route("/agents", agents_default);
15
+ app.route("/", webhooks_default);
16
+ return app;
17
+ }
18
+ const runRoutes = createRunRoutes();
19
+
20
+ //#endregion
21
+ export { createRunRoutes, runRoutes };
@@ -0,0 +1,13 @@
1
+ import { OpenAPIHono } from "@hono/zod-openapi";
2
+ import { CredentialStoreRegistry, ResolvedRef } from "@inkeep/agents-core";
3
+
4
+ //#region src/domains/run/routes/agents.d.ts
5
+ type AppVariables = {
6
+ credentialStores: CredentialStoreRegistry;
7
+ ref: ResolvedRef;
8
+ };
9
+ declare const app: OpenAPIHono<{
10
+ Variables: AppVariables;
11
+ }, {}, "/">;
12
+ //#endregion
13
+ export { app as default };
@@ -0,0 +1,141 @@
1
+ import { getLogger as getLogger$1 } from "../../../logger.js";
2
+ import { a2aHandler } from "../a2a/handlers.js";
3
+ import { getRegisteredAgent } from "../data/agents.js";
4
+ import { OpenAPIHono, createRoute, z } from "@hono/zod-openapi";
5
+ import { HeadersScopeSchema, createApiError } from "@inkeep/agents-core";
6
+
7
+ //#region src/domains/run/routes/agents.ts
8
+ const app = new OpenAPIHono();
9
+ const logger = getLogger$1("agents");
10
+ app.openapi(createRoute({
11
+ method: "get",
12
+ path: "/.well-known/agent.json",
13
+ request: { headers: HeadersScopeSchema },
14
+ tags: ["a2a"],
15
+ security: [{ bearerAuth: [] }],
16
+ responses: {
17
+ 200: {
18
+ description: "Agent Card for A2A discovery",
19
+ content: { "application/json": { schema: z.object({
20
+ name: z.string(),
21
+ description: z.string().optional(),
22
+ url: z.string(),
23
+ version: z.string(),
24
+ defaultInputModes: z.array(z.string()),
25
+ defaultOutputModes: z.array(z.string()),
26
+ skills: z.array(z.any())
27
+ }) } }
28
+ },
29
+ 404: { description: "Agent not found" }
30
+ }
31
+ }), async (c) => {
32
+ const otelHeaders = {
33
+ traceparent: c.req.header("traceparent"),
34
+ tracestate: c.req.header("tracestate"),
35
+ baggage: c.req.header("baggage")
36
+ };
37
+ logger.info({
38
+ otelHeaders,
39
+ path: c.req.path,
40
+ method: c.req.method
41
+ }, "OpenTelemetry headers: well-known agent.json");
42
+ const executionContext = c.get("executionContext");
43
+ const { tenantId, projectId, agentId, subAgentId } = executionContext;
44
+ logger.info({
45
+ message: "getRegisteredAgent (agent-level)",
46
+ tenantId,
47
+ projectId,
48
+ agentId,
49
+ subAgentId
50
+ }, "agent-level well-known agent.json");
51
+ const agent = await getRegisteredAgent({
52
+ executionContext,
53
+ credentialStoreRegistry: c.get("credentialStores"),
54
+ sandboxConfig: c.get("sandboxConfig")
55
+ });
56
+ logger.info({ agent }, "agent registered: well-known agent.json");
57
+ if (!agent) throw createApiError({
58
+ code: "not_found",
59
+ message: "Agent not found"
60
+ });
61
+ return c.json(agent.agentCard);
62
+ });
63
+ app.post("/a2a", async (c) => {
64
+ const otelHeaders = {
65
+ traceparent: c.req.header("traceparent"),
66
+ tracestate: c.req.header("tracestate"),
67
+ baggage: c.req.header("baggage")
68
+ };
69
+ logger.info({
70
+ otelHeaders,
71
+ path: c.req.path,
72
+ method: c.req.method
73
+ }, "OpenTelemetry headers: a2a");
74
+ const executionContext = c.get("executionContext");
75
+ const { tenantId, projectId, agentId, subAgentId, project } = executionContext;
76
+ if (subAgentId) {
77
+ logger.info({
78
+ message: "a2a (agent-level)",
79
+ tenantId,
80
+ projectId,
81
+ agentId,
82
+ subAgentId
83
+ }, "agent-level a2a endpoint");
84
+ const agent$1 = await getRegisteredAgent({
85
+ executionContext,
86
+ credentialStoreRegistry: c.get("credentialStores"),
87
+ sandboxConfig: c.get("sandboxConfig")
88
+ });
89
+ if (!agent$1) return c.json({
90
+ jsonrpc: "2.0",
91
+ error: {
92
+ code: -32004,
93
+ message: "Agent not found"
94
+ },
95
+ id: null
96
+ }, 404);
97
+ return a2aHandler(c, agent$1);
98
+ }
99
+ logger.info({
100
+ message: "a2a (agent-level)",
101
+ tenantId,
102
+ projectId,
103
+ agentId
104
+ }, "agent-level a2a endpoint");
105
+ const agent = project.agents[agentId];
106
+ if (!agent) return c.json({
107
+ jsonrpc: "2.0",
108
+ error: {
109
+ code: -32004,
110
+ message: "Agent not found"
111
+ },
112
+ id: null
113
+ }, 404);
114
+ if (!agent.defaultSubAgentId) return c.json({
115
+ jsonrpc: "2.0",
116
+ error: {
117
+ code: -32004,
118
+ message: "Agent does not have a default agent configured"
119
+ },
120
+ id: null
121
+ }, 400);
122
+ executionContext.subAgentId = agent.defaultSubAgentId;
123
+ const defaultSubAgent = await getRegisteredAgent({
124
+ executionContext,
125
+ credentialStoreRegistry: c.get("credentialStores"),
126
+ sandboxConfig: c.get("sandboxConfig")
127
+ });
128
+ if (!defaultSubAgent) return c.json({
129
+ jsonrpc: "2.0",
130
+ error: {
131
+ code: -32004,
132
+ message: "Agent not found"
133
+ },
134
+ id: null
135
+ }, 404);
136
+ return a2aHandler(c, defaultSubAgent);
137
+ });
138
+ var agents_default = app;
139
+
140
+ //#endregion
141
+ export { agents_default as default };
@@ -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/chat.d.ts
5
+ type AppVariables = {
6
+ credentialStores: CredentialStoreRegistry;
7
+ executionContext: FullExecutionContext;
8
+ requestBody?: any;
9
+ };
10
+ declare const app: OpenAPIHono<{
11
+ Variables: AppVariables;
12
+ }, {}, "/">;
13
+ //#endregion
14
+ export { app as default };