rivet-design 0.9.2 → 0.9.4

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 (157) hide show
  1. package/dist/mcp/agent-variants/SessionStore.d.ts +78 -2
  2. package/dist/mcp/agent-variants/SessionStore.d.ts.map +1 -1
  3. package/dist/mcp/agent-variants/SessionStore.js +464 -62
  4. package/dist/mcp/agent-variants/SessionStore.js.map +1 -1
  5. package/dist/mcp/agent-variants/WorktreeOrchestrator.d.ts +331 -9
  6. package/dist/mcp/agent-variants/WorktreeOrchestrator.d.ts.map +1 -1
  7. package/dist/mcp/agent-variants/WorktreeOrchestrator.js +1985 -61
  8. package/dist/mcp/agent-variants/WorktreeOrchestrator.js.map +1 -1
  9. package/dist/mcp/agent-variants/WorktreeOrchestrator.testHelpers.d.ts +65 -0
  10. package/dist/mcp/agent-variants/WorktreeOrchestrator.testHelpers.d.ts.map +1 -0
  11. package/dist/mcp/agent-variants/WorktreeOrchestrator.testHelpers.js +162 -0
  12. package/dist/mcp/agent-variants/WorktreeOrchestrator.testHelpers.js.map +1 -0
  13. package/dist/mcp/agent-variants/contracts.d.ts +2508 -10
  14. package/dist/mcp/agent-variants/contracts.d.ts.map +1 -1
  15. package/dist/mcp/agent-variants/contracts.js +295 -5
  16. package/dist/mcp/agent-variants/contracts.js.map +1 -1
  17. package/dist/mcp/agent-variants/createProjectArtifacts.d.ts +78 -0
  18. package/dist/mcp/agent-variants/createProjectArtifacts.d.ts.map +1 -0
  19. package/dist/mcp/agent-variants/createProjectArtifacts.js +123 -0
  20. package/dist/mcp/agent-variants/createProjectArtifacts.js.map +1 -0
  21. package/dist/mcp/agent-variants/createZeroToOneTool.d.ts +241 -0
  22. package/dist/mcp/agent-variants/createZeroToOneTool.d.ts.map +1 -0
  23. package/dist/mcp/agent-variants/createZeroToOneTool.js +213 -0
  24. package/dist/mcp/agent-variants/createZeroToOneTool.js.map +1 -0
  25. package/dist/mcp/agent-variants/designContextStore.d.ts +160 -0
  26. package/dist/mcp/agent-variants/designContextStore.d.ts.map +1 -0
  27. package/dist/mcp/agent-variants/designContextStore.js +295 -0
  28. package/dist/mcp/agent-variants/designContextStore.js.map +1 -0
  29. package/dist/mcp/agent-variants/elementRefToTarget.d.ts +21 -0
  30. package/dist/mcp/agent-variants/elementRefToTarget.d.ts.map +1 -0
  31. package/dist/mcp/agent-variants/elementRefToTarget.js +47 -0
  32. package/dist/mcp/agent-variants/elementRefToTarget.js.map +1 -0
  33. package/dist/mcp/agent-variants/errors.d.ts +1 -1
  34. package/dist/mcp/agent-variants/errors.d.ts.map +1 -1
  35. package/dist/mcp/agent-variants/errors.js +7 -0
  36. package/dist/mcp/agent-variants/errors.js.map +1 -1
  37. package/dist/mcp/agent-variants/index.d.ts +4 -2
  38. package/dist/mcp/agent-variants/index.d.ts.map +1 -1
  39. package/dist/mcp/agent-variants/index.js +7 -1
  40. package/dist/mcp/agent-variants/index.js.map +1 -1
  41. package/dist/mcp/agent-variants/inspirationDesignContext.d.ts +440 -0
  42. package/dist/mcp/agent-variants/inspirationDesignContext.d.ts.map +1 -0
  43. package/dist/mcp/agent-variants/inspirationDesignContext.js +2467 -0
  44. package/dist/mcp/agent-variants/inspirationDesignContext.js.map +1 -0
  45. package/dist/mcp/agent-variants/pendingChangesAdapter.d.ts.map +1 -1
  46. package/dist/mcp/agent-variants/pendingChangesAdapter.js +21 -7
  47. package/dist/mcp/agent-variants/pendingChangesAdapter.js.map +1 -1
  48. package/dist/mcp/agent-variants/previewQa.d.ts +61 -0
  49. package/dist/mcp/agent-variants/previewQa.d.ts.map +1 -0
  50. package/dist/mcp/agent-variants/previewQa.js +374 -0
  51. package/dist/mcp/agent-variants/previewQa.js.map +1 -0
  52. package/dist/mcp/agent-variants/sourceContext.d.ts +8 -0
  53. package/dist/mcp/agent-variants/sourceContext.d.ts.map +1 -0
  54. package/dist/mcp/agent-variants/sourceContext.js +183 -0
  55. package/dist/mcp/agent-variants/sourceContext.js.map +1 -0
  56. package/dist/mcp/agent-variants/tools.d.ts +36 -0
  57. package/dist/mcp/agent-variants/tools.d.ts.map +1 -1
  58. package/dist/mcp/agent-variants/tools.js +451 -19
  59. package/dist/mcp/agent-variants/tools.js.map +1 -1
  60. package/dist/mcp/changeBatchClassification.d.ts +30 -0
  61. package/dist/mcp/changeBatchClassification.d.ts.map +1 -0
  62. package/dist/mcp/changeBatchClassification.js +65 -0
  63. package/dist/mcp/changeBatchClassification.js.map +1 -0
  64. package/dist/mcp/server.d.ts.map +1 -1
  65. package/dist/mcp/server.js +258 -41
  66. package/dist/mcp/server.js.map +1 -1
  67. package/dist/prompts/agentModPrompts.js +4 -4
  68. package/dist/prompts/agentModPrompts.js.map +1 -1
  69. package/dist/proxy-middleware/proxy-config.d.ts.map +1 -1
  70. package/dist/proxy-middleware/proxy-config.js +1 -15
  71. package/dist/proxy-middleware/proxy-config.js.map +1 -1
  72. package/dist/routes/agentVariants.d.ts +3 -1
  73. package/dist/routes/agentVariants.d.ts.map +1 -1
  74. package/dist/routes/agentVariants.js +138 -13
  75. package/dist/routes/agentVariants.js.map +1 -1
  76. package/dist/routes/mcp.d.ts +7 -1
  77. package/dist/routes/mcp.d.ts.map +1 -1
  78. package/dist/routes/mcp.js +139 -16
  79. package/dist/routes/mcp.js.map +1 -1
  80. package/dist/server.d.ts.map +1 -1
  81. package/dist/server.js +23 -5
  82. package/dist/server.js.map +1 -1
  83. package/dist/services/ProjectDetectionService.d.ts.map +1 -1
  84. package/dist/services/ProjectDetectionService.js +9 -0
  85. package/dist/services/ProjectDetectionService.js.map +1 -1
  86. package/dist/services/SessionBridgeService.d.ts +22 -0
  87. package/dist/services/SessionBridgeService.d.ts.map +1 -1
  88. package/dist/services/SessionBridgeService.js +61 -0
  89. package/dist/services/SessionBridgeService.js.map +1 -1
  90. package/dist/services/TelemetryService.d.ts +121 -0
  91. package/dist/services/TelemetryService.d.ts.map +1 -1
  92. package/dist/services/TelemetryService.js +155 -0
  93. package/dist/services/TelemetryService.js.map +1 -1
  94. package/dist/services/WorktreeManager.d.ts +116 -6
  95. package/dist/services/WorktreeManager.d.ts.map +1 -1
  96. package/dist/services/WorktreeManager.js +394 -19
  97. package/dist/services/WorktreeManager.js.map +1 -1
  98. package/dist/services/agent/AgentModService.js +6 -6
  99. package/dist/services/agent/AgentModService.js.map +1 -1
  100. package/dist/services/templates/designCatalog.d.ts +27 -0
  101. package/dist/services/templates/designCatalog.d.ts.map +1 -0
  102. package/dist/services/templates/designCatalog.js +141 -0
  103. package/dist/services/templates/designCatalog.js.map +1 -0
  104. package/dist/services/templates/designmd/airbnb.md +545 -0
  105. package/dist/services/templates/designmd/airtable.md +554 -0
  106. package/dist/services/templates/designmd/apple.md +562 -0
  107. package/dist/services/templates/designmd/binance.md +634 -0
  108. package/dist/services/templates/designmd/bmw-m.md +503 -0
  109. package/dist/services/templates/designmd/bmw.md +544 -0
  110. package/dist/services/templates/designmd/bugatti.md +454 -0
  111. package/dist/services/templates/designmd/cal.md +542 -0
  112. package/dist/services/templates/designmd/claude.md +589 -0
  113. package/dist/services/templates/designmd/clay.md +541 -0
  114. package/dist/services/templates/designmd/cohere.md +451 -0
  115. package/dist/services/templates/designmd/cursor.md +537 -0
  116. package/dist/services/templates/designmd/expo.md +526 -0
  117. package/dist/services/templates/designmd/figma.md +578 -0
  118. package/dist/services/templates/designmd/framer.md +544 -0
  119. package/dist/services/templates/designmd/hp.md +670 -0
  120. package/dist/services/templates/designmd/linear.app.md +548 -0
  121. package/dist/services/templates/designmd/mintlify.md +852 -0
  122. package/dist/services/templates/designmd/miro.md +825 -0
  123. package/dist/services/templates/designmd/notion.md +821 -0
  124. package/dist/services/templates/designmd/raycast.md +669 -0
  125. package/dist/services/templates/designmd/resend.md +585 -0
  126. package/dist/services/templates/designmd/sentry.md +262 -0
  127. package/dist/services/templates/designmd/shopify.md +350 -0
  128. package/dist/services/templates/designmd/spotify.md +246 -0
  129. package/dist/services/templates/designmd/stripe.md +322 -0
  130. package/dist/services/templates/designmd/supabase.md +255 -0
  131. package/dist/services/templates/designmd/superhuman.md +252 -0
  132. package/dist/services/templates/designmd/uber.md +295 -0
  133. package/dist/services/templates/designmd/vercel.md +310 -0
  134. package/dist/services/templates/viteReactTs.d.ts +48 -0
  135. package/dist/services/templates/viteReactTs.d.ts.map +1 -0
  136. package/dist/services/templates/viteReactTs.js +274 -0
  137. package/dist/services/templates/viteReactTs.js.map +1 -0
  138. package/dist/types/change-request-types.d.ts +29 -3
  139. package/dist/types/change-request-types.d.ts.map +1 -1
  140. package/dist/utils/skills/claude-skill.d.ts +2 -2
  141. package/dist/utils/skills/claude-skill.d.ts.map +1 -1
  142. package/dist/utils/skills/claude-skill.js +19 -98
  143. package/dist/utils/skills/claude-skill.js.map +1 -1
  144. package/dist/utils/skills/cursor-rules.d.ts +2 -2
  145. package/dist/utils/skills/cursor-rules.d.ts.map +1 -1
  146. package/dist/utils/skills/cursor-rules.js +15 -80
  147. package/dist/utils/skills/cursor-rules.js.map +1 -1
  148. package/dist/utils/skills/shared-variants-protocol.d.ts +23 -0
  149. package/dist/utils/skills/shared-variants-protocol.d.ts.map +1 -0
  150. package/dist/utils/skills/shared-variants-protocol.js +130 -0
  151. package/dist/utils/skills/shared-variants-protocol.js.map +1 -0
  152. package/package.json +6 -6
  153. package/src/ui/dist/assets/main-CpX7fB64.js +382 -0
  154. package/src/ui/dist/assets/main-Qqe2_oMT.css +1 -0
  155. package/src/ui/dist/index.html +2 -2
  156. package/src/ui/dist/assets/main-AsPCtLsx.js +0 -382
  157. package/src/ui/dist/assets/main-BzmseUDd.css +0 -1
@@ -1 +1 @@
1
- {"version":3,"file":"tools.js","sourceRoot":"","sources":["../../../src/mcp/agent-variants/tools.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"tools.js","sourceRoot":"","sources":["../../../src/mcp/agent-variants/tools.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,30 @@
1
+ import type { ChangeItem, ChangeRequest } from '../types/change-request-types';
2
+ export type ImageContent = {
3
+ type: 'image';
4
+ data: string;
5
+ mimeType: string;
6
+ };
7
+ /**
8
+ * Extract base64 images from comment/chat changes into separate MCP image
9
+ * content items. Returns the changes with `images` stripped (replaced by
10
+ * `imageCount`) and an array of image content items to append to the tool
11
+ * response. All other fields on the change item — including the optional
12
+ * `variantRequest` marker on comments — pass through untouched.
13
+ */
14
+ export declare function extractImages(changes: ChangeItem[]): {
15
+ changes: unknown[];
16
+ imageContent: ImageContent[];
17
+ };
18
+ /**
19
+ * Returns true when an intent's pending batch is a single CommentChangeItem
20
+ * carrying `variantRequest`. Such batches are routed through the variants
21
+ * lifecycle instead of `beginApplyingRun`.
22
+ */
23
+ export declare function isSingleVariantRequestBatch(intent: ChangeRequest): boolean;
24
+ /**
25
+ * Returns true when a batch contains at least one item with `variantRequest`
26
+ * but is NOT a clean single-item variant-request batch. UI gating should make
27
+ * this unreachable; the server boundary still rejects defensively.
28
+ */
29
+ export declare function isMixedVariantBatch(intent: ChangeRequest): boolean;
30
+ //# sourceMappingURL=changeBatchClassification.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"changeBatchClassification.d.ts","sourceRoot":"","sources":["../../src/mcp/changeBatchClassification.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EACV,UAAU,EACV,aAAa,EACd,MAAM,+BAA+B,CAAC;AAIvC,MAAM,MAAM,YAAY,GAAG;IAAE,IAAI,EAAE,OAAO,CAAC;IAAC,IAAI,EAAE,MAAM,CAAC;IAAC,QAAQ,EAAE,MAAM,CAAA;CAAE,CAAC;AAE7E;;;;;;GAMG;AACH,wBAAgB,aAAa,CAAC,OAAO,EAAE,UAAU,EAAE,GAAG;IACpD,OAAO,EAAE,OAAO,EAAE,CAAC;IACnB,YAAY,EAAE,YAAY,EAAE,CAAC;CAC9B,CAmCA;AAED;;;;GAIG;AACH,wBAAgB,2BAA2B,CAAC,MAAM,EAAE,aAAa,GAAG,OAAO,CAI1E;AAED;;;;GAIG;AACH,wBAAgB,mBAAmB,CAAC,MAAM,EAAE,aAAa,GAAG,OAAO,CAKlE"}
@@ -0,0 +1,65 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.extractImages = extractImages;
4
+ exports.isSingleVariantRequestBatch = isSingleVariantRequestBatch;
5
+ exports.isMixedVariantBatch = isMixedVariantBatch;
6
+ const index_core_1 = require("../index-core");
7
+ const log = (0, index_core_1.createLogger)('ChangeBatchClassification');
8
+ /**
9
+ * Extract base64 images from comment/chat changes into separate MCP image
10
+ * content items. Returns the changes with `images` stripped (replaced by
11
+ * `imageCount`) and an array of image content items to append to the tool
12
+ * response. All other fields on the change item — including the optional
13
+ * `variantRequest` marker on comments — pass through untouched.
14
+ */
15
+ function extractImages(changes) {
16
+ const imageContent = [];
17
+ const strippedChanges = changes.map((change) => {
18
+ if ((change.kind === 'comment' || change.kind === 'chat') &&
19
+ change.images?.length) {
20
+ let extractedCount = 0;
21
+ for (const img of change.images) {
22
+ const match = img.match(/^data:([^;]+);base64,(.+)$/s);
23
+ if (match) {
24
+ imageContent.push({
25
+ type: 'image',
26
+ data: match[2],
27
+ mimeType: match[1],
28
+ });
29
+ extractedCount++;
30
+ }
31
+ else {
32
+ const preview = img.slice(0, 80);
33
+ log.warn(`Failed to extract image from ${change.kind} change: not a valid data URI (starts with "${preview}")`);
34
+ }
35
+ }
36
+ const { images: _images, ...rest } = change;
37
+ void _images;
38
+ return { ...rest, imageCount: extractedCount };
39
+ }
40
+ return change;
41
+ });
42
+ return { changes: strippedChanges, imageContent };
43
+ }
44
+ /**
45
+ * Returns true when an intent's pending batch is a single CommentChangeItem
46
+ * carrying `variantRequest`. Such batches are routed through the variants
47
+ * lifecycle instead of `beginApplyingRun`.
48
+ */
49
+ function isSingleVariantRequestBatch(intent) {
50
+ if (intent.changes.length !== 1)
51
+ return false;
52
+ const item = intent.changes[0];
53
+ return item.kind === 'comment' && Boolean(item.variantRequest);
54
+ }
55
+ /**
56
+ * Returns true when a batch contains at least one item with `variantRequest`
57
+ * but is NOT a clean single-item variant-request batch. UI gating should make
58
+ * this unreachable; the server boundary still rejects defensively.
59
+ */
60
+ function isMixedVariantBatch(intent) {
61
+ if (intent.changes.length <= 1)
62
+ return false;
63
+ return intent.changes.some((c) => c.kind === 'comment' && Boolean(c.variantRequest));
64
+ }
65
+ //# sourceMappingURL=changeBatchClassification.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"changeBatchClassification.js","sourceRoot":"","sources":["../../src/mcp/changeBatchClassification.ts"],"names":[],"mappings":";;AAiBA,sCAsCC;AAOD,kEAIC;AAOD,kDAKC;AA9ED,8CAA6C;AAM7C,MAAM,GAAG,GAAG,IAAA,yBAAY,EAAC,2BAA2B,CAAC,CAAC;AAItD;;;;;;GAMG;AACH,SAAgB,aAAa,CAAC,OAAqB;IAIjD,MAAM,YAAY,GAAmB,EAAE,CAAC;IAExC,MAAM,eAAe,GAAG,OAAO,CAAC,GAAG,CAAC,CAAC,MAAM,EAAE,EAAE;QAC7C,IACE,CAAC,MAAM,CAAC,IAAI,KAAK,SAAS,IAAI,MAAM,CAAC,IAAI,KAAK,MAAM,CAAC;YACrD,MAAM,CAAC,MAAM,EAAE,MAAM,EACrB,CAAC;YACD,IAAI,cAAc,GAAG,CAAC,CAAC;YACvB,KAAK,MAAM,GAAG,IAAI,MAAM,CAAC,MAAM,EAAE,CAAC;gBAChC,MAAM,KAAK,GAAG,GAAG,CAAC,KAAK,CAAC,6BAA6B,CAAC,CAAC;gBACvD,IAAI,KAAK,EAAE,CAAC;oBACV,YAAY,CAAC,IAAI,CAAC;wBAChB,IAAI,EAAE,OAAO;wBACb,IAAI,EAAE,KAAK,CAAC,CAAC,CAAC;wBACd,QAAQ,EAAE,KAAK,CAAC,CAAC,CAAC;qBACnB,CAAC,CAAC;oBACH,cAAc,EAAE,CAAC;gBACnB,CAAC;qBAAM,CAAC;oBACN,MAAM,OAAO,GAAG,GAAG,CAAC,KAAK,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC;oBACjC,GAAG,CAAC,IAAI,CACN,gCAAgC,MAAM,CAAC,IAAI,+CAA+C,OAAO,IAAI,CACtG,CAAC;gBACJ,CAAC;YACH,CAAC;YACD,MAAM,EAAE,MAAM,EAAE,OAAO,EAAE,GAAG,IAAI,EAAE,GAAG,MAEpC,CAAC;YACF,KAAK,OAAO,CAAC;YACb,OAAO,EAAE,GAAG,IAAI,EAAE,UAAU,EAAE,cAAc,EAAE,CAAC;QACjD,CAAC;QACD,OAAO,MAAM,CAAC;IAChB,CAAC,CAAC,CAAC;IAEH,OAAO,EAAE,OAAO,EAAE,eAAe,EAAE,YAAY,EAAE,CAAC;AACpD,CAAC;AAED;;;;GAIG;AACH,SAAgB,2BAA2B,CAAC,MAAqB;IAC/D,IAAI,MAAM,CAAC,OAAO,CAAC,MAAM,KAAK,CAAC;QAAE,OAAO,KAAK,CAAC;IAC9C,MAAM,IAAI,GAAG,MAAM,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC;IAC/B,OAAO,IAAI,CAAC,IAAI,KAAK,SAAS,IAAI,OAAO,CAAC,IAAI,CAAC,cAAc,CAAC,CAAC;AACjE,CAAC;AAED;;;;GAIG;AACH,SAAgB,mBAAmB,CAAC,MAAqB;IACvD,IAAI,MAAM,CAAC,OAAO,CAAC,MAAM,IAAI,CAAC;QAAE,OAAO,KAAK,CAAC;IAC7C,OAAO,MAAM,CAAC,OAAO,CAAC,IAAI,CACxB,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,IAAI,KAAK,SAAS,IAAI,OAAO,CAAC,CAAC,CAAC,cAAc,CAAC,CACzD,CAAC;AACJ,CAAC"}
@@ -1 +1 @@
1
- {"version":3,"file":"server.d.ts","sourceRoot":"","sources":["../../src/mcp/server.ts"],"names":[],"mappings":"AAgeA,eAAO,MAAM,cAAc,GAAU,YAAY,MAAM,KAAG,OAAO,CAAC,IAAI,CAo/BrE,CAAC"}
1
+ {"version":3,"file":"server.d.ts","sourceRoot":"","sources":["../../src/mcp/server.ts"],"names":[],"mappings":"AAgdA,eAAO,MAAM,cAAc,GAAU,YAAY,MAAM,KAAG,OAAO,CAAC,IAAI,CA4uCrE,CAAC"}
@@ -24,6 +24,7 @@ const fs_1 = __importDefault(require("fs"));
24
24
  const path_1 = __importDefault(require("path"));
25
25
  const util_1 = require("util");
26
26
  const devServerCommand_1 = require("../utils/devServerCommand");
27
+ const changeBatchClassification_1 = require("./changeBatchClassification");
27
28
  const log = (0, index_core_1.createLogger)('MCPServer');
28
29
  const execAsync = (0, util_1.promisify)(child_process_1.exec);
29
30
  /** Poll until the port responds to HTTP or the timeout is reached. */
@@ -320,51 +321,39 @@ const trackOrphanedMCPRun = (telemetry, sessionId, orphanedRun) => {
320
321
  source: 'mcp',
321
322
  });
322
323
  };
323
- /**
324
- * Extract base64 images from comment/chat changes into separate MCP image content items.
325
- * Returns the changes with `images` stripped (replaced by `imageCount` for reference)
326
- * and an array of image content items to append to the tool response.
327
- *
328
- * This keeps the JSON text payload compact and lets the model see images natively
329
- * as vision content rather than requiring custom base64 parsing.
330
- */
331
- function extractImages(changes) {
332
- const imageContent = [];
333
- const strippedChanges = changes.map((change) => {
334
- if ((change.kind === 'comment' || change.kind === 'chat') &&
335
- change.images?.length) {
336
- let extractedCount = 0;
337
- for (const img of change.images) {
338
- const match = img.match(/^data:([^;]+);base64,(.+)$/s);
339
- if (match) {
340
- imageContent.push({
341
- type: 'image',
342
- data: match[2],
343
- mimeType: match[1],
344
- });
345
- extractedCount++;
346
- }
347
- else {
348
- const preview = img.slice(0, 80);
349
- log.warn(`Failed to extract image from ${change.kind} change: not a valid data URI (starts with "${preview}")`);
350
- }
351
- }
352
- const { images: _images, ...rest } = change;
353
- void _images;
354
- return { ...rest, imageCount: extractedCount };
355
- }
356
- return change;
357
- });
358
- return { changes: strippedChanges, imageContent };
359
- }
360
324
  const APPLY_GUIDE = 'Read each file in sourceFiles, then apply every change in the changes array. ' +
361
325
  'style: find the element by className/xpath and update the CSS property from "from" to "to". ' +
362
326
  'text: find the element and replace the text content. ' +
363
327
  'comment: interpret the instruction using the element context and apply appropriate code changes. ' +
364
328
  'chat: interpret the free-text instruction in the "instruction" field and apply appropriate code changes across any file in the project. ' +
329
+ 'variant: a user-picked variant from the agent-variants flow. ' +
330
+ 'Variant protocol reminder: source_research (if present) -> report_source_context -> brief approval -> generation -> user commit. ' +
331
+ 'variant.payload.kind=diff-applied: the server has already `git apply`d the unified diff to the user\'s working tree (uncommitted). DO NOT re-apply — acknowledge the variant and let the user review. ' +
332
+ 'variant.payload.kind=diff (legacy): apply the unified diff in payload.diff against the project root via `git apply` (no manual edits). ' +
333
+ 'variant.payload.kind=project-created: the project has already been materialized at destinationPath and git-committed by the server. Optionally run `npm install` in destinationPath and continue from there — no further file operations are required for the pick itself. ' +
365
334
  'For elements with empty filePaths, search the codebase by className or xpath. ' +
366
335
  'If a change has imageCount > 0, the corresponding reference images appear as image content items immediately following this text in the tool result — view them before making changes. ' +
336
+ 'IMPORTANT — variantRequest branch: if a comment item carries `variantRequest: { count }`, do NOT edit any files. Instead, derive `target` from the comment\'s `element` using this priority: ' +
337
+ '(a) prefer `{ type: "file", ref: filePaths[0] }` when `filePaths.length === 1`; otherwise ' +
338
+ '(b) `rivetId` → `{ type: "element", ref: \'[data-rivet-id="<rivetId>"]\' }`, then ' +
339
+ '(c) `id` (no whitespace) → `{ type: "element", ref: "#<id>" }`, then ' +
340
+ '(d) `xpath` → `{ type: "element", ref: "<xpath>" }`, then ' +
341
+ '(e) single-token `className` → `{ type: "element", ref: ".<token>" }`. ' +
342
+ 'Then call `propose_variants` with `{ prompt: instruction, count: variantRequest.count, target, projectContext }` and follow the full variants lifecycle: `report_variant_briefs` → `approve_variant_briefs` (only after explicit user confirmation; pass `confirmedByUser: true`) → `continue_variants` → `report_variant_complete`. ' +
367
343
  'CRITICAL WORKFLOW: 1. Call get_pending_changes with a message sharing your brief plan. 2. Edit the files. 3. Call get_pending_changes with a message summarizing what you changed and refresh_git: true so the Rivet UI updates. 4. STOP and let the user know their changes have been applied.';
344
+ const VARIANT_REQUEST_GUIDE = 'This batch is a Rivet variant request — do NOT edit files directly. ' +
345
+ 'The pending change is a single CommentChangeItem with `variantRequest.count`. ' +
346
+ 'Derive the `propose_variants.target` from the comment\'s `element` using this priority: ' +
347
+ '(a) `{ type: "file", ref: filePaths[0] }` when `filePaths.length === 1`; otherwise ' +
348
+ '(b) `rivetId` → `[data-rivet-id="<rivetId>"]`, then ' +
349
+ '(c) `id` (no whitespace) → `#<id>`, then ' +
350
+ '(d) `xpath` → `<xpath>`, then ' +
351
+ '(e) single-token `className` → `.<token>`. ' +
352
+ 'Then call `propose_variants` with `{ prompt: instruction, count: variantRequest.count, target, projectContext }` and follow the full variants lifecycle: ' +
353
+ '`report_variant_briefs` → `approve_variant_briefs` (only after explicit user confirmation; pass `confirmedByUser: true`) → `continue_variants` → `report_variant_complete`. ' +
354
+ 'After the user picks a variant via `commit_variant`, STOP and tell the user their variant has been committed.';
355
+ const VARIANT_MIXED_BATCH_GUIDE = 'Mixed batch rejected: a `variantRequest` comment must be the only item in its batch. ' +
356
+ 'Ask the user to send the variant request on its own (clear other pending changes first) and retry.';
368
357
  const startMCPServer = async (mcpEditor) => {
369
358
  // Redirect all logging to stderr so stdout is reserved for MCP protocol,
370
359
  // then silence all output — users shouldn't see Rivet logs in their terminal.
@@ -405,6 +394,13 @@ const startMCPServer = async (mcpEditor) => {
405
394
  buildDevCommand: (port) => (0, devServerCommand_1.buildDevServerCommand)(framework, packageManager, devCommand, port),
406
395
  };
407
396
  },
397
+ // After a fresh vite_app commit, the orchestrator renames the chosen
398
+ // variant into destinationPath and spawns a new dev server there. The
399
+ // iframe's proxy is still pointed at the dead variant port, so we
400
+ // retarget here. The variants Express route also calls switchPreviewPort
401
+ // for the legacy null/diff paths — this callback is the rename-path
402
+ // counterpart.
403
+ switchPreviewPort: (port) => bridge.switchPreviewPort(port),
408
404
  });
409
405
  /** Complete the active run correlation and refresh git status in the Rivet UI. */
410
406
  const handleRefreshGit = (sessionId) => {
@@ -451,6 +447,8 @@ const startMCPServer = async (mcpEditor) => {
451
447
  let devServerOwnership = 'none';
452
448
  let devServerHost = null;
453
449
  let devServerPort = null;
450
+ let rivetServerPort = null;
451
+ let rivetServerUrl = null;
454
452
  let isCleanupRunning = false;
455
453
  const updateBridgeHealth = (reason, isReachable) => {
456
454
  bridge.updateDevServerHealth({
@@ -495,6 +493,8 @@ const startMCPServer = async (mcpEditor) => {
495
493
  devServerOwnership = 'none';
496
494
  devServerHost = null;
497
495
  devServerPort = null;
496
+ rivetServerPort = null;
497
+ rivetServerUrl = null;
498
498
  updateBridgeHealth('rivet_unreachable', false);
499
499
  const durationMs = sessionStartedAt ? Date.now() - sessionStartedAt : 0;
500
500
  sessionStartedAt = null;
@@ -546,6 +546,127 @@ const startMCPServer = async (mcpEditor) => {
546
546
  process.on('beforeExit', async () => {
547
547
  await shutdown();
548
548
  });
549
+ /**
550
+ * Ensure zero-to-one variant sessions have a Rivet UI shell subscribed to
551
+ * the shared variants orchestrator. Fresh projects do not have a base app
552
+ * server yet, so the shell starts with the existing proxy path and waits for
553
+ * generated variant dev servers to become selectable.
554
+ */
555
+ const ensureZeroToOneVisualEditorOpen = async (input) => {
556
+ if (bridge.isActive()) {
557
+ if (!rivetServerUrl || rivetServerPort === null) {
558
+ throw new Error('Rivet visual editor session is active but URL metadata is unavailable');
559
+ }
560
+ const activeEditorSessionId = bridge.getSessionId();
561
+ if (!activeEditorSessionId) {
562
+ throw new Error('Rivet visual editor session is active but has no session ID');
563
+ }
564
+ // Rebind the bridge's projectPath to the incoming session's destination.
565
+ // Sequential zero-to-one sessions reuse the same long-lived bridge session,
566
+ // so without this rebind /api/config and any consumer of getProjectPath()
567
+ // would see the previous session's destination path.
568
+ if (bridge.getProjectPath() !== input.projectPath) {
569
+ bridge.rebindProjectPath(input.projectPath);
570
+ }
571
+ try {
572
+ await (0, open_1.default)(rivetServerUrl);
573
+ }
574
+ catch {
575
+ log.warn('Failed to focus existing Rivet browser automatically');
576
+ }
577
+ return {
578
+ sessionId: activeEditorSessionId,
579
+ url: rivetServerUrl,
580
+ rivetPort: rivetServerPort,
581
+ opened: false,
582
+ attached: true,
583
+ };
584
+ }
585
+ let nextRivetPort;
586
+ try {
587
+ nextRivetPort = await (0, portUtils_1.findAvailablePort)(index_1.DEFAULT_PORT);
588
+ }
589
+ catch (error) {
590
+ log.warn(`Port discovery failed for zero-to-one editor, falling back to ${index_1.DEFAULT_PORT}:`, error);
591
+ nextRivetPort = index_1.DEFAULT_PORT;
592
+ }
593
+ let retries = 0;
594
+ const maxRetries = 5;
595
+ while (!serverHandle && retries < maxRetries) {
596
+ try {
597
+ serverHandle = await (0, server_1.startServer)({
598
+ framework: input.framework,
599
+ projectPath: input.projectPath,
600
+ userPort: 0,
601
+ userHost: 'localhost',
602
+ sessionBridge: bridge,
603
+ agentVariantsOrchestrator,
604
+ telemetry,
605
+ mcpEditor,
606
+ skipProcessHandlers: true,
607
+ rivetPort: nextRivetPort,
608
+ isGitEnabled: false,
609
+ });
610
+ }
611
+ catch (error) {
612
+ if (error?.code !== 'EADDRINUSE') {
613
+ throw error;
614
+ }
615
+ retries++;
616
+ nextRivetPort = await (0, portUtils_1.findAvailablePort)(nextRivetPort + 1);
617
+ log.debug(`Zero-to-one editor port in use, retrying with port ${nextRivetPort} (attempt ${retries}/${maxRetries})`);
618
+ }
619
+ }
620
+ if (!serverHandle) {
621
+ throw new Error(`Could not start Rivet server after ${maxRetries} attempts.`);
622
+ }
623
+ const editorSessionId = bridge.startSession(input.projectPath);
624
+ sessionStartedAt = Date.now();
625
+ devServerOwnership = 'none';
626
+ devServerHost = 'localhost';
627
+ devServerPort = null;
628
+ bridge.setDevServerContext({
629
+ ownership: devServerOwnership,
630
+ host: devServerHost,
631
+ port: devServerPort,
632
+ startedByRivet: false,
633
+ });
634
+ updateBridgeHealth('unknown', null);
635
+ telemetry.trackMCPSessionStart({
636
+ framework: input.framework,
637
+ devServerStarted: false,
638
+ sessionId: editorSessionId,
639
+ mcpEditor,
640
+ });
641
+ // Mirror the writeSkillFileIfNeeded / writeCursorRulesIfNeeded call
642
+ // that open_visual_editor performs after a successful open. The
643
+ // unified start_variants flow opens the editor via this hook instead
644
+ // of through the open_visual_editor tool, so without this the
645
+ // SKILL.md / rivet.mdc file would never be rewritten when only
646
+ // start_variants is used.
647
+ if (mcpEditor === 'cursor') {
648
+ (0, skillWriter_1.writeCursorRulesIfNeeded)(input.projectPath);
649
+ }
650
+ else if (mcpEditor === 'claude' || mcpEditor === undefined) {
651
+ (0, skillWriter_1.writeSkillFileIfNeeded)();
652
+ }
653
+ const url = `http://localhost:${nextRivetPort}/rivet`;
654
+ rivetServerPort = nextRivetPort;
655
+ rivetServerUrl = url;
656
+ try {
657
+ await (0, open_1.default)(url);
658
+ }
659
+ catch {
660
+ log.warn('Failed to open browser automatically');
661
+ }
662
+ return {
663
+ sessionId: editorSessionId,
664
+ url,
665
+ rivetPort: nextRivetPort,
666
+ opened: true,
667
+ attached: false,
668
+ };
669
+ };
549
670
  // Define schemas separately to avoid TS2589 "excessively deep" type inference
550
671
  const detectProjectArgs = {
551
672
  projectPath: v3_1.z
@@ -965,8 +1086,13 @@ const startMCPServer = async (mcpEditor) => {
965
1086
  sessionId,
966
1087
  mcpEditor,
967
1088
  });
968
- // Open browser
969
- const url = `http://localhost:${rivetPort}/rivet`;
1089
+ // Open browser. Static mode serves the Rivet shell at `/` (server.ts
1090
+ // mounts the UI there because there's no upstream dev server to proxy
1091
+ // through `/`); every other framework serves the shell at `/rivet` so
1092
+ // the user's app keeps `/`.
1093
+ const url = `http://localhost:${rivetPort}${framework === 'static' ? '/' : '/rivet'}`;
1094
+ rivetServerPort = rivetPort;
1095
+ rivetServerUrl = url;
970
1096
  try {
971
1097
  await (0, open_1.default)(url);
972
1098
  }
@@ -1064,8 +1190,44 @@ If the Monitor tool is not available, call watch_for_changes({ sessionId: "${ses
1064
1190
  ],
1065
1191
  };
1066
1192
  }
1193
+ if ((0, changeBatchClassification_1.isMixedVariantBatch)(intent)) {
1194
+ bridge.rejectMixedVariantRequestBatch();
1195
+ return {
1196
+ content: [
1197
+ {
1198
+ type: 'text',
1199
+ text: JSON.stringify({
1200
+ hasChanges: false,
1201
+ rejected: true,
1202
+ reason: 'mixed_variant_batch',
1203
+ message: VARIANT_MIXED_BATCH_GUIDE,
1204
+ }),
1205
+ },
1206
+ ],
1207
+ isError: true,
1208
+ };
1209
+ }
1210
+ if ((0, changeBatchClassification_1.isSingleVariantRequestBatch)(intent)) {
1211
+ bridge.consumeVariantRequestBatch();
1212
+ const { changes, imageContent } = (0, changeBatchClassification_1.extractImages)(intent.changes);
1213
+ return {
1214
+ content: [
1215
+ {
1216
+ type: 'text',
1217
+ text: JSON.stringify({
1218
+ hasChanges: true,
1219
+ kind: 'variant_request',
1220
+ changes,
1221
+ sourceFiles: intent.sourceFiles,
1222
+ applyGuide: VARIANT_REQUEST_GUIDE,
1223
+ }),
1224
+ },
1225
+ ...imageContent,
1226
+ ],
1227
+ };
1228
+ }
1067
1229
  beginApplyingRun(intent, args.sessionId);
1068
- const { changes, imageContent } = extractImages(intent.changes);
1230
+ const { changes, imageContent } = (0, changeBatchClassification_1.extractImages)(intent.changes);
1069
1231
  return {
1070
1232
  content: [
1071
1233
  {
@@ -1124,8 +1286,44 @@ If the Monitor tool is not available, call watch_for_changes({ sessionId: "${ses
1124
1286
  ],
1125
1287
  };
1126
1288
  }
1289
+ if ((0, changeBatchClassification_1.isMixedVariantBatch)(intent)) {
1290
+ bridge.rejectMixedVariantRequestBatch();
1291
+ return {
1292
+ content: [
1293
+ {
1294
+ type: 'text',
1295
+ text: JSON.stringify({
1296
+ hasChanges: false,
1297
+ rejected: true,
1298
+ reason: 'mixed_variant_batch',
1299
+ message: VARIANT_MIXED_BATCH_GUIDE,
1300
+ }),
1301
+ },
1302
+ ],
1303
+ isError: true,
1304
+ };
1305
+ }
1306
+ if ((0, changeBatchClassification_1.isSingleVariantRequestBatch)(intent)) {
1307
+ bridge.consumeVariantRequestBatch();
1308
+ const { changes, imageContent } = (0, changeBatchClassification_1.extractImages)(intent.changes);
1309
+ return {
1310
+ content: [
1311
+ {
1312
+ type: 'text',
1313
+ text: JSON.stringify({
1314
+ hasChanges: true,
1315
+ kind: 'variant_request',
1316
+ changes,
1317
+ sourceFiles: intent.sourceFiles,
1318
+ applyGuide: VARIANT_REQUEST_GUIDE,
1319
+ }),
1320
+ },
1321
+ ...imageContent,
1322
+ ],
1323
+ };
1324
+ }
1127
1325
  beginApplyingRun(intent, args.sessionId);
1128
- const { changes, imageContent } = extractImages(intent.changes);
1326
+ const { changes, imageContent } = (0, changeBatchClassification_1.extractImages)(intent.changes);
1129
1327
  return {
1130
1328
  content: [
1131
1329
  {
@@ -1168,15 +1366,34 @@ If the Monitor tool is not available, call watch_for_changes({ sessionId: "${ses
1168
1366
  });
1169
1367
  // Register the agent-variants MCP tools (orchestrator was constructed at
1170
1368
  // the top of runMcpServer so it's shared with the Express routes).
1369
+ // Default inspiration fetcher + design-context store are wired
1370
+ // automatically when omitted, so production picks them up here.
1171
1371
  (0, agent_variants_1.registerAgentVariantsTools)(mcp, {
1172
1372
  orchestrator: agentVariantsOrchestrator,
1173
1373
  leaseOwner: () => 'mcp-server',
1374
+ ensureVisualEditorOpen: ensureZeroToOneVisualEditorOpen,
1375
+ telemetry,
1376
+ });
1377
+ (0, agent_variants_1.registerCreateZeroToOneTool)(mcp, {
1378
+ orchestrator: agentVariantsOrchestrator,
1379
+ leaseOwner: () => 'mcp-server',
1380
+ ensureVisualEditorOpen: ensureZeroToOneVisualEditorOpen,
1381
+ telemetry,
1382
+ getProjectPath: () => bridge.getProjectPath(),
1174
1383
  });
1175
1384
  log.info('agent-variants MCP tools registered');
1176
1385
  // Connect via stdio
1177
1386
  const transport = new stdio_js_1.StdioServerTransport();
1178
1387
  await mcp.connect(transport);
1179
1388
  log.info('Rivet MCP server started on stdio');
1389
+ // Keep the MCP process alive for as long as the client keeps stdio open.
1390
+ // Without this guard, some Node/stdin combinations can allow the process
1391
+ // to exit before the client finishes initialization.
1392
+ await new Promise((resolve) => {
1393
+ process.stdin.once('end', resolve);
1394
+ process.stdin.once('close', resolve);
1395
+ process.stdin.resume();
1396
+ });
1180
1397
  };
1181
1398
  exports.startMCPServer = startMCPServer;
1182
1399
  //# sourceMappingURL=server.js.map