rivet-design 0.12.3 → 0.13.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 (535) hide show
  1. package/README.md +50 -26
  2. package/README.npm.md +50 -26
  3. package/bin/rivet.js +39 -24
  4. package/dist/{mcp/agent-variants → agent-variants}/SessionStore.d.ts +11 -19
  5. package/dist/agent-variants/SessionStore.d.ts.map +1 -0
  6. package/dist/{mcp/agent-variants → agent-variants}/SessionStore.js +77 -80
  7. package/dist/agent-variants/SessionStore.js.map +1 -0
  8. package/dist/{mcp/agent-variants → agent-variants}/WorktreeOrchestrator.d.ts +53 -21
  9. package/dist/agent-variants/WorktreeOrchestrator.d.ts.map +1 -0
  10. package/dist/{mcp/agent-variants → agent-variants}/WorktreeOrchestrator.js +291 -49
  11. package/dist/agent-variants/WorktreeOrchestrator.js.map +1 -0
  12. package/dist/{mcp/agent-variants → agent-variants}/WorktreeOrchestrator.testHelpers.d.ts +1 -9
  13. package/dist/agent-variants/WorktreeOrchestrator.testHelpers.d.ts.map +1 -0
  14. package/dist/{mcp/agent-variants → agent-variants}/WorktreeOrchestrator.testHelpers.js +3 -18
  15. package/dist/agent-variants/WorktreeOrchestrator.testHelpers.js.map +1 -0
  16. package/dist/agent-variants/briefContent.d.ts.map +1 -0
  17. package/dist/agent-variants/briefContent.js.map +1 -0
  18. package/dist/{mcp/agent-variants → agent-variants}/contracts.d.ts +715 -721
  19. package/dist/agent-variants/contracts.d.ts.map +1 -0
  20. package/dist/{mcp/agent-variants → agent-variants}/contracts.js +2 -3
  21. package/dist/agent-variants/contracts.js.map +1 -0
  22. package/dist/agent-variants/createProjectArtifacts.d.ts.map +1 -0
  23. package/dist/agent-variants/createProjectArtifacts.js.map +1 -0
  24. package/dist/agent-variants/diffQa.d.ts.map +1 -0
  25. package/dist/agent-variants/diffQa.js.map +1 -0
  26. package/dist/{mcp/agent-variants → agent-variants}/elementRefToTarget.d.ts +1 -1
  27. package/dist/agent-variants/elementRefToTarget.d.ts.map +1 -0
  28. package/dist/agent-variants/elementRefToTarget.js.map +1 -0
  29. package/dist/agent-variants/errors.d.ts.map +1 -0
  30. package/dist/agent-variants/errors.js.map +1 -0
  31. package/dist/agent-variants/generatedDestination.d.ts +29 -0
  32. package/dist/agent-variants/generatedDestination.d.ts.map +1 -0
  33. package/dist/agent-variants/generatedDestination.js +59 -0
  34. package/dist/agent-variants/generatedDestination.js.map +1 -0
  35. package/dist/{mcp/agent-variants → agent-variants}/index.d.ts +3 -6
  36. package/dist/agent-variants/index.d.ts.map +1 -0
  37. package/dist/{mcp/agent-variants → agent-variants}/index.js +3 -6
  38. package/dist/agent-variants/index.js.map +1 -0
  39. package/dist/agent-variants/previewQa.d.ts.map +1 -0
  40. package/dist/agent-variants/previewQa.js.map +1 -0
  41. package/dist/agent-variants/runLabel.d.ts.map +1 -0
  42. package/dist/agent-variants/runLabel.js.map +1 -0
  43. package/dist/agent-variants/runPlan.d.ts.map +1 -0
  44. package/dist/agent-variants/runPlan.js.map +1 -0
  45. package/dist/agent-variants/sourceContext.d.ts.map +1 -0
  46. package/dist/agent-variants/sourceContext.js.map +1 -0
  47. package/dist/agent-variants/variantContext.d.ts.map +1 -0
  48. package/dist/agent-variants/variantContext.js.map +1 -0
  49. package/dist/cli/client.d.ts +43 -0
  50. package/dist/cli/client.d.ts.map +1 -0
  51. package/dist/cli/client.js +109 -0
  52. package/dist/cli/client.js.map +1 -0
  53. package/dist/cli/commandNames.d.ts +9 -0
  54. package/dist/cli/commandNames.d.ts.map +1 -0
  55. package/dist/cli/commandNames.js +24 -0
  56. package/dist/cli/commandNames.js.map +1 -0
  57. package/dist/cli/commands/auth.d.ts +10 -0
  58. package/dist/cli/commands/auth.d.ts.map +1 -0
  59. package/dist/cli/commands/auth.js +81 -0
  60. package/dist/cli/commands/auth.js.map +1 -0
  61. package/dist/cli/commands/elementSelector.d.ts +10 -0
  62. package/dist/cli/commands/elementSelector.d.ts.map +1 -0
  63. package/dist/cli/commands/elementSelector.js +41 -0
  64. package/dist/cli/commands/elementSelector.js.map +1 -0
  65. package/dist/cli/commands/evidence.d.ts +9 -0
  66. package/dist/cli/commands/evidence.d.ts.map +1 -0
  67. package/dist/cli/commands/evidence.js +85 -0
  68. package/dist/cli/commands/evidence.js.map +1 -0
  69. package/dist/cli/commands/mcpServe.d.ts +40 -0
  70. package/dist/cli/commands/mcpServe.d.ts.map +1 -0
  71. package/dist/cli/commands/mcpServe.js +440 -0
  72. package/dist/cli/commands/mcpServe.js.map +1 -0
  73. package/dist/cli/commands/open.d.ts +28 -0
  74. package/dist/cli/commands/open.d.ts.map +1 -0
  75. package/dist/cli/commands/open.js +280 -0
  76. package/dist/cli/commands/open.js.map +1 -0
  77. package/dist/cli/commands/reference.d.ts +8 -0
  78. package/dist/cli/commands/reference.d.ts.map +1 -0
  79. package/dist/cli/commands/reference.js +101 -0
  80. package/dist/cli/commands/reference.js.map +1 -0
  81. package/dist/cli/commands/serve.d.ts +9 -0
  82. package/dist/cli/commands/serve.d.ts.map +1 -0
  83. package/dist/cli/commands/serve.js +182 -0
  84. package/dist/cli/commands/serve.js.map +1 -0
  85. package/dist/cli/commands/shared.d.ts +31 -0
  86. package/dist/cli/commands/shared.d.ts.map +1 -0
  87. package/dist/cli/commands/shared.js +82 -0
  88. package/dist/cli/commands/shared.js.map +1 -0
  89. package/dist/cli/commands/status.d.ts +10 -0
  90. package/dist/cli/commands/status.d.ts.map +1 -0
  91. package/dist/cli/commands/status.js +61 -0
  92. package/dist/cli/commands/status.js.map +1 -0
  93. package/dist/cli/commands/stop.d.ts +8 -0
  94. package/dist/cli/commands/stop.d.ts.map +1 -0
  95. package/dist/cli/commands/stop.js +41 -0
  96. package/dist/cli/commands/stop.js.map +1 -0
  97. package/dist/cli/commands/variants.d.ts +4 -0
  98. package/dist/cli/commands/variants.d.ts.map +1 -0
  99. package/dist/cli/commands/variants.js +374 -0
  100. package/dist/cli/commands/variants.js.map +1 -0
  101. package/dist/cli/commands/wait.d.ts +10 -0
  102. package/dist/cli/commands/wait.d.ts.map +1 -0
  103. package/dist/cli/commands/wait.js +101 -0
  104. package/dist/cli/commands/wait.js.map +1 -0
  105. package/dist/cli/entry.d.ts +12 -0
  106. package/dist/cli/entry.d.ts.map +1 -0
  107. package/dist/cli/entry.js +61 -0
  108. package/dist/cli/entry.js.map +1 -0
  109. package/dist/cli/envelope.d.ts +60 -0
  110. package/dist/cli/envelope.d.ts.map +1 -0
  111. package/dist/cli/envelope.js +57 -0
  112. package/dist/cli/envelope.js.map +1 -0
  113. package/dist/cli/flags.d.ts +20 -0
  114. package/dist/cli/flags.d.ts.map +1 -0
  115. package/dist/cli/flags.js +72 -0
  116. package/dist/cli/flags.js.map +1 -0
  117. package/dist/cli/handoff.d.ts +54 -0
  118. package/dist/cli/handoff.d.ts.map +1 -0
  119. package/dist/cli/handoff.js +106 -0
  120. package/dist/cli/handoff.js.map +1 -0
  121. package/dist/cli/handoffStore.d.ts +24 -0
  122. package/dist/cli/handoffStore.d.ts.map +1 -0
  123. package/dist/cli/handoffStore.js +49 -0
  124. package/dist/cli/handoffStore.js.map +1 -0
  125. package/dist/cli/hostWorkNextAction.d.ts +45 -0
  126. package/dist/cli/hostWorkNextAction.d.ts.map +1 -0
  127. package/dist/cli/hostWorkNextAction.js +43 -0
  128. package/dist/cli/hostWorkNextAction.js.map +1 -0
  129. package/dist/cli/io.d.ts +17 -0
  130. package/dist/cli/io.d.ts.map +1 -0
  131. package/dist/cli/io.js +19 -0
  132. package/dist/cli/io.js.map +1 -0
  133. package/dist/cli/router.d.ts +23 -0
  134. package/dist/cli/router.d.ts.map +1 -0
  135. package/dist/cli/router.js +236 -0
  136. package/dist/cli/router.js.map +1 -0
  137. package/dist/cli/runnerSelection.d.ts +60 -0
  138. package/dist/cli/runnerSelection.d.ts.map +1 -0
  139. package/dist/cli/runnerSelection.js +93 -0
  140. package/dist/cli/runnerSelection.js.map +1 -0
  141. package/dist/cli/serverHandshake.d.ts +51 -0
  142. package/dist/cli/serverHandshake.d.ts.map +1 -0
  143. package/dist/cli/serverHandshake.js +144 -0
  144. package/dist/cli/serverHandshake.js.map +1 -0
  145. package/dist/index.d.ts +2 -14
  146. package/dist/index.d.ts.map +1 -1
  147. package/dist/index.js +84 -138
  148. package/dist/index.js.map +1 -1
  149. package/dist/install/allowlists.d.ts +65 -0
  150. package/dist/install/allowlists.d.ts.map +1 -0
  151. package/dist/install/allowlists.js +333 -0
  152. package/dist/install/allowlists.js.map +1 -0
  153. package/dist/install/codexGuidance.d.ts +11 -0
  154. package/dist/install/codexGuidance.d.ts.map +1 -0
  155. package/dist/install/codexGuidance.js +90 -0
  156. package/dist/install/codexGuidance.js.map +1 -0
  157. package/dist/install/harnesses.d.ts +37 -26
  158. package/dist/install/harnesses.d.ts.map +1 -1
  159. package/dist/install/harnesses.js +312 -502
  160. package/dist/install/harnesses.js.map +1 -1
  161. package/dist/install/legacyMcp.d.ts +26 -0
  162. package/dist/install/legacyMcp.d.ts.map +1 -0
  163. package/dist/install/legacyMcp.js +160 -0
  164. package/dist/install/legacyMcp.js.map +1 -0
  165. package/dist/install/mcpRegistration.d.ts +45 -0
  166. package/dist/install/mcpRegistration.d.ts.map +1 -0
  167. package/dist/install/mcpRegistration.js +215 -0
  168. package/dist/install/mcpRegistration.js.map +1 -0
  169. package/dist/mcp/changeBatchClassification.d.ts +18 -20
  170. package/dist/mcp/changeBatchClassification.d.ts.map +1 -1
  171. package/dist/mcp/changeBatchClassification.js +41 -46
  172. package/dist/mcp/changeBatchClassification.js.map +1 -1
  173. package/dist/proxy-middleware/proxy-config.d.ts +6 -0
  174. package/dist/proxy-middleware/proxy-config.d.ts.map +1 -1
  175. package/dist/proxy-middleware/proxy-config.js +162 -5
  176. package/dist/proxy-middleware/proxy-config.js.map +1 -1
  177. package/dist/routes/agentVariants.d.ts +14 -2
  178. package/dist/routes/agentVariants.d.ts.map +1 -1
  179. package/dist/routes/agentVariants.js +321 -65
  180. package/dist/routes/agentVariants.js.map +1 -1
  181. package/dist/routes/cli.d.ts +31 -0
  182. package/dist/routes/cli.d.ts.map +1 -0
  183. package/dist/routes/cli.js +95 -0
  184. package/dist/routes/cli.js.map +1 -0
  185. package/dist/routes/git.d.ts +1 -0
  186. package/dist/routes/git.d.ts.map +1 -1
  187. package/dist/routes/git.js +2 -1
  188. package/dist/routes/git.js.map +1 -1
  189. package/dist/routes/inlineStartTracker.d.ts +23 -0
  190. package/dist/routes/inlineStartTracker.d.ts.map +1 -0
  191. package/dist/routes/inlineStartTracker.js +17 -0
  192. package/dist/routes/inlineStartTracker.js.map +1 -0
  193. package/dist/routes/mcp.d.ts +2 -12
  194. package/dist/routes/mcp.d.ts.map +1 -1
  195. package/dist/routes/mcp.js +4 -785
  196. package/dist/routes/mcp.js.map +1 -1
  197. package/dist/server.d.ts +24 -9
  198. package/dist/server.d.ts.map +1 -1
  199. package/dist/server.js +169 -33
  200. package/dist/server.js.map +1 -1
  201. package/dist/services/CommitMessageGenerator.d.ts +9 -1
  202. package/dist/services/CommitMessageGenerator.d.ts.map +1 -1
  203. package/dist/services/CommitMessageGenerator.js +4 -1
  204. package/dist/services/CommitMessageGenerator.js.map +1 -1
  205. package/dist/services/ComponentSearchService.d.ts +4 -1
  206. package/dist/services/ComponentSearchService.d.ts.map +1 -1
  207. package/dist/services/ComponentSearchService.js.map +1 -1
  208. package/dist/services/ConfigManager.d.ts +8 -0
  209. package/dist/services/ConfigManager.d.ts.map +1 -1
  210. package/dist/services/ConfigManager.js +9 -0
  211. package/dist/services/ConfigManager.js.map +1 -1
  212. package/dist/services/HistoryReplayService.d.ts +20 -9
  213. package/dist/services/HistoryReplayService.d.ts.map +1 -1
  214. package/dist/services/HistoryReplayService.js +99 -43
  215. package/dist/services/HistoryReplayService.js.map +1 -1
  216. package/dist/services/MCPVariantsTelemetry.d.ts +1 -1
  217. package/dist/services/MCPVariantsTelemetry.d.ts.map +1 -1
  218. package/dist/services/MCPVariantsTelemetry.js +1 -0
  219. package/dist/services/MCPVariantsTelemetry.js.map +1 -1
  220. package/dist/services/PRTitleGenerator.d.ts +10 -2
  221. package/dist/services/PRTitleGenerator.d.ts.map +1 -1
  222. package/dist/services/PRTitleGenerator.js +8 -2
  223. package/dist/services/PRTitleGenerator.js.map +1 -1
  224. package/dist/services/ProjectDetectionService.d.ts.map +1 -1
  225. package/dist/services/ProjectDetectionService.js +14 -4
  226. package/dist/services/ProjectDetectionService.js.map +1 -1
  227. package/dist/services/ProjectMetadataStore.d.ts +115 -0
  228. package/dist/services/ProjectMetadataStore.d.ts.map +1 -0
  229. package/dist/services/ProjectMetadataStore.js +336 -0
  230. package/dist/services/ProjectMetadataStore.js.map +1 -0
  231. package/dist/services/SessionBridgeService.d.ts +52 -224
  232. package/dist/services/SessionBridgeService.d.ts.map +1 -1
  233. package/dist/services/SessionBridgeService.js +97 -649
  234. package/dist/services/SessionBridgeService.js.map +1 -1
  235. package/dist/services/SessionService.d.ts +4 -1
  236. package/dist/services/SessionService.d.ts.map +1 -1
  237. package/dist/services/SessionService.js +7 -4
  238. package/dist/services/SessionService.js.map +1 -1
  239. package/dist/services/StaticFileService.d.ts.map +1 -1
  240. package/dist/services/StaticFileService.js +6 -0
  241. package/dist/services/StaticFileService.js.map +1 -1
  242. package/dist/services/TelemetryService.d.ts +16 -80
  243. package/dist/services/TelemetryService.d.ts.map +1 -1
  244. package/dist/services/TelemetryService.js +18 -94
  245. package/dist/services/TelemetryService.js.map +1 -1
  246. package/dist/services/VariantGenerationService.d.ts +52 -0
  247. package/dist/services/VariantGenerationService.d.ts.map +1 -0
  248. package/dist/services/VariantGenerationService.js +272 -0
  249. package/dist/services/VariantGenerationService.js.map +1 -0
  250. package/dist/services/VariantHistoryService.d.ts +37 -1
  251. package/dist/services/VariantHistoryService.d.ts.map +1 -1
  252. package/dist/services/VariantHistoryService.js +122 -1
  253. package/dist/services/VariantHistoryService.js.map +1 -1
  254. package/dist/services/VariantRunService.d.ts +25 -6
  255. package/dist/services/VariantRunService.d.ts.map +1 -1
  256. package/dist/services/VariantRunService.js +98 -4
  257. package/dist/services/VariantRunService.js.map +1 -1
  258. package/dist/services/VariantsRuntime.d.ts +1 -3
  259. package/dist/services/VariantsRuntime.d.ts.map +1 -1
  260. package/dist/services/VariantsRuntime.js +0 -1
  261. package/dist/services/VariantsRuntime.js.map +1 -1
  262. package/dist/services/WorktreeManager.d.ts +1 -1
  263. package/dist/services/WorktreeManager.d.ts.map +1 -1
  264. package/dist/services/createAgentVariantsOrchestrator.d.ts +2 -2
  265. package/dist/services/createAgentVariantsOrchestrator.d.ts.map +1 -1
  266. package/dist/services/createAgentVariantsOrchestrator.js +2 -3
  267. package/dist/services/createAgentVariantsOrchestrator.js.map +1 -1
  268. package/dist/services/projectMetadataMigrations.d.ts +59 -0
  269. package/dist/services/projectMetadataMigrations.d.ts.map +1 -0
  270. package/dist/services/projectMetadataMigrations.js +109 -0
  271. package/dist/services/projectMetadataMigrations.js.map +1 -0
  272. package/dist/types/change-request-types.d.ts +22 -0
  273. package/dist/types/change-request-types.d.ts.map +1 -1
  274. package/dist/utils/logger.d.ts +2 -1
  275. package/dist/utils/logger.d.ts.map +1 -1
  276. package/dist/utils/logger.js +3 -7
  277. package/dist/utils/logger.js.map +1 -1
  278. package/dist/utils/loopback.d.ts +3 -0
  279. package/dist/utils/loopback.d.ts.map +1 -0
  280. package/dist/utils/loopback.js +13 -0
  281. package/dist/utils/loopback.js.map +1 -0
  282. package/dist/utils/pid.d.ts +3 -0
  283. package/dist/utils/pid.d.ts.map +1 -0
  284. package/dist/utils/pid.js +15 -0
  285. package/dist/utils/pid.js.map +1 -0
  286. package/dist/utils/queueAccess.d.ts +7 -0
  287. package/dist/utils/queueAccess.d.ts.map +1 -1
  288. package/dist/utils/queueAccess.js +8 -1
  289. package/dist/utils/queueAccess.js.map +1 -1
  290. package/dist/utils/shouldRecordHostedDemoSessionAction.d.ts +3 -3
  291. package/dist/utils/shouldRecordHostedDemoSessionAction.d.ts.map +1 -1
  292. package/dist/utils/shouldRecordHostedDemoSessionAction.js +3 -19
  293. package/dist/utils/shouldRecordHostedDemoSessionAction.js.map +1 -1
  294. package/dist/utils/skillWriter.d.ts.map +1 -1
  295. package/dist/utils/skillWriter.js +12 -11
  296. package/dist/utils/skillWriter.js.map +1 -1
  297. package/dist/utils/skills/claude-skill.d.ts +7 -2
  298. package/dist/utils/skills/claude-skill.d.ts.map +1 -1
  299. package/dist/utils/skills/claude-skill.js +10 -83
  300. package/dist/utils/skills/claude-skill.js.map +1 -1
  301. package/dist/utils/skills/cli-guidance.d.ts +12 -0
  302. package/dist/utils/skills/cli-guidance.d.ts.map +1 -0
  303. package/dist/utils/skills/cli-guidance.js +57 -0
  304. package/dist/utils/skills/cli-guidance.js.map +1 -0
  305. package/dist/utils/skills/cursor-rules.d.ts +8 -2
  306. package/dist/utils/skills/cursor-rules.d.ts.map +1 -1
  307. package/dist/utils/skills/cursor-rules.js +11 -80
  308. package/dist/utils/skills/cursor-rules.js.map +1 -1
  309. package/dist/utils/variantSessionStart.d.ts +1 -1
  310. package/dist/utils/variantSessionStart.d.ts.map +1 -1
  311. package/dist/utils/variantSessionStart.js +1 -1
  312. package/dist/utils/variantSessionStart.js.map +1 -1
  313. package/package.json +4 -4
  314. package/src/ui/dist/assets/main-BWOvFoal.js +419 -0
  315. package/src/ui/dist/assets/main-Dyos9I29.css +1 -0
  316. package/src/ui/dist/index.html +2 -2
  317. package/dist/mcp/agent-variants/SessionStore.d.ts.map +0 -1
  318. package/dist/mcp/agent-variants/SessionStore.js.map +0 -1
  319. package/dist/mcp/agent-variants/WorktreeOrchestrator.d.ts.map +0 -1
  320. package/dist/mcp/agent-variants/WorktreeOrchestrator.js.map +0 -1
  321. package/dist/mcp/agent-variants/WorktreeOrchestrator.testHelpers.d.ts.map +0 -1
  322. package/dist/mcp/agent-variants/WorktreeOrchestrator.testHelpers.js.map +0 -1
  323. package/dist/mcp/agent-variants/areNaSourceContext.d.ts +0 -20
  324. package/dist/mcp/agent-variants/areNaSourceContext.d.ts.map +0 -1
  325. package/dist/mcp/agent-variants/areNaSourceContext.js +0 -118
  326. package/dist/mcp/agent-variants/areNaSourceContext.js.map +0 -1
  327. package/dist/mcp/agent-variants/briefContent.d.ts.map +0 -1
  328. package/dist/mcp/agent-variants/briefContent.js.map +0 -1
  329. package/dist/mcp/agent-variants/contracts.d.ts.map +0 -1
  330. package/dist/mcp/agent-variants/contracts.js.map +0 -1
  331. package/dist/mcp/agent-variants/createProjectArtifacts.d.ts.map +0 -1
  332. package/dist/mcp/agent-variants/createProjectArtifacts.js.map +0 -1
  333. package/dist/mcp/agent-variants/createZeroToOneTool.d.ts +0 -63
  334. package/dist/mcp/agent-variants/createZeroToOneTool.d.ts.map +0 -1
  335. package/dist/mcp/agent-variants/createZeroToOneTool.js +0 -265
  336. package/dist/mcp/agent-variants/createZeroToOneTool.js.map +0 -1
  337. package/dist/mcp/agent-variants/diffQa.d.ts.map +0 -1
  338. package/dist/mcp/agent-variants/diffQa.js.map +0 -1
  339. package/dist/mcp/agent-variants/elementRefToTarget.d.ts.map +0 -1
  340. package/dist/mcp/agent-variants/elementRefToTarget.js.map +0 -1
  341. package/dist/mcp/agent-variants/errors.d.ts.map +0 -1
  342. package/dist/mcp/agent-variants/errors.js.map +0 -1
  343. package/dist/mcp/agent-variants/generatedDestination.d.ts +0 -75
  344. package/dist/mcp/agent-variants/generatedDestination.d.ts.map +0 -1
  345. package/dist/mcp/agent-variants/generatedDestination.js +0 -103
  346. package/dist/mcp/agent-variants/generatedDestination.js.map +0 -1
  347. package/dist/mcp/agent-variants/index.d.ts.map +0 -1
  348. package/dist/mcp/agent-variants/index.js.map +0 -1
  349. package/dist/mcp/agent-variants/pendingChangesAdapter.d.ts +0 -38
  350. package/dist/mcp/agent-variants/pendingChangesAdapter.d.ts.map +0 -1
  351. package/dist/mcp/agent-variants/pendingChangesAdapter.js +0 -93
  352. package/dist/mcp/agent-variants/pendingChangesAdapter.js.map +0 -1
  353. package/dist/mcp/agent-variants/pinterestSourceContext.d.ts +0 -23
  354. package/dist/mcp/agent-variants/pinterestSourceContext.d.ts.map +0 -1
  355. package/dist/mcp/agent-variants/pinterestSourceContext.js +0 -137
  356. package/dist/mcp/agent-variants/pinterestSourceContext.js.map +0 -1
  357. package/dist/mcp/agent-variants/previewQa.d.ts.map +0 -1
  358. package/dist/mcp/agent-variants/previewQa.js.map +0 -1
  359. package/dist/mcp/agent-variants/runLabel.d.ts.map +0 -1
  360. package/dist/mcp/agent-variants/runLabel.js.map +0 -1
  361. package/dist/mcp/agent-variants/runPlan.d.ts.map +0 -1
  362. package/dist/mcp/agent-variants/runPlan.js.map +0 -1
  363. package/dist/mcp/agent-variants/sourceContext.d.ts.map +0 -1
  364. package/dist/mcp/agent-variants/sourceContext.js.map +0 -1
  365. package/dist/mcp/agent-variants/tools.d.ts +0 -187
  366. package/dist/mcp/agent-variants/tools.d.ts.map +0 -1
  367. package/dist/mcp/agent-variants/tools.js +0 -1165
  368. package/dist/mcp/agent-variants/tools.js.map +0 -1
  369. package/dist/mcp/agent-variants/variantContext.d.ts.map +0 -1
  370. package/dist/mcp/agent-variants/variantContext.js.map +0 -1
  371. package/dist/mcp/auth/httpOAuthProvider.d.ts +0 -103
  372. package/dist/mcp/auth/httpOAuthProvider.d.ts.map +0 -1
  373. package/dist/mcp/auth/httpOAuthProvider.js +0 -735
  374. package/dist/mcp/auth/httpOAuthProvider.js.map +0 -1
  375. package/dist/mcp/auth/tools.d.ts +0 -39
  376. package/dist/mcp/auth/tools.d.ts.map +0 -1
  377. package/dist/mcp/auth/tools.js +0 -304
  378. package/dist/mcp/auth/tools.js.map +0 -1
  379. package/dist/mcp/branding.d.ts +0 -4
  380. package/dist/mcp/branding.d.ts.map +0 -1
  381. package/dist/mcp/branding.js +0 -8
  382. package/dist/mcp/branding.js.map +0 -1
  383. package/dist/mcp/hostedServer.d.ts +0 -27
  384. package/dist/mcp/hostedServer.d.ts.map +0 -1
  385. package/dist/mcp/hostedServer.js +0 -71
  386. package/dist/mcp/hostedServer.js.map +0 -1
  387. package/dist/mcp/httpServer.d.ts +0 -63
  388. package/dist/mcp/httpServer.d.ts.map +0 -1
  389. package/dist/mcp/httpServer.js +0 -602
  390. package/dist/mcp/httpServer.js.map +0 -1
  391. package/dist/mcp/instructions.d.ts +0 -25
  392. package/dist/mcp/instructions.d.ts.map +0 -1
  393. package/dist/mcp/instructions.js +0 -39
  394. package/dist/mcp/instructions.js.map +0 -1
  395. package/dist/mcp/integrations/tools.d.ts +0 -19
  396. package/dist/mcp/integrations/tools.d.ts.map +0 -1
  397. package/dist/mcp/integrations/tools.js +0 -101
  398. package/dist/mcp/integrations/tools.js.map +0 -1
  399. package/dist/mcp/server.d.ts +0 -214
  400. package/dist/mcp/server.d.ts.map +0 -1
  401. package/dist/mcp/server.js +0 -2536
  402. package/dist/mcp/server.js.map +0 -1
  403. package/dist/mcp/toolAnalytics.d.ts +0 -26
  404. package/dist/mcp/toolAnalytics.d.ts.map +0 -1
  405. package/dist/mcp/toolAnalytics.js +0 -95
  406. package/dist/mcp/toolAnalytics.js.map +0 -1
  407. package/dist/mcp/types.d.ts +0 -7
  408. package/dist/mcp/types.d.ts.map +0 -1
  409. package/dist/mcp/types.js +0 -3
  410. package/dist/mcp/types.js.map +0 -1
  411. package/dist/mcp/watchLoopResumePrompt.d.ts +0 -16
  412. package/dist/mcp/watchLoopResumePrompt.d.ts.map +0 -1
  413. package/dist/mcp/watchLoopResumePrompt.js +0 -21
  414. package/dist/mcp/watchLoopResumePrompt.js.map +0 -1
  415. package/dist/prompts/agentModPrompts.d.ts +0 -4
  416. package/dist/prompts/agentModPrompts.d.ts.map +0 -1
  417. package/dist/prompts/agentModPrompts.js +0 -34
  418. package/dist/prompts/agentModPrompts.js.map +0 -1
  419. package/dist/prompts/tokenWriterPrompts.d.ts +0 -4
  420. package/dist/prompts/tokenWriterPrompts.d.ts.map +0 -1
  421. package/dist/prompts/tokenWriterPrompts.js +0 -59
  422. package/dist/prompts/tokenWriterPrompts.js.map +0 -1
  423. package/dist/routes/comments.d.ts +0 -3
  424. package/dist/routes/comments.d.ts.map +0 -1
  425. package/dist/routes/comments.js +0 -113
  426. package/dist/routes/comments.js.map +0 -1
  427. package/dist/routes/components.d.ts +0 -7
  428. package/dist/routes/components.d.ts.map +0 -1
  429. package/dist/routes/components.js +0 -88
  430. package/dist/routes/components.js.map +0 -1
  431. package/dist/routes/controls.d.ts +0 -7
  432. package/dist/routes/controls.d.ts.map +0 -1
  433. package/dist/routes/controls.js +0 -50
  434. package/dist/routes/controls.js.map +0 -1
  435. package/dist/routes/design.d.ts +0 -2
  436. package/dist/routes/design.d.ts.map +0 -1
  437. package/dist/routes/design.js +0 -29
  438. package/dist/routes/design.js.map +0 -1
  439. package/dist/routes/modifications.d.ts +0 -10
  440. package/dist/routes/modifications.d.ts.map +0 -1
  441. package/dist/routes/modifications.js +0 -394
  442. package/dist/routes/modifications.js.map +0 -1
  443. package/dist/routes/tokens.d.ts +0 -2
  444. package/dist/routes/tokens.d.ts.map +0 -1
  445. package/dist/routes/tokens.js +0 -115
  446. package/dist/routes/tokens.js.map +0 -1
  447. package/dist/services/AgentSessionService.d.ts +0 -91
  448. package/dist/services/AgentSessionService.d.ts.map +0 -1
  449. package/dist/services/AgentSessionService.js +0 -282
  450. package/dist/services/AgentSessionService.js.map +0 -1
  451. package/dist/services/BridgeBatchPipeline.d.ts +0 -103
  452. package/dist/services/BridgeBatchPipeline.d.ts.map +0 -1
  453. package/dist/services/BridgeBatchPipeline.js +0 -295
  454. package/dist/services/BridgeBatchPipeline.js.map +0 -1
  455. package/dist/services/BridgeQueueStore.d.ts +0 -28
  456. package/dist/services/BridgeQueueStore.d.ts.map +0 -1
  457. package/dist/services/BridgeQueueStore.js +0 -88
  458. package/dist/services/BridgeQueueStore.js.map +0 -1
  459. package/dist/services/CSSTokenWriter.d.ts +0 -22
  460. package/dist/services/CSSTokenWriter.d.ts.map +0 -1
  461. package/dist/services/CSSTokenWriter.js +0 -116
  462. package/dist/services/CSSTokenWriter.js.map +0 -1
  463. package/dist/services/DesignTokenService.d.ts +0 -39
  464. package/dist/services/DesignTokenService.d.ts.map +0 -1
  465. package/dist/services/DesignTokenService.js +0 -100
  466. package/dist/services/DesignTokenService.js.map +0 -1
  467. package/dist/services/InlineVariantGenerationService.d.ts +0 -51
  468. package/dist/services/InlineVariantGenerationService.d.ts.map +0 -1
  469. package/dist/services/InlineVariantGenerationService.js +0 -475
  470. package/dist/services/InlineVariantGenerationService.js.map +0 -1
  471. package/dist/services/InterfaceGenerationService.d.ts +0 -12
  472. package/dist/services/InterfaceGenerationService.d.ts.map +0 -1
  473. package/dist/services/InterfaceGenerationService.js +0 -256
  474. package/dist/services/InterfaceGenerationService.js.map +0 -1
  475. package/dist/services/TailwindConfigWriter.d.ts +0 -24
  476. package/dist/services/TailwindConfigWriter.d.ts.map +0 -1
  477. package/dist/services/TailwindConfigWriter.js +0 -105
  478. package/dist/services/TailwindConfigWriter.js.map +0 -1
  479. package/dist/services/TerminalAgentRunner.d.ts +0 -65
  480. package/dist/services/TerminalAgentRunner.d.ts.map +0 -1
  481. package/dist/services/TerminalAgentRunner.js +0 -511
  482. package/dist/services/TerminalAgentRunner.js.map +0 -1
  483. package/dist/services/VisualVariantAgentRunner.d.ts +0 -20
  484. package/dist/services/VisualVariantAgentRunner.d.ts.map +0 -1
  485. package/dist/services/VisualVariantAgentRunner.js +0 -66
  486. package/dist/services/VisualVariantAgentRunner.js.map +0 -1
  487. package/dist/services/adapters/TailwindCSSTokenAdapter.d.ts +0 -35
  488. package/dist/services/adapters/TailwindCSSTokenAdapter.d.ts.map +0 -1
  489. package/dist/services/adapters/TailwindCSSTokenAdapter.js +0 -278
  490. package/dist/services/adapters/TailwindCSSTokenAdapter.js.map +0 -1
  491. package/dist/services/agent/AgentCore.d.ts +0 -126
  492. package/dist/services/agent/AgentCore.d.ts.map +0 -1
  493. package/dist/services/agent/AgentCore.js +0 -759
  494. package/dist/services/agent/AgentCore.js.map +0 -1
  495. package/dist/services/agent/AgentModService.d.ts +0 -98
  496. package/dist/services/agent/AgentModService.d.ts.map +0 -1
  497. package/dist/services/agent/AgentModService.js +0 -400
  498. package/dist/services/agent/AgentModService.js.map +0 -1
  499. package/dist/services/agent/index.d.ts +0 -2
  500. package/dist/services/agent/index.d.ts.map +0 -1
  501. package/dist/services/agent/index.js +0 -6
  502. package/dist/services/agent/index.js.map +0 -1
  503. package/dist/types/editor-interface-types.d.ts +0 -67
  504. package/dist/types/editor-interface-types.d.ts.map +0 -1
  505. package/dist/types/editor-interface-types.js +0 -12
  506. package/dist/types/editor-interface-types.js.map +0 -1
  507. package/dist/utils/elementRefToContext.d.ts +0 -4
  508. package/dist/utils/elementRefToContext.d.ts.map +0 -1
  509. package/dist/utils/elementRefToContext.js +0 -63
  510. package/dist/utils/elementRefToContext.js.map +0 -1
  511. package/dist/utils/skills/shared-variants-protocol.d.ts +0 -69
  512. package/dist/utils/skills/shared-variants-protocol.d.ts.map +0 -1
  513. package/dist/utils/skills/shared-variants-protocol.js +0 -292
  514. package/dist/utils/skills/shared-variants-protocol.js.map +0 -1
  515. package/src/ui/dist/assets/main-CLAqO1bm.js +0 -656
  516. package/src/ui/dist/assets/main-Ke-Q9lWa.css +0 -1
  517. /package/dist/{mcp/agent-variants → agent-variants}/briefContent.d.ts +0 -0
  518. /package/dist/{mcp/agent-variants → agent-variants}/briefContent.js +0 -0
  519. /package/dist/{mcp/agent-variants → agent-variants}/createProjectArtifacts.d.ts +0 -0
  520. /package/dist/{mcp/agent-variants → agent-variants}/createProjectArtifacts.js +0 -0
  521. /package/dist/{mcp/agent-variants → agent-variants}/diffQa.d.ts +0 -0
  522. /package/dist/{mcp/agent-variants → agent-variants}/diffQa.js +0 -0
  523. /package/dist/{mcp/agent-variants → agent-variants}/elementRefToTarget.js +0 -0
  524. /package/dist/{mcp/agent-variants → agent-variants}/errors.d.ts +0 -0
  525. /package/dist/{mcp/agent-variants → agent-variants}/errors.js +0 -0
  526. /package/dist/{mcp/agent-variants → agent-variants}/previewQa.d.ts +0 -0
  527. /package/dist/{mcp/agent-variants → agent-variants}/previewQa.js +0 -0
  528. /package/dist/{mcp/agent-variants → agent-variants}/runLabel.d.ts +0 -0
  529. /package/dist/{mcp/agent-variants → agent-variants}/runLabel.js +0 -0
  530. /package/dist/{mcp/agent-variants → agent-variants}/runPlan.d.ts +0 -0
  531. /package/dist/{mcp/agent-variants → agent-variants}/runPlan.js +0 -0
  532. /package/dist/{mcp/agent-variants → agent-variants}/sourceContext.d.ts +0 -0
  533. /package/dist/{mcp/agent-variants → agent-variants}/sourceContext.js +0 -0
  534. /package/dist/{mcp/agent-variants → agent-variants}/variantContext.d.ts +0 -0
  535. /package/dist/{mcp/agent-variants → agent-variants}/variantContext.js +0 -0
@@ -1,602 +0,0 @@
1
- "use strict";
2
- var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
3
- if (k2 === undefined) k2 = k;
4
- var desc = Object.getOwnPropertyDescriptor(m, k);
5
- if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
6
- desc = { enumerable: true, get: function() { return m[k]; } };
7
- }
8
- Object.defineProperty(o, k2, desc);
9
- }) : (function(o, m, k, k2) {
10
- if (k2 === undefined) k2 = k;
11
- o[k2] = m[k];
12
- }));
13
- var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) {
14
- Object.defineProperty(o, "default", { enumerable: true, value: v });
15
- }) : function(o, v) {
16
- o["default"] = v;
17
- });
18
- var __importStar = (this && this.__importStar) || (function () {
19
- var ownKeys = function(o) {
20
- ownKeys = Object.getOwnPropertyNames || function (o) {
21
- var ar = [];
22
- for (var k in o) if (Object.prototype.hasOwnProperty.call(o, k)) ar[ar.length] = k;
23
- return ar;
24
- };
25
- return ownKeys(o);
26
- };
27
- return function (mod) {
28
- if (mod && mod.__esModule) return mod;
29
- var result = {};
30
- if (mod != null) for (var k = ownKeys(mod), i = 0; i < k.length; i++) if (k[i] !== "default") __createBinding(result, mod, k[i]);
31
- __setModuleDefault(result, mod);
32
- return result;
33
- };
34
- })();
35
- var __importDefault = (this && this.__importDefault) || function (mod) {
36
- return (mod && mod.__esModule) ? mod : { "default": mod };
37
- };
38
- Object.defineProperty(exports, "__esModule", { value: true });
39
- exports.startMCPServerHttp = exports.createMcpHttpApp = exports.registerMcpHttpProcessHandlers = exports.getCurrentMcpHttpBaseUrl = exports.OAUTH_CALLBACK_COMPLETE_PATH = exports.OAUTH_CALLBACK_PATH = exports.MCP_HTTP_PATH = exports.DEFAULT_MCP_HTTP_PORT = void 0;
40
- const crypto_1 = require("crypto");
41
- const async_hooks_1 = require("async_hooks");
42
- const express_1 = __importDefault(require("express"));
43
- const streamableHttp_js_1 = require("@modelcontextprotocol/sdk/server/streamableHttp.js");
44
- const router_js_1 = require("@modelcontextprotocol/sdk/server/auth/router.js");
45
- const bearerAuth_js_1 = require("@modelcontextprotocol/sdk/server/auth/middleware/bearerAuth.js");
46
- const types_js_1 = require("@modelcontextprotocol/sdk/types.js");
47
- const httpOAuthProvider_1 = require("./auth/httpOAuthProvider");
48
- const branding_1 = require("./branding");
49
- const ConfigManager_1 = require("../services/ConfigManager");
50
- const RequestAuthContext_1 = require("../services/RequestAuthContext");
51
- const logger_1 = require("../utils/logger");
52
- const skillWriter_1 = require("../utils/skillWriter");
53
- const log = (0, logger_1.createLogger)('mcp-http');
54
- exports.DEFAULT_MCP_HTTP_PORT = 5891;
55
- exports.MCP_HTTP_PATH = '/mcp';
56
- exports.OAUTH_CALLBACK_PATH = '/mcp/oauth/callback';
57
- exports.OAUTH_CALLBACK_COMPLETE_PATH = '/oauth/callback/complete';
58
- const MCP_OAUTH_SCOPE = 'rivet';
59
- const MCP_HTTP_HOST = '127.0.0.1';
60
- const REGISTER_RATE_LIMIT_WINDOW_MS = 60_000;
61
- const REGISTER_RATE_LIMIT_MAX_REQUESTS = 30;
62
- const TRUSTED_PROXY_HOPS = 1;
63
- const MCP_CLIENT_IDLE_TIMEOUT_MS = 5 * 60_000;
64
- /**
65
- * Browser page served as the OAuth callback. The proxy redirects to either the
66
- * bare server origin or the hosted callback path with Supabase hash tokens; this
67
- * page forwards those tokens to the OAuth provider and returns the MCP client's
68
- * authorization-code redirect.
69
- */
70
- const getOAuthCallbackHtml = (completePath, localAuthBridgeUrl, fallbackSessionId) => `<!doctype html>
71
- <html>
72
- <head>
73
- <meta charset="utf-8" />
74
- <meta name="viewport" content="width=device-width, initial-scale=1" />
75
- <title>Rivet authentication</title>
76
- <style>
77
- body {
78
- margin: 0;
79
- min-height: 100vh;
80
- display: grid;
81
- place-items: center;
82
- font-family: system-ui, sans-serif;
83
- background: #0b0b0f;
84
- color: #fff;
85
- }
86
- main {
87
- max-width: 420px;
88
- padding: 32px;
89
- text-align: center;
90
- }
91
- </style>
92
- </head>
93
- <body>
94
- <main>
95
- <h1>Finishing Rivet sign in...</h1>
96
- <p>You will be sent back to your editor automatically.</p>
97
- </main>
98
- <script>
99
- const params = new URLSearchParams(window.location.search);
100
- const hash = new URLSearchParams(window.location.hash.slice(1));
101
- const localAuthBridgeUrl = ${JSON.stringify(localAuthBridgeUrl)};
102
- const fallbackSessionId = ${JSON.stringify(fallbackSessionId ?? '')};
103
- const sessionId = params.get('session') || fallbackSessionId;
104
- if (!sessionId || !hash.get('access_token')) {
105
- document.querySelector('h1').textContent = 'Rivet MCP server is running';
106
- document.querySelector('p').textContent =
107
- 'Connect from your MCP client (e.g. Cursor) to sign in.';
108
- throw new Error('Not an OAuth callback');
109
- }
110
- if (window.location.hash) {
111
- window.history.replaceState(
112
- null,
113
- document.title,
114
- window.location.pathname + window.location.search
115
- );
116
- }
117
- fetch('${completePath}', {
118
- method: 'POST',
119
- credentials: 'same-origin',
120
- headers: { 'Content-Type': 'application/json' },
121
- body: JSON.stringify({
122
- sessionId,
123
- accessToken: hash.get('access_token'),
124
- refreshToken: hash.get('refresh_token')
125
- })
126
- }).then(async (response) => {
127
- const result = await response.json().catch(() => null);
128
- if (response.ok && result && result.redirectUrl) {
129
- const bridgePayload = JSON.stringify({
130
- sessionId,
131
- accessToken: hash.get('access_token'),
132
- refreshToken: hash.get('refresh_token')
133
- });
134
- try {
135
- let didQueueBeacon = false;
136
- if (navigator.sendBeacon && localAuthBridgeUrl) {
137
- didQueueBeacon = navigator.sendBeacon(localAuthBridgeUrl, bridgePayload);
138
- }
139
- if (!didQueueBeacon && localAuthBridgeUrl) {
140
- fetch(localAuthBridgeUrl, {
141
- method: 'POST',
142
- mode: 'cors',
143
- keepalive: true,
144
- headers: { 'Content-Type': 'text/plain;charset=UTF-8' },
145
- body: bridgePayload
146
- }).catch(() => {});
147
- }
148
- } catch {
149
- // Local bridge sync is best-effort.
150
- }
151
- document.querySelector('h1').textContent = 'Rivet sign in complete';
152
- window.location.replace(result.redirectUrl);
153
- } else {
154
- document.querySelector('h1').textContent = 'Rivet sign in failed';
155
- }
156
- }).catch(() => {
157
- document.querySelector('h1').textContent = 'Rivet sign in failed';
158
- });
159
- </script>
160
- </body>
161
- </html>`;
162
- const requestBaseUrlStorage = new async_hooks_1.AsyncLocalStorage();
163
- /** Returns the public MCP base URL for the active HTTP request. */
164
- const getCurrentMcpHttpBaseUrl = () => requestBaseUrlStorage.getStore();
165
- exports.getCurrentMcpHttpBaseUrl = getCurrentMcpHttpBaseUrl;
166
- const getAuthExtraString = (req, key) => {
167
- const value = req.auth?.extra?.[key];
168
- return typeof value === 'string' ? value : undefined;
169
- };
170
- const getCookieValue = (req, name) => {
171
- const cookieHeader = req.headers.cookie;
172
- if (typeof cookieHeader !== 'string') {
173
- return undefined;
174
- }
175
- for (const cookie of cookieHeader.split(';')) {
176
- const [rawName, ...rawValueParts] = cookie.trim().split('=');
177
- if (rawName !== name) {
178
- continue;
179
- }
180
- const rawValue = rawValueParts.join('=');
181
- try {
182
- return decodeURIComponent(rawValue);
183
- }
184
- catch {
185
- return rawValue;
186
- }
187
- }
188
- return undefined;
189
- };
190
- /** Reads the OAuth browser session bound to the approval-page nonce cookie. */
191
- const getMcpBrowserSessionIdFromCookie = (req) => {
192
- const cookieValue = getCookieValue(req, httpOAuthProvider_1.MCP_BROWSER_AUTH_COOKIE_NAME);
193
- if (!cookieValue) {
194
- return undefined;
195
- }
196
- const [sessionId] = cookieValue.split(':');
197
- return sessionId || undefined;
198
- };
199
- /** Builds the request-scoped credentials used by services during MCP tools. */
200
- const getRequestAuthContextValue = (req) => ({
201
- token: req.auth?.token,
202
- refreshToken: getAuthExtraString(req, 'refreshToken'),
203
- mcpAccessToken: getAuthExtraString(req, 'mcpAccessToken'),
204
- email: getAuthExtraString(req, 'email'),
205
- userId: getAuthExtraString(req, 'userId'),
206
- });
207
- /** Handles an MCP request with bearer credentials isolated to this request. */
208
- const handleMcpRequestWithAuthContext = (req, callback) => {
209
- return (0, RequestAuthContext_1.runWithRequestAuthContext)(getRequestAuthContextValue(req), callback);
210
- };
211
- const setMetadataCorsHeaders = (res) => {
212
- res.setHeader('Access-Control-Allow-Origin', '*');
213
- };
214
- const getOAuthMetadata = (requestBaseUrl) => ({
215
- issuer: requestBaseUrl.href,
216
- authorization_endpoint: new URL('/authorize', requestBaseUrl).href,
217
- logo_uri: (0, branding_1.getRivetIconUrl)(requestBaseUrl),
218
- response_types_supported: ['code'],
219
- code_challenge_methods_supported: ['S256'],
220
- token_endpoint: new URL('/token', requestBaseUrl).href,
221
- token_endpoint_auth_methods_supported: ['client_secret_post', 'none'],
222
- grant_types_supported: ['authorization_code', 'refresh_token'],
223
- scopes_supported: [MCP_OAUTH_SCOPE],
224
- revocation_endpoint: new URL('/revoke', requestBaseUrl).href,
225
- revocation_endpoint_auth_methods_supported: ['client_secret_post'],
226
- registration_endpoint: new URL('/register', requestBaseUrl).href,
227
- });
228
- const getProtectedResourceMetadata = (requestBaseUrl) => ({
229
- resource: new URL(exports.MCP_HTTP_PATH, requestBaseUrl).href,
230
- authorization_servers: [requestBaseUrl.href],
231
- scopes_supported: [MCP_OAUTH_SCOPE],
232
- resource_name: 'Rivet',
233
- resource_documentation: branding_1.RIVET_WEBSITE_URL,
234
- });
235
- /** Registers local HTTP MCP process cleanup around all active per-user handles. */
236
- const registerMcpHttpProcessHandlers = (params) => {
237
- const processLike = params.processLike ?? process;
238
- let shutdownPromise = null;
239
- const shutdown = () => {
240
- shutdownPromise ??= (async () => {
241
- await params.shutdownMcpClients();
242
- await new Promise((resolve, reject) => {
243
- params.server.close((error) => (error ? reject(error) : resolve()));
244
- });
245
- })();
246
- return shutdownPromise;
247
- };
248
- const handleSignal = async () => {
249
- try {
250
- await shutdown();
251
- processLike.exit(0);
252
- }
253
- catch (error) {
254
- log.warn('HTTP MCP shutdown failed:', error);
255
- processLike.exit(1);
256
- }
257
- };
258
- processLike.on('SIGTERM', () => handleSignal());
259
- processLike.on('SIGINT', () => handleSignal());
260
- processLike.on('beforeExit', () => shutdown());
261
- };
262
- exports.registerMcpHttpProcessHandlers = registerMcpHttpProcessHandlers;
263
- /**
264
- * Creates the Express app exposing the Rivet MCP server over streamable HTTP
265
- * with native MCP OAuth support:
266
- * - `/.well-known/oauth-protected-resource/mcp` + `/.well-known/oauth-authorization-server`
267
- * - `/authorize`, `/token`, `/register` (dynamic client registration)
268
- * - `/` and `/mcp/oauth/callback` browser landing pages for the proxy Google flow
269
- * - `/mcp` streamable HTTP endpoint guarded by bearer auth (401 +
270
- * WWW-Authenticate with resource metadata when unauthenticated)
271
- */
272
- const createMcpHttpApp = (options) => {
273
- const { baseUrl, resolveBaseUrl, provider, createMcp } = options;
274
- const stateless = options.stateless ?? false;
275
- const clientIdleTimeoutMs = options.clientIdleTimeoutMs ?? MCP_CLIENT_IDLE_TIMEOUT_MS;
276
- const mcpUrl = new URL(exports.MCP_HTTP_PATH, baseUrl);
277
- const app = (0, express_1.default)();
278
- app.set('trust proxy', TRUSTED_PROXY_HOPS);
279
- app.use(express_1.default.json());
280
- const getRequestBaseUrl = (req) => resolveBaseUrl?.(req) ?? baseUrl;
281
- app.use((req, _res, next) => {
282
- requestBaseUrlStorage.run(getRequestBaseUrl(req), next);
283
- });
284
- const registerRateLimits = new Map();
285
- app.use('/register', (req, res, next) => {
286
- if (req.method !== 'POST') {
287
- next();
288
- return;
289
- }
290
- const now = Date.now();
291
- const key = req.ip || req.socket.remoteAddress || 'unknown';
292
- const current = registerRateLimits.get(key);
293
- const record = current && current.resetAt > now
294
- ? current
295
- : { count: 0, resetAt: now + REGISTER_RATE_LIMIT_WINDOW_MS };
296
- record.count += 1;
297
- registerRateLimits.set(key, record);
298
- if (record.count <= REGISTER_RATE_LIMIT_MAX_REQUESTS) {
299
- next();
300
- return;
301
- }
302
- res.setHeader('Retry-After', String(Math.ceil((record.resetAt - now) / 1000)));
303
- res.status(429).json({
304
- error: 'too_many_requests',
305
- error_description: 'Too many OAuth client registration attempts.',
306
- });
307
- });
308
- app.options('/.well-known/oauth-authorization-server', (_req, res) => {
309
- setMetadataCorsHeaders(res);
310
- res.status(204).send();
311
- });
312
- app.get('/.well-known/oauth-authorization-server', (req, res) => {
313
- setMetadataCorsHeaders(res);
314
- res.status(200).json(getOAuthMetadata(getRequestBaseUrl(req)));
315
- });
316
- app.options(`/.well-known/oauth-protected-resource${exports.MCP_HTTP_PATH}`, (_req, res) => {
317
- setMetadataCorsHeaders(res);
318
- res.status(204).send();
319
- });
320
- app.get(`/.well-known/oauth-protected-resource${exports.MCP_HTTP_PATH}`, (req, res) => {
321
- setMetadataCorsHeaders(res);
322
- res.status(200).json(getProtectedResourceMetadata(getRequestBaseUrl(req)));
323
- });
324
- app.use((0, router_js_1.mcpAuthRouter)({
325
- provider,
326
- issuerUrl: baseUrl,
327
- resourceServerUrl: mcpUrl,
328
- resourceName: 'Rivet',
329
- scopesSupported: [MCP_OAUTH_SCOPE],
330
- }));
331
- app.get('/', (req, res) => {
332
- res
333
- .status(200)
334
- .type('html')
335
- .send(getOAuthCallbackHtml(exports.OAUTH_CALLBACK_COMPLETE_PATH, options.localAuthBridgeUrl ?? '', getMcpBrowserSessionIdFromCookie(req)));
336
- });
337
- app.get(exports.OAUTH_CALLBACK_PATH, (req, res) => {
338
- res
339
- .status(200)
340
- .type('html')
341
- .send(getOAuthCallbackHtml(exports.OAUTH_CALLBACK_COMPLETE_PATH, options.localAuthBridgeUrl ?? '', getMcpBrowserSessionIdFromCookie(req)));
342
- });
343
- app.post(exports.OAUTH_CALLBACK_COMPLETE_PATH, async (req, res) => {
344
- try {
345
- const { redirectUrl } = await provider.completeBrowserCallback({
346
- ...(req.body ?? {}),
347
- browserAuthCookie: getCookieValue(req, httpOAuthProvider_1.MCP_BROWSER_AUTH_COOKIE_NAME),
348
- });
349
- res.json({ success: true, redirectUrl });
350
- }
351
- catch (error) {
352
- log.warn('OAuth callback completion failed:', error);
353
- res.status(400).json({
354
- success: false,
355
- error: error instanceof Error ? error.message : 'Authentication failed',
356
- });
357
- }
358
- });
359
- const bearerAuth = (req, res, next) => (0, bearerAuth_js_1.requireBearerAuth)({
360
- verifier: provider,
361
- resourceMetadataUrl: (0, router_js_1.getOAuthProtectedResourceMetadataUrl)(new URL(exports.MCP_HTTP_PATH, getRequestBaseUrl(req))),
362
- })(req, res, next);
363
- const clientStates = new Map();
364
- const getMcpClientKey = (req) => getAuthExtraString(req, 'userId') ?? req.auth?.token ?? 'anonymous';
365
- const getClientState = (key) => {
366
- const existing = clientStates.get(key);
367
- if (existing) {
368
- return existing;
369
- }
370
- const created = {
371
- mcpHandle: null,
372
- transports: new Map(),
373
- initializeRequestChain: Promise.resolve(),
374
- activeSessionPostRequestCount: 0,
375
- activeSessionPostRequestIdleResolvers: new Set(),
376
- idleTimer: null,
377
- };
378
- clientStates.set(key, created);
379
- return created;
380
- };
381
- const clearClientStateIdleTimer = (state) => {
382
- if (state.idleTimer) {
383
- clearTimeout(state.idleTimer);
384
- state.idleTimer = null;
385
- }
386
- };
387
- /** Waits until active MCP tool/resource POST requests have finished. */
388
- const waitForActiveSessionPostRequests = (state) => {
389
- if (state.activeSessionPostRequestCount === 0) {
390
- return Promise.resolve();
391
- }
392
- return new Promise((resolve) => {
393
- state.activeSessionPostRequestIdleResolvers.add(resolve);
394
- });
395
- };
396
- /** Tracks active session POSTs so reconnects do not close in-flight work. */
397
- const handleActiveSessionPostRequest = async (state, req, callback) => {
398
- if (req.method !== 'POST') {
399
- await callback();
400
- return;
401
- }
402
- state.activeSessionPostRequestCount += 1;
403
- try {
404
- await callback();
405
- }
406
- finally {
407
- state.activeSessionPostRequestCount -= 1;
408
- if (state.activeSessionPostRequestCount === 0) {
409
- for (const resolve of state.activeSessionPostRequestIdleResolvers) {
410
- resolve();
411
- }
412
- state.activeSessionPostRequestIdleResolvers.clear();
413
- }
414
- }
415
- };
416
- const closeClientState = async (state) => {
417
- clearClientStateIdleTimer(state);
418
- await state.initializeRequestChain.catch(() => undefined);
419
- await waitForActiveSessionPostRequests(state);
420
- for (const transport of state.transports.values()) {
421
- await transport.close();
422
- }
423
- state.transports.clear();
424
- await state.mcpHandle?.shutdown();
425
- state.mcpHandle = null;
426
- };
427
- /** Schedules idle per-user MCP handles for eviction from long-running hosts. */
428
- const scheduleClientStateEviction = (key, state) => {
429
- clearClientStateIdleTimer(state);
430
- state.idleTimer = setTimeout(() => {
431
- void (async () => {
432
- if (clientStates.get(key) !== state) {
433
- return;
434
- }
435
- clientStates.delete(key);
436
- await closeClientState(state);
437
- })().catch((error) => {
438
- log.warn('Failed to evict idle HTTP MCP client:', error);
439
- });
440
- }, clientIdleTimeoutMs);
441
- state.idleTimer.unref?.();
442
- };
443
- /** Closes every per-user MCP handle owned by this HTTP app. */
444
- const shutdownMcpClients = async () => {
445
- const states = Array.from(clientStates.values());
446
- clientStates.clear();
447
- await Promise.all(states.map((state) => closeClientState(state)));
448
- };
449
- app.locals.shutdownMcpClients = shutdownMcpClients;
450
- /**
451
- * Serves a single hosted MCP request without server-side session continuity.
452
- *
453
- * Hosted deployments run on ephemeral, restartable, possibly recycled
454
- * single-instance infrastructure where an in-memory session map cannot
455
- * survive between requests, so a cached `Mcp-Session-Id` would fail every
456
- * follow-up request once the process restarts or the handle idle-evicts. The
457
- * hosted surface only exposes session-less identity and cloud-integration
458
- * tools, so each request gets its own short-lived session-less transport and
459
- * MCP handle, torn down when the response closes.
460
- */
461
- const handleStatelessMcpRequest = async (req, res) => {
462
- const mcpHandle = createMcp();
463
- const transport = new streamableHttp_js_1.StreamableHTTPServerTransport({
464
- sessionIdGenerator: undefined,
465
- });
466
- res.once('close', () => {
467
- void transport.close();
468
- void mcpHandle.shutdown();
469
- });
470
- await mcpHandle.mcp.connect(transport);
471
- await handleMcpRequestWithAuthContext(req, () => transport.handleRequest(req, res, req.body));
472
- };
473
- app.all(exports.MCP_HTTP_PATH, bearerAuth, async (req, res) => {
474
- try {
475
- if (stateless) {
476
- await handleStatelessMcpRequest(req, res);
477
- return;
478
- }
479
- const clientKey = getMcpClientKey(req);
480
- const clientState = getClientState(clientKey);
481
- clearClientStateIdleTimer(clientState);
482
- res.once('finish', () => {
483
- if (clientStates.get(clientKey) === clientState) {
484
- scheduleClientStateEviction(clientKey, clientState);
485
- }
486
- });
487
- const sessionId = req.headers['mcp-session-id'];
488
- const existingTransport = sessionId
489
- ? clientState.transports.get(sessionId)
490
- : undefined;
491
- if (existingTransport) {
492
- await handleActiveSessionPostRequest(clientState, req, () => handleMcpRequestWithAuthContext(req, () => existingTransport.handleRequest(req, res, req.body)));
493
- return;
494
- }
495
- if (req.method === 'POST' && (0, types_js_1.isInitializeRequest)(req.body)) {
496
- const handleInitializeRequest = async () => {
497
- await waitForActiveSessionPostRequests(clientState);
498
- for (const transport of clientState.transports.values()) {
499
- await transport.close();
500
- }
501
- clientState.transports.clear();
502
- if (!clientState.mcpHandle) {
503
- clientState.mcpHandle = createMcp();
504
- }
505
- else {
506
- await clientState.mcpHandle.closeActiveSession();
507
- }
508
- const transport = new streamableHttp_js_1.StreamableHTTPServerTransport({
509
- sessionIdGenerator: () => (0, crypto_1.randomUUID)(),
510
- onsessioninitialized: (newSessionId) => {
511
- clientState.transports.set(newSessionId, transport);
512
- },
513
- });
514
- await clientState.mcpHandle.mcp.connect(transport);
515
- // Protocol.connect installs its own onclose; chain ours after it so
516
- // closed sessions drop out of the transport map.
517
- const protocolOnClose = transport.onclose;
518
- transport.onclose = () => {
519
- const closedSessionId = transport.sessionId;
520
- if (closedSessionId) {
521
- clientState.transports.delete(closedSessionId);
522
- }
523
- protocolOnClose?.();
524
- };
525
- await handleMcpRequestWithAuthContext(req, () => transport.handleRequest(req, res, req.body));
526
- };
527
- const initializeRequest = clientState.initializeRequestChain.then(handleInitializeRequest, handleInitializeRequest);
528
- clientState.initializeRequestChain = initializeRequest.catch(() => undefined);
529
- await initializeRequest;
530
- return;
531
- }
532
- res.status(400).json({
533
- jsonrpc: '2.0',
534
- error: {
535
- code: -32000,
536
- message: 'Bad Request: No valid session ID provided',
537
- },
538
- id: null,
539
- });
540
- }
541
- catch (error) {
542
- log.warn('MCP HTTP request failed:', error);
543
- if (!res.headersSent) {
544
- res.status(500).json({
545
- jsonrpc: '2.0',
546
- error: { code: -32603, message: 'Internal server error' },
547
- id: null,
548
- });
549
- }
550
- }
551
- });
552
- return app;
553
- };
554
- exports.createMcpHttpApp = createMcpHttpApp;
555
- /**
556
- * Starts the Rivet MCP server over streamable HTTP on localhost so MCP
557
- * clients that implement the MCP OAuth authorization spec (Cursor, Claude,
558
- * Codex) can offer their native "Connect" sign-in flow. Completed logins
559
- * persist credentials via ConfigManager, the same store the stdio mode uses.
560
- */
561
- const startMCPServerHttp = async (options = {}) => {
562
- (0, logger_1.setLogLevel)(process.env.RIVET_LOG_LEVEL ?? 'INFO');
563
- const port = options.port ?? exports.DEFAULT_MCP_HTTP_PORT;
564
- const baseUrl = new URL(`http://${MCP_HTTP_HOST}:${port}`);
565
- const configManager = (0, ConfigManager_1.getConfigManager)();
566
- if (options.mcpEditor === 'claude' || options.mcpEditor === undefined) {
567
- (0, skillWriter_1.writeSkillFileIfNeeded)();
568
- }
569
- const { createRivetMcp } = await Promise.resolve().then(() => __importStar(require('./server')));
570
- const provider = new httpOAuthProvider_1.RivetOAuthServerProvider({
571
- proxyUrl: configManager.getProxyUrl(),
572
- callbackUrl: baseUrl.origin,
573
- mcpEditor: options.mcpEditor,
574
- persistTokens: ({ token, refreshToken, user }) => {
575
- configManager.setAuth(token, user?.email ?? configManager.getEmail() ?? '', refreshToken, user?.id);
576
- },
577
- isRefreshTokenCurrent: (refreshToken) => configManager.getRefreshToken() === refreshToken,
578
- });
579
- const app = (0, exports.createMcpHttpApp)({
580
- baseUrl,
581
- provider,
582
- createMcp: () => {
583
- return createRivetMcp({
584
- mcpEditor: options.mcpEditor,
585
- registerProcessHandlers: false,
586
- revokeBearerToken: (token) => provider.revokeAccessToken(token),
587
- });
588
- },
589
- });
590
- const server = await new Promise((resolve, reject) => {
591
- const listening = app.listen(port, MCP_HTTP_HOST, () => resolve(listening));
592
- listening.on('error', reject);
593
- });
594
- (0, exports.registerMcpHttpProcessHandlers)({
595
- server,
596
- shutdownMcpClients: app.locals.shutdownMcpClients,
597
- });
598
- log.info(`Rivet MCP server (streamable HTTP) listening at ${baseUrl.href.replace(/\/$/, '')}${exports.MCP_HTTP_PATH}`);
599
- return server;
600
- };
601
- exports.startMCPServerHttp = startMCPServerHttp;
602
- //# sourceMappingURL=httpServer.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"httpServer.js","sourceRoot":"","sources":["../../src/mcp/httpServer.ts"],"names":[],"mappings":"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"}
@@ -1,25 +0,0 @@
1
- /**
2
- * Server `instructions` returned to MCP clients during `initialize`. Most
3
- * clients inject this string into the model's context at session start, so it
4
- * is our channel for making auth *proactive*: the agent learns the sign-in
5
- * contract before it ever calls a guarded tool, instead of discovering it via
6
- * an AUTH_REQUIRED failure mid-task.
7
- *
8
- * `authHint` lets the local server tailor the wording to the user's actual
9
- * sign-in state (read synchronously from disk at connect time). Hosted servers
10
- * are stateless per request, so they pass `'unknown'` and the agent is told to
11
- * check `auth_status` first.
12
- */
13
- export type AuthHint = 'authenticated' | 'unauthenticated' | 'unknown';
14
- /**
15
- * Builds the Rivet MCP server instructions for the given auth state.
16
- *
17
- * `firstRun` is read synchronously from local config at connect time (like
18
- * `authHint`). When true, the first-run onboarding nudge is injected so a bare
19
- * open leads with a proposal instead of an empty editor. Hosted/stateless
20
- * servers cannot read local state and should leave it false.
21
- */
22
- export declare const buildRivetMcpInstructions: (authHint: AuthHint, opts?: {
23
- firstRun?: boolean;
24
- }) => string;
25
- //# sourceMappingURL=instructions.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"instructions.d.ts","sourceRoot":"","sources":["../../src/mcp/instructions.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;GAWG;AACH,MAAM,MAAM,QAAQ,GAAG,eAAe,GAAG,iBAAiB,GAAG,SAAS,CAAC;AA2BvE;;;;;;;GAOG;AACH,eAAO,MAAM,yBAAyB,GACpC,UAAU,QAAQ,EAClB,OAAM;IAAE,QAAQ,CAAC,EAAE,OAAO,CAAA;CAAO,KAChC,MAOc,CAAC"}