@vurb/core 3.2.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (642) hide show
  1. package/README.md +677 -0
  2. package/dist/cli/args.d.ts +26 -0
  3. package/dist/cli/args.d.ts.map +1 -0
  4. package/dist/cli/args.js +117 -0
  5. package/dist/cli/args.js.map +1 -0
  6. package/dist/cli/commands/create.d.ts +11 -0
  7. package/dist/cli/commands/create.d.ts.map +1 -0
  8. package/dist/cli/commands/create.js +121 -0
  9. package/dist/cli/commands/create.js.map +1 -0
  10. package/dist/cli/commands/deploy.d.ts +3 -0
  11. package/dist/cli/commands/deploy.d.ts.map +1 -0
  12. package/dist/cli/commands/deploy.js +268 -0
  13. package/dist/cli/commands/deploy.js.map +1 -0
  14. package/dist/cli/commands/dev.d.ts +9 -0
  15. package/dist/cli/commands/dev.d.ts.map +1 -0
  16. package/dist/cli/commands/dev.js +58 -0
  17. package/dist/cli/commands/dev.js.map +1 -0
  18. package/dist/cli/commands/lock.d.ts +5 -0
  19. package/dist/cli/commands/lock.d.ts.map +1 -0
  20. package/dist/cli/commands/lock.js +94 -0
  21. package/dist/cli/commands/lock.js.map +1 -0
  22. package/dist/cli/commands/remote.d.ts +3 -0
  23. package/dist/cli/commands/remote.d.ts.map +1 -0
  24. package/dist/cli/commands/remote.js +37 -0
  25. package/dist/cli/commands/remote.js.map +1 -0
  26. package/dist/cli/constants.d.ts +18 -0
  27. package/dist/cli/constants.d.ts.map +1 -0
  28. package/dist/cli/constants.js +95 -0
  29. package/dist/cli/constants.js.map +1 -0
  30. package/dist/cli/progress.d.ts +34 -0
  31. package/dist/cli/progress.d.ts.map +1 -0
  32. package/dist/cli/progress.js +102 -0
  33. package/dist/cli/progress.js.map +1 -0
  34. package/dist/cli/rc.d.ts +11 -0
  35. package/dist/cli/rc.d.ts.map +1 -0
  36. package/dist/cli/rc.js +75 -0
  37. package/dist/cli/rc.js.map +1 -0
  38. package/dist/cli/registry.d.ts +25 -0
  39. package/dist/cli/registry.d.ts.map +1 -0
  40. package/dist/cli/registry.js +86 -0
  41. package/dist/cli/registry.js.map +1 -0
  42. package/dist/cli/scaffold.d.ts +10 -0
  43. package/dist/cli/scaffold.d.ts.map +1 -0
  44. package/dist/cli/scaffold.js +105 -0
  45. package/dist/cli/scaffold.js.map +1 -0
  46. package/dist/cli/templates/config.d.ts +14 -0
  47. package/dist/cli/templates/config.d.ts.map +1 -0
  48. package/dist/cli/templates/config.js +133 -0
  49. package/dist/cli/templates/config.js.map +1 -0
  50. package/dist/cli/templates/constants.d.ts +9 -0
  51. package/dist/cli/templates/constants.d.ts.map +1 -0
  52. package/dist/cli/templates/constants.js +9 -0
  53. package/dist/cli/templates/constants.js.map +1 -0
  54. package/dist/cli/templates/core.d.ts +14 -0
  55. package/dist/cli/templates/core.d.ts.map +1 -0
  56. package/dist/cli/templates/core.js +186 -0
  57. package/dist/cli/templates/core.js.map +1 -0
  58. package/dist/cli/templates/cursor.d.ts +8 -0
  59. package/dist/cli/templates/cursor.d.ts.map +1 -0
  60. package/dist/cli/templates/cursor.js +13 -0
  61. package/dist/cli/templates/cursor.js.map +1 -0
  62. package/dist/cli/templates/index.d.ts +17 -0
  63. package/dist/cli/templates/index.d.ts.map +1 -0
  64. package/dist/cli/templates/index.js +27 -0
  65. package/dist/cli/templates/index.js.map +1 -0
  66. package/dist/cli/templates/middleware.d.ts +7 -0
  67. package/dist/cli/templates/middleware.d.ts.map +1 -0
  68. package/dist/cli/templates/middleware.js +34 -0
  69. package/dist/cli/templates/middleware.js.map +1 -0
  70. package/dist/cli/templates/presenter.d.ts +7 -0
  71. package/dist/cli/templates/presenter.d.ts.map +1 -0
  72. package/dist/cli/templates/presenter.js +46 -0
  73. package/dist/cli/templates/presenter.js.map +1 -0
  74. package/dist/cli/templates/prompt.d.ts +7 -0
  75. package/dist/cli/templates/prompt.d.ts.map +1 -0
  76. package/dist/cli/templates/prompt.js +42 -0
  77. package/dist/cli/templates/prompt.js.map +1 -0
  78. package/dist/cli/templates/readme.d.ts +8 -0
  79. package/dist/cli/templates/readme.d.ts.map +1 -0
  80. package/dist/cli/templates/readme.js +173 -0
  81. package/dist/cli/templates/readme.js.map +1 -0
  82. package/dist/cli/templates/testing.d.ts +11 -0
  83. package/dist/cli/templates/testing.d.ts.map +1 -0
  84. package/dist/cli/templates/testing.js +101 -0
  85. package/dist/cli/templates/testing.js.map +1 -0
  86. package/dist/cli/templates/tools.d.ts +13 -0
  87. package/dist/cli/templates/tools.d.ts.map +1 -0
  88. package/dist/cli/templates/tools.js +63 -0
  89. package/dist/cli/templates/tools.js.map +1 -0
  90. package/dist/cli/templates/vectors/database.d.ts +9 -0
  91. package/dist/cli/templates/vectors/database.d.ts.map +1 -0
  92. package/dist/cli/templates/vectors/database.js +82 -0
  93. package/dist/cli/templates/vectors/database.js.map +1 -0
  94. package/dist/cli/templates/vectors/index.d.ts +9 -0
  95. package/dist/cli/templates/vectors/index.d.ts.map +1 -0
  96. package/dist/cli/templates/vectors/index.js +9 -0
  97. package/dist/cli/templates/vectors/index.js.map +1 -0
  98. package/dist/cli/templates/vectors/oauth.d.ts +10 -0
  99. package/dist/cli/templates/vectors/oauth.d.ts.map +1 -0
  100. package/dist/cli/templates/vectors/oauth.js +76 -0
  101. package/dist/cli/templates/vectors/oauth.js.map +1 -0
  102. package/dist/cli/templates/vectors/openapi.d.ts +10 -0
  103. package/dist/cli/templates/vectors/openapi.d.ts.map +1 -0
  104. package/dist/cli/templates/vectors/openapi.js +106 -0
  105. package/dist/cli/templates/vectors/openapi.js.map +1 -0
  106. package/dist/cli/templates/vectors/workflow.d.ts +7 -0
  107. package/dist/cli/templates/vectors/workflow.d.ts.map +1 -0
  108. package/dist/cli/templates/vectors/workflow.js +49 -0
  109. package/dist/cli/templates/vectors/workflow.js.map +1 -0
  110. package/dist/cli/types.d.ts +36 -0
  111. package/dist/cli/types.d.ts.map +1 -0
  112. package/dist/cli/types.js +10 -0
  113. package/dist/cli/types.js.map +1 -0
  114. package/dist/cli/utils.d.ts +27 -0
  115. package/dist/cli/utils.d.ts.map +1 -0
  116. package/dist/cli/utils.js +73 -0
  117. package/dist/cli/utils.js.map +1 -0
  118. package/dist/cli/vurb.d.ts +15 -0
  119. package/dist/cli/vurb.d.ts.map +1 -0
  120. package/dist/cli/vurb.js +87 -0
  121. package/dist/cli/vurb.js.map +1 -0
  122. package/dist/client/InferRouter.d.ts +92 -0
  123. package/dist/client/InferRouter.d.ts.map +1 -0
  124. package/dist/client/InferRouter.js +31 -0
  125. package/dist/client/InferRouter.js.map +1 -0
  126. package/dist/client/VurbClient.d.ts +282 -0
  127. package/dist/client/VurbClient.d.ts.map +1 -0
  128. package/dist/client/VurbClient.js +287 -0
  129. package/dist/client/VurbClient.js.map +1 -0
  130. package/dist/client/createTypedRegistry.d.ts +25 -0
  131. package/dist/client/createTypedRegistry.d.ts.map +1 -0
  132. package/dist/client/createTypedRegistry.js +74 -0
  133. package/dist/client/createTypedRegistry.js.map +1 -0
  134. package/dist/client/index.d.ts +6 -0
  135. package/dist/client/index.d.ts.map +1 -0
  136. package/dist/client/index.js +4 -0
  137. package/dist/client/index.js.map +1 -0
  138. package/dist/converters/ConverterBase.d.ts +68 -0
  139. package/dist/converters/ConverterBase.d.ts.map +1 -0
  140. package/dist/converters/ConverterBase.js +62 -0
  141. package/dist/converters/ConverterBase.js.map +1 -0
  142. package/dist/converters/GroupConverter.d.ts +33 -0
  143. package/dist/converters/GroupConverter.d.ts.map +1 -0
  144. package/dist/converters/GroupConverter.js +26 -0
  145. package/dist/converters/GroupConverter.js.map +1 -0
  146. package/dist/converters/PromptConverter.d.ts +33 -0
  147. package/dist/converters/PromptConverter.d.ts.map +1 -0
  148. package/dist/converters/PromptConverter.js +26 -0
  149. package/dist/converters/PromptConverter.js.map +1 -0
  150. package/dist/converters/ResourceConverter.d.ts +35 -0
  151. package/dist/converters/ResourceConverter.d.ts.map +1 -0
  152. package/dist/converters/ResourceConverter.js +28 -0
  153. package/dist/converters/ResourceConverter.js.map +1 -0
  154. package/dist/converters/ToolAnnotationsConverter.d.ts +33 -0
  155. package/dist/converters/ToolAnnotationsConverter.d.ts.map +1 -0
  156. package/dist/converters/ToolAnnotationsConverter.js +26 -0
  157. package/dist/converters/ToolAnnotationsConverter.js.map +1 -0
  158. package/dist/converters/ToolConverter.d.ts +35 -0
  159. package/dist/converters/ToolConverter.d.ts.map +1 -0
  160. package/dist/converters/ToolConverter.js +28 -0
  161. package/dist/converters/ToolConverter.js.map +1 -0
  162. package/dist/converters/index.d.ts +7 -0
  163. package/dist/converters/index.d.ts.map +1 -0
  164. package/dist/converters/index.js +7 -0
  165. package/dist/converters/index.js.map +1 -0
  166. package/dist/core/StandardSchema.d.ts +178 -0
  167. package/dist/core/StandardSchema.d.ts.map +1 -0
  168. package/dist/core/StandardSchema.js +174 -0
  169. package/dist/core/StandardSchema.js.map +1 -0
  170. package/dist/core/builder/ActionGroupBuilder.d.ts +208 -0
  171. package/dist/core/builder/ActionGroupBuilder.d.ts.map +1 -0
  172. package/dist/core/builder/ActionGroupBuilder.js +193 -0
  173. package/dist/core/builder/ActionGroupBuilder.js.map +1 -0
  174. package/dist/core/builder/ErrorBuilder.d.ts +59 -0
  175. package/dist/core/builder/ErrorBuilder.d.ts.map +1 -0
  176. package/dist/core/builder/ErrorBuilder.js +99 -0
  177. package/dist/core/builder/ErrorBuilder.js.map +1 -0
  178. package/dist/core/builder/FluentRouter.d.ts +96 -0
  179. package/dist/core/builder/FluentRouter.d.ts.map +1 -0
  180. package/dist/core/builder/FluentRouter.js +116 -0
  181. package/dist/core/builder/FluentRouter.js.map +1 -0
  182. package/dist/core/builder/FluentSchemaHelpers.d.ts +237 -0
  183. package/dist/core/builder/FluentSchemaHelpers.d.ts.map +1 -0
  184. package/dist/core/builder/FluentSchemaHelpers.js +227 -0
  185. package/dist/core/builder/FluentSchemaHelpers.js.map +1 -0
  186. package/dist/core/builder/FluentToolBuilder.d.ts +419 -0
  187. package/dist/core/builder/FluentToolBuilder.d.ts.map +1 -0
  188. package/dist/core/builder/FluentToolBuilder.js +643 -0
  189. package/dist/core/builder/FluentToolBuilder.js.map +1 -0
  190. package/dist/core/builder/GroupedToolBuilder.d.ts +832 -0
  191. package/dist/core/builder/GroupedToolBuilder.d.ts.map +1 -0
  192. package/dist/core/builder/GroupedToolBuilder.js +1306 -0
  193. package/dist/core/builder/GroupedToolBuilder.js.map +1 -0
  194. package/dist/core/builder/ParamDescriptors.d.ts +142 -0
  195. package/dist/core/builder/ParamDescriptors.d.ts.map +1 -0
  196. package/dist/core/builder/ParamDescriptors.js +164 -0
  197. package/dist/core/builder/ParamDescriptors.js.map +1 -0
  198. package/dist/core/builder/ToolDefinitionCompiler.d.ts +37 -0
  199. package/dist/core/builder/ToolDefinitionCompiler.d.ts.map +1 -0
  200. package/dist/core/builder/ToolDefinitionCompiler.js +72 -0
  201. package/dist/core/builder/ToolDefinitionCompiler.js.map +1 -0
  202. package/dist/core/builder/defineTool.d.ts +180 -0
  203. package/dist/core/builder/defineTool.d.ts.map +1 -0
  204. package/dist/core/builder/defineTool.js +164 -0
  205. package/dist/core/builder/defineTool.js.map +1 -0
  206. package/dist/core/builder/index.d.ts +13 -0
  207. package/dist/core/builder/index.d.ts.map +1 -0
  208. package/dist/core/builder/index.js +13 -0
  209. package/dist/core/builder/index.js.map +1 -0
  210. package/dist/core/createGroup.d.ts +140 -0
  211. package/dist/core/createGroup.d.ts.map +1 -0
  212. package/dist/core/createGroup.js +144 -0
  213. package/dist/core/createGroup.js.map +1 -0
  214. package/dist/core/execution/ConcurrencyGuard.d.ts +103 -0
  215. package/dist/core/execution/ConcurrencyGuard.d.ts.map +1 -0
  216. package/dist/core/execution/ConcurrencyGuard.js +147 -0
  217. package/dist/core/execution/ConcurrencyGuard.js.map +1 -0
  218. package/dist/core/execution/EgressGuard.d.ts +72 -0
  219. package/dist/core/execution/EgressGuard.d.ts.map +1 -0
  220. package/dist/core/execution/EgressGuard.js +163 -0
  221. package/dist/core/execution/EgressGuard.js.map +1 -0
  222. package/dist/core/execution/ExecutionPipeline.d.ts +67 -0
  223. package/dist/core/execution/ExecutionPipeline.d.ts.map +1 -0
  224. package/dist/core/execution/ExecutionPipeline.js +176 -0
  225. package/dist/core/execution/ExecutionPipeline.js.map +1 -0
  226. package/dist/core/execution/MiddlewareCompiler.d.ts +35 -0
  227. package/dist/core/execution/MiddlewareCompiler.d.ts.map +1 -0
  228. package/dist/core/execution/MiddlewareCompiler.js +111 -0
  229. package/dist/core/execution/MiddlewareCompiler.js.map +1 -0
  230. package/dist/core/execution/MutationSerializer.d.ts +78 -0
  231. package/dist/core/execution/MutationSerializer.d.ts.map +1 -0
  232. package/dist/core/execution/MutationSerializer.js +106 -0
  233. package/dist/core/execution/MutationSerializer.js.map +1 -0
  234. package/dist/core/execution/PipelineHooks.d.ts +46 -0
  235. package/dist/core/execution/PipelineHooks.d.ts.map +1 -0
  236. package/dist/core/execution/PipelineHooks.js +66 -0
  237. package/dist/core/execution/PipelineHooks.js.map +1 -0
  238. package/dist/core/execution/ProgressHelper.d.ts +67 -0
  239. package/dist/core/execution/ProgressHelper.d.ts.map +1 -0
  240. package/dist/core/execution/ProgressHelper.js +59 -0
  241. package/dist/core/execution/ProgressHelper.js.map +1 -0
  242. package/dist/core/execution/ValidationErrorFormatter.d.ts +34 -0
  243. package/dist/core/execution/ValidationErrorFormatter.d.ts.map +1 -0
  244. package/dist/core/execution/ValidationErrorFormatter.js +193 -0
  245. package/dist/core/execution/ValidationErrorFormatter.js.map +1 -0
  246. package/dist/core/execution/index.d.ts +9 -0
  247. package/dist/core/execution/index.d.ts.map +1 -0
  248. package/dist/core/execution/index.js +9 -0
  249. package/dist/core/execution/index.js.map +1 -0
  250. package/dist/core/index.d.ts +34 -0
  251. package/dist/core/index.d.ts.map +1 -0
  252. package/dist/core/index.js +29 -0
  253. package/dist/core/index.js.map +1 -0
  254. package/dist/core/initVurb.d.ts +295 -0
  255. package/dist/core/initVurb.d.ts.map +1 -0
  256. package/dist/core/initVurb.js +171 -0
  257. package/dist/core/initVurb.js.map +1 -0
  258. package/dist/core/middleware/ContextDerivation.d.ts +124 -0
  259. package/dist/core/middleware/ContextDerivation.d.ts.map +1 -0
  260. package/dist/core/middleware/ContextDerivation.js +117 -0
  261. package/dist/core/middleware/ContextDerivation.js.map +1 -0
  262. package/dist/core/middleware/index.d.ts +4 -0
  263. package/dist/core/middleware/index.d.ts.map +1 -0
  264. package/dist/core/middleware/index.js +3 -0
  265. package/dist/core/middleware/index.js.map +1 -0
  266. package/dist/core/registry/ToolFilterEngine.d.ts +27 -0
  267. package/dist/core/registry/ToolFilterEngine.d.ts.map +1 -0
  268. package/dist/core/registry/ToolFilterEngine.js +45 -0
  269. package/dist/core/registry/ToolFilterEngine.js.map +1 -0
  270. package/dist/core/registry/ToolRegistry.d.ts +259 -0
  271. package/dist/core/registry/ToolRegistry.d.ts.map +1 -0
  272. package/dist/core/registry/ToolRegistry.js +343 -0
  273. package/dist/core/registry/ToolRegistry.js.map +1 -0
  274. package/dist/core/registry/index.d.ts +4 -0
  275. package/dist/core/registry/index.d.ts.map +1 -0
  276. package/dist/core/registry/index.js +3 -0
  277. package/dist/core/registry/index.js.map +1 -0
  278. package/dist/core/response.d.ts +289 -0
  279. package/dist/core/response.d.ts.map +1 -0
  280. package/dist/core/response.js +286 -0
  281. package/dist/core/response.js.map +1 -0
  282. package/dist/core/result.d.ts +93 -0
  283. package/dist/core/result.d.ts.map +1 -0
  284. package/dist/core/result.js +66 -0
  285. package/dist/core/result.js.map +1 -0
  286. package/dist/core/schema/AnnotationAggregator.d.ts +11 -0
  287. package/dist/core/schema/AnnotationAggregator.d.ts.map +1 -0
  288. package/dist/core/schema/AnnotationAggregator.js +40 -0
  289. package/dist/core/schema/AnnotationAggregator.js.map +1 -0
  290. package/dist/core/schema/DescriptionGenerator.d.ts +12 -0
  291. package/dist/core/schema/DescriptionGenerator.d.ts.map +1 -0
  292. package/dist/core/schema/DescriptionGenerator.js +81 -0
  293. package/dist/core/schema/DescriptionGenerator.js.map +1 -0
  294. package/dist/core/schema/SchemaGenerator.d.ts +15 -0
  295. package/dist/core/schema/SchemaGenerator.d.ts.map +1 -0
  296. package/dist/core/schema/SchemaGenerator.js +192 -0
  297. package/dist/core/schema/SchemaGenerator.js.map +1 -0
  298. package/dist/core/schema/SchemaUtils.d.ts +26 -0
  299. package/dist/core/schema/SchemaUtils.d.ts.map +1 -0
  300. package/dist/core/schema/SchemaUtils.js +85 -0
  301. package/dist/core/schema/SchemaUtils.js.map +1 -0
  302. package/dist/core/schema/ToonDescriptionGenerator.d.ts +3 -0
  303. package/dist/core/schema/ToonDescriptionGenerator.d.ts.map +1 -0
  304. package/dist/core/schema/ToonDescriptionGenerator.js +65 -0
  305. package/dist/core/schema/ToonDescriptionGenerator.js.map +1 -0
  306. package/dist/core/schema/index.d.ts +7 -0
  307. package/dist/core/schema/index.d.ts.map +1 -0
  308. package/dist/core/schema/index.js +7 -0
  309. package/dist/core/schema/index.js.map +1 -0
  310. package/dist/core/serialization/JsonSerializer.d.ts +71 -0
  311. package/dist/core/serialization/JsonSerializer.d.ts.map +1 -0
  312. package/dist/core/serialization/JsonSerializer.js +192 -0
  313. package/dist/core/serialization/JsonSerializer.js.map +1 -0
  314. package/dist/core/serialization/index.d.ts +7 -0
  315. package/dist/core/serialization/index.d.ts.map +1 -0
  316. package/dist/core/serialization/index.js +7 -0
  317. package/dist/core/serialization/index.js.map +1 -0
  318. package/dist/core/types.d.ts +303 -0
  319. package/dist/core/types.d.ts.map +1 -0
  320. package/dist/core/types.js +17 -0
  321. package/dist/core/types.js.map +1 -0
  322. package/dist/domain/Annotations.d.ts +42 -0
  323. package/dist/domain/Annotations.d.ts.map +1 -0
  324. package/dist/domain/Annotations.js +16 -0
  325. package/dist/domain/Annotations.js.map +1 -0
  326. package/dist/domain/BaseModel.d.ts +50 -0
  327. package/dist/domain/BaseModel.d.ts.map +1 -0
  328. package/dist/domain/BaseModel.js +41 -0
  329. package/dist/domain/BaseModel.js.map +1 -0
  330. package/dist/domain/Group.d.ts +99 -0
  331. package/dist/domain/Group.d.ts.map +1 -0
  332. package/dist/domain/Group.js +172 -0
  333. package/dist/domain/Group.js.map +1 -0
  334. package/dist/domain/GroupItem.d.ts +46 -0
  335. package/dist/domain/GroupItem.d.ts.map +1 -0
  336. package/dist/domain/GroupItem.js +58 -0
  337. package/dist/domain/GroupItem.js.map +1 -0
  338. package/dist/domain/Icon.d.ts +41 -0
  339. package/dist/domain/Icon.d.ts.map +1 -0
  340. package/dist/domain/Icon.js +15 -0
  341. package/dist/domain/Icon.js.map +1 -0
  342. package/dist/domain/Prompt.d.ts +49 -0
  343. package/dist/domain/Prompt.d.ts.map +1 -0
  344. package/dist/domain/Prompt.js +59 -0
  345. package/dist/domain/Prompt.js.map +1 -0
  346. package/dist/domain/PromptArgument.d.ts +23 -0
  347. package/dist/domain/PromptArgument.d.ts.map +1 -0
  348. package/dist/domain/PromptArgument.js +27 -0
  349. package/dist/domain/PromptArgument.js.map +1 -0
  350. package/dist/domain/Resource.d.ts +37 -0
  351. package/dist/domain/Resource.d.ts.map +1 -0
  352. package/dist/domain/Resource.js +39 -0
  353. package/dist/domain/Resource.js.map +1 -0
  354. package/dist/domain/Role.d.ts +23 -0
  355. package/dist/domain/Role.d.ts.map +1 -0
  356. package/dist/domain/Role.js +24 -0
  357. package/dist/domain/Role.js.map +1 -0
  358. package/dist/domain/Tool.d.ts +39 -0
  359. package/dist/domain/Tool.d.ts.map +1 -0
  360. package/dist/domain/Tool.js +41 -0
  361. package/dist/domain/Tool.js.map +1 -0
  362. package/dist/domain/ToolAnnotations.d.ts +48 -0
  363. package/dist/domain/ToolAnnotations.d.ts.map +1 -0
  364. package/dist/domain/ToolAnnotations.js +15 -0
  365. package/dist/domain/ToolAnnotations.js.map +1 -0
  366. package/dist/domain/index.d.ts +16 -0
  367. package/dist/domain/index.d.ts.map +1 -0
  368. package/dist/domain/index.js +13 -0
  369. package/dist/domain/index.js.map +1 -0
  370. package/dist/domain/utils.d.ts +6 -0
  371. package/dist/domain/utils.d.ts.map +1 -0
  372. package/dist/domain/utils.js +12 -0
  373. package/dist/domain/utils.js.map +1 -0
  374. package/dist/edge-stub.d.ts +73 -0
  375. package/dist/edge-stub.d.ts.map +1 -0
  376. package/dist/edge-stub.js +83 -0
  377. package/dist/edge-stub.js.map +1 -0
  378. package/dist/exposition/ExpositionCompiler.d.ts +66 -0
  379. package/dist/exposition/ExpositionCompiler.d.ts.map +1 -0
  380. package/dist/exposition/ExpositionCompiler.js +279 -0
  381. package/dist/exposition/ExpositionCompiler.js.map +1 -0
  382. package/dist/exposition/index.d.ts +4 -0
  383. package/dist/exposition/index.d.ts.map +1 -0
  384. package/dist/exposition/index.js +2 -0
  385. package/dist/exposition/index.js.map +1 -0
  386. package/dist/exposition/types.d.ts +58 -0
  387. package/dist/exposition/types.d.ts.map +1 -0
  388. package/dist/exposition/types.js +11 -0
  389. package/dist/exposition/types.js.map +1 -0
  390. package/dist/fsm/StateMachineGate.d.ts +294 -0
  391. package/dist/fsm/StateMachineGate.d.ts.map +1 -0
  392. package/dist/fsm/StateMachineGate.js +400 -0
  393. package/dist/fsm/StateMachineGate.js.map +1 -0
  394. package/dist/index.d.ts +148 -0
  395. package/dist/index.d.ts.map +1 -0
  396. package/dist/index.js +112 -0
  397. package/dist/index.js.map +1 -0
  398. package/dist/introspection/BehaviorDigest.d.ts +112 -0
  399. package/dist/introspection/BehaviorDigest.d.ts.map +1 -0
  400. package/dist/introspection/BehaviorDigest.js +149 -0
  401. package/dist/introspection/BehaviorDigest.js.map +1 -0
  402. package/dist/introspection/CapabilityLockfile.d.ts +261 -0
  403. package/dist/introspection/CapabilityLockfile.d.ts.map +1 -0
  404. package/dist/introspection/CapabilityLockfile.js +395 -0
  405. package/dist/introspection/CapabilityLockfile.js.map +1 -0
  406. package/dist/introspection/ContractAwareSelfHealing.d.ts +90 -0
  407. package/dist/introspection/ContractAwareSelfHealing.d.ts.map +1 -0
  408. package/dist/introspection/ContractAwareSelfHealing.js +132 -0
  409. package/dist/introspection/ContractAwareSelfHealing.js.map +1 -0
  410. package/dist/introspection/ContractDiff.d.ts +91 -0
  411. package/dist/introspection/ContractDiff.d.ts.map +1 -0
  412. package/dist/introspection/ContractDiff.js +466 -0
  413. package/dist/introspection/ContractDiff.js.map +1 -0
  414. package/dist/introspection/CryptoAttestation.d.ts +143 -0
  415. package/dist/introspection/CryptoAttestation.d.ts.map +1 -0
  416. package/dist/introspection/CryptoAttestation.js +192 -0
  417. package/dist/introspection/CryptoAttestation.js.map +1 -0
  418. package/dist/introspection/EntitlementScanner.d.ts +177 -0
  419. package/dist/introspection/EntitlementScanner.d.ts.map +1 -0
  420. package/dist/introspection/EntitlementScanner.js +459 -0
  421. package/dist/introspection/EntitlementScanner.js.map +1 -0
  422. package/dist/introspection/GovernanceObserver.d.ts +88 -0
  423. package/dist/introspection/GovernanceObserver.d.ts.map +1 -0
  424. package/dist/introspection/GovernanceObserver.js +136 -0
  425. package/dist/introspection/GovernanceObserver.js.map +1 -0
  426. package/dist/introspection/IntrospectionResource.d.ts +20 -0
  427. package/dist/introspection/IntrospectionResource.d.ts.map +1 -0
  428. package/dist/introspection/IntrospectionResource.js +112 -0
  429. package/dist/introspection/IntrospectionResource.js.map +1 -0
  430. package/dist/introspection/ManifestCompiler.d.ts +33 -0
  431. package/dist/introspection/ManifestCompiler.d.ts.map +1 -0
  432. package/dist/introspection/ManifestCompiler.js +88 -0
  433. package/dist/introspection/ManifestCompiler.js.map +1 -0
  434. package/dist/introspection/SemanticProbe.d.ts +207 -0
  435. package/dist/introspection/SemanticProbe.d.ts.map +1 -0
  436. package/dist/introspection/SemanticProbe.js +274 -0
  437. package/dist/introspection/SemanticProbe.js.map +1 -0
  438. package/dist/introspection/TokenEconomics.d.ts +210 -0
  439. package/dist/introspection/TokenEconomics.d.ts.map +1 -0
  440. package/dist/introspection/TokenEconomics.js +292 -0
  441. package/dist/introspection/TokenEconomics.js.map +1 -0
  442. package/dist/introspection/ToolContract.d.ts +161 -0
  443. package/dist/introspection/ToolContract.d.ts.map +1 -0
  444. package/dist/introspection/ToolContract.js +218 -0
  445. package/dist/introspection/ToolContract.js.map +1 -0
  446. package/dist/introspection/canonicalize.d.ts +35 -0
  447. package/dist/introspection/canonicalize.d.ts.map +1 -0
  448. package/dist/introspection/canonicalize.js +72 -0
  449. package/dist/introspection/canonicalize.js.map +1 -0
  450. package/dist/introspection/index.d.ts +26 -0
  451. package/dist/introspection/index.d.ts.map +1 -0
  452. package/dist/introspection/index.js +24 -0
  453. package/dist/introspection/index.js.map +1 -0
  454. package/dist/introspection/types.d.ts +120 -0
  455. package/dist/introspection/types.d.ts.map +1 -0
  456. package/dist/introspection/types.js +13 -0
  457. package/dist/introspection/types.js.map +1 -0
  458. package/dist/observability/DebugObserver.d.ts +185 -0
  459. package/dist/observability/DebugObserver.d.ts.map +1 -0
  460. package/dist/observability/DebugObserver.js +102 -0
  461. package/dist/observability/DebugObserver.js.map +1 -0
  462. package/dist/observability/TelemetryBus.d.ts +88 -0
  463. package/dist/observability/TelemetryBus.d.ts.map +1 -0
  464. package/dist/observability/TelemetryBus.js +463 -0
  465. package/dist/observability/TelemetryBus.js.map +1 -0
  466. package/dist/observability/TelemetryEvent.d.ts +177 -0
  467. package/dist/observability/TelemetryEvent.d.ts.map +1 -0
  468. package/dist/observability/TelemetryEvent.js +2 -0
  469. package/dist/observability/TelemetryEvent.js.map +1 -0
  470. package/dist/observability/Tracing.d.ts +155 -0
  471. package/dist/observability/Tracing.d.ts.map +1 -0
  472. package/dist/observability/Tracing.js +67 -0
  473. package/dist/observability/Tracing.js.map +1 -0
  474. package/dist/observability/index.d.ts +13 -0
  475. package/dist/observability/index.d.ts.map +1 -0
  476. package/dist/observability/index.js +12 -0
  477. package/dist/observability/index.js.map +1 -0
  478. package/dist/presenter/PostProcessor.d.ts +52 -0
  479. package/dist/presenter/PostProcessor.d.ts.map +1 -0
  480. package/dist/presenter/PostProcessor.js +148 -0
  481. package/dist/presenter/PostProcessor.js.map +1 -0
  482. package/dist/presenter/Presenter.d.ts +575 -0
  483. package/dist/presenter/Presenter.d.ts.map +1 -0
  484. package/dist/presenter/Presenter.js +768 -0
  485. package/dist/presenter/Presenter.js.map +1 -0
  486. package/dist/presenter/PresenterValidationError.d.ts +42 -0
  487. package/dist/presenter/PresenterValidationError.d.ts.map +1 -0
  488. package/dist/presenter/PresenterValidationError.js +55 -0
  489. package/dist/presenter/PresenterValidationError.js.map +1 -0
  490. package/dist/presenter/RedactEngine.d.ts +110 -0
  491. package/dist/presenter/RedactEngine.d.ts.map +1 -0
  492. package/dist/presenter/RedactEngine.js +128 -0
  493. package/dist/presenter/RedactEngine.js.map +1 -0
  494. package/dist/presenter/ResponseBuilder.d.ts +262 -0
  495. package/dist/presenter/ResponseBuilder.d.ts.map +1 -0
  496. package/dist/presenter/ResponseBuilder.js +374 -0
  497. package/dist/presenter/ResponseBuilder.js.map +1 -0
  498. package/dist/presenter/SelectUtils.d.ts +78 -0
  499. package/dist/presenter/SelectUtils.d.ts.map +1 -0
  500. package/dist/presenter/SelectUtils.js +141 -0
  501. package/dist/presenter/SelectUtils.js.map +1 -0
  502. package/dist/presenter/ZodDescriptionExtractor.d.ts +54 -0
  503. package/dist/presenter/ZodDescriptionExtractor.d.ts.map +1 -0
  504. package/dist/presenter/ZodDescriptionExtractor.js +131 -0
  505. package/dist/presenter/ZodDescriptionExtractor.js.map +1 -0
  506. package/dist/presenter/definePresenter.d.ts +193 -0
  507. package/dist/presenter/definePresenter.d.ts.map +1 -0
  508. package/dist/presenter/definePresenter.js +99 -0
  509. package/dist/presenter/definePresenter.js.map +1 -0
  510. package/dist/presenter/index.d.ts +21 -0
  511. package/dist/presenter/index.d.ts.map +1 -0
  512. package/dist/presenter/index.js +28 -0
  513. package/dist/presenter/index.js.map +1 -0
  514. package/dist/presenter/suggest.d.ts +39 -0
  515. package/dist/presenter/suggest.d.ts.map +1 -0
  516. package/dist/presenter/suggest.js +41 -0
  517. package/dist/presenter/suggest.js.map +1 -0
  518. package/dist/presenter/typeHelpers.d.ts +147 -0
  519. package/dist/presenter/typeHelpers.d.ts.map +1 -0
  520. package/dist/presenter/typeHelpers.js +152 -0
  521. package/dist/presenter/typeHelpers.js.map +1 -0
  522. package/dist/presenter/ui.d.ts +205 -0
  523. package/dist/presenter/ui.d.ts.map +1 -0
  524. package/dist/presenter/ui.js +222 -0
  525. package/dist/presenter/ui.js.map +1 -0
  526. package/dist/prompt/CursorCodec.d.ts +43 -0
  527. package/dist/prompt/CursorCodec.d.ts.map +1 -0
  528. package/dist/prompt/CursorCodec.js +171 -0
  529. package/dist/prompt/CursorCodec.js.map +1 -0
  530. package/dist/prompt/FluentPromptBuilder.d.ts +155 -0
  531. package/dist/prompt/FluentPromptBuilder.d.ts.map +1 -0
  532. package/dist/prompt/FluentPromptBuilder.js +195 -0
  533. package/dist/prompt/FluentPromptBuilder.js.map +1 -0
  534. package/dist/prompt/HydrationSandbox.d.ts +55 -0
  535. package/dist/prompt/HydrationSandbox.d.ts.map +1 -0
  536. package/dist/prompt/HydrationSandbox.js +122 -0
  537. package/dist/prompt/HydrationSandbox.js.map +1 -0
  538. package/dist/prompt/PromptExecutionPipeline.d.ts +61 -0
  539. package/dist/prompt/PromptExecutionPipeline.d.ts.map +1 -0
  540. package/dist/prompt/PromptExecutionPipeline.js +177 -0
  541. package/dist/prompt/PromptExecutionPipeline.js.map +1 -0
  542. package/dist/prompt/PromptMessage.d.ts +133 -0
  543. package/dist/prompt/PromptMessage.d.ts.map +1 -0
  544. package/dist/prompt/PromptMessage.js +182 -0
  545. package/dist/prompt/PromptMessage.js.map +1 -0
  546. package/dist/prompt/PromptRegistry.d.ts +236 -0
  547. package/dist/prompt/PromptRegistry.d.ts.map +1 -0
  548. package/dist/prompt/PromptRegistry.js +399 -0
  549. package/dist/prompt/PromptRegistry.js.map +1 -0
  550. package/dist/prompt/definePrompt.d.ts +111 -0
  551. package/dist/prompt/definePrompt.d.ts.map +1 -0
  552. package/dist/prompt/definePrompt.js +130 -0
  553. package/dist/prompt/definePrompt.js.map +1 -0
  554. package/dist/prompt/index.d.ts +12 -0
  555. package/dist/prompt/index.d.ts.map +1 -0
  556. package/dist/prompt/index.js +13 -0
  557. package/dist/prompt/index.js.map +1 -0
  558. package/dist/prompt/types.d.ts +425 -0
  559. package/dist/prompt/types.d.ts.map +1 -0
  560. package/dist/prompt/types.js +19 -0
  561. package/dist/prompt/types.js.map +1 -0
  562. package/dist/sandbox/SandboxEngine.d.ts +225 -0
  563. package/dist/sandbox/SandboxEngine.d.ts.map +1 -0
  564. package/dist/sandbox/SandboxEngine.js +437 -0
  565. package/dist/sandbox/SandboxEngine.js.map +1 -0
  566. package/dist/sandbox/SandboxGuard.d.ts +47 -0
  567. package/dist/sandbox/SandboxGuard.d.ts.map +1 -0
  568. package/dist/sandbox/SandboxGuard.js +127 -0
  569. package/dist/sandbox/SandboxGuard.js.map +1 -0
  570. package/dist/sandbox/index.d.ts +23 -0
  571. package/dist/sandbox/index.d.ts.map +1 -0
  572. package/dist/sandbox/index.js +26 -0
  573. package/dist/sandbox/index.js.map +1 -0
  574. package/dist/server/DevServer.d.ts +120 -0
  575. package/dist/server/DevServer.d.ts.map +1 -0
  576. package/dist/server/DevServer.js +252 -0
  577. package/dist/server/DevServer.js.map +1 -0
  578. package/dist/server/ServerAttachment.d.ts +354 -0
  579. package/dist/server/ServerAttachment.d.ts.map +1 -0
  580. package/dist/server/ServerAttachment.js +709 -0
  581. package/dist/server/ServerAttachment.js.map +1 -0
  582. package/dist/server/ServerResolver.d.ts +24 -0
  583. package/dist/server/ServerResolver.d.ts.map +1 -0
  584. package/dist/server/ServerResolver.js +50 -0
  585. package/dist/server/ServerResolver.js.map +1 -0
  586. package/dist/server/autoDiscover.d.ts +75 -0
  587. package/dist/server/autoDiscover.d.ts.map +1 -0
  588. package/dist/server/autoDiscover.js +164 -0
  589. package/dist/server/autoDiscover.js.map +1 -0
  590. package/dist/server/index.d.ts +12 -0
  591. package/dist/server/index.d.ts.map +1 -0
  592. package/dist/server/index.js +11 -0
  593. package/dist/server/index.js.map +1 -0
  594. package/dist/server/startServer.d.ts +81 -0
  595. package/dist/server/startServer.d.ts.map +1 -0
  596. package/dist/server/startServer.js +143 -0
  597. package/dist/server/startServer.js.map +1 -0
  598. package/dist/state-sync/CausalEngine.d.ts +28 -0
  599. package/dist/state-sync/CausalEngine.d.ts.map +1 -0
  600. package/dist/state-sync/CausalEngine.js +17 -0
  601. package/dist/state-sync/CausalEngine.js.map +1 -0
  602. package/dist/state-sync/DescriptionDecorator.d.ts +31 -0
  603. package/dist/state-sync/DescriptionDecorator.d.ts.map +1 -0
  604. package/dist/state-sync/DescriptionDecorator.js +38 -0
  605. package/dist/state-sync/DescriptionDecorator.js.map +1 -0
  606. package/dist/state-sync/GlobMatcher.d.ts +29 -0
  607. package/dist/state-sync/GlobMatcher.d.ts.map +1 -0
  608. package/dist/state-sync/GlobMatcher.js +79 -0
  609. package/dist/state-sync/GlobMatcher.js.map +1 -0
  610. package/dist/state-sync/PolicyEngine.d.ts +75 -0
  611. package/dist/state-sync/PolicyEngine.d.ts.map +1 -0
  612. package/dist/state-sync/PolicyEngine.js +107 -0
  613. package/dist/state-sync/PolicyEngine.js.map +1 -0
  614. package/dist/state-sync/PolicyValidator.d.ts +67 -0
  615. package/dist/state-sync/PolicyValidator.d.ts.map +1 -0
  616. package/dist/state-sync/PolicyValidator.js +122 -0
  617. package/dist/state-sync/PolicyValidator.js.map +1 -0
  618. package/dist/state-sync/ResponseDecorator.d.ts +33 -0
  619. package/dist/state-sync/ResponseDecorator.d.ts.map +1 -0
  620. package/dist/state-sync/ResponseDecorator.js +20 -0
  621. package/dist/state-sync/ResponseDecorator.js.map +1 -0
  622. package/dist/state-sync/StateSyncBuilder.d.ts +77 -0
  623. package/dist/state-sync/StateSyncBuilder.d.ts.map +1 -0
  624. package/dist/state-sync/StateSyncBuilder.js +129 -0
  625. package/dist/state-sync/StateSyncBuilder.js.map +1 -0
  626. package/dist/state-sync/StateSyncLayer.d.ts +107 -0
  627. package/dist/state-sync/StateSyncLayer.d.ts.map +1 -0
  628. package/dist/state-sync/StateSyncLayer.js +158 -0
  629. package/dist/state-sync/StateSyncLayer.js.map +1 -0
  630. package/dist/state-sync/index.d.ts +27 -0
  631. package/dist/state-sync/index.d.ts.map +1 -0
  632. package/dist/state-sync/index.js +27 -0
  633. package/dist/state-sync/index.js.map +1 -0
  634. package/dist/state-sync/types.d.ts +174 -0
  635. package/dist/state-sync/types.d.ts.map +1 -0
  636. package/dist/state-sync/types.js +17 -0
  637. package/dist/state-sync/types.js.map +1 -0
  638. package/dist/testing/MvaMetaSymbol.d.ts +45 -0
  639. package/dist/testing/MvaMetaSymbol.d.ts.map +1 -0
  640. package/dist/testing/MvaMetaSymbol.js +34 -0
  641. package/dist/testing/MvaMetaSymbol.js.map +1 -0
  642. package/package.json +153 -0
@@ -0,0 +1,12 @@
1
+ /**
2
+ * Prompt Engine — Barrel Export
3
+ *
4
+ * Public API for the MCP Prompt Engine.
5
+ * All exports are re-exported from bounded context modules.
6
+ */
7
+ export type { PromptMessagePayload, PromptResult, PromptParamDef, PromptParamsMap, PromptBuilder, PromptConfig, ToolInvocationResult, LoopbackContext, PromptInterceptorFn, InterceptorBuilder, PromptMeta, } from './types.js';
8
+ export { PromptMessage } from './PromptMessage.js';
9
+ export { definePrompt } from './definePrompt.js';
10
+ export { FluentPromptBuilder } from './FluentPromptBuilder.js';
11
+ export { assertFlatSchema, coercePromptArgs, } from './PromptExecutionPipeline.js';
12
+ //# sourceMappingURL=index.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/prompt/index.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAGH,YAAY,EACR,oBAAoB,EACpB,YAAY,EACZ,cAAc,EACd,eAAe,EACf,aAAa,EACb,YAAY,EACZ,oBAAoB,EACpB,eAAe,EACf,mBAAmB,EACnB,kBAAkB,EAClB,UAAU,GACb,MAAM,YAAY,CAAC;AAGpB,OAAO,EAAE,aAAa,EAAE,MAAM,oBAAoB,CAAC;AACnD,OAAO,EAAE,YAAY,EAAE,MAAM,mBAAmB,CAAC;AACjD,OAAO,EAAE,mBAAmB,EAAE,MAAM,0BAA0B,CAAC;AAG/D,OAAO,EACH,gBAAgB,EAChB,gBAAgB,GACnB,MAAM,8BAA8B,CAAC"}
@@ -0,0 +1,13 @@
1
+ /**
2
+ * Prompt Engine — Barrel Export
3
+ *
4
+ * Public API for the MCP Prompt Engine.
5
+ * All exports are re-exported from bounded context modules.
6
+ */
7
+ // ── Factories ────────────────────────────────────────────
8
+ export { PromptMessage } from './PromptMessage.js';
9
+ export { definePrompt } from './definePrompt.js';
10
+ export { FluentPromptBuilder } from './FluentPromptBuilder.js';
11
+ // ── Pipeline (advanced / testing) ────────────────────────
12
+ export { assertFlatSchema, coercePromptArgs, } from './PromptExecutionPipeline.js';
13
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/prompt/index.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAiBH,4DAA4D;AAC5D,OAAO,EAAE,aAAa,EAAE,MAAM,oBAAoB,CAAC;AACnD,OAAO,EAAE,YAAY,EAAE,MAAM,mBAAmB,CAAC;AACjD,OAAO,EAAE,mBAAmB,EAAE,MAAM,0BAA0B,CAAC;AAE/D,4DAA4D;AAC5D,OAAO,EACH,gBAAgB,EAChB,gBAAgB,GACnB,MAAM,8BAA8B,CAAC"}
@@ -0,0 +1,425 @@
1
+ /**
2
+ * Prompt Engine — Types & Contracts
3
+ *
4
+ * Type-only module defining the core contracts for the Prompt Engine.
5
+ * Follows the same "zero runtime code" pattern as `core/types.ts`.
6
+ *
7
+ * Key design decisions:
8
+ * - `PromptParamDef` restricts to flat primitives only (no arrays, no nested objects)
9
+ * because MCP clients render prompt arguments as visual forms.
10
+ * - `PromptResult` mirrors MCP SDK's `GetPromptResult` shape.
11
+ * - `PromptBuilder` is the DIP interface that `PromptRegistry` depends on.
12
+ *
13
+ * @module
14
+ */
15
+ import { type ZodObject, type ZodRawShape } from 'zod';
16
+ import { type MiddlewareFn } from '../core/types.js';
17
+ import { type StringParamDef, type NumberParamDef, type BooleanParamDef, type EnumParamDef } from '../core/builder/ParamDescriptors.js';
18
+ import { type ToolResponse } from '../core/response.js';
19
+ /**
20
+ * Result of an internal Tool invocation from within a Prompt handler.
21
+ *
22
+ * Returned by `ctx.invokeTool()`. Provides the Presenter-rendered text
23
+ * and error status without exposing MCP wire format internals.
24
+ *
25
+ * @example
26
+ * ```typescript
27
+ * const result = await ctx.invokeTool('billing.list_invoices', { date: '2026-01' });
28
+ * if (result.isError) {
29
+ * // Handle gracefully — result.text contains the error message
30
+ * }
31
+ * // result.text contains the full Presenter-rendered output
32
+ * ```
33
+ */
34
+ export interface ToolInvocationResult {
35
+ /** The full Presenter-rendered text output of the Tool */
36
+ readonly text: string;
37
+ /** Whether the Tool returned an error (`isError: true` in ToolResponse) */
38
+ readonly isError: boolean;
39
+ /** The original ToolResponse for advanced use cases */
40
+ readonly raw: ToolResponse;
41
+ }
42
+ /**
43
+ * Context extension injected by ServerAttachment when a PromptRegistry is attached.
44
+ *
45
+ * Enables **Internal Loopback Dispatch** — Prompt handlers can invoke Tools
46
+ * in-memory without an LLM round-trip. The Tool's full pipeline runs:
47
+ * middleware → validation → handler → Presenter. RBAC is enforced.
48
+ *
49
+ * **Design**: The Prompt acts as a server-side macro, aggregating data from
50
+ * multiple Tools into a single prompt. The dev codes the extraction logic
51
+ * once in the Tool, and the Prompt reuses the rendered result.
52
+ *
53
+ * @example
54
+ * ```typescript
55
+ * handler: async (ctx, args) => {
56
+ * const invoices = await ctx.invokeTool('billing.list_invoices', { date: args.date });
57
+ * const tickets = await ctx.invokeTool('jira.get_assigned', { user_id: ctx.user.id });
58
+ *
59
+ * return {
60
+ * messages: [
61
+ * PromptMessage.system('Plan my day based on this context:'),
62
+ * PromptMessage.user(`### Invoices\n${invoices.text}\n\n### Tickets\n${tickets.text}`),
63
+ * ],
64
+ * };
65
+ * }
66
+ * ```
67
+ */
68
+ export interface LoopbackContext {
69
+ /**
70
+ * Invoke a Tool internally, in-memory.
71
+ *
72
+ * Runs the Tool's full pipeline (middleware → validate → handler → Presenter)
73
+ * with the **same context** as the current Prompt request. RBAC is enforced.
74
+ *
75
+ * @param name - Tool name in canonical dot-notation (e.g. `'billing.list_invoices'`)
76
+ * @param args - Arguments passed to the Tool handler (default: `{}`)
77
+ * @returns The rendered Tool output
78
+ */
79
+ invokeTool(name: string, args?: Record<string, unknown>): Promise<ToolInvocationResult>;
80
+ }
81
+ /**
82
+ * Read-only metadata about the prompt being executed.
83
+ *
84
+ * Passed to interceptor callbacks so they can conditionally inject
85
+ * context based on the prompt's identity, tags, or description.
86
+ */
87
+ export interface PromptMeta {
88
+ /** The prompt's registered name */
89
+ readonly name: string;
90
+ /** The prompt description (if provided) */
91
+ readonly description?: string;
92
+ /** The prompt's capability tags */
93
+ readonly tags: readonly string[];
94
+ }
95
+ /**
96
+ * Mutable builder-pattern facade for Prompt Interceptors.
97
+ *
98
+ * Interceptors use this to inject messages into the prompt result
99
+ * without touching the developer's handler code. Multiple interceptors
100
+ * compose cleanly — prepends stack in registration order (first registered
101
+ * ends up at the very top), appends stack in registration order.
102
+ *
103
+ * @example
104
+ * ```typescript
105
+ * registry.useInterceptor(async (ctx, builder, meta) => {
106
+ * builder.prependSystem(
107
+ * `[COMPLIANCE] Tenant: ${ctx.tenant.id} | User: ${ctx.user.role}`
108
+ * );
109
+ * builder.appendUser('--- End of automated context ---');
110
+ * });
111
+ * ```
112
+ */
113
+ export interface InterceptorBuilder {
114
+ /** Prepend a system message at the TOP of the prompt messages */
115
+ prependSystem(text: string): void;
116
+ /** Prepend a user message at the TOP of the prompt messages */
117
+ prependUser(text: string): void;
118
+ /** Append a system message at the END of the prompt messages */
119
+ appendSystem(text: string): void;
120
+ /** Append a user message at the END of the prompt messages */
121
+ appendUser(text: string): void;
122
+ /** Append an assistant message at the END (for seeded responses) */
123
+ appendAssistant(text: string): void;
124
+ /**
125
+ * Prepend structured context with XML semantic boundary (MX-optimized).
126
+ *
127
+ * Auto-wraps the data in `<{tag}_context>` XML tags, giving the LLM
128
+ * a clear semantic boundary. Best for compliance, tenant, and RBAC context.
129
+ *
130
+ * @param tag - Semantic tag name (e.g. 'compliance', 'tenant', 'rbac')
131
+ * @param data - Key-value pairs to inject
132
+ *
133
+ * @example
134
+ * ```typescript
135
+ * builder.prependContext('compliance', {
136
+ * role: ctx.user.role,
137
+ * tenant: ctx.tenant.id,
138
+ * });
139
+ * // LLM receives:
140
+ * // <compliance_context>
141
+ * // role: admin
142
+ * // tenant: acme-corp
143
+ * // </compliance_context>
144
+ * ```
145
+ */
146
+ prependContext(tag: string, data: Record<string, string | number | boolean>): void;
147
+ /**
148
+ * Append structured context with XML semantic boundary (MX-optimized).
149
+ *
150
+ * Same as {@link prependContext} but appended at the END of messages.
151
+ *
152
+ * @param tag - Semantic tag name
153
+ * @param data - Key-value pairs to inject
154
+ */
155
+ appendContext(tag: string, data: Record<string, string | number | boolean>): void;
156
+ }
157
+ /**
158
+ * Prompt Interceptor callback signature.
159
+ *
160
+ * Interceptors run AFTER the handler produces its result and BEFORE
161
+ * the result is returned to the MCP client. They can inject compliance
162
+ * headers, tenant context, RBAC constraints, or any global context
163
+ * that should wrap every prompt — without modifying individual handlers.
164
+ *
165
+ * The enterprise answer to "every prompt must include tenant context":
166
+ * write it once, enforce it everywhere.
167
+ *
168
+ * @typeParam TContext - Application context type
169
+ *
170
+ * @example
171
+ * ```typescript
172
+ * // Register once — applies to ALL 50 prompts in the company:
173
+ * promptRegistry.useInterceptor(async (ctx, builder, meta) => {
174
+ * builder.prependSystem(
175
+ * `[ENTERPRISE COMPLIANCE LAYER]\n` +
176
+ * `User Role: ${ctx.user.role} (Tenant ID: ${ctx.tenant.id})\n` +
177
+ * `Server Time: ${new Date().toISOString()}`
178
+ * );
179
+ * });
180
+ * ```
181
+ */
182
+ export type PromptInterceptorFn<TContext> = (ctx: TContext, builder: InterceptorBuilder, meta: PromptMeta) => void | Promise<void>;
183
+ /**
184
+ * Text content block — the most common prompt message type.
185
+ */
186
+ export interface PromptTextContent {
187
+ readonly type: 'text';
188
+ readonly text: string;
189
+ }
190
+ /**
191
+ * Image content block — base64-encoded image data.
192
+ */
193
+ export interface PromptImageContent {
194
+ readonly type: 'image';
195
+ readonly data: string;
196
+ readonly mimeType: string;
197
+ }
198
+ /**
199
+ * Audio content block — base64-encoded audio data.
200
+ */
201
+ export interface PromptAudioContent {
202
+ readonly type: 'audio';
203
+ readonly data: string;
204
+ readonly mimeType: string;
205
+ }
206
+ /**
207
+ * Embedded resource content block — references a server-side resource.
208
+ */
209
+ export interface PromptResourceContent {
210
+ readonly type: 'resource';
211
+ readonly resource: {
212
+ readonly uri: string;
213
+ readonly mimeType?: string;
214
+ readonly text?: string;
215
+ readonly blob?: string;
216
+ };
217
+ }
218
+ /**
219
+ * Union of all MCP-compliant content types for prompt messages.
220
+ *
221
+ * Matches `ContentBlock` from the MCP spec:
222
+ * `TextContent | ImageContent | AudioContent | ResourceLink | EmbeddedResource`
223
+ */
224
+ export type PromptContentBlock = PromptTextContent | PromptImageContent | PromptAudioContent | PromptResourceContent;
225
+ /**
226
+ * A single message within a hydrated prompt result.
227
+ *
228
+ * Fully MCP-compliant: supports text, image, audio, and
229
+ * embedded resource content types.
230
+ *
231
+ * @see https://modelcontextprotocol.io/docs/concepts/prompts#promptmessage
232
+ */
233
+ export interface PromptMessagePayload {
234
+ readonly role: 'user' | 'assistant';
235
+ readonly content: PromptContentBlock;
236
+ }
237
+ /**
238
+ * The result of hydrating a prompt via `prompts/get`.
239
+ *
240
+ * Mirrors the MCP SDK `GetPromptResult` shape.
241
+ */
242
+ export interface PromptResult {
243
+ readonly description?: string;
244
+ readonly messages: readonly PromptMessagePayload[];
245
+ }
246
+ /**
247
+ * Prompt-safe param descriptors: only flat primitives allowed.
248
+ *
249
+ * **Why?** MCP clients (Claude Desktop, Cursor) render prompt arguments
250
+ * as native visual forms. Nested objects and arrays cannot be rendered
251
+ * by any current MCP client — allowing them produces invisible or
252
+ * broken form fields.
253
+ *
254
+ * Allowed: `'string'`, `'number'`, `'boolean'`, `StringParamDef`,
255
+ * `NumberParamDef`, `BooleanParamDef`, `EnumParamDef`.
256
+ *
257
+ * ❌ `ArrayParamDef` — cannot be rendered as a form field.
258
+ * ❌ Nested `ZodObject` — cannot be rendered as a form field.
259
+ *
260
+ * @see {@link PromptParamsMap} for the full prompt args type
261
+ */
262
+ export type PromptParamDef = 'string' | 'number' | 'boolean' | StringParamDef | NumberParamDef | BooleanParamDef | EnumParamDef<string>;
263
+ /**
264
+ * Map of prompt argument names to their flat-only definitions.
265
+ *
266
+ * @example
267
+ * ```typescript
268
+ * const args: PromptParamsMap = {
269
+ * month: { enum: ['january', 'february'] },
270
+ * limit: { type: 'number', min: 1, max: 100 },
271
+ * verbose: 'boolean',
272
+ * };
273
+ * ```
274
+ */
275
+ export type PromptParamsMap = Record<string, PromptParamDef>;
276
+ /**
277
+ * Infer the TypeScript type from a single `PromptParamDef`.
278
+ *
279
+ * Maps JSON descriptor shorthand to its corresponding TS type:
280
+ * - `'string'` → `string`
281
+ * - `'number'` → `number`
282
+ * - `'boolean'` → `boolean`
283
+ * - `StringParamDef` → `string`
284
+ * - `NumberParamDef` → `number`
285
+ * - `BooleanParamDef` → `boolean`
286
+ * - `EnumParamDef<T>` → `T` (union of literal strings)
287
+ */
288
+ type InferPromptParamType<T extends PromptParamDef> = T extends 'string' ? string : T extends 'number' ? number : T extends 'boolean' ? boolean : T extends StringParamDef ? string : T extends NumberParamDef ? number : T extends BooleanParamDef ? boolean : T extends EnumParamDef<infer E> ? E : unknown;
289
+ /**
290
+ * Infer the full typed args object from a `PromptParamsMap`.
291
+ *
292
+ * Gives developers full autocomplete and type safety on handler args
293
+ * when using the JSON-first descriptor approach — zero Zod imports needed.
294
+ *
295
+ * @example
296
+ * ```typescript
297
+ * const args = {
298
+ * name: { type: 'string', required: true },
299
+ * age: { type: 'number' },
300
+ * } as const;
301
+ *
302
+ * // InferPromptArgs<typeof args> = { name: string; age: number }
303
+ * ```
304
+ */
305
+ export type InferPromptArgs<T extends Record<string, PromptParamDef>> = {
306
+ [K in keyof T]: InferPromptParamType<T[K]>;
307
+ };
308
+ /**
309
+ * Interface that all prompt builders must implement.
310
+ *
311
+ * This is the abstraction that {@link PromptRegistry} depends on,
312
+ * following the Dependency Inversion Principle.
313
+ *
314
+ * @typeParam TContext - Application context passed to every handler
315
+ */
316
+ export interface PromptBuilder<TContext = void> {
317
+ /** Get the prompt name (used as the registration key) */
318
+ getName(): string;
319
+ /** Get the prompt description */
320
+ getDescription(): string | undefined;
321
+ /** Get the capability tags for selective exposure */
322
+ getTags(): string[];
323
+ /** Whether this prompt has middleware */
324
+ hasMiddleware(): boolean;
325
+ /**
326
+ * Build and return the MCP Prompt definition (for `prompts/list`).
327
+ *
328
+ * Returns the prompt metadata including name, description,
329
+ * and argument definitions.
330
+ */
331
+ buildPromptDefinition(): {
332
+ name: string;
333
+ description?: string;
334
+ arguments?: Array<{
335
+ name: string;
336
+ description?: string;
337
+ required?: boolean;
338
+ }>;
339
+ };
340
+ /**
341
+ * Execute the prompt hydration with the given context and arguments.
342
+ *
343
+ * Performs: coercion → validation → middleware → handler.
344
+ *
345
+ * @param ctx - Application context (from contextFactory)
346
+ * @param args - Raw string arguments from the MCP client
347
+ * @returns The hydrated prompt result with messages
348
+ */
349
+ execute(ctx: TContext, args: Record<string, string>): Promise<PromptResult>;
350
+ /**
351
+ * Get the configured hydration timeout (in milliseconds).
352
+ *
353
+ * When set, the handler is wrapped in a strict deadline.
354
+ * If the handler doesn't complete within this time, a
355
+ * SYSTEM ALERT is returned instead of freezing the UI.
356
+ *
357
+ * @returns Timeout in ms, or `undefined` if no deadline is configured
358
+ */
359
+ getHydrationTimeout(): number | undefined;
360
+ }
361
+ /**
362
+ * Configuration for `definePrompt()`.
363
+ *
364
+ * @typeParam TContext - Application context type
365
+ * @typeParam TArgs - Validated args type (inferred from `args`)
366
+ */
367
+ export interface PromptConfig<TContext, TArgs extends Record<string, unknown> = Record<string, unknown>> {
368
+ /** Human-readable title for display in UI (MCP spec `BaseMetadata.title`) */
369
+ title?: string;
370
+ /** Human-readable description shown in the slash command palette */
371
+ description?: string;
372
+ /** Icons for light/dark themes (MCP spec `Icons`) */
373
+ icons?: {
374
+ light?: string;
375
+ dark?: string;
376
+ };
377
+ /**
378
+ * Argument definitions.
379
+ *
380
+ * Accepts either:
381
+ * - `PromptParamsMap` (JSON descriptors) — zero Zod imports needed
382
+ * - `ZodObject` — for power users who need full Zod control
383
+ *
384
+ * **Constraint:** Only flat primitives allowed. Arrays and nested
385
+ * objects will fail with a runtime error at definition time.
386
+ */
387
+ args?: PromptParamsMap | ZodObject<ZodRawShape>;
388
+ /** Capability tags for selective exposure */
389
+ tags?: string[];
390
+ /** Middleware chain (same signature as tool middleware) */
391
+ middleware?: MiddlewareFn<TContext>[];
392
+ /**
393
+ * Maximum hydration time in milliseconds.
394
+ *
395
+ * When set, the handler is wrapped in a strict deadline. If external
396
+ * data sources (APIs, databases) don't respond within this time,
397
+ * the framework cuts the Promise and returns a graceful SYSTEM ALERT.
398
+ * The UI unblocks immediately — the user never sees a frozen screen.
399
+ *
400
+ * @example
401
+ * ```typescript
402
+ * definePrompt('morning_briefing', {
403
+ * hydrationTimeout: 3000, // 3 seconds strict
404
+ * handler: async (ctx, args) => {
405
+ * // If Jira takes 15s, the framework cuts at 3s
406
+ * const tickets = await ctx.invokeTool('jira.get_assigned');
407
+ * return { messages: [...] };
408
+ * },
409
+ * });
410
+ * ```
411
+ */
412
+ hydrationTimeout?: number;
413
+ /**
414
+ * The hydration handler.
415
+ *
416
+ * Receives validated, typed, coerced args and returns a `PromptResult`.
417
+ * This is where server-side data fetching and Presenter calls happen.
418
+ *
419
+ * **DX**: `ctx` is typed as `TContext & LoopbackContext` — `invokeTool()`
420
+ * appears in autocomplete without any manual cast.
421
+ */
422
+ handler: (ctx: TContext & LoopbackContext, args: TArgs) => Promise<PromptResult>;
423
+ }
424
+ export {};
425
+ //# sourceMappingURL=types.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../src/prompt/types.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,19 @@
1
+ /**
2
+ * Prompt Engine — Types & Contracts
3
+ *
4
+ * Type-only module defining the core contracts for the Prompt Engine.
5
+ * Follows the same "zero runtime code" pattern as `core/types.ts`.
6
+ *
7
+ * Key design decisions:
8
+ * - `PromptParamDef` restricts to flat primitives only (no arrays, no nested objects)
9
+ * because MCP clients render prompt arguments as visual forms.
10
+ * - `PromptResult` mirrors MCP SDK's `GetPromptResult` shape.
11
+ * - `PromptBuilder` is the DIP interface that `PromptRegistry` depends on.
12
+ *
13
+ * @module
14
+ */
15
+ import {} from 'zod';
16
+ import {} from '../core/types.js';
17
+ import {} from '../core/builder/ParamDescriptors.js';
18
+ import {} from '../core/response.js';
19
+ //# sourceMappingURL=types.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"types.js","sourceRoot":"","sources":["../../src/prompt/types.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;GAaG;AACH,OAAO,EAAoC,MAAM,KAAK,CAAC;AACvD,OAAO,EAAqB,MAAM,kBAAkB,CAAC;AACrD,OAAO,EAKN,MAAM,qCAAqC,CAAC;AAC7C,OAAO,EAAqB,MAAM,qBAAqB,CAAC"}