rivet-design 0.9.5 → 0.9.7
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.
- package/dist/mcp/agent-variants/SessionStore.d.ts +10 -2
- package/dist/mcp/agent-variants/SessionStore.d.ts.map +1 -1
- package/dist/mcp/agent-variants/SessionStore.js +82 -22
- package/dist/mcp/agent-variants/SessionStore.js.map +1 -1
- package/dist/mcp/agent-variants/WorktreeOrchestrator.d.ts +4 -0
- package/dist/mcp/agent-variants/WorktreeOrchestrator.d.ts.map +1 -1
- package/dist/mcp/agent-variants/WorktreeOrchestrator.js +432 -37
- package/dist/mcp/agent-variants/WorktreeOrchestrator.js.map +1 -1
- package/dist/mcp/agent-variants/contracts.d.ts +389 -129
- package/dist/mcp/agent-variants/contracts.d.ts.map +1 -1
- package/dist/mcp/agent-variants/contracts.js +90 -36
- package/dist/mcp/agent-variants/contracts.js.map +1 -1
- package/dist/mcp/agent-variants/createZeroToOneTool.d.ts +32 -13
- package/dist/mcp/agent-variants/createZeroToOneTool.d.ts.map +1 -1
- package/dist/mcp/agent-variants/createZeroToOneTool.js +1 -1
- package/dist/mcp/agent-variants/createZeroToOneTool.js.map +1 -1
- package/dist/mcp/agent-variants/tools.d.ts.map +1 -1
- package/dist/mcp/agent-variants/tools.js +9 -2
- package/dist/mcp/agent-variants/tools.js.map +1 -1
- package/dist/mcp/server.d.ts.map +1 -1
- package/dist/mcp/server.js +30 -2
- package/dist/mcp/server.js.map +1 -1
- package/dist/routes/agentVariants.d.ts.map +1 -1
- package/dist/routes/agentVariants.js +120 -37
- package/dist/routes/agentVariants.js.map +1 -1
- package/dist/routes/mcp.d.ts.map +1 -1
- package/dist/routes/mcp.js +175 -5
- package/dist/routes/mcp.js.map +1 -1
- package/dist/services/VariantHistoryService.d.ts +64 -1
- package/dist/services/VariantHistoryService.d.ts.map +1 -1
- package/dist/services/VariantHistoryService.js +148 -18
- package/dist/services/VariantHistoryService.js.map +1 -1
- package/dist/types/change-request-types.d.ts +67 -0
- package/dist/types/change-request-types.d.ts.map +1 -1
- package/dist/utils/skills/claude-skill.d.ts +1 -1
- package/dist/utils/skills/claude-skill.js +1 -1
- package/dist/utils/skills/cursor-rules.d.ts +1 -1
- package/dist/utils/skills/cursor-rules.js +1 -1
- package/dist/utils/skills/describe-motion-protocol.d.ts +11 -0
- package/dist/utils/skills/describe-motion-protocol.d.ts.map +1 -0
- package/dist/utils/skills/describe-motion-protocol.js +216 -0
- package/dist/utils/skills/describe-motion-protocol.js.map +1 -0
- package/dist/utils/skills/shared-variants-protocol.d.ts.map +1 -1
- package/dist/utils/skills/shared-variants-protocol.js +23 -17
- package/dist/utils/skills/shared-variants-protocol.js.map +1 -1
- package/package.json +2 -1
- package/src/ui/dist/assets/main-BZEruoyc.css +1 -0
- package/src/ui/dist/assets/{main-SuZlKEi0.js → main-CIqMI5Le.js} +65 -65
- package/src/ui/dist/index.html +2 -2
- package/src/ui/dist/assets/main-OdmwI8Od.css +0 -1
|
@@ -9,7 +9,7 @@ const promises_1 = __importDefault(require("fs/promises"));
|
|
|
9
9
|
const path_1 = __importDefault(require("path"));
|
|
10
10
|
const logger_1 = require("../utils/logger");
|
|
11
11
|
const log = (0, logger_1.createLogger)('VariantHistoryService');
|
|
12
|
-
const HISTORY_SCHEMA_VERSION =
|
|
12
|
+
const HISTORY_SCHEMA_VERSION = 2;
|
|
13
13
|
const RIVET_DIRNAME = '.rivet';
|
|
14
14
|
const VARIANTS_DIRNAME = 'variants';
|
|
15
15
|
const SESSION_FILENAME = 'session.json';
|
|
@@ -49,6 +49,14 @@ const assertSafeId = (value, name) => {
|
|
|
49
49
|
throw new Error(`VariantHistoryService: invalid ${name} '${value}' — must match ${SAFE_ID_PATTERN}`);
|
|
50
50
|
}
|
|
51
51
|
};
|
|
52
|
+
const assertSafeAssetPath = (value) => {
|
|
53
|
+
if (value.length === 0 ||
|
|
54
|
+
value.includes('\0') ||
|
|
55
|
+
path_1.default.isAbsolute(value) ||
|
|
56
|
+
value.split(/[\\/]+/).some((part) => part === '..')) {
|
|
57
|
+
throw new Error(`VariantHistoryService: invalid assetPath '${value}'`);
|
|
58
|
+
}
|
|
59
|
+
};
|
|
52
60
|
class VariantHistoryService {
|
|
53
61
|
variantsRoot(projectPath) {
|
|
54
62
|
return path_1.default.join(projectPath, RIVET_DIRNAME, VARIANTS_DIRNAME);
|
|
@@ -70,7 +78,7 @@ class VariantHistoryService {
|
|
|
70
78
|
}
|
|
71
79
|
const sessionDir = this.sessionDir(args.projectPath, args.sessionId);
|
|
72
80
|
const variantDir = this.variantDir(args.projectPath, args.sessionId, args.variantId);
|
|
73
|
-
await promises_1.default.mkdir(
|
|
81
|
+
await promises_1.default.mkdir(sessionDir, { recursive: true });
|
|
74
82
|
// Race guard: persistVariant runs at code_gen success and again on retries
|
|
75
83
|
// / late callbacks. If the manifest has already reached a terminal status
|
|
76
84
|
// via markStatus (committed/rejected), preserve that status so the late
|
|
@@ -79,9 +87,11 @@ class VariantHistoryService {
|
|
|
79
87
|
let preservedStatus;
|
|
80
88
|
let preservedStatusChangedAt;
|
|
81
89
|
let preservedDestinationPath;
|
|
90
|
+
let preservedCreatedAt;
|
|
82
91
|
try {
|
|
83
92
|
const raw = await promises_1.default.readFile(existingManifestPath, 'utf8');
|
|
84
93
|
const prior = JSON.parse(raw);
|
|
94
|
+
preservedCreatedAt = prior.createdAt;
|
|
85
95
|
if (TERMINAL_STATUSES.has(prior.status)) {
|
|
86
96
|
preservedStatus = prior.status;
|
|
87
97
|
preservedStatusChangedAt = prior.statusChangedAt;
|
|
@@ -105,6 +115,27 @@ class VariantHistoryService {
|
|
|
105
115
|
};
|
|
106
116
|
await promises_1.default.writeFile(sessionPath, `${JSON.stringify(sessionFile, null, 2)}\n`, 'utf8');
|
|
107
117
|
}
|
|
118
|
+
const preview = resolvePreview(args);
|
|
119
|
+
if (preview.kind === 'static' && !args.sourceDir) {
|
|
120
|
+
throw new Error(`persistVariant: preview.kind='static' requires sourceDir (sessionId=${args.sessionId} variantId=${args.variantId})`);
|
|
121
|
+
}
|
|
122
|
+
const shouldCopyFiles = args.kind === 'project-created' || args.sourceDir !== undefined;
|
|
123
|
+
const artifact = args.kind === 'diff'
|
|
124
|
+
? {
|
|
125
|
+
kind: 'diff',
|
|
126
|
+
diffPath: DIFF_FILENAME,
|
|
127
|
+
...(shouldCopyFiles ? { filesPath: FILES_DIRNAME } : {}),
|
|
128
|
+
}
|
|
129
|
+
: {
|
|
130
|
+
kind: 'project',
|
|
131
|
+
filesPath: FILES_DIRNAME,
|
|
132
|
+
...(preview.kind === 'dev-server' && preview.runnablePath
|
|
133
|
+
? { runnablePath: preview.runnablePath }
|
|
134
|
+
: {}),
|
|
135
|
+
};
|
|
136
|
+
const stagingDir = path_1.default.join(sessionDir, `${args.variantId}.tmp-${process.pid}-${Date.now()}`);
|
|
137
|
+
await promises_1.default.rm(stagingDir, { recursive: true, force: true });
|
|
138
|
+
await promises_1.default.mkdir(stagingDir, { recursive: true });
|
|
108
139
|
const now = new Date().toISOString();
|
|
109
140
|
const manifest = {
|
|
110
141
|
schemaVersion: HISTORY_SCHEMA_VERSION,
|
|
@@ -113,27 +144,30 @@ class VariantHistoryService {
|
|
|
113
144
|
label: args.label,
|
|
114
145
|
brief: args.brief,
|
|
115
146
|
sessionPrompt: args.sessionPrompt,
|
|
116
|
-
|
|
147
|
+
projectKind: args.projectKind,
|
|
117
148
|
status: preservedStatus ?? args.initialStatus ?? 'completed',
|
|
118
|
-
createdAt: now,
|
|
149
|
+
createdAt: preservedCreatedAt ?? now,
|
|
119
150
|
statusChangedAt: preservedStatusChangedAt ?? now,
|
|
120
151
|
baseSha: args.baseSha,
|
|
121
152
|
destinationPath: preservedDestinationPath ?? args.destinationPath,
|
|
122
153
|
changedFilesCount: args.changedFilesCount,
|
|
154
|
+
artifact,
|
|
155
|
+
preview,
|
|
123
156
|
designSource: args.designSource,
|
|
124
157
|
};
|
|
125
|
-
await promises_1.default.writeFile(path_1.default.join(
|
|
158
|
+
await promises_1.default.writeFile(path_1.default.join(stagingDir, MANIFEST_FILENAME), `${JSON.stringify(manifest, null, 2)}\n`, 'utf8');
|
|
126
159
|
if (args.kind === 'diff') {
|
|
127
|
-
await promises_1.default.writeFile(path_1.default.join(
|
|
160
|
+
await promises_1.default.writeFile(path_1.default.join(stagingDir, DIFF_FILENAME), args.diff ?? '', 'utf8');
|
|
128
161
|
}
|
|
129
|
-
|
|
130
|
-
const filesDir = path_1.default.join(
|
|
131
|
-
await promises_1.default.rm(filesDir, { recursive: true, force: true });
|
|
162
|
+
if (shouldCopyFiles) {
|
|
163
|
+
const filesDir = path_1.default.join(stagingDir, FILES_DIRNAME);
|
|
132
164
|
await copyDirFiltered(args.sourceDir, filesDir);
|
|
133
165
|
}
|
|
134
166
|
if (args.designMarkdown !== undefined) {
|
|
135
|
-
await promises_1.default.writeFile(path_1.default.join(
|
|
167
|
+
await promises_1.default.writeFile(path_1.default.join(stagingDir, DESIGN_FILENAME), args.designMarkdown, 'utf8');
|
|
136
168
|
}
|
|
169
|
+
await promises_1.default.rm(variantDir, { recursive: true, force: true });
|
|
170
|
+
await promises_1.default.rename(stagingDir, variantDir);
|
|
137
171
|
await this.ensureGitignore(args.projectPath);
|
|
138
172
|
log.info(`Persisted variant ${args.variantId} (session ${args.sessionId}, kind ${args.kind}, status ${manifest.status})`);
|
|
139
173
|
}
|
|
@@ -166,13 +200,26 @@ class VariantHistoryService {
|
|
|
166
200
|
}
|
|
167
201
|
const destinationChanged = args.destinationPath !== undefined &&
|
|
168
202
|
manifest.destinationPath !== args.destinationPath;
|
|
169
|
-
|
|
203
|
+
const runnablePathChanged = args.runnablePath !== undefined &&
|
|
204
|
+
manifest.preview.kind === 'dev-server' &&
|
|
205
|
+
manifest.preview.runnablePath !== args.runnablePath;
|
|
206
|
+
if (manifest.status === args.status &&
|
|
207
|
+
!destinationChanged &&
|
|
208
|
+
!runnablePathChanged)
|
|
170
209
|
return;
|
|
171
210
|
manifest.status = args.status;
|
|
172
211
|
manifest.statusChangedAt = new Date().toISOString();
|
|
173
212
|
if (args.destinationPath !== undefined) {
|
|
174
213
|
manifest.destinationPath = args.destinationPath;
|
|
175
214
|
}
|
|
215
|
+
if (args.runnablePath !== undefined) {
|
|
216
|
+
if (manifest.artifact.kind === 'project') {
|
|
217
|
+
manifest.artifact.runnablePath = args.runnablePath;
|
|
218
|
+
}
|
|
219
|
+
if (manifest.preview.kind === 'dev-server') {
|
|
220
|
+
manifest.preview.runnablePath = args.runnablePath;
|
|
221
|
+
}
|
|
222
|
+
}
|
|
176
223
|
await promises_1.default.writeFile(manifestPath, `${JSON.stringify(manifest, null, 2)}\n`, 'utf8');
|
|
177
224
|
}
|
|
178
225
|
async listVariants(args) {
|
|
@@ -210,7 +257,7 @@ class VariantHistoryService {
|
|
|
210
257
|
continue;
|
|
211
258
|
if (args.status && manifest.status !== args.status)
|
|
212
259
|
continue;
|
|
213
|
-
const hasStaticPreview = await
|
|
260
|
+
const hasStaticPreview = await hasStaticPreviewFile(variantDir, manifest);
|
|
214
261
|
entries.push({ manifest, variantDir, hasStaticPreview });
|
|
215
262
|
}
|
|
216
263
|
}
|
|
@@ -227,13 +274,13 @@ class VariantHistoryService {
|
|
|
227
274
|
const manifest = await readManifest(path_1.default.join(variantDir, MANIFEST_FILENAME));
|
|
228
275
|
if (!manifest)
|
|
229
276
|
return null;
|
|
230
|
-
const hasStaticPreview = await
|
|
277
|
+
const hasStaticPreview = await hasStaticPreviewFile(variantDir, manifest);
|
|
231
278
|
const detail = {
|
|
232
279
|
manifest,
|
|
233
280
|
variantDir,
|
|
234
281
|
hasStaticPreview,
|
|
235
282
|
};
|
|
236
|
-
if (manifest.kind === 'diff') {
|
|
283
|
+
if (manifest.artifact.kind === 'diff') {
|
|
237
284
|
try {
|
|
238
285
|
detail.diff = await promises_1.default.readFile(path_1.default.join(variantDir, DIFF_FILENAME), 'utf8');
|
|
239
286
|
}
|
|
@@ -241,7 +288,7 @@ class VariantHistoryService {
|
|
|
241
288
|
detail.diff = '';
|
|
242
289
|
}
|
|
243
290
|
}
|
|
244
|
-
|
|
291
|
+
if (manifest.artifact.filesPath) {
|
|
245
292
|
detail.files = await listFilesRecursive(path_1.default.join(variantDir, FILES_DIRNAME));
|
|
246
293
|
}
|
|
247
294
|
try {
|
|
@@ -264,14 +311,54 @@ class VariantHistoryService {
|
|
|
264
311
|
async readStaticPreview(args) {
|
|
265
312
|
assertSafeId(args.sessionId, 'sessionId');
|
|
266
313
|
assertSafeId(args.variantId, 'variantId');
|
|
267
|
-
const indexPath = path_1.default.join(this.variantDir(args.projectPath, args.sessionId, args.variantId), FILES_DIRNAME, STATIC_INDEX_FILENAME);
|
|
268
314
|
try {
|
|
269
|
-
|
|
315
|
+
const result = await this.readStaticPreviewFile({
|
|
316
|
+
...args,
|
|
317
|
+
assetPath: null,
|
|
318
|
+
});
|
|
319
|
+
return result ? result.body.toString('utf8') : null;
|
|
270
320
|
}
|
|
271
321
|
catch (err) {
|
|
272
322
|
const code = err.code;
|
|
273
323
|
if (code !== 'ENOENT') {
|
|
274
|
-
log.warn(`readStaticPreview: failed
|
|
324
|
+
log.warn(`readStaticPreview: failed for ${args.sessionId}/${args.variantId}`, err);
|
|
325
|
+
}
|
|
326
|
+
return null;
|
|
327
|
+
}
|
|
328
|
+
}
|
|
329
|
+
/**
|
|
330
|
+
* Read a file from a variant's saved static preview snapshot.
|
|
331
|
+
* Asset paths are resolved under `files/` and rejected when they attempt
|
|
332
|
+
* to escape the snapshot root.
|
|
333
|
+
*/
|
|
334
|
+
async readStaticPreviewFile(args) {
|
|
335
|
+
assertSafeId(args.sessionId, 'sessionId');
|
|
336
|
+
assertSafeId(args.variantId, 'variantId');
|
|
337
|
+
const variantDir = this.variantDir(args.projectPath, args.sessionId, args.variantId);
|
|
338
|
+
const manifest = await readManifest(path_1.default.join(variantDir, MANIFEST_FILENAME));
|
|
339
|
+
if (!manifest || manifest.preview.kind !== 'static')
|
|
340
|
+
return null;
|
|
341
|
+
const requestedPath = args.assetPath ?? manifest.preview.entryPath;
|
|
342
|
+
assertSafeAssetPath(requestedPath);
|
|
343
|
+
const filesRoot = path_1.default.join(variantDir, manifest.preview.rootPath);
|
|
344
|
+
const absolutePath = path_1.default.resolve(filesRoot, requestedPath);
|
|
345
|
+
const relative = path_1.default.relative(filesRoot, absolutePath);
|
|
346
|
+
if (relative.startsWith('..') || path_1.default.isAbsolute(relative)) {
|
|
347
|
+
throw new Error(`VariantHistoryService: invalid assetPath '${requestedPath}'`);
|
|
348
|
+
}
|
|
349
|
+
try {
|
|
350
|
+
const stat = await promises_1.default.stat(absolutePath);
|
|
351
|
+
if (!stat.isFile())
|
|
352
|
+
return null;
|
|
353
|
+
return {
|
|
354
|
+
body: await promises_1.default.readFile(absolutePath),
|
|
355
|
+
absolutePath,
|
|
356
|
+
};
|
|
357
|
+
}
|
|
358
|
+
catch (err) {
|
|
359
|
+
const code = err.code;
|
|
360
|
+
if (code !== 'ENOENT') {
|
|
361
|
+
log.warn(`readStaticPreviewFile: failed at ${absolutePath}`, err);
|
|
275
362
|
}
|
|
276
363
|
return null;
|
|
277
364
|
}
|
|
@@ -319,12 +406,55 @@ async function readManifest(manifestPath) {
|
|
|
319
406
|
const parsed = JSON.parse(raw);
|
|
320
407
|
if (typeof parsed.variantId !== 'string')
|
|
321
408
|
return null;
|
|
409
|
+
if (parsed.schemaVersion !== HISTORY_SCHEMA_VERSION)
|
|
410
|
+
return null;
|
|
411
|
+
if (!parsed.artifact || !parsed.preview)
|
|
412
|
+
return null;
|
|
322
413
|
return parsed;
|
|
323
414
|
}
|
|
324
415
|
catch {
|
|
325
416
|
return null;
|
|
326
417
|
}
|
|
327
418
|
}
|
|
419
|
+
const resolvePreview = (args) => {
|
|
420
|
+
if (args.preview?.kind === 'static') {
|
|
421
|
+
return {
|
|
422
|
+
kind: 'static',
|
|
423
|
+
rootPath: FILES_DIRNAME,
|
|
424
|
+
entryPath: args.preview.entryPath,
|
|
425
|
+
};
|
|
426
|
+
}
|
|
427
|
+
if (args.preview?.kind === 'dev-server') {
|
|
428
|
+
return {
|
|
429
|
+
kind: 'dev-server',
|
|
430
|
+
rootPath: FILES_DIRNAME,
|
|
431
|
+
command: args.preview.command,
|
|
432
|
+
...(args.preview.runnablePath
|
|
433
|
+
? { runnablePath: args.preview.runnablePath }
|
|
434
|
+
: {}),
|
|
435
|
+
};
|
|
436
|
+
}
|
|
437
|
+
if (args.preview?.kind === 'none') {
|
|
438
|
+
return args.preview;
|
|
439
|
+
}
|
|
440
|
+
if (args.kind === 'diff') {
|
|
441
|
+
return { kind: 'none', reason: 'diff_only' };
|
|
442
|
+
}
|
|
443
|
+
if (args.sourceDir &&
|
|
444
|
+
fs_1.default.existsSync(path_1.default.join(args.sourceDir, STATIC_INDEX_FILENAME))) {
|
|
445
|
+
return {
|
|
446
|
+
kind: 'static',
|
|
447
|
+
rootPath: FILES_DIRNAME,
|
|
448
|
+
entryPath: STATIC_INDEX_FILENAME,
|
|
449
|
+
};
|
|
450
|
+
}
|
|
451
|
+
return { kind: 'none', reason: 'missing_entry' };
|
|
452
|
+
};
|
|
453
|
+
const hasStaticPreviewFile = async (variantDir, manifest) => {
|
|
454
|
+
if (manifest.preview.kind !== 'static')
|
|
455
|
+
return false;
|
|
456
|
+
return fileExists(path_1.default.join(variantDir, manifest.preview.rootPath, manifest.preview.entryPath));
|
|
457
|
+
};
|
|
328
458
|
async function safeStat(p) {
|
|
329
459
|
try {
|
|
330
460
|
return await promises_1.default.stat(p);
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"VariantHistoryService.js","sourceRoot":"","sources":["../../src/services/VariantHistoryService.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"VariantHistoryService.js","sourceRoot":"","sources":["../../src/services/VariantHistoryService.ts"],"names":[],"mappings":"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"}
|
|
@@ -5,6 +5,21 @@
|
|
|
5
5
|
*/
|
|
6
6
|
export interface ChangeRequest {
|
|
7
7
|
changes: ChangeItem[];
|
|
8
|
+
/**
|
|
9
|
+
* When set, this batch targets a specific agent-variants variant rather than
|
|
10
|
+
* the base project — every change item in the batch belongs to that variant.
|
|
11
|
+
* Set by the UI; the server validates it resolves to a settled, editable
|
|
12
|
+
* worktree and populates {@link ChangeRequest.worktreePath}. Absent ⇒ the
|
|
13
|
+
* change applies to the base project (today's behavior). v1 forbids mixing
|
|
14
|
+
* targets in one batch.
|
|
15
|
+
*/
|
|
16
|
+
target?: ChangeRequestTarget;
|
|
17
|
+
/**
|
|
18
|
+
* Absolute path to the target variant's git worktree, resolved server-side
|
|
19
|
+
* from {@link ChangeRequest.target}. The agent applies the changes here
|
|
20
|
+
* instead of the base project. Server-set only — the UI leaves it undefined.
|
|
21
|
+
*/
|
|
22
|
+
worktreePath?: string;
|
|
8
23
|
/**
|
|
9
24
|
* Deduplicated source file paths across all change items.
|
|
10
25
|
* Empty for a given element means Claude should search by className/xpath.
|
|
@@ -32,6 +47,14 @@ export interface TelemetryContext {
|
|
|
32
47
|
browserSessionId?: string;
|
|
33
48
|
browserDistinctId?: string;
|
|
34
49
|
}
|
|
50
|
+
/** Identifies the agent-variants variant a change batch applies to. */
|
|
51
|
+
export interface ChangeRequestTarget {
|
|
52
|
+
kind: 'variant';
|
|
53
|
+
/** sessionId of the agent-variants flow that owns the variant. */
|
|
54
|
+
sessionId: string;
|
|
55
|
+
/** workItemId of the variant within that session. */
|
|
56
|
+
variantId: string;
|
|
57
|
+
}
|
|
35
58
|
export type ChangeItem = StyleChangeItem | TextChangeItem | CommentChangeItem | ChatChangeItem | VariantChangeItem;
|
|
36
59
|
/** A CSS property change with an exact before/after diff */
|
|
37
60
|
export interface StyleChangeItem {
|
|
@@ -61,6 +84,20 @@ export interface CommentChangeItem {
|
|
|
61
84
|
instruction: string;
|
|
62
85
|
/** Base64 data-URL images attached as visual reference for the instruction */
|
|
63
86
|
images?: string[];
|
|
87
|
+
/**
|
|
88
|
+
* Variants the user attached as @-mention context for this comment. Carries
|
|
89
|
+
* the wire shape only — the MCP intake resolves each `(sessionId, variantId)`
|
|
90
|
+
* to a worktree/files path before the agent prompt is built. Unresolvable
|
|
91
|
+
* references are dropped with a warning instead of failing intake.
|
|
92
|
+
*/
|
|
93
|
+
references?: CommentReferenceItem[];
|
|
94
|
+
/**
|
|
95
|
+
* Resolved-on-the-server counterpart of {@link references}: each wire
|
|
96
|
+
* reference promoted to a readable directory + label/brief. The MCP tool
|
|
97
|
+
* surface includes these in the response to the agent so it can read the
|
|
98
|
+
* referenced variant's source with its existing file tools.
|
|
99
|
+
*/
|
|
100
|
+
resolvedReferences?: ResolvedCommentReference[];
|
|
64
101
|
/**
|
|
65
102
|
* Marks this comment as a request to run the MCP variants flow on the
|
|
66
103
|
* targeted element instead of performing a direct apply. Undefined → standard
|
|
@@ -71,6 +108,36 @@ export interface CommentChangeItem {
|
|
|
71
108
|
count: number;
|
|
72
109
|
};
|
|
73
110
|
}
|
|
111
|
+
/**
|
|
112
|
+
* Wire shape of an attached variant reference. `origin` lets the server pick
|
|
113
|
+
* the right resolution path: `live` → orchestrator-resolved worktree of an
|
|
114
|
+
* active session, `history` → on-disk snapshot under `.rivet/variants/`.
|
|
115
|
+
*/
|
|
116
|
+
export interface CommentReferenceItem {
|
|
117
|
+
sessionId: string;
|
|
118
|
+
variantId: string;
|
|
119
|
+
label: string;
|
|
120
|
+
origin: 'live' | 'history';
|
|
121
|
+
}
|
|
122
|
+
/**
|
|
123
|
+
* Server-stamped resolution of a {@link CommentReferenceItem}. The MCP intake
|
|
124
|
+
* resolves each wire reference to a directory the agent can read with its
|
|
125
|
+
* existing file tools; the agent uses these alongside the comment instruction
|
|
126
|
+
* to decide what context to pull in. References that fail to resolve are
|
|
127
|
+
* dropped before the agent ever sees the batch.
|
|
128
|
+
*/
|
|
129
|
+
export interface ResolvedCommentReference {
|
|
130
|
+
sessionId: string;
|
|
131
|
+
variantId: string;
|
|
132
|
+
label: string;
|
|
133
|
+
/** Short descriptor (the brief used to generate the variant), when known. */
|
|
134
|
+
brief?: string;
|
|
135
|
+
/** Absolute path to the variant's source root. For `live` references this
|
|
136
|
+
* is the worktree path; for `history` references it's
|
|
137
|
+
* `<workspaceRoot>/.rivet/variants/<sid>/<vid>/files/`. */
|
|
138
|
+
path: string;
|
|
139
|
+
origin: 'live' | 'history';
|
|
140
|
+
}
|
|
74
141
|
/**
|
|
75
142
|
* A free-text chat instruction not tied to any specific element.
|
|
76
143
|
* Claude interprets and applies it using the full codebase as context.
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"change-request-types.d.ts","sourceRoot":"","sources":["../../src/types/change-request-types.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"change-request-types.d.ts","sourceRoot":"","sources":["../../src/types/change-request-types.ts"],"names":[],"mappings":"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"}
|
|
@@ -2,7 +2,7 @@
|
|
|
2
2
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
3
|
exports.CLAUDE_SKILL_CONTENT = exports.CLAUDE_SKILL_FILENAME = exports.CLAUDE_SKILL_DIR = exports.CLAUDE_SKILL_VERSION = void 0;
|
|
4
4
|
const shared_variants_protocol_1 = require("./shared-variants-protocol");
|
|
5
|
-
exports.CLAUDE_SKILL_VERSION =
|
|
5
|
+
exports.CLAUDE_SKILL_VERSION = 22;
|
|
6
6
|
const CLAUDE_SKILL_VERSION_MARKER = `[//]: # (rivet-skill-version: ${exports.CLAUDE_SKILL_VERSION})`;
|
|
7
7
|
exports.CLAUDE_SKILL_DIR = 'rivet';
|
|
8
8
|
exports.CLAUDE_SKILL_FILENAME = 'SKILL.md';
|
|
@@ -2,7 +2,7 @@
|
|
|
2
2
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
3
|
exports.CURSOR_RULES_CONTENT = exports.CURSOR_RULES_FILENAME = exports.CURSOR_RULES_VERSION = void 0;
|
|
4
4
|
const shared_variants_protocol_1 = require("./shared-variants-protocol");
|
|
5
|
-
exports.CURSOR_RULES_VERSION =
|
|
5
|
+
exports.CURSOR_RULES_VERSION = 21;
|
|
6
6
|
exports.CURSOR_RULES_FILENAME = 'rivet.mdc';
|
|
7
7
|
const CURSOR_RULES_VERSION_MARKER = `rivet-rules-version: ${exports.CURSOR_RULES_VERSION}`;
|
|
8
8
|
const AGENT_VARIANTS_SECTION = (0, shared_variants_protocol_1.buildAgentVariantsSection)({
|
|
@@ -0,0 +1,11 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Reusable protocol for turning a video (or other motion artifact) into a
|
|
3
|
+
* structured motion spec the variants flow can consume. Imported by the
|
|
4
|
+
* shared variants protocol so Claude Code and Cursor receive the same
|
|
5
|
+
* instructions. Adapted from the standalone `describe-motion` Claude Code
|
|
6
|
+
* skill; this version is trimmed for Rivet's video-input path and emits
|
|
7
|
+
* the spec in a shape that drops cleanly into a `motionBrief`
|
|
8
|
+
* sourceArtifact.
|
|
9
|
+
*/
|
|
10
|
+
export declare const DESCRIBE_MOTION_PROTOCOL = "### Describe Motion protocol (video / motion artifact -> motionBrief)\n\nUse this protocol when the user attaches a video, gif, screen recording, or\nframe sequence to a variants request. The output is a structured motion spec\nthe agent passes back to Rivet as a `sourceArtifacts` entry with\n`kind: 'motionBrief'`. Run this BEFORE `start_variants` so the spec is\navailable to per-variant briefs and codegen.\n\nIf the user provided ONLY a static image or a URL, this protocol is the wrong\ntool \u2014 describe the image as `visualBrief` / `screenshotNotes` instead.\n\n#### Step 1 \u2014 Get frames you can inspect\n\nGuessing from memory of a single playback is the most common failure mode.\nPull stills before describing anything.\n\n- **Video (.mov/.mp4/.webm):** `ffmpeg -i <input> -vf \"fps=30\" frames/%04d.png`\n to step through, or `ffmpeg -i <input> -ss <timestamp> -frames:v 1 frame.png`\n for a single frame around a state change.\n- **GIF:** `magick <input> -coalesce frames/%04d.png` (ImageMagick) for\n per-frame stills.\n- **Unknown framerate:** assume 30 or 60fps. 33ms per frame at 30fps,\n 16ms per frame at 60fps. Multiply frame count between state-change\n boundaries to get duration.\n- **Frame sequence already supplied:** read every frame. The middle frames\n carry the easing.\n\nIf you cannot extract frames in the current environment, say so explicitly in\nthe spec and mark timing / easing fields with `~estimated`.\n\n#### Step 2 \u2014 Five-phase pass\n\nRun these in order. Later phases depend on earlier observations.\n\n1. **Elements & trigger.** Which DOM nodes change between frames, what\n initiates the motion (`hover`, `click`, `focus`, `mount`, `unmount`,\n `scroll`, `intersection`, `drag`, `route change`, `state change`,\n `keypress`), and the direction (entrance / exit / hover / toggle / loop).\n2. **States.** Enumerate discrete states. Most interactions are A -> B\n or A -> B -> A. Some have intermediates (idle -> loading -> success).\n For each state, note every property that will animate.\n3. **Per-property motion.** For each animated property on each element:\n - **Property** \u2014 prefer compositor-friendly (`transform`, `opacity`).\n - **From -> to** \u2014 concrete values (`opacity: 0 -> 1`, `translateY: 8px -> 0`).\n - **Duration** \u2014 milliseconds, measured from frame count. Round to common\n UI durations when within 1 frame: 150, 200, 250, 300, 400, 500ms.\n - **Easing** \u2014 identify by shape (see easing guide below), not by guessing\n a cubic-bezier from memory.\n - **Delay** \u2014 t=0 or later?\n4. **Choreography.** How per-property animations relate across elements:\n parallel (default), sequence (B starts after A), stagger (siblings with a\n fixed offset \u2014 note interval and direction), overlap (B starts before A\n finishes \u2014 note overlap duration), anchor / transform origin if non-default.\n5. **Edge cases & quality.** Cover all of these, even if the answer is\n \"not visible in artifact \u2014 recommend default\":\n - **Reduced motion** \u2014 what `prefers-reduced-motion: reduce` should do.\n Default: skip transforms, keep opacity, shorten to ~0ms.\n - **Interrupt** \u2014 re-trigger mid-animation: snap, reverse from current,\n or queue?\n - **Exit symmetry** \u2014 is the exit the reverse of the entrance, or different?\n - **Loop** \u2014 one-shot, loop, ping-pong, or on-demand?\n - **Performance flags** \u2014 any property that would force layout\n (`height`, `width`, `top`)? Flag and suggest a transform alternative\n if visually equivalent.\n\n#### Easing identification guide\n\nWatch the speed across the animation, not just the endpoints.\n\n- **Linear** \u2014 constant speed. Mechanical-feeling. Rare in good UI.\n- **Ease-out** \u2014 fast start, slow end. Most common entrance.\n- **Ease-in** \u2014 slow start, fast end. Best for exits.\n- **Ease-in-out** \u2014 slow-fast-slow. For transitions between two non-home states.\n- **Spring** \u2014 overshoots, then settles. Look for any frame where the element\n passes its final position. Springs cross the target; ease-out approaches\n monotonically.\n- **Back-out / overshoot** \u2014 ease-out with a slight overshoot before settling.\n\n#### Library recommendation\n\nPick one based on what you observed; the downstream codegen may override.\n\n- **CSS transitions** \u2014 simple state change, single property, no interrupt\n complexity.\n- **CSS keyframes** \u2014 loops, multi-step sequences with fixed timing.\n- **Framer Motion** \u2014 springs, gestures, layout animations, exit animations\n via `AnimatePresence`, stagger via `staggerChildren`.\n- **React Spring** \u2014 physics-driven motion where spring feel matters more\n than precise timing.\n- **GSAP** \u2014 complex sequences, timeline choreography, SVG morphing.\n- **Native View Transitions API** \u2014 page / route transitions where browser\n support allows.\n\n#### Spec template (the motionBrief `content` payload)\n\nAlways produce this exact shape. If a field is not observable, write\n`not visible in artifact` \u2014 do not omit the field. The content string is\nwhat you pass as `sourceArtifacts[i].content`.\n\n```\n# Motion spec: <short name>\n\n## Source\n- Artifact: <filename or description>\n- Input type: video | gif | recording | frame-sequence\n- Frames inspected: <count or \"single playback only\">\n- Estimated framerate: <30 | 60 | unknown>\n\n## Trigger\n- Event: <hover | click | mount | scroll | intersection | ...>\n- Element receiving event: <selector or description>\n\n## Elements animated\n1. <element name> \u2014 role in interaction\n2. ...\n\n## States\n- A (initial): <description>\n- B (final): <description>\n- (intermediate states if any)\n\n## Per-property motion\n### <element 1>\n- \\`<property>\\`: <from> -> <to>, duration <ms>, easing <type>, delay <ms>\n- ...\n\n### <element 2>\n- ...\n\n## Choreography\n- <parallel | sequence | stagger | overlap with details>\n- Transform origin: <if non-default>\n\n## Edge cases\n- Reduced motion: <behavior>\n- Interrupt: <snap | reverse | queue>\n- Exit: <symmetric reverse | different \u2014 describe>\n- Loop: <one-shot | loop | ping-pong>\n- Performance flags: <any layout-thrashing properties>\n\n## Recommended implementation\n- Library: <css | framer-motion | gsap | react-spring | view-transitions>\n- Reason: <one line>\n\n## Confidence\n- High / Medium / Low on: <which fields>\n- Estimates flagged with ~ in the spec above\n```\n\n#### Working principles\n\n- **Numbers over adjectives.** \"Fast\" is useless; \"180ms\" is implementable.\n If you cannot get a number, write `~estimated` and a range.\n- **Frame counting beats vibes.** Snappy ~ 150-250ms; deliberate ~ 300-500ms.\n Measure when you can.\n- **Identify easing by shape, not by name.** Watch where the element sits\n at 25%, 50%, 75% of the duration. Even spacing = linear. Compressed at\n the end = ease-out.\n- **Distinguish observed from inferred.** Anything not seen in the artifact\n is inference. Mark it.\n- **One spec per interaction.** If the video shows three interactions,\n produce three motionBrief entries, not one merged blob.\n\n#### Handing the spec back to Rivet\n\nPass each finished spec as one entry in `sourceArtifacts`:\n\n```\nsourceArtifacts: [\n {\n kind: 'motionBrief',\n label: '<short interaction name, <= 60 chars>',\n content: '<the full spec from the template above>',\n },\n // ... one entry per distinct interaction in the video\n]\n```\n\n**Routing.** A request that carries any `sourceArtifacts` (motionBrief,\nvisualBrief, screenshotNotes, siteBrief, urlText) is source-grounded.\nSource-grounded fresh-project sessions go through\n`create_zero_to_one_project` \u2014 its tool description explicitly lists\n`motionBrief` alongside the other artifact kinds. Pass the artifacts under\n`sourceContext.sourceArtifacts` on that call.\n\nDo **NOT** call `start_variants({ mode: 'zero_to_one' })` directly with a\n`sourceContext` containing any `sourceArtifacts` \u2014 that handler rejects\nthe request with `INVALID_STAGE_ACTION` and instructs you to use\n`create_zero_to_one_project` instead, because the source-research\n(`source_plan`) and brief-approval hops are only wired into the\n`create_zero_to_one_project` path. `start_variants(mode='zero_to_one')`\nis for prompt-only fresh projects.\n\nIf the video is supplementary to an existing project (the user wants\nvariants of a specific element / file / route in their open project and\nattached a video for motion reference), use\n`start_variants({ mode: 'existing', target: ... })` instead and embed the\nmotion spec into each variant's `briefs[i].body` \u2014 `sourceArtifacts` are\nnot part of the existing-project flow.\n\nPer-variant briefs and codegen should treat the motionBrief as authoritative\ntiming / easing / choreography guidance \u2014 visual styling can diverge per\nvariant, motion fidelity should not.";
|
|
11
|
+
//# sourceMappingURL=describe-motion-protocol.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"describe-motion-protocol.d.ts","sourceRoot":"","sources":["../../../src/utils/skills/describe-motion-protocol.ts"],"names":[],"mappings":"AAAA;;;;;;;;GAQG;AACH,eAAO,MAAM,wBAAwB,gzRA0MA,CAAC"}
|