@frontmcp/sdk 1.0.3 → 1.1.0-beta.1

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 (443) hide show
  1. package/agent/agent.instance.d.ts +5 -7
  2. package/agent/agent.instance.d.ts.map +1 -1
  3. package/agent/agent.scope.d.ts +4 -4
  4. package/agent/flows/call-agent.flow.d.ts +211 -205
  5. package/agent/flows/call-agent.flow.d.ts.map +1 -1
  6. package/agent/hooks/agent.hooks.d.ts +4 -4
  7. package/agent/hooks/agent.hooks.d.ts.map +1 -1
  8. package/agent/index.d.ts +1 -1
  9. package/auth/flows/auth.verify.flow.d.ts +48 -44
  10. package/auth/flows/auth.verify.flow.d.ts.map +1 -1
  11. package/auth/flows/oauth.authorize.flow.d.ts +119 -137
  12. package/auth/flows/oauth.authorize.flow.d.ts.map +1 -1
  13. package/auth/flows/oauth.callback.flow.d.ts +64 -64
  14. package/auth/flows/oauth.callback.flow.d.ts.map +1 -1
  15. package/auth/flows/oauth.provider-callback.flow.d.ts +52 -52
  16. package/auth/flows/oauth.provider-callback.flow.d.ts.map +1 -1
  17. package/auth/flows/oauth.register.flow.d.ts +35 -48
  18. package/auth/flows/oauth.register.flow.d.ts.map +1 -1
  19. package/auth/flows/oauth.token.flow.d.ts +53 -80
  20. package/auth/flows/oauth.token.flow.d.ts.map +1 -1
  21. package/auth/flows/session.verify.flow.d.ts +86 -83
  22. package/auth/flows/session.verify.flow.d.ts.map +1 -1
  23. package/auth/flows/well-known.jwks.flow.d.ts +61 -61
  24. package/auth/flows/well-known.jwks.flow.d.ts.map +1 -1
  25. package/auth/flows/well-known.oauth-authorization-server.flow.d.ts +66 -66
  26. package/auth/flows/well-known.oauth-authorization-server.flow.d.ts.map +1 -1
  27. package/auth/flows/well-known.prm.flow.d.ts +35 -36
  28. package/auth/flows/well-known.prm.flow.d.ts.map +1 -1
  29. package/auth/session/transport-session.manager.d.ts +1 -1
  30. package/auth/session/transport-session.manager.d.ts.map +1 -1
  31. package/auth/session/utils/session-id.utils.d.ts +2 -2
  32. package/auth/session/utils/session-id.utils.d.ts.map +1 -1
  33. package/builtin/authorities/authorities.plugin.d.ts +25 -0
  34. package/builtin/authorities/authorities.plugin.d.ts.map +1 -0
  35. package/builtin/authorities/authorities.plugin.options.d.ts +45 -0
  36. package/builtin/authorities/authorities.plugin.options.d.ts.map +1 -0
  37. package/builtin/authorities/index.d.ts +3 -0
  38. package/builtin/authorities/index.d.ts.map +1 -0
  39. package/builtin/config/config.plugin.d.ts +2 -2
  40. package/builtin/config/config.plugin.d.ts.map +1 -1
  41. package/builtin/config/config.types.d.ts +1 -1
  42. package/builtin/config/config.types.d.ts.map +1 -1
  43. package/builtin/config/index.d.ts +2 -2
  44. package/builtin/config/index.d.ts.map +1 -1
  45. package/builtin/config/providers/config-loader.d.ts +1 -1
  46. package/builtin/config/providers/config-loader.d.ts.map +1 -1
  47. package/builtin/config/providers/config.service.d.ts +2 -2
  48. package/builtin/config/providers/config.service.d.ts.map +1 -1
  49. package/builtin/config/providers/env-loader.d.ts +1 -1
  50. package/builtin/config/providers/env-loader.d.ts.map +1 -1
  51. package/channel/channel-notification.service.d.ts +52 -0
  52. package/channel/channel-notification.service.d.ts.map +1 -0
  53. package/channel/channel-scope.helper.d.ts +37 -0
  54. package/channel/channel-scope.helper.d.ts.map +1 -0
  55. package/channel/channel.events.d.ts +25 -0
  56. package/channel/channel.events.d.ts.map +1 -0
  57. package/channel/channel.instance.d.ts +105 -0
  58. package/channel/channel.instance.d.ts.map +1 -0
  59. package/channel/channel.registry.d.ts +65 -0
  60. package/channel/channel.registry.d.ts.map +1 -0
  61. package/channel/channel.types.d.ts +14 -0
  62. package/channel/channel.types.d.ts.map +1 -0
  63. package/channel/channel.utils.d.ts +19 -0
  64. package/channel/channel.utils.d.ts.map +1 -0
  65. package/channel/flows/list-channels.flow.d.ts +41 -0
  66. package/channel/flows/list-channels.flow.d.ts.map +1 -0
  67. package/channel/flows/send-channel-notification.flow.d.ts +38 -0
  68. package/channel/flows/send-channel-notification.flow.d.ts.map +1 -0
  69. package/channel/index.d.ts +14 -0
  70. package/channel/index.d.ts.map +1 -0
  71. package/channel/reply/channel-reply.tool.d.ts +15 -0
  72. package/channel/reply/channel-reply.tool.d.ts.map +1 -0
  73. package/channel/reply/reply.types.d.ts +14 -0
  74. package/channel/reply/reply.types.d.ts.map +1 -0
  75. package/channel/sources/agent-completion.source.d.ts +29 -0
  76. package/channel/sources/agent-completion.source.d.ts.map +1 -0
  77. package/channel/sources/app-event.source.d.ts +57 -0
  78. package/channel/sources/app-event.source.d.ts.map +1 -0
  79. package/channel/sources/index.d.ts +5 -0
  80. package/channel/sources/index.d.ts.map +1 -0
  81. package/channel/sources/job-completion.source.d.ts +28 -0
  82. package/channel/sources/job-completion.source.d.ts.map +1 -0
  83. package/channel/sources/webhook.source.d.ts +42 -0
  84. package/channel/sources/webhook.source.d.ts.map +1 -0
  85. package/common/common.schema.d.ts +11 -11
  86. package/common/common.schema.d.ts.map +1 -1
  87. package/common/decorators/agent.decorator.d.ts +4 -4
  88. package/common/decorators/agent.decorator.d.ts.map +1 -1
  89. package/common/decorators/channel.decorator.d.ts +59 -0
  90. package/common/decorators/channel.decorator.d.ts.map +1 -0
  91. package/common/decorators/front-mcp.decorator.d.ts +1 -1
  92. package/common/decorators/front-mcp.decorator.d.ts.map +1 -1
  93. package/common/decorators/index.d.ts +1 -0
  94. package/common/decorators/index.d.ts.map +1 -1
  95. package/common/decorators/job.decorator.d.ts +13 -9
  96. package/common/decorators/job.decorator.d.ts.map +1 -1
  97. package/common/decorators/tool.decorator.d.ts +12 -7
  98. package/common/decorators/tool.decorator.d.ts.map +1 -1
  99. package/common/entries/agent.entry.d.ts +6 -6
  100. package/common/entries/agent.entry.d.ts.map +1 -1
  101. package/common/entries/channel.entry.d.ts +58 -0
  102. package/common/entries/channel.entry.d.ts.map +1 -0
  103. package/common/entries/index.d.ts +1 -0
  104. package/common/entries/index.d.ts.map +1 -1
  105. package/common/entries/job.entry.d.ts +7 -7
  106. package/common/entries/job.entry.d.ts.map +1 -1
  107. package/common/entries/scope.entry.d.ts +32 -14
  108. package/common/entries/scope.entry.d.ts.map +1 -1
  109. package/common/entries/tool.entry.d.ts +12 -8
  110. package/common/entries/tool.entry.d.ts.map +1 -1
  111. package/common/flow/flow.utils.d.ts +1 -1
  112. package/common/flow/flow.utils.d.ts.map +1 -1
  113. package/common/interfaces/agent.interface.d.ts +8 -8
  114. package/common/interfaces/agent.interface.d.ts.map +1 -1
  115. package/common/interfaces/channel.interface.d.ts +131 -0
  116. package/common/interfaces/channel.interface.d.ts.map +1 -0
  117. package/common/interfaces/execution-context.interface.d.ts +27 -8
  118. package/common/interfaces/execution-context.interface.d.ts.map +1 -1
  119. package/common/interfaces/flow.interface.d.ts +6 -6
  120. package/common/interfaces/flow.interface.d.ts.map +1 -1
  121. package/common/interfaces/index.d.ts +1 -0
  122. package/common/interfaces/index.d.ts.map +1 -1
  123. package/common/interfaces/internal/flow.utils.d.ts +2 -2
  124. package/common/interfaces/internal/flow.utils.d.ts.map +1 -1
  125. package/common/interfaces/internal/registry.interface.d.ts +3 -1
  126. package/common/interfaces/internal/registry.interface.d.ts.map +1 -1
  127. package/common/interfaces/resource.interface.d.ts +7 -0
  128. package/common/interfaces/resource.interface.d.ts.map +1 -1
  129. package/common/interfaces/server.interface.d.ts +5 -3
  130. package/common/interfaces/server.interface.d.ts.map +1 -1
  131. package/common/interfaces/tool.interface.d.ts +18 -6
  132. package/common/interfaces/tool.interface.d.ts.map +1 -1
  133. package/common/metadata/adapter.metadata.d.ts +5 -6
  134. package/common/metadata/adapter.metadata.d.ts.map +1 -1
  135. package/common/metadata/agent.metadata.d.ts +94 -95
  136. package/common/metadata/agent.metadata.d.ts.map +1 -1
  137. package/common/metadata/app-filter.metadata.d.ts +21 -22
  138. package/common/metadata/app-filter.metadata.d.ts.map +1 -1
  139. package/common/metadata/app.metadata.d.ts +554 -547
  140. package/common/metadata/app.metadata.d.ts.map +1 -1
  141. package/common/metadata/auth-provider.metadata.d.ts +6 -7
  142. package/common/metadata/auth-provider.metadata.d.ts.map +1 -1
  143. package/common/metadata/channel.metadata.d.ts +286 -0
  144. package/common/metadata/channel.metadata.d.ts.map +1 -0
  145. package/common/metadata/flow.metadata.d.ts +14 -14
  146. package/common/metadata/flow.metadata.d.ts.map +1 -1
  147. package/common/metadata/front-mcp.metadata.d.ts +3591 -2715
  148. package/common/metadata/front-mcp.metadata.d.ts.map +1 -1
  149. package/common/metadata/index.d.ts +1 -0
  150. package/common/metadata/index.d.ts.map +1 -1
  151. package/common/metadata/job.metadata.d.ts +26 -27
  152. package/common/metadata/job.metadata.d.ts.map +1 -1
  153. package/common/metadata/logger.metadata.d.ts +5 -6
  154. package/common/metadata/logger.metadata.d.ts.map +1 -1
  155. package/common/metadata/plugin.metadata.d.ts +21 -22
  156. package/common/metadata/plugin.metadata.d.ts.map +1 -1
  157. package/common/metadata/prompt.metadata.d.ts +24 -25
  158. package/common/metadata/prompt.metadata.d.ts.map +1 -1
  159. package/common/metadata/provider.metadata.d.ts +6 -7
  160. package/common/metadata/provider.metadata.d.ts.map +1 -1
  161. package/common/metadata/resource.metadata.d.ts +40 -41
  162. package/common/metadata/resource.metadata.d.ts.map +1 -1
  163. package/common/metadata/skill.metadata.d.ts +57 -57
  164. package/common/metadata/skill.metadata.d.ts.map +1 -1
  165. package/common/metadata/tool.metadata.d.ts +145 -120
  166. package/common/metadata/tool.metadata.d.ts.map +1 -1
  167. package/common/metadata/workflow.metadata.d.ts +43 -44
  168. package/common/metadata/workflow.metadata.d.ts.map +1 -1
  169. package/common/records/channel.record.d.ts +52 -0
  170. package/common/records/channel.record.d.ts.map +1 -0
  171. package/common/records/index.d.ts +1 -0
  172. package/common/records/index.d.ts.map +1 -1
  173. package/common/schemas/annotated-class.schema.d.ts +15 -15
  174. package/common/schemas/annotated-class.schema.d.ts.map +1 -1
  175. package/common/schemas/http-input.schema.d.ts +8 -9
  176. package/common/schemas/http-input.schema.d.ts.map +1 -1
  177. package/common/schemas/http-output.schema.d.ts +500 -496
  178. package/common/schemas/http-output.schema.d.ts.map +1 -1
  179. package/common/schemas/session-header.schema.d.ts +1 -2
  180. package/common/schemas/session-header.schema.d.ts.map +1 -1
  181. package/common/tokens/app.tokens.d.ts.map +1 -1
  182. package/common/tokens/channel.tokens.d.ts +14 -0
  183. package/common/tokens/channel.tokens.d.ts.map +1 -0
  184. package/common/tokens/front-mcp.tokens.d.ts +2 -2
  185. package/common/tokens/front-mcp.tokens.d.ts.map +1 -1
  186. package/common/tokens/index.d.ts +1 -0
  187. package/common/tokens/index.d.ts.map +1 -1
  188. package/common/tokens/tool.tokens.d.ts +1 -0
  189. package/common/tokens/tool.tokens.d.ts.map +1 -1
  190. package/common/types/auth/session.types.d.ts +49 -50
  191. package/common/types/auth/session.types.d.ts.map +1 -1
  192. package/common/types/common.types.d.ts +1 -1
  193. package/common/types/common.types.d.ts.map +1 -1
  194. package/common/types/options/elicitation/schema.d.ts +28 -28
  195. package/common/types/options/elicitation/schema.d.ts.map +1 -1
  196. package/common/types/options/ext-apps/schema.d.ts +20 -20
  197. package/common/types/options/ext-apps/schema.d.ts.map +1 -1
  198. package/common/types/options/ext-apps/typecheck.d.ts.map +1 -1
  199. package/common/types/options/health/schema.d.ts +16 -16
  200. package/common/types/options/health/schema.d.ts.map +1 -1
  201. package/common/types/options/http/index.d.ts +1 -1
  202. package/common/types/options/http/index.d.ts.map +1 -1
  203. package/common/types/options/http/interfaces.d.ts +41 -1
  204. package/common/types/options/http/interfaces.d.ts.map +1 -1
  205. package/common/types/options/http/schema.d.ts +21 -12
  206. package/common/types/options/http/schema.d.ts.map +1 -1
  207. package/common/types/options/http/typecheck.d.ts.map +1 -1
  208. package/common/types/options/logging/schema.d.ts +8 -8
  209. package/common/types/options/logging/schema.d.ts.map +1 -1
  210. package/common/types/options/observability/schema.d.ts +6 -6
  211. package/common/types/options/observability/schema.d.ts.map +1 -1
  212. package/common/types/options/pagination/schema.d.ts +13 -13
  213. package/common/types/options/pagination/schema.d.ts.map +1 -1
  214. package/common/types/options/redis/schema.d.ts +62 -62
  215. package/common/types/options/redis/schema.d.ts.map +1 -1
  216. package/common/types/options/redis/typecheck.d.ts.map +1 -1
  217. package/common/types/options/server-info/schema.d.ts +13 -13
  218. package/common/types/options/server-info/schema.d.ts.map +1 -1
  219. package/common/types/options/session/schema.d.ts +22 -22
  220. package/common/types/options/session/schema.d.ts.map +1 -1
  221. package/common/types/options/skills-http/schema.d.ts +63 -63
  222. package/common/types/options/skills-http/schema.d.ts.map +1 -1
  223. package/common/types/options/skills-http/typecheck.d.ts.map +1 -1
  224. package/common/types/options/sqlite/schema.d.ts +9 -9
  225. package/common/types/options/sqlite/schema.d.ts.map +1 -1
  226. package/common/types/options/sqlite/typecheck.d.ts.map +1 -1
  227. package/common/types/options/transport/schema.d.ts +140 -140
  228. package/common/types/options/transport/schema.d.ts.map +1 -1
  229. package/common/types/options/transport/typecheck.d.ts.map +1 -1
  230. package/common/utils/decide-request-intent.utils.d.ts +16 -17
  231. package/common/utils/decide-request-intent.utils.d.ts.map +1 -1
  232. package/common/utils/path.utils.d.ts +10 -1
  233. package/common/utils/path.utils.d.ts.map +1 -1
  234. package/completion/flows/complete.flow.d.ts +68 -69
  235. package/completion/flows/complete.flow.d.ts.map +1 -1
  236. package/context/frontmcp-context.d.ts +9 -7
  237. package/context/frontmcp-context.d.ts.map +1 -1
  238. package/direct/create.d.ts +1 -1
  239. package/direct/create.d.ts.map +1 -1
  240. package/elicitation/elicitation.types.d.ts +2 -2
  241. package/elicitation/elicitation.types.d.ts.map +1 -1
  242. package/elicitation/flows/elicitation-request.flow.d.ts +40 -40
  243. package/elicitation/flows/elicitation-request.flow.d.ts.map +1 -1
  244. package/elicitation/flows/elicitation-result.flow.d.ts +23 -23
  245. package/elicitation/flows/elicitation-result.flow.d.ts.map +1 -1
  246. package/elicitation/helpers/elicit.helper.d.ts +4 -4
  247. package/elicitation/helpers/elicit.helper.d.ts.map +1 -1
  248. package/elicitation/helpers/extend-output-schema.d.ts.map +1 -1
  249. package/elicitation/send-elicitation-result.tool.d.ts.map +1 -1
  250. package/errors/authorization-required.error.d.ts +44 -44
  251. package/errors/authorization-required.error.d.ts.map +1 -1
  252. package/errors/index.d.ts +3 -2
  253. package/errors/index.d.ts.map +1 -1
  254. package/errors/sdk.errors.d.ts +6 -0
  255. package/errors/sdk.errors.d.ts.map +1 -1
  256. package/errors/task.error.d.ts +55 -0
  257. package/errors/task.error.d.ts.map +1 -0
  258. package/errors/transport.errors.d.ts +6 -0
  259. package/errors/transport.errors.d.ts.map +1 -1
  260. package/esm/index.mjs +42394 -36842
  261. package/esm-loader/esm-auth.types.d.ts +5 -6
  262. package/esm-loader/esm-auth.types.d.ts.map +1 -1
  263. package/esm-loader/esm-manifest.d.ts +13 -14
  264. package/esm-loader/esm-manifest.d.ts.map +1 -1
  265. package/esm-loader/factories/esm-record-builders.d.ts +2 -2
  266. package/esm-loader/factories/esm-record-builders.d.ts.map +1 -1
  267. package/front-mcp/front-mcp.d.ts +3 -3
  268. package/front-mcp/front-mcp.d.ts.map +1 -1
  269. package/front-mcp/front-mcp.providers.d.ts +328 -28
  270. package/front-mcp/front-mcp.providers.d.ts.map +1 -1
  271. package/ha/ha-manager.d.ts +119 -0
  272. package/ha/ha-manager.d.ts.map +1 -0
  273. package/ha/ha.constants.d.ts +11 -0
  274. package/ha/ha.constants.d.ts.map +1 -0
  275. package/ha/ha.types.d.ts +42 -0
  276. package/ha/ha.types.d.ts.map +1 -0
  277. package/ha/heartbeat.service.d.ts +44 -0
  278. package/ha/heartbeat.service.d.ts.map +1 -0
  279. package/ha/index.d.ts +8 -0
  280. package/ha/index.d.ts.map +1 -0
  281. package/ha/notification-relay.d.ts +60 -0
  282. package/ha/notification-relay.d.ts.map +1 -0
  283. package/ha/session-takeover.d.ts +28 -0
  284. package/ha/session-takeover.d.ts.map +1 -0
  285. package/health/health.service.d.ts +5 -0
  286. package/health/health.service.d.ts.map +1 -1
  287. package/index.d.ts +45 -28
  288. package/index.d.ts.map +1 -1
  289. package/index.js +43391 -37819
  290. package/job/job.instance.d.ts +6 -8
  291. package/job/job.instance.d.ts.map +1 -1
  292. package/job/tools/execute-job.tool.d.ts.map +1 -1
  293. package/job/tools/get-job-status.tool.d.ts.map +1 -1
  294. package/job/tools/list-jobs.tool.d.ts.map +1 -1
  295. package/job/tools/register-job.tool.d.ts.map +1 -1
  296. package/job/tools/remove-job.tool.d.ts.map +1 -1
  297. package/logging/flows/set-level.flow.d.ts +38 -39
  298. package/logging/flows/set-level.flow.d.ts.map +1 -1
  299. package/notification/index.d.ts +1 -1
  300. package/notification/index.d.ts.map +1 -1
  301. package/notification/notification.service.d.ts +68 -4
  302. package/notification/notification.service.d.ts.map +1 -1
  303. package/package.json +18 -14
  304. package/prompt/flows/get-prompt.flow.d.ts +194 -189
  305. package/prompt/flows/get-prompt.flow.d.ts.map +1 -1
  306. package/prompt/flows/prompts-list.flow.d.ts +60 -56
  307. package/prompt/flows/prompts-list.flow.d.ts.map +1 -1
  308. package/resource/flows/read-resource.flow.d.ts +91 -86
  309. package/resource/flows/read-resource.flow.d.ts.map +1 -1
  310. package/resource/flows/resource-templates-list.flow.d.ts +62 -58
  311. package/resource/flows/resource-templates-list.flow.d.ts.map +1 -1
  312. package/resource/flows/resources-list.flow.d.ts +62 -58
  313. package/resource/flows/resources-list.flow.d.ts.map +1 -1
  314. package/resource/flows/subscribe-resource.flow.d.ts +38 -39
  315. package/resource/flows/subscribe-resource.flow.d.ts.map +1 -1
  316. package/resource/flows/unsubscribe-resource.flow.d.ts +38 -39
  317. package/resource/flows/unsubscribe-resource.flow.d.ts.map +1 -1
  318. package/resource/resource.events.d.ts +2 -0
  319. package/resource/resource.events.d.ts.map +1 -1
  320. package/resource/resource.registry.d.ts +7 -0
  321. package/resource/resource.registry.d.ts.map +1 -1
  322. package/scope/flows/http.request.flow.d.ts +58 -56
  323. package/scope/flows/http.request.flow.d.ts.map +1 -1
  324. package/scope/scope.instance.d.ts +81 -15
  325. package/scope/scope.instance.d.ts.map +1 -1
  326. package/server/adapters/base.host.adapter.d.ts +4 -1
  327. package/server/adapters/base.host.adapter.d.ts.map +1 -1
  328. package/server/adapters/express.host.adapter.d.ts +8 -2
  329. package/server/adapters/express.host.adapter.d.ts.map +1 -1
  330. package/server/middleware/csp.middleware.d.ts +64 -0
  331. package/server/middleware/csp.middleware.d.ts.map +1 -0
  332. package/server/middleware/host-validation.middleware.d.ts +25 -0
  333. package/server/middleware/host-validation.middleware.d.ts.map +1 -0
  334. package/server/security/security-audit.d.ts +66 -0
  335. package/server/security/security-audit.d.ts.map +1 -0
  336. package/server/server.instance.d.ts +4 -4
  337. package/server/server.instance.d.ts.map +1 -1
  338. package/skill/flows/http/llm-full-txt.flow.d.ts +27 -32
  339. package/skill/flows/http/llm-full-txt.flow.d.ts.map +1 -1
  340. package/skill/flows/http/llm-txt.flow.d.ts +27 -32
  341. package/skill/flows/http/llm-txt.flow.d.ts.map +1 -1
  342. package/skill/flows/http/skills-api.flow.d.ts +33 -38
  343. package/skill/flows/http/skills-api.flow.d.ts.map +1 -1
  344. package/skill/flows/load-skill.flow.d.ts +100 -100
  345. package/skill/flows/load-skill.flow.d.ts.map +1 -1
  346. package/skill/flows/search-skills.flow.d.ts +56 -57
  347. package/skill/flows/search-skills.flow.d.ts.map +1 -1
  348. package/task/flows/tasks-cancel.flow.d.ts +72 -0
  349. package/task/flows/tasks-cancel.flow.d.ts.map +1 -0
  350. package/task/flows/tasks-get.flow.d.ts +69 -0
  351. package/task/flows/tasks-get.flow.d.ts.map +1 -0
  352. package/task/flows/tasks-list.flow.d.ts +73 -0
  353. package/task/flows/tasks-list.flow.d.ts.map +1 -0
  354. package/task/flows/tasks-result.flow.d.ts +93 -0
  355. package/task/flows/tasks-result.flow.d.ts.map +1 -0
  356. package/task/helpers/cli-task-runner.d.ts +46 -0
  357. package/task/helpers/cli-task-runner.d.ts.map +1 -0
  358. package/task/helpers/in-process-task-runner.d.ts +28 -0
  359. package/task/helpers/in-process-task-runner.d.ts.map +1 -0
  360. package/task/helpers/process-liveness.d.ts +16 -0
  361. package/task/helpers/process-liveness.d.ts.map +1 -0
  362. package/task/helpers/task-id.d.ts +10 -0
  363. package/task/helpers/task-id.d.ts.map +1 -0
  364. package/task/helpers/task-notifier.d.ts +20 -0
  365. package/task/helpers/task-notifier.d.ts.map +1 -0
  366. package/task/helpers/task-runner.d.ts +47 -0
  367. package/task/helpers/task-runner.d.ts.map +1 -0
  368. package/task/helpers/task-runner.types.d.ts +32 -0
  369. package/task/helpers/task-runner.types.d.ts.map +1 -0
  370. package/task/index.d.ts +24 -0
  371. package/task/index.d.ts.map +1 -0
  372. package/task/runtime/execute-task-flag.d.ts +11 -0
  373. package/task/runtime/execute-task-flag.d.ts.map +1 -0
  374. package/task/runtime/execute-task.d.ts +21 -0
  375. package/task/runtime/execute-task.d.ts.map +1 -0
  376. package/task/store/index.d.ts +4 -0
  377. package/task/store/index.d.ts.map +1 -0
  378. package/task/store/storage-task.store.d.ts +42 -0
  379. package/task/store/storage-task.store.d.ts.map +1 -0
  380. package/task/store/task-store.factory.d.ts +58 -0
  381. package/task/store/task-store.factory.d.ts.map +1 -0
  382. package/task/store/task.store.d.ts +76 -0
  383. package/task/store/task.store.d.ts.map +1 -0
  384. package/task/task-scope.helper.d.ts +18 -0
  385. package/task/task-scope.helper.d.ts.map +1 -0
  386. package/task/task.registry.d.ts +68 -0
  387. package/task/task.registry.d.ts.map +1 -0
  388. package/task/task.types.d.ts +201 -0
  389. package/task/task.types.d.ts.map +1 -0
  390. package/tool/flows/call-tool.flow.d.ts +216 -197
  391. package/tool/flows/call-tool.flow.d.ts.map +1 -1
  392. package/tool/flows/tools-list.flow.d.ts +82 -76
  393. package/tool/flows/tools-list.flow.d.ts.map +1 -1
  394. package/tool/tool.instance.d.ts +4 -6
  395. package/tool/tool.instance.d.ts.map +1 -1
  396. package/tool/tool.utils.d.ts +2 -2
  397. package/tool/tool.utils.d.ts.map +1 -1
  398. package/transport/adapters/transport.local.adapter.d.ts +10 -11
  399. package/transport/adapters/transport.local.adapter.d.ts.map +1 -1
  400. package/transport/adapters/transport.sse.adapter.d.ts +5 -5
  401. package/transport/adapters/transport.sse.adapter.d.ts.map +1 -1
  402. package/transport/adapters/transport.streamable-http.adapter.d.ts +7 -7
  403. package/transport/adapters/transport.streamable-http.adapter.d.ts.map +1 -1
  404. package/transport/bus/index.d.ts +3 -0
  405. package/transport/bus/index.d.ts.map +1 -0
  406. package/transport/bus/redis-transport-bus.d.ts +90 -0
  407. package/transport/bus/redis-transport-bus.d.ts.map +1 -0
  408. package/transport/flows/handle.sse.flow.d.ts +17 -18
  409. package/transport/flows/handle.sse.flow.d.ts.map +1 -1
  410. package/transport/flows/handle.stateless-http.flow.d.ts +6 -7
  411. package/transport/flows/handle.stateless-http.flow.d.ts.map +1 -1
  412. package/transport/flows/handle.streamable-http.flow.d.ts +19 -19
  413. package/transport/flows/handle.streamable-http.flow.d.ts.map +1 -1
  414. package/transport/in-memory-server.d.ts +2 -3
  415. package/transport/in-memory-server.d.ts.map +1 -1
  416. package/transport/mcp-handlers/call-tool-request.handler.d.ts +2 -2
  417. package/transport/mcp-handlers/call-tool-request.handler.d.ts.map +1 -1
  418. package/transport/mcp-handlers/index.d.ts +719 -565
  419. package/transport/mcp-handlers/index.d.ts.map +1 -1
  420. package/transport/mcp-handlers/initialize-request.handler.d.ts.map +1 -1
  421. package/transport/mcp-handlers/mcp-error.utils.d.ts +15 -0
  422. package/transport/mcp-handlers/mcp-error.utils.d.ts.map +1 -0
  423. package/transport/mcp-handlers/mcp-handlers.types.d.ts +3 -3
  424. package/transport/mcp-handlers/mcp-handlers.types.d.ts.map +1 -1
  425. package/transport/mcp-handlers/skills-mcp.types.d.ts +97 -97
  426. package/transport/mcp-handlers/skills-mcp.types.d.ts.map +1 -1
  427. package/transport/mcp-handlers/tasks-cancel-request.handler.d.ts +4 -0
  428. package/transport/mcp-handlers/tasks-cancel-request.handler.d.ts.map +1 -0
  429. package/transport/mcp-handlers/tasks-get-request.handler.d.ts +4 -0
  430. package/transport/mcp-handlers/tasks-get-request.handler.d.ts.map +1 -0
  431. package/transport/mcp-handlers/tasks-list-request.handler.d.ts +4 -0
  432. package/transport/mcp-handlers/tasks-list-request.handler.d.ts.map +1 -0
  433. package/transport/mcp-handlers/tasks-result-request.handler.d.ts +4 -0
  434. package/transport/mcp-handlers/tasks-result-request.handler.d.ts.map +1 -0
  435. package/transport/transport.registry.d.ts +9 -4
  436. package/transport/transport.registry.d.ts.map +1 -1
  437. package/types/zod.types.d.ts +1 -1
  438. package/types/zod.types.d.ts.map +1 -1
  439. package/workflow/tools/execute-workflow.tool.d.ts.map +1 -1
  440. package/workflow/tools/get-workflow-status.tool.d.ts.map +1 -1
  441. package/workflow/tools/list-workflows.tool.d.ts.map +1 -1
  442. package/workflow/tools/register-workflow.tool.d.ts.map +1 -1
  443. package/workflow/tools/remove-workflow.tool.d.ts.map +1 -1
@@ -0,0 +1,119 @@
1
+ /**
2
+ * HA Manager — Lifecycle Coordinator
3
+ *
4
+ * Orchestrates heartbeat, session takeover, notification relay,
5
+ * and orphan session scanning.
6
+ * Created by Scope when deployment mode is 'distributed'.
7
+ */
8
+ import { type HaConfig, type TakeoverResult } from './ha.types';
9
+ import { type HeartbeatRedisClient } from './heartbeat.service';
10
+ import { NotificationRelay, type RelayHandler, type RelayRedisClient } from './notification-relay';
11
+ import { type TakeoverRedisClient } from './session-takeover';
12
+ /**
13
+ * Callback invoked when an orphaned session is successfully claimed.
14
+ */
15
+ export type OrphanHandler = (sessionId: string, previousNodeId: string) => void | Promise<void>;
16
+ /**
17
+ * Options for the orphan session scanner.
18
+ */
19
+ export interface OrphanScannerOptions {
20
+ /** Redis key prefix for session keys (e.g., 'mcp:transport:'). */
21
+ sessionKeyPrefix: string;
22
+ /** Callback when a session is successfully claimed. */
23
+ onOrphan: OrphanHandler;
24
+ /**
25
+ * Protocols that can be recreated after takeover.
26
+ * Sessions with protocols NOT in this list are skipped (e.g., SSE sessions
27
+ * cannot be recreated because the SSE stream is tied to the original connection).
28
+ * @default ['streamable-http']
29
+ */
30
+ recreatableProtocols?: string[];
31
+ }
32
+ /**
33
+ * Options for creating an HaManager.
34
+ */
35
+ export interface HaManagerOptions {
36
+ /** Redis client for heartbeat and session operations */
37
+ redis: HeartbeatRedisClient & TakeoverRedisClient;
38
+ /** Dedicated Redis subscriber connection for pub/sub (required for relay) */
39
+ pubsubSubscriber?: RelayRedisClient;
40
+ /** Redis publisher connection (can reuse main redis client) */
41
+ pubsubPublisher?: RelayRedisClient;
42
+ /** This pod's machine ID */
43
+ nodeId: string;
44
+ /** HA configuration overrides */
45
+ config?: Partial<HaConfig>;
46
+ /** Logger (optional) */
47
+ logger?: {
48
+ info: (msg: string) => void;
49
+ warn: (msg: string) => void;
50
+ debug: (msg: string) => void;
51
+ };
52
+ }
53
+ export declare class HaManager {
54
+ private readonly redis;
55
+ private readonly nodeId;
56
+ private readonly heartbeat;
57
+ private readonly relay;
58
+ private readonly config;
59
+ private readonly logger;
60
+ private started;
61
+ private scannerBootstrapTimer;
62
+ private scannerTimer;
63
+ private scannerOptions;
64
+ private scanning;
65
+ private scannerStarted;
66
+ private constructor();
67
+ /**
68
+ * Create an HaManager instance.
69
+ * Validates that required infrastructure (Redis) is available.
70
+ */
71
+ static create(options: HaManagerOptions): HaManager;
72
+ /** Start heartbeat and notification relay. */
73
+ start(): Promise<void>;
74
+ /**
75
+ * Start the orphan session scanner.
76
+ *
77
+ * Runs periodically (on heartbeat interval) to detect sessions owned by
78
+ * dead nodes and claim them via atomic Lua CAS. The `onOrphan` callback
79
+ * is fired for each successfully claimed session.
80
+ *
81
+ * @param options - Scanner configuration
82
+ */
83
+ startOrphanScanner(options: OrphanScannerOptions): void;
84
+ /** Stop all HA services. */
85
+ stop(): Promise<void>;
86
+ /**
87
+ * Attempt to take over an orphaned session via atomic CAS.
88
+ *
89
+ * @param sessionKey - Full Redis key for the session
90
+ * @param expectedOldNodeId - The dead pod's nodeId
91
+ * @returns Whether this pod successfully claimed the session
92
+ */
93
+ attemptTakeover(sessionKey: string, expectedOldNodeId: string): Promise<TakeoverResult>;
94
+ /** Check if a specific node is alive. */
95
+ isNodeAlive(nodeId: string): Promise<boolean>;
96
+ /** Get all alive node IDs. */
97
+ getAliveNodes(): Promise<string[]>;
98
+ /** Get the notification relay (undefined if pub/sub not configured). */
99
+ getRelay(): NotificationRelay | undefined;
100
+ /** Subscribe to relay messages (for cross-pod notification delivery). */
101
+ subscribeRelay(handler: RelayHandler): Promise<void>;
102
+ /** Update the heartbeat with current session count. */
103
+ setSessionCount(count: number): void;
104
+ /** Whether HA services are running. */
105
+ isStarted(): boolean;
106
+ /** The node ID this manager is running for. */
107
+ getNodeId(): string;
108
+ /**
109
+ * Run a single orphan scan cycle.
110
+ *
111
+ * 1. Get alive nodes from heartbeat keys
112
+ * 2. Scan session keys matching the configured prefix
113
+ * 3. Parse each session's nodeId
114
+ * 4. If nodeId is not in the alive set, attempt takeover
115
+ * 5. Fire onOrphan callback for each claimed session
116
+ */
117
+ private runOrphanScan;
118
+ }
119
+ //# sourceMappingURL=ha-manager.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"ha-manager.d.ts","sourceRoot":"","sources":["../../src/ha/ha-manager.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,11 @@
1
+ /**
2
+ * HA Constants — Default Values
3
+ *
4
+ * These are defaults that can be overridden via `frontmcp.config`.
5
+ * The deployment config file sets the actual values at build time.
6
+ */
7
+ /** Default cookie name for LB session affinity routing. */
8
+ export declare const DEFAULT_FRONTMCP_NODE_COOKIE = "__frontmcp_node";
9
+ /** Default response header exposing the current pod's machine ID. */
10
+ export declare const DEFAULT_FRONTMCP_MACHINE_ID_HEADER = "X-FrontMCP-Machine-Id";
11
+ //# sourceMappingURL=ha.constants.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"ha.constants.d.ts","sourceRoot":"","sources":["../../src/ha/ha.constants.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAEH,2DAA2D;AAC3D,eAAO,MAAM,4BAA4B,oBAAoB,CAAC;AAE9D,qEAAqE;AACrE,eAAO,MAAM,kCAAkC,0BAA0B,CAAC"}
@@ -0,0 +1,42 @@
1
+ /**
2
+ * HA (High Availability) Configuration Types
3
+ *
4
+ * Used by the distributed deployment mode (`frontmcp build -t distributed`)
5
+ * to configure heartbeat, session takeover, and notification relay.
6
+ */
7
+ /**
8
+ * Configuration for HA services.
9
+ * All values have sensible defaults — only override when tuning.
10
+ */
11
+ export interface HaConfig {
12
+ /** How often the pod writes a heartbeat to Redis (ms). Default: 10_000 (10s). */
13
+ heartbeatIntervalMs: number;
14
+ /** TTL for the heartbeat key in Redis (ms). Should be 2-3x intervalMs. Default: 30_000 (30s). */
15
+ heartbeatTtlMs: number;
16
+ /** Grace period after heartbeat expiry before claiming sessions (ms). Default: 5_000 (5s). */
17
+ takeoverGracePeriodMs: number;
18
+ /** Redis key prefix for all HA keys. Default: 'mcp:ha:'. */
19
+ redisKeyPrefix: string;
20
+ /** Cookie name for LB session affinity. Configurable via frontmcp.config. Default: '__frontmcp_node'. */
21
+ affinityCookieName: string;
22
+ /** Response header for machine ID. Configurable via frontmcp.config. Default: 'X-FrontMCP-Machine-Id'. */
23
+ machineIdHeader: string;
24
+ }
25
+ /** Default HA configuration values. */
26
+ export declare const DEFAULT_HA_CONFIG: Readonly<HaConfig>;
27
+ /** Deployment modes set by `frontmcp build -t {target}`. */
28
+ export type DeploymentMode = 'distributed' | 'serverless' | 'standalone' | 'browser';
29
+ /** Heartbeat value stored in Redis. */
30
+ export interface HeartbeatValue {
31
+ nodeId: string;
32
+ startedAt: number;
33
+ lastBeat: number;
34
+ sessionCount: number;
35
+ }
36
+ /** Result of a session takeover attempt. */
37
+ export interface TakeoverResult {
38
+ claimed: boolean;
39
+ sessionId: string;
40
+ previousNodeId?: string;
41
+ }
42
+ //# sourceMappingURL=ha.types.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"ha.types.d.ts","sourceRoot":"","sources":["../../src/ha/ha.types.ts"],"names":[],"mappings":"AAEA;;;;;GAKG;AAEH;;;GAGG;AACH,MAAM,WAAW,QAAQ;IACvB,iFAAiF;IACjF,mBAAmB,EAAE,MAAM,CAAC;IAC5B,iGAAiG;IACjG,cAAc,EAAE,MAAM,CAAC;IACvB,8FAA8F;IAC9F,qBAAqB,EAAE,MAAM,CAAC;IAC9B,4DAA4D;IAC5D,cAAc,EAAE,MAAM,CAAC;IACvB,yGAAyG;IACzG,kBAAkB,EAAE,MAAM,CAAC;IAC3B,0GAA0G;IAC1G,eAAe,EAAE,MAAM,CAAC;CACzB;AAED,uCAAuC;AACvC,eAAO,MAAM,iBAAiB,EAAE,QAAQ,CAAC,QAAQ,CAOhD,CAAC;AAEF,4DAA4D;AAC5D,MAAM,MAAM,cAAc,GAAG,aAAa,GAAG,YAAY,GAAG,YAAY,GAAG,SAAS,CAAC;AAErF,uCAAuC;AACvC,MAAM,WAAW,cAAc;IAC7B,MAAM,EAAE,MAAM,CAAC;IACf,SAAS,EAAE,MAAM,CAAC;IAClB,QAAQ,EAAE,MAAM,CAAC;IACjB,YAAY,EAAE,MAAM,CAAC;CACtB;AAED,4CAA4C;AAC5C,MAAM,WAAW,cAAc;IAC7B,OAAO,EAAE,OAAO,CAAC;IACjB,SAAS,EAAE,MAAM,CAAC;IAClB,cAAc,CAAC,EAAE,MAAM,CAAC;CACzB"}
@@ -0,0 +1,44 @@
1
+ /**
2
+ * Heartbeat Service
3
+ *
4
+ * Writes a TTL key to Redis at a regular interval to signal pod liveness.
5
+ * When a pod dies, its heartbeat key expires and other pods can detect the death.
6
+ */
7
+ import { type HaConfig, type HeartbeatValue } from './ha.types';
8
+ /**
9
+ * Minimal Redis client interface (subset of ioredis).
10
+ * Allows the service to work with any Redis-compatible client.
11
+ */
12
+ export interface HeartbeatRedisClient {
13
+ set(key: string, value: string, expiryMode: 'PX', time: number): Promise<unknown>;
14
+ get(key: string): Promise<string | null>;
15
+ del(key: string): Promise<number>;
16
+ exists(key: string): Promise<number>;
17
+ keys(pattern: string): Promise<string[]>;
18
+ }
19
+ export declare class HeartbeatService {
20
+ private readonly redis;
21
+ private readonly nodeId;
22
+ private timer;
23
+ private readonly startedAt;
24
+ private readonly keyPrefix;
25
+ private readonly intervalMs;
26
+ private readonly ttlMs;
27
+ private sessionCount;
28
+ constructor(redis: HeartbeatRedisClient, nodeId: string, config?: Partial<HaConfig>);
29
+ /** Start the heartbeat interval. */
30
+ start(): void;
31
+ /** Stop the heartbeat and remove the key. */
32
+ stop(): Promise<void>;
33
+ /** Update the tracked session count (for monitoring). */
34
+ setSessionCount(count: number): void;
35
+ /** Check if a specific node's heartbeat is alive. */
36
+ isAlive(nodeId: string): Promise<boolean>;
37
+ /** Get the heartbeat value for a specific node. */
38
+ getHeartbeat(nodeId: string): Promise<HeartbeatValue | null>;
39
+ /** Get all alive node IDs by scanning heartbeat keys. */
40
+ getAliveNodes(): Promise<string[]>;
41
+ private heartbeatKey;
42
+ private writeHeartbeat;
43
+ }
44
+ //# sourceMappingURL=heartbeat.service.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"heartbeat.service.d.ts","sourceRoot":"","sources":["../../src/ha/heartbeat.service.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAEH,OAAO,EAAqB,KAAK,QAAQ,EAAE,KAAK,cAAc,EAAE,MAAM,YAAY,CAAC;AAEnF;;;GAGG;AACH,MAAM,WAAW,oBAAoB;IACnC,GAAG,CAAC,GAAG,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM,EAAE,UAAU,EAAE,IAAI,EAAE,IAAI,EAAE,MAAM,GAAG,OAAO,CAAC,OAAO,CAAC,CAAC;IAClF,GAAG,CAAC,GAAG,EAAE,MAAM,GAAG,OAAO,CAAC,MAAM,GAAG,IAAI,CAAC,CAAC;IACzC,GAAG,CAAC,GAAG,EAAE,MAAM,GAAG,OAAO,CAAC,MAAM,CAAC,CAAC;IAClC,MAAM,CAAC,GAAG,EAAE,MAAM,GAAG,OAAO,CAAC,MAAM,CAAC,CAAC;IACrC,IAAI,CAAC,OAAO,EAAE,MAAM,GAAG,OAAO,CAAC,MAAM,EAAE,CAAC,CAAC;CAC1C;AAED,qBAAa,gBAAgB;IASzB,OAAO,CAAC,QAAQ,CAAC,KAAK;IACtB,OAAO,CAAC,QAAQ,CAAC,MAAM;IATzB,OAAO,CAAC,KAAK,CAA6C;IAC1D,OAAO,CAAC,QAAQ,CAAC,SAAS,CAAS;IACnC,OAAO,CAAC,QAAQ,CAAC,SAAS,CAAS;IACnC,OAAO,CAAC,QAAQ,CAAC,UAAU,CAAS;IACpC,OAAO,CAAC,QAAQ,CAAC,KAAK,CAAS;IAC/B,OAAO,CAAC,YAAY,CAAK;gBAGN,KAAK,EAAE,oBAAoB,EAC3B,MAAM,EAAE,MAAM,EAC/B,MAAM,CAAC,EAAE,OAAO,CAAC,QAAQ,CAAC;IAQ5B,oCAAoC;IACpC,KAAK,IAAI,IAAI;IAQb,6CAA6C;IACvC,IAAI,IAAI,OAAO,CAAC,IAAI,CAAC;IAY3B,yDAAyD;IACzD,eAAe,CAAC,KAAK,EAAE,MAAM,GAAG,IAAI;IAIpC,qDAAqD;IAC/C,OAAO,CAAC,MAAM,EAAE,MAAM,GAAG,OAAO,CAAC,OAAO,CAAC;IAK/C,mDAAmD;IAC7C,YAAY,CAAC,MAAM,EAAE,MAAM,GAAG,OAAO,CAAC,cAAc,GAAG,IAAI,CAAC;IAUlE,yDAAyD;IACnD,aAAa,IAAI,OAAO,CAAC,MAAM,EAAE,CAAC;IAKxC,OAAO,CAAC,YAAY;IAIpB,OAAO,CAAC,cAAc;CAUvB"}
package/ha/index.d.ts ADDED
@@ -0,0 +1,8 @@
1
+ export { HaManager, type HaManagerOptions } from './ha-manager';
2
+ export { HeartbeatService, type HeartbeatRedisClient } from './heartbeat.service';
3
+ export { attemptSessionTakeover, type TakeoverRedisClient } from './session-takeover';
4
+ export { NotificationRelay, type RelayRedisClient, type RelayHandler, type RelayMessage } from './notification-relay';
5
+ export { DEFAULT_FRONTMCP_NODE_COOKIE, DEFAULT_FRONTMCP_MACHINE_ID_HEADER } from './ha.constants';
6
+ export type { HaConfig, DeploymentMode, HeartbeatValue, TakeoverResult } from './ha.types';
7
+ export { DEFAULT_HA_CONFIG } from './ha.types';
8
+ //# sourceMappingURL=index.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/ha/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,SAAS,EAAE,KAAK,gBAAgB,EAAE,MAAM,cAAc,CAAC;AAChE,OAAO,EAAE,gBAAgB,EAAE,KAAK,oBAAoB,EAAE,MAAM,qBAAqB,CAAC;AAClF,OAAO,EAAE,sBAAsB,EAAE,KAAK,mBAAmB,EAAE,MAAM,oBAAoB,CAAC;AACtF,OAAO,EAAE,iBAAiB,EAAE,KAAK,gBAAgB,EAAE,KAAK,YAAY,EAAE,KAAK,YAAY,EAAE,MAAM,sBAAsB,CAAC;AACtH,OAAO,EAAE,4BAA4B,EAAE,kCAAkC,EAAE,MAAM,gBAAgB,CAAC;AAClG,YAAY,EAAE,QAAQ,EAAE,cAAc,EAAE,cAAc,EAAE,cAAc,EAAE,MAAM,YAAY,CAAC;AAC3F,OAAO,EAAE,iBAAiB,EAAE,MAAM,YAAY,CAAC"}
@@ -0,0 +1,60 @@
1
+ /**
2
+ * Notification Relay — Redis Pub/Sub Cross-Pod Messaging
3
+ *
4
+ * Each pod subscribes to its own channel (`mcp:ha:notify:{nodeId}`).
5
+ * When a notification targets a session on a different pod,
6
+ * it's published to that pod's channel for local delivery.
7
+ */
8
+ import { type HaConfig } from './ha.types';
9
+ /**
10
+ * Notification message relayed between pods.
11
+ */
12
+ export interface RelayMessage {
13
+ /** Target session ID */
14
+ sessionId: string;
15
+ /** MCP notification to deliver */
16
+ notification: {
17
+ method: string;
18
+ params?: Record<string, unknown>;
19
+ };
20
+ /** Source pod that originated the notification */
21
+ sourceNodeId: string;
22
+ /** Timestamp of relay */
23
+ timestamp: number;
24
+ }
25
+ /**
26
+ * Handler invoked when a relay message arrives for this pod.
27
+ */
28
+ export type RelayHandler = (message: RelayMessage) => void | Promise<void>;
29
+ /**
30
+ * Minimal Redis pub/sub client interface.
31
+ * Requires a dedicated connection for subscribing (ioredis pattern).
32
+ */
33
+ export interface RelayRedisClient {
34
+ subscribe(channel: string): Promise<unknown>;
35
+ unsubscribe(channel: string): Promise<unknown>;
36
+ publish(channel: string, message: string): Promise<number>;
37
+ on(event: 'message', handler: (channel: string, message: string) => void): void;
38
+ removeAllListeners(event: 'message'): void;
39
+ removeListener(event: 'message', handler: (channel: string, message: string) => void): void;
40
+ }
41
+ export declare class NotificationRelay {
42
+ private readonly subscriber;
43
+ private readonly publisher;
44
+ private readonly nodeId;
45
+ private handler;
46
+ private readonly channel;
47
+ private readonly keyPrefix;
48
+ constructor(subscriber: RelayRedisClient, publisher: RelayRedisClient, nodeId: string, config?: Partial<HaConfig>);
49
+ /** Start listening for relay messages on this pod's channel. */
50
+ subscribe(handler: RelayHandler): Promise<void>;
51
+ /** Stop listening and clean up. */
52
+ unsubscribe(): Promise<void>;
53
+ /**
54
+ * Publish a notification to a target pod's channel.
55
+ * Used when a notification targets a session not owned by this pod.
56
+ */
57
+ publish(targetNodeId: string, sessionId: string, notification: RelayMessage['notification']): Promise<void>;
58
+ private onMessage;
59
+ }
60
+ //# sourceMappingURL=notification-relay.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"notification-relay.d.ts","sourceRoot":"","sources":["../../src/ha/notification-relay.ts"],"names":[],"mappings":"AAAA;;;;;;GAMG;AAEH,OAAO,EAAqB,KAAK,QAAQ,EAAE,MAAM,YAAY,CAAC;AAE9D;;GAEG;AACH,MAAM,WAAW,YAAY;IAC3B,wBAAwB;IACxB,SAAS,EAAE,MAAM,CAAC;IAClB,kCAAkC;IAClC,YAAY,EAAE;QACZ,MAAM,EAAE,MAAM,CAAC;QACf,MAAM,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;KAClC,CAAC;IACF,kDAAkD;IAClD,YAAY,EAAE,MAAM,CAAC;IACrB,yBAAyB;IACzB,SAAS,EAAE,MAAM,CAAC;CACnB;AAED;;GAEG;AACH,MAAM,MAAM,YAAY,GAAG,CAAC,OAAO,EAAE,YAAY,KAAK,IAAI,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC;AAE3E;;;GAGG;AACH,MAAM,WAAW,gBAAgB;IAC/B,SAAS,CAAC,OAAO,EAAE,MAAM,GAAG,OAAO,CAAC,OAAO,CAAC,CAAC;IAC7C,WAAW,CAAC,OAAO,EAAE,MAAM,GAAG,OAAO,CAAC,OAAO,CAAC,CAAC;IAC/C,OAAO,CAAC,OAAO,EAAE,MAAM,EAAE,OAAO,EAAE,MAAM,GAAG,OAAO,CAAC,MAAM,CAAC,CAAC;IAC3D,EAAE,CAAC,KAAK,EAAE,SAAS,EAAE,OAAO,EAAE,CAAC,OAAO,EAAE,MAAM,EAAE,OAAO,EAAE,MAAM,KAAK,IAAI,GAAG,IAAI,CAAC;IAChF,kBAAkB,CAAC,KAAK,EAAE,SAAS,GAAG,IAAI,CAAC;IAC3C,cAAc,CAAC,KAAK,EAAE,SAAS,EAAE,OAAO,EAAE,CAAC,OAAO,EAAE,MAAM,EAAE,OAAO,EAAE,MAAM,KAAK,IAAI,GAAG,IAAI,CAAC;CAC7F;AAED,qBAAa,iBAAiB;IAM1B,OAAO,CAAC,QAAQ,CAAC,UAAU;IAC3B,OAAO,CAAC,QAAQ,CAAC,SAAS;IAC1B,OAAO,CAAC,QAAQ,CAAC,MAAM;IAPzB,OAAO,CAAC,OAAO,CAA2B;IAC1C,OAAO,CAAC,QAAQ,CAAC,OAAO,CAAS;IACjC,OAAO,CAAC,QAAQ,CAAC,SAAS,CAAS;gBAGhB,UAAU,EAAE,gBAAgB,EAC5B,SAAS,EAAE,gBAAgB,EAC3B,MAAM,EAAE,MAAM,EAC/B,MAAM,CAAC,EAAE,OAAO,CAAC,QAAQ,CAAC;IAM5B,gEAAgE;IAC1D,SAAS,CAAC,OAAO,EAAE,YAAY,GAAG,OAAO,CAAC,IAAI,CAAC;IAMrD,mCAAmC;IAC7B,WAAW,IAAI,OAAO,CAAC,IAAI,CAAC;IAUlC;;;OAGG;IACG,OAAO,CAAC,YAAY,EAAE,MAAM,EAAE,SAAS,EAAE,MAAM,EAAE,YAAY,EAAE,YAAY,CAAC,cAAc,CAAC,GAAG,OAAO,CAAC,IAAI,CAAC;IAWjH,OAAO,CAAC,SAAS,CASf;CACH"}
@@ -0,0 +1,28 @@
1
+ /**
2
+ * Session Takeover — Decentralized Lua CAS
3
+ *
4
+ * When a pod dies, surviving pods race to claim orphaned sessions.
5
+ * The Lua script atomically checks and updates the nodeId (compare-and-swap),
6
+ * ensuring exactly-once ownership transfer with no leader election.
7
+ */
8
+ import type { TakeoverResult } from './ha.types';
9
+ /**
10
+ * Minimal Redis client interface for Lua script execution.
11
+ */
12
+ export interface TakeoverRedisClient {
13
+ eval(script: string, numkeys: number, ...args: (string | number)[]): Promise<unknown>;
14
+ }
15
+ /**
16
+ * Attempt to claim an orphaned session via atomic Lua CAS.
17
+ *
18
+ * Multiple pods may call this concurrently for the same session.
19
+ * Exactly one will succeed (return claimed=true), others get claimed=false.
20
+ *
21
+ * @param redis - Redis client supporting eval
22
+ * @param sessionKey - Full Redis key for the session
23
+ * @param expectedOldNodeId - The dead pod's nodeId (from StoredSession)
24
+ * @param newNodeId - This pod's nodeId (getMachineId())
25
+ * @returns Whether this pod successfully claimed the session
26
+ */
27
+ export declare function attemptSessionTakeover(redis: TakeoverRedisClient, sessionKey: string, expectedOldNodeId: string, newNodeId: string): Promise<TakeoverResult>;
28
+ //# sourceMappingURL=session-takeover.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"session-takeover.d.ts","sourceRoot":"","sources":["../../src/ha/session-takeover.ts"],"names":[],"mappings":"AAAA;;;;;;GAMG;AAEH,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,YAAY,CAAC;AAEjD;;GAEG;AACH,MAAM,WAAW,mBAAmB;IAClC,IAAI,CAAC,MAAM,EAAE,MAAM,EAAE,OAAO,EAAE,MAAM,EAAE,GAAG,IAAI,EAAE,CAAC,MAAM,GAAG,MAAM,CAAC,EAAE,GAAG,OAAO,CAAC,OAAO,CAAC,CAAC;CACvF;AAwCD;;;;;;;;;;;GAWG;AACH,wBAAsB,sBAAsB,CAC1C,KAAK,EAAE,mBAAmB,EAC1B,UAAU,EAAE,MAAM,EAClB,iBAAiB,EAAE,MAAM,EACzB,SAAS,EAAE,MAAM,GAChB,OAAO,CAAC,cAAc,CAAC,CAQzB"}
@@ -38,6 +38,11 @@ export interface HealthScopeView {
38
38
  };
39
39
  }>;
40
40
  };
41
+ readonly haManager?: {
42
+ isStarted(): boolean;
43
+ isNodeAlive(nodeId: string): Promise<boolean>;
44
+ getNodeId(): string;
45
+ };
41
46
  }
42
47
  export declare class HealthService {
43
48
  private readonly probes;
@@ -1 +1 @@
1
- {"version":3,"file":"health.service.d.ts","sourceRoot":"","sources":["../../src/health/health.service.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAGH,OAAO,KAAK,EAAE,sBAAsB,EAAE,iBAAiB,EAAyB,MAAM,WAAW,CAAC;AAClG,OAAO,KAAK,EAAE,WAAW,EAAE,eAAe,EAAE,cAAc,EAAkC,MAAM,gBAAgB,CAAC;AAKnH;;;GAGG;AACH,MAAM,WAAW,eAAe;IAC9B,QAAQ,CAAC,gBAAgB,EAAE;QACzB,gBAAgB,IAAI,OAAO,CAAC,OAAO,CAAC,CAAC;KACtC,CAAC;IACF,QAAQ,CAAC,KAAK,EAAE;QACd,QAAQ,CAAC,aAAa,CAAC,EAAE,OAAO,GAAG,KAAK,CAAC;YAAE,IAAI,EAAE,MAAM,CAAA;SAAE,CAAC,CAAC;KAC5D,CAAC;IACF,QAAQ,CAAC,SAAS,EAAE;QAClB,YAAY,CAAC,aAAa,CAAC,EAAE,OAAO,GAAG,OAAO,EAAE,CAAC;KAClD,CAAC;IACF,QAAQ,CAAC,OAAO,EAAE;QAChB,UAAU,CAAC,aAAa,CAAC,EAAE,OAAO,GAAG,OAAO,EAAE,CAAC;KAChD,CAAC;IACF,QAAQ,CAAC,MAAM,EAAE;QACf,SAAS,CAAC,aAAa,CAAC,EAAE,OAAO,GAAG,OAAO,EAAE,CAAC;KAC/C,CAAC;IACF,QAAQ,CAAC,MAAM,EAAE;QACf,SAAS,IAAI,OAAO,EAAE,CAAC;KACxB,CAAC;IACF,QAAQ,CAAC,IAAI,EAAE;QACb,OAAO,IAAI,KAAK,CAAC;YACf,QAAQ,CAAC,EAAE,EAAE,MAAM,CAAC;YACpB,QAAQ,CAAC,QAAQ,EAAE,OAAO,CAAC;YAC3B,YAAY,CAAC,IAAI;gBAAE,eAAe,CAAC,KAAK,EAAE,MAAM,GAAG,OAAO,CAAA;aAAE,CAAC;SAC9D,CAAC,CAAC;KACJ,CAAC;CACH;AAED,qBAAa,aAAa;IACxB,OAAO,CAAC,QAAQ,CAAC,MAAM,CAAqB;IAC5C,OAAO,CAAC,QAAQ,CAAC,MAAM,CAAyB;IAChD,OAAO,CAAC,QAAQ,CAAC,UAAU,CAAoB;IAC/C,OAAO,CAAC,SAAS,CAAC,CAAkB;gBAExB,MAAM,EAAE,sBAAsB,EAAE,UAAU,EAAE,iBAAiB;IASzE;;OAEG;IACH,aAAa,CAAC,KAAK,EAAE,WAAW,GAAG,IAAI;IAIvC;;;;;;;OAOG;IACH,kBAAkB,CAAC,KAAK,EAAE,eAAe,GAAG,IAAI;IA+BhD;;OAEG;IACH,UAAU,IAAI,eAAe;IAsB7B;;OAEG;IACG,SAAS,IAAI,OAAO,CAAC,cAAc,CAAC;IAkC1C;;OAEG;IACH,aAAa,IAAI,MAAM;IAIvB;;OAEG;IACH,SAAS,IAAI,SAAS,WAAW,EAAE;IAInC;;OAEG;IACH,YAAY,CAAC,KAAK,EAAE,eAAe,GAAG,IAAI;YAQ5B,mBAAmB;IA4BjC,OAAO,CAAC,kBAAkB;IA0B1B,OAAO,CAAC,qBAAqB;CAO9B"}
1
+ {"version":3,"file":"health.service.d.ts","sourceRoot":"","sources":["../../src/health/health.service.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAIH,OAAO,KAAK,EAAE,sBAAsB,EAAyB,iBAAiB,EAAE,MAAM,WAAW,CAAC;AAElG,OAAO,KAAK,EAAe,WAAW,EAAqB,eAAe,EAAE,cAAc,EAAE,MAAM,gBAAgB,CAAC;AAInH;;;GAGG;AACH,MAAM,WAAW,eAAe;IAC9B,QAAQ,CAAC,gBAAgB,EAAE;QACzB,gBAAgB,IAAI,OAAO,CAAC,OAAO,CAAC,CAAC;KACtC,CAAC;IACF,QAAQ,CAAC,KAAK,EAAE;QACd,QAAQ,CAAC,aAAa,CAAC,EAAE,OAAO,GAAG,KAAK,CAAC;YAAE,IAAI,EAAE,MAAM,CAAA;SAAE,CAAC,CAAC;KAC5D,CAAC;IACF,QAAQ,CAAC,SAAS,EAAE;QAClB,YAAY,CAAC,aAAa,CAAC,EAAE,OAAO,GAAG,OAAO,EAAE,CAAC;KAClD,CAAC;IACF,QAAQ,CAAC,OAAO,EAAE;QAChB,UAAU,CAAC,aAAa,CAAC,EAAE,OAAO,GAAG,OAAO,EAAE,CAAC;KAChD,CAAC;IACF,QAAQ,CAAC,MAAM,EAAE;QACf,SAAS,CAAC,aAAa,CAAC,EAAE,OAAO,GAAG,OAAO,EAAE,CAAC;KAC/C,CAAC;IACF,QAAQ,CAAC,MAAM,EAAE;QACf,SAAS,IAAI,OAAO,EAAE,CAAC;KACxB,CAAC;IACF,QAAQ,CAAC,IAAI,EAAE;QACb,OAAO,IAAI,KAAK,CAAC;YACf,QAAQ,CAAC,EAAE,EAAE,MAAM,CAAC;YACpB,QAAQ,CAAC,QAAQ,EAAE,OAAO,CAAC;YAC3B,YAAY,CAAC,IAAI;gBAAE,eAAe,CAAC,KAAK,EAAE,MAAM,GAAG,OAAO,CAAA;aAAE,CAAC;SAC9D,CAAC,CAAC;KACJ,CAAC;IACF,QAAQ,CAAC,SAAS,CAAC,EAAE;QACnB,SAAS,IAAI,OAAO,CAAC;QACrB,WAAW,CAAC,MAAM,EAAE,MAAM,GAAG,OAAO,CAAC,OAAO,CAAC,CAAC;QAC9C,SAAS,IAAI,MAAM,CAAC;KACrB,CAAC;CACH;AAED,qBAAa,aAAa;IACxB,OAAO,CAAC,QAAQ,CAAC,MAAM,CAAqB;IAC5C,OAAO,CAAC,QAAQ,CAAC,MAAM,CAAyB;IAChD,OAAO,CAAC,QAAQ,CAAC,UAAU,CAAoB;IAC/C,OAAO,CAAC,SAAS,CAAC,CAAkB;gBAExB,MAAM,EAAE,sBAAsB,EAAE,UAAU,EAAE,iBAAiB;IASzE;;OAEG;IACH,aAAa,CAAC,KAAK,EAAE,WAAW,GAAG,IAAI;IAIvC;;;;;;;OAOG;IACH,kBAAkB,CAAC,KAAK,EAAE,eAAe,GAAG,IAAI;IA8ChD;;OAEG;IACH,UAAU,IAAI,eAAe;IAsB7B;;OAEG;IACG,SAAS,IAAI,OAAO,CAAC,cAAc,CAAC;IAkC1C;;OAEG;IACH,aAAa,IAAI,MAAM;IAIvB;;OAEG;IACH,SAAS,IAAI,SAAS,WAAW,EAAE;IAInC;;OAEG;IACH,YAAY,CAAC,KAAK,EAAE,eAAe,GAAG,IAAI;YAQ5B,mBAAmB;IA4BjC,OAAO,CAAC,kBAAkB;IA0B1B,OAAO,CAAC,qBAAqB;CAO9B"}
package/index.d.ts CHANGED
@@ -4,10 +4,13 @@ export { getServerlessHandler, getServerlessHandlerAsync, setServerlessHandler,
4
4
  export * from './common';
5
5
  export * from './errors';
6
6
  export * from './elicitation';
7
+ export * from './task';
7
8
  export { default as LoggerRegistry } from './logger/logger.registry';
8
9
  export * from '@frontmcp/guard';
9
10
  export * from './remote-mcp';
10
11
  export * from './esm-loader';
12
+ export { default } from '@frontmcp/lazy-zod';
13
+ export { z, eagerZ, lazyZ, isLazy, forceMaterialize, LazyZodSchema, type InferLazy, toJSONSchema, type JSONSchema, NEVER, ZodAny, ZodArray, ZodBigInt, ZodBoolean, ZodDate, ZodDefault, ZodDiscriminatedUnion, ZodEnum, ZodError, ZodIntersection, ZodLiteral, ZodNever, ZodNull, ZodNullable, ZodNumber, ZodObject, ZodOptional, ZodRecord, ZodString, ZodSymbol, ZodTuple, ZodType, ZodUndefined, ZodUnion, ZodUnknown, ZodVoid, type ZodTypeAny, type ZodRawShape, type infer, type input, type output, } from '@frontmcp/lazy-zod';
11
14
  export type { GetPromptResult, ReadResourceResult, CallToolResult, ListToolsResult, ListResourcesResult, ListResourceTemplatesResult, ListPromptsResult, ServerCapabilities, Implementation, ClientCapabilities, TextContent, ImageContent, PromptMessage, } from '@frontmcp/protocol';
12
15
  export { FrontMcpContext, Context, FrontMcpContextStorage, FRONTMCP_CONTEXT, FrontMcpContextProvider, parseTraceContext, generateTraceContext, createChildSpanContext, } from './context';
13
16
  export type { FrontMcpContextArgs, FrontMcpContextConfig, RequestMetadata, TransportAccessor, TraceContext, } from './context';
@@ -17,6 +20,8 @@ export type { JobRegistryInterface, IndexedJob, JobChangeEvent, JobChangeKind, J
17
20
  export type { JobStateStore, JobRunRecord, WorkflowRunRecord, JobExecutionState, JobDefinitionStore } from './job';
18
21
  export { WorkflowRegistry, WorkflowInstance, WorkflowEngine, WorkflowStepExecutor, WorkflowEmitter } from './workflow';
19
22
  export type { WorkflowRegistryInterface, IndexedWorkflow, WorkflowChangeEvent, WorkflowChangeKind, WorkflowChangeScope, } from './workflow';
23
+ export { ChannelInstance, ChannelRegistry, ChannelEmitter, ChannelNotificationService, ChannelEventBus, ChannelReplyTool, } from './channel';
24
+ export type { ChannelRegistryInterface, IndexedChannel, ChannelChangeEvent, ChannelChangeKind, ChannelChangeScope, ChannelReplyInput, RegisterChannelCapabilitiesArgs, ChannelCapabilitiesResult, } from './channel';
20
25
  export { SkillRegistry, SkillInstance, createSkillInstance, SkillEmitter, MemorySkillProvider, SkillToolValidator, createSkillStorageProvider, createMemorySkillProvider, normalizeSkill, isSkillRecord, formatSkillForLLM, } from './skill';
21
26
  export type { SkillRegistryInterface, IndexedSkill, SkillChangeEvent, SkillChangeKind, SkillChangeScope, SkillStorageProvider, SkillStorageProviderType, SkillSearchOptions, SkillSearchResult, SkillLoadResult, SkillListOptions, SkillListResult, ToolValidationResult, SkillStorageFactoryOptions, SkillStorageFactoryResult, } from './skill';
22
27
  export { Agent, FrontMcpAgent, agent, frontMcpAgent, AgentContext, withConfig, } from './agent';
@@ -24,46 +29,58 @@ export type { AgentMetadata, AgentLlmConfig, AgentLlmBuiltinConfig, AgentSwarmCo
24
29
  export { OpenAIAdapter, AnthropicAdapter } from './agent/adapters';
25
30
  export type { OpenAIAdapterConfig, OpenAIApiMode, AnthropicAdapterConfig } from './agent/adapters';
26
31
  export declare const ToolHook: {
27
- Stage: (stage: "execute" | "finalize" | "parseInput" | "ensureRemoteCapabilities" | "findTool" | "checkToolAuthorization" | "createToolCallContext" | "acquireQuota" | "acquireSemaphore" | "validateInput" | "validateOutput" | "releaseSemaphore" | "releaseQuota" | "applyUI", opts?: import("./common").HookOptions<import("./tool/flows/call-tool.flow").default>) => MethodDecorator;
28
- Will: (stage: "execute" | "finalize" | "parseInput" | "ensureRemoteCapabilities" | "findTool" | "checkToolAuthorization" | "createToolCallContext" | "acquireQuota" | "acquireSemaphore" | "validateInput" | "validateOutput" | "releaseSemaphore" | "releaseQuota" | "applyUI", opts?: import("./common").HookOptions<import("./tool/flows/call-tool.flow").default>) => MethodDecorator;
29
- Did: (stage: "execute" | "finalize" | "parseInput" | "ensureRemoteCapabilities" | "findTool" | "checkToolAuthorization" | "createToolCallContext" | "acquireQuota" | "acquireSemaphore" | "validateInput" | "validateOutput" | "releaseSemaphore" | "releaseQuota" | "applyUI", opts?: import("./common").HookOptions<import("./tool/flows/call-tool.flow").default>) => MethodDecorator;
30
- Around: (stage: "execute" | "finalize" | "parseInput" | "ensureRemoteCapabilities" | "findTool" | "checkToolAuthorization" | "createToolCallContext" | "acquireQuota" | "acquireSemaphore" | "validateInput" | "validateOutput" | "releaseSemaphore" | "releaseQuota" | "applyUI", opts?: import("./common").HookOptions<import("./tool/flows/call-tool.flow").default>) => MethodDecorator;
32
+ Stage: (stage: "execute" | "finalize" | "parseInput" | "ensureRemoteCapabilities" | "checkEntryAuthorities" | "validateOutput" | "validateInput" | "findTool" | "checkToolAuthorization" | "createTaskIfRequested" | "createToolCallContext" | "acquireQuota" | "acquireSemaphore" | "releaseSemaphore" | "releaseQuota" | "applyUI", opts?: import("./common").HookOptions<import("./tool/flows/call-tool.flow").default>) => MethodDecorator;
33
+ Will: (stage: "execute" | "finalize" | "parseInput" | "ensureRemoteCapabilities" | "checkEntryAuthorities" | "validateOutput" | "validateInput" | "findTool" | "checkToolAuthorization" | "createTaskIfRequested" | "createToolCallContext" | "acquireQuota" | "acquireSemaphore" | "releaseSemaphore" | "releaseQuota" | "applyUI", opts?: import("./common").HookOptions<import("./tool/flows/call-tool.flow").default>) => MethodDecorator;
34
+ Did: (stage: "execute" | "finalize" | "parseInput" | "ensureRemoteCapabilities" | "checkEntryAuthorities" | "validateOutput" | "validateInput" | "findTool" | "checkToolAuthorization" | "createTaskIfRequested" | "createToolCallContext" | "acquireQuota" | "acquireSemaphore" | "releaseSemaphore" | "releaseQuota" | "applyUI", opts?: import("./common").HookOptions<import("./tool/flows/call-tool.flow").default>) => MethodDecorator;
35
+ Around: (stage: "execute" | "finalize" | "parseInput" | "ensureRemoteCapabilities" | "checkEntryAuthorities" | "validateOutput" | "validateInput" | "findTool" | "checkToolAuthorization" | "createTaskIfRequested" | "createToolCallContext" | "acquireQuota" | "acquireSemaphore" | "releaseSemaphore" | "releaseQuota" | "applyUI", opts?: import("./common").HookOptions<import("./tool/flows/call-tool.flow").default>) => MethodDecorator;
31
36
  };
32
37
  export declare const ListToolsHook: {
33
- Stage: (stage: "parseInput" | "ensureRemoteCapabilities" | "findTools" | "resolveConflicts" | "parseTools", opts?: import("./common").HookOptions<import("./tool/flows/tools-list.flow").default>) => MethodDecorator;
34
- Will: (stage: "parseInput" | "ensureRemoteCapabilities" | "findTools" | "resolveConflicts" | "parseTools", opts?: import("./common").HookOptions<import("./tool/flows/tools-list.flow").default>) => MethodDecorator;
35
- Did: (stage: "parseInput" | "ensureRemoteCapabilities" | "findTools" | "resolveConflicts" | "parseTools", opts?: import("./common").HookOptions<import("./tool/flows/tools-list.flow").default>) => MethodDecorator;
36
- Around: (stage: "parseInput" | "ensureRemoteCapabilities" | "findTools" | "resolveConflicts" | "parseTools", opts?: import("./common").HookOptions<import("./tool/flows/tools-list.flow").default>) => MethodDecorator;
38
+ Stage: (stage: "parseInput" | "ensureRemoteCapabilities" | "filterByAuthorities" | "resolveConflicts" | "findTools" | "parseTools", opts?: import("./common").HookOptions<import("./tool/flows/tools-list.flow").default>) => MethodDecorator;
39
+ Will: (stage: "parseInput" | "ensureRemoteCapabilities" | "filterByAuthorities" | "resolveConflicts" | "findTools" | "parseTools", opts?: import("./common").HookOptions<import("./tool/flows/tools-list.flow").default>) => MethodDecorator;
40
+ Did: (stage: "parseInput" | "ensureRemoteCapabilities" | "filterByAuthorities" | "resolveConflicts" | "findTools" | "parseTools", opts?: import("./common").HookOptions<import("./tool/flows/tools-list.flow").default>) => MethodDecorator;
41
+ Around: (stage: "parseInput" | "ensureRemoteCapabilities" | "filterByAuthorities" | "resolveConflicts" | "findTools" | "parseTools", opts?: import("./common").HookOptions<import("./tool/flows/tools-list.flow").default>) => MethodDecorator;
37
42
  };
38
43
  export declare const HttpHook: {
39
- Stage: (stage: "finalize" | "acquireQuota" | "acquireSemaphore" | "releaseSemaphore" | "releaseQuota" | "traceRequest" | "checkAuthorization" | "router" | "handleLegacySse" | "handleSse" | "handleStreamableHttp" | "handleStatefulHttp" | "handleStatelessHttp" | "handleDeleteSession" | "audit" | "metrics", opts?: import("./common").HookOptions<import("./scope/flows/http.request.flow").default>) => MethodDecorator;
40
- Will: (stage: "finalize" | "acquireQuota" | "acquireSemaphore" | "releaseSemaphore" | "releaseQuota" | "traceRequest" | "checkAuthorization" | "router" | "handleLegacySse" | "handleSse" | "handleStreamableHttp" | "handleStatefulHttp" | "handleStatelessHttp" | "handleDeleteSession" | "audit" | "metrics", opts?: import("./common").HookOptions<import("./scope/flows/http.request.flow").default>) => MethodDecorator;
41
- Did: (stage: "finalize" | "acquireQuota" | "acquireSemaphore" | "releaseSemaphore" | "releaseQuota" | "traceRequest" | "checkAuthorization" | "router" | "handleLegacySse" | "handleSse" | "handleStreamableHttp" | "handleStatefulHttp" | "handleStatelessHttp" | "handleDeleteSession" | "audit" | "metrics", opts?: import("./common").HookOptions<import("./scope/flows/http.request.flow").default>) => MethodDecorator;
42
- Around: (stage: "finalize" | "acquireQuota" | "acquireSemaphore" | "releaseSemaphore" | "releaseQuota" | "traceRequest" | "checkAuthorization" | "router" | "handleLegacySse" | "handleSse" | "handleStreamableHttp" | "handleStatefulHttp" | "handleStatelessHttp" | "handleDeleteSession" | "audit" | "metrics", opts?: import("./common").HookOptions<import("./scope/flows/http.request.flow").default>) => MethodDecorator;
44
+ Stage: (stage: "finalize" | "router" | "acquireQuota" | "acquireSemaphore" | "releaseSemaphore" | "releaseQuota" | "traceRequest" | "checkAuthorization" | "handleLegacySse" | "handleSse" | "handleStreamableHttp" | "handleStatefulHttp" | "handleStatelessHttp" | "handleDeleteSession" | "audit" | "metrics", opts?: import("./common").HookOptions<import("./scope/flows/http.request.flow").default>) => MethodDecorator;
45
+ Will: (stage: "finalize" | "router" | "acquireQuota" | "acquireSemaphore" | "releaseSemaphore" | "releaseQuota" | "traceRequest" | "checkAuthorization" | "handleLegacySse" | "handleSse" | "handleStreamableHttp" | "handleStatefulHttp" | "handleStatelessHttp" | "handleDeleteSession" | "audit" | "metrics", opts?: import("./common").HookOptions<import("./scope/flows/http.request.flow").default>) => MethodDecorator;
46
+ Did: (stage: "finalize" | "router" | "acquireQuota" | "acquireSemaphore" | "releaseSemaphore" | "releaseQuota" | "traceRequest" | "checkAuthorization" | "handleLegacySse" | "handleSse" | "handleStreamableHttp" | "handleStatefulHttp" | "handleStatelessHttp" | "handleDeleteSession" | "audit" | "metrics", opts?: import("./common").HookOptions<import("./scope/flows/http.request.flow").default>) => MethodDecorator;
47
+ Around: (stage: "finalize" | "router" | "acquireQuota" | "acquireSemaphore" | "releaseSemaphore" | "releaseQuota" | "traceRequest" | "checkAuthorization" | "handleLegacySse" | "handleSse" | "handleStreamableHttp" | "handleStatefulHttp" | "handleStatelessHttp" | "handleDeleteSession" | "audit" | "metrics", opts?: import("./common").HookOptions<import("./scope/flows/http.request.flow").default>) => MethodDecorator;
43
48
  };
44
49
  export declare const ResourceHook: {
45
- Stage: (stage: "execute" | "finalize" | "parseInput" | "ensureRemoteCapabilities" | "validateOutput" | "findResource" | "createResourceContext", opts?: import("./common").HookOptions<import("./resource").ReadResourceFlow>) => MethodDecorator;
46
- Will: (stage: "execute" | "finalize" | "parseInput" | "ensureRemoteCapabilities" | "validateOutput" | "findResource" | "createResourceContext", opts?: import("./common").HookOptions<import("./resource").ReadResourceFlow>) => MethodDecorator;
47
- Did: (stage: "execute" | "finalize" | "parseInput" | "ensureRemoteCapabilities" | "validateOutput" | "findResource" | "createResourceContext", opts?: import("./common").HookOptions<import("./resource").ReadResourceFlow>) => MethodDecorator;
48
- Around: (stage: "execute" | "finalize" | "parseInput" | "ensureRemoteCapabilities" | "validateOutput" | "findResource" | "createResourceContext", opts?: import("./common").HookOptions<import("./resource").ReadResourceFlow>) => MethodDecorator;
50
+ Stage: (stage: "execute" | "finalize" | "parseInput" | "ensureRemoteCapabilities" | "findResource" | "checkEntryAuthorities" | "createResourceContext" | "validateOutput", opts?: import("./common").HookOptions<import("./resource").ReadResourceFlow>) => MethodDecorator;
51
+ Will: (stage: "execute" | "finalize" | "parseInput" | "ensureRemoteCapabilities" | "findResource" | "checkEntryAuthorities" | "createResourceContext" | "validateOutput", opts?: import("./common").HookOptions<import("./resource").ReadResourceFlow>) => MethodDecorator;
52
+ Did: (stage: "execute" | "finalize" | "parseInput" | "ensureRemoteCapabilities" | "findResource" | "checkEntryAuthorities" | "createResourceContext" | "validateOutput", opts?: import("./common").HookOptions<import("./resource").ReadResourceFlow>) => MethodDecorator;
53
+ Around: (stage: "execute" | "finalize" | "parseInput" | "ensureRemoteCapabilities" | "findResource" | "checkEntryAuthorities" | "createResourceContext" | "validateOutput", opts?: import("./common").HookOptions<import("./resource").ReadResourceFlow>) => MethodDecorator;
49
54
  };
50
55
  export declare const ListResourcesHook: {
51
- Stage: (stage: "parseInput" | "ensureRemoteCapabilities" | "resolveConflicts" | "findResources" | "parseResources", opts?: import("./common").HookOptions<import("./resource").ResourcesListFlow>) => MethodDecorator;
52
- Will: (stage: "parseInput" | "ensureRemoteCapabilities" | "resolveConflicts" | "findResources" | "parseResources", opts?: import("./common").HookOptions<import("./resource").ResourcesListFlow>) => MethodDecorator;
53
- Did: (stage: "parseInput" | "ensureRemoteCapabilities" | "resolveConflicts" | "findResources" | "parseResources", opts?: import("./common").HookOptions<import("./resource").ResourcesListFlow>) => MethodDecorator;
54
- Around: (stage: "parseInput" | "ensureRemoteCapabilities" | "resolveConflicts" | "findResources" | "parseResources", opts?: import("./common").HookOptions<import("./resource").ResourcesListFlow>) => MethodDecorator;
56
+ Stage: (stage: "parseInput" | "ensureRemoteCapabilities" | "findResources" | "filterByAuthorities" | "resolveConflicts" | "parseResources", opts?: import("./common").HookOptions<import("./resource").ResourcesListFlow>) => MethodDecorator;
57
+ Will: (stage: "parseInput" | "ensureRemoteCapabilities" | "findResources" | "filterByAuthorities" | "resolveConflicts" | "parseResources", opts?: import("./common").HookOptions<import("./resource").ResourcesListFlow>) => MethodDecorator;
58
+ Did: (stage: "parseInput" | "ensureRemoteCapabilities" | "findResources" | "filterByAuthorities" | "resolveConflicts" | "parseResources", opts?: import("./common").HookOptions<import("./resource").ResourcesListFlow>) => MethodDecorator;
59
+ Around: (stage: "parseInput" | "ensureRemoteCapabilities" | "findResources" | "filterByAuthorities" | "resolveConflicts" | "parseResources", opts?: import("./common").HookOptions<import("./resource").ResourcesListFlow>) => MethodDecorator;
55
60
  };
56
61
  export declare const ListResourceTemplatesHook: {
57
- Stage: (stage: "parseInput" | "ensureRemoteCapabilities" | "resolveConflicts" | "findTemplates" | "parseTemplates", opts?: import("./common").HookOptions<import("./resource").ResourceTemplatesListFlow>) => MethodDecorator;
58
- Will: (stage: "parseInput" | "ensureRemoteCapabilities" | "resolveConflicts" | "findTemplates" | "parseTemplates", opts?: import("./common").HookOptions<import("./resource").ResourceTemplatesListFlow>) => MethodDecorator;
59
- Did: (stage: "parseInput" | "ensureRemoteCapabilities" | "resolveConflicts" | "findTemplates" | "parseTemplates", opts?: import("./common").HookOptions<import("./resource").ResourceTemplatesListFlow>) => MethodDecorator;
60
- Around: (stage: "parseInput" | "ensureRemoteCapabilities" | "resolveConflicts" | "findTemplates" | "parseTemplates", opts?: import("./common").HookOptions<import("./resource").ResourceTemplatesListFlow>) => MethodDecorator;
62
+ Stage: (stage: "parseInput" | "ensureRemoteCapabilities" | "filterByAuthorities" | "resolveConflicts" | "findTemplates" | "parseTemplates", opts?: import("./common").HookOptions<import("./resource").ResourceTemplatesListFlow>) => MethodDecorator;
63
+ Will: (stage: "parseInput" | "ensureRemoteCapabilities" | "filterByAuthorities" | "resolveConflicts" | "findTemplates" | "parseTemplates", opts?: import("./common").HookOptions<import("./resource").ResourceTemplatesListFlow>) => MethodDecorator;
64
+ Did: (stage: "parseInput" | "ensureRemoteCapabilities" | "filterByAuthorities" | "resolveConflicts" | "findTemplates" | "parseTemplates", opts?: import("./common").HookOptions<import("./resource").ResourceTemplatesListFlow>) => MethodDecorator;
65
+ Around: (stage: "parseInput" | "ensureRemoteCapabilities" | "filterByAuthorities" | "resolveConflicts" | "findTemplates" | "parseTemplates", opts?: import("./common").HookOptions<import("./resource").ResourceTemplatesListFlow>) => MethodDecorator;
61
66
  };
62
67
  export declare const AgentCallHook: {
63
- Stage: (stage: "execute" | "finalize" | "parseInput" | "acquireQuota" | "acquireSemaphore" | "validateInput" | "validateOutput" | "releaseSemaphore" | "releaseQuota" | "findAgent" | "checkAgentAuthorization" | "createAgentContext", opts?: import("./common").HookOptions<import("./agent").CallAgentFlow>) => MethodDecorator;
64
- Will: (stage: "execute" | "finalize" | "parseInput" | "acquireQuota" | "acquireSemaphore" | "validateInput" | "validateOutput" | "releaseSemaphore" | "releaseQuota" | "findAgent" | "checkAgentAuthorization" | "createAgentContext", opts?: import("./common").HookOptions<import("./agent").CallAgentFlow>) => MethodDecorator;
65
- Did: (stage: "execute" | "finalize" | "parseInput" | "acquireQuota" | "acquireSemaphore" | "validateInput" | "validateOutput" | "releaseSemaphore" | "releaseQuota" | "findAgent" | "checkAgentAuthorization" | "createAgentContext", opts?: import("./common").HookOptions<import("./agent").CallAgentFlow>) => MethodDecorator;
66
- Around: (stage: "execute" | "finalize" | "parseInput" | "acquireQuota" | "acquireSemaphore" | "validateInput" | "validateOutput" | "releaseSemaphore" | "releaseQuota" | "findAgent" | "checkAgentAuthorization" | "createAgentContext", opts?: import("./common").HookOptions<import("./agent").CallAgentFlow>) => MethodDecorator;
68
+ Stage: (stage: "execute" | "finalize" | "parseInput" | "checkEntryAuthorities" | "validateOutput" | "validateInput" | "acquireQuota" | "acquireSemaphore" | "releaseSemaphore" | "releaseQuota" | "findAgent" | "checkAgentAuthorization" | "createAgentContext", opts?: import("./common").HookOptions<import("./agent").CallAgentFlow>) => MethodDecorator;
69
+ Will: (stage: "execute" | "finalize" | "parseInput" | "checkEntryAuthorities" | "validateOutput" | "validateInput" | "acquireQuota" | "acquireSemaphore" | "releaseSemaphore" | "releaseQuota" | "findAgent" | "checkAgentAuthorization" | "createAgentContext", opts?: import("./common").HookOptions<import("./agent").CallAgentFlow>) => MethodDecorator;
70
+ Did: (stage: "execute" | "finalize" | "parseInput" | "checkEntryAuthorities" | "validateOutput" | "validateInput" | "acquireQuota" | "acquireSemaphore" | "releaseSemaphore" | "releaseQuota" | "findAgent" | "checkAgentAuthorization" | "createAgentContext", opts?: import("./common").HookOptions<import("./agent").CallAgentFlow>) => MethodDecorator;
71
+ Around: (stage: "execute" | "finalize" | "parseInput" | "checkEntryAuthorities" | "validateOutput" | "validateInput" | "acquireQuota" | "acquireSemaphore" | "releaseSemaphore" | "releaseQuota" | "findAgent" | "checkAgentAuthorization" | "createAgentContext", opts?: import("./common").HookOptions<import("./agent").CallAgentFlow>) => MethodDecorator;
72
+ };
73
+ export declare const ChannelSendHook: {
74
+ Stage: (stage: "finalize" | "parseInput" | "send", opts?: import("./common").HookOptions<import("./channel/flows/send-channel-notification.flow").default>) => MethodDecorator;
75
+ Will: (stage: "finalize" | "parseInput" | "send", opts?: import("./common").HookOptions<import("./channel/flows/send-channel-notification.flow").default>) => MethodDecorator;
76
+ Did: (stage: "finalize" | "parseInput" | "send", opts?: import("./common").HookOptions<import("./channel/flows/send-channel-notification.flow").default>) => MethodDecorator;
77
+ Around: (stage: "finalize" | "parseInput" | "send", opts?: import("./common").HookOptions<import("./channel/flows/send-channel-notification.flow").default>) => MethodDecorator;
78
+ };
79
+ export declare const ChannelListHook: {
80
+ Stage: (stage: "finalize" | "listChannels", opts?: import("./common").HookOptions<import("./channel/flows/list-channels.flow").default>) => MethodDecorator;
81
+ Will: (stage: "finalize" | "listChannels", opts?: import("./common").HookOptions<import("./channel/flows/list-channels.flow").default>) => MethodDecorator;
82
+ Did: (stage: "finalize" | "listChannels", opts?: import("./common").HookOptions<import("./channel/flows/list-channels.flow").default>) => MethodDecorator;
83
+ Around: (stage: "finalize" | "listChannels", opts?: import("./common").HookOptions<import("./channel/flows/list-channels.flow").default>) => MethodDecorator;
67
84
  };
68
85
  export { ConfigPlugin, ConfigService, ConfigMissingError, ConfigValidationError, ConfigPluginConfigToken, getConfig, tryGetConfig, loadEnvFiles, parseEnvContent, parseEnvContentSync, populateProcessEnv, pathToEnvKey, setNestedValue, getNestedValue, extractSchemaPaths, mapEnvToNestedConfig, loadConfig, deepMerge, } from './builtin/config';
69
86
  export type { ConfigPluginOptions, ConfigPluginOptionsInput, ParsedEnvConfig, ConfigLoaderOptions, ConfigEntityType, ConfigResolutionContext, ConfigResolver, } from './builtin/config';
package/index.d.ts.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"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"}