cerevox 0.3.3 → 0.3.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.
@@ -1 +1 @@
1
- {"version":3,"file":"zerocut.d.ts","sourceRoot":"","sources":["../../../src/mcp/servers/zerocut.ts"],"names":[],"mappings":";AAuxBA,wBAAsB,GAAG,kBAKxB"}
1
+ {"version":3,"file":"zerocut.d.ts","sourceRoot":"","sources":["../../../src/mcp/servers/zerocut.ts"],"names":[],"mappings":";AA2zCA,wBAAsB,GAAG,kBAKxB"}
@@ -17,6 +17,43 @@ const constants_1 = require("../../utils/constants");
17
17
  const videokit_1 = require("../../utils/videokit");
18
18
  const promises_1 = require("node:fs/promises");
19
19
  const node_path_1 = require("node:path");
20
+ // 错误处理工具函数
21
+ function createErrorResponse(error, operation) {
22
+ const errorMessage = error instanceof Error ? error.message : String(error);
23
+ console.error(`[${operation}] Error:`, error);
24
+ return {
25
+ content: [
26
+ {
27
+ type: 'text',
28
+ text: JSON.stringify({
29
+ success: false,
30
+ error: errorMessage,
31
+ operation,
32
+ timestamp: new Date().toISOString(),
33
+ }),
34
+ },
35
+ ],
36
+ };
37
+ }
38
+ // Session 状态检查
39
+ function validateSession(operation) {
40
+ if (!session) {
41
+ throw new Error(`Session not initialized. Please call 'zerocut-project-open' first before using ${operation}.`);
42
+ }
43
+ return session;
44
+ }
45
+ // 文件名验证
46
+ function validateFileName(fileName) {
47
+ if (!fileName || fileName.trim() === '') {
48
+ throw new Error('File name cannot be empty');
49
+ }
50
+ if (fileName.includes('..') ||
51
+ fileName.includes('/') ||
52
+ fileName.includes('\\')) {
53
+ throw new Error('Invalid file name: contains illegal characters');
54
+ }
55
+ return fileName.trim();
56
+ }
20
57
  /* Configuration
21
58
  {
22
59
  "mcpServers": {
@@ -105,85 +142,266 @@ server.registerTool('zerocut-project-open', {
105
142
  .describe('The path of the file to upload.'),
106
143
  },
107
144
  }, async ({ localDir }, context) => {
108
- session = await cerevox.launch({
109
- browser: {
110
- liveview: true,
111
- },
112
- keepAliveMS: 10000,
113
- timeoutMS: 3600000,
114
- });
115
- const workDir = await initProject(session);
116
- projectLocalDir = (0, node_path_1.resolve)(process.env.ZEROCUT_PROJECT_CWD || process.cwd(), localDir);
117
- const syncDir = (0, node_path_1.resolve)(projectLocalDir, 'materials');
118
- await (0, promises_1.mkdir)(syncDir, { recursive: true });
119
- const materials = await listFiles(syncDir);
120
- const files = session.files;
121
- let progress = 0;
122
- for (const material of materials) {
123
- await files.upload(material, `${workDir}/materials/${(0, node_path_1.basename)(material)}`);
124
- sendProgress(context, ++progress, materials.length, material);
125
- }
126
- return {
127
- content: [
128
- {
129
- type: 'text',
130
- text: JSON.stringify({
131
- sessionId: session.id,
132
- workDir,
133
- projectLocalDir,
134
- materials,
135
- }),
145
+ try {
146
+ // 检查是否已有活跃session
147
+ if (session) {
148
+ console.warn('Session already exists, closing previous session');
149
+ try {
150
+ await session.close();
151
+ }
152
+ catch (closeError) {
153
+ console.warn('Failed to close previous session:', closeError);
154
+ }
155
+ }
156
+ // 验证API密钥
157
+ if (!process.env.CEREVOX_API_KEY) {
158
+ throw new Error('CEREVOX_API_KEY environment variable is required');
159
+ }
160
+ console.log('Launching new Cerevox session...');
161
+ session = await cerevox.launch({
162
+ browser: {
163
+ liveview: true,
136
164
  },
137
- ],
138
- };
165
+ keepAliveMS: 10000,
166
+ timeoutMS: 3600000,
167
+ });
168
+ if (!session) {
169
+ throw new Error('Failed to create Cerevox session');
170
+ }
171
+ console.log('Initializing project...');
172
+ const workDir = await initProject(session);
173
+ projectLocalDir = (0, node_path_1.resolve)(process.env.ZEROCUT_PROJECT_CWD || process.cwd(), localDir || '.');
174
+ const syncDir = (0, node_path_1.resolve)(projectLocalDir, 'materials');
175
+ try {
176
+ await (0, promises_1.mkdir)(syncDir, { recursive: true });
177
+ }
178
+ catch (mkdirError) {
179
+ console.warn('Failed to create materials directory:', mkdirError);
180
+ // 继续执行,可能目录已存在
181
+ }
182
+ let materials = [];
183
+ try {
184
+ materials = await listFiles(syncDir);
185
+ }
186
+ catch (listError) {
187
+ console.warn('Failed to list materials:', listError);
188
+ materials = [];
189
+ }
190
+ const files = session.files;
191
+ let progress = 0;
192
+ const uploadErrors = [];
193
+ for (const material of materials) {
194
+ try {
195
+ await files.upload(material, `${workDir}/materials/${(0, node_path_1.basename)(material)}`);
196
+ await sendProgress(context, ++progress, materials.length, material);
197
+ }
198
+ catch (uploadError) {
199
+ const errorMsg = `Failed to upload ${material}: ${uploadError}`;
200
+ console.error(errorMsg);
201
+ uploadErrors.push(errorMsg);
202
+ }
203
+ }
204
+ const result = {
205
+ success: true,
206
+ sessionId: session.id,
207
+ workDir,
208
+ projectLocalDir,
209
+ materials,
210
+ uploadErrors: uploadErrors.length > 0 ? uploadErrors : undefined,
211
+ };
212
+ return {
213
+ content: [
214
+ {
215
+ type: 'text',
216
+ text: JSON.stringify(result),
217
+ },
218
+ ],
219
+ };
220
+ }
221
+ catch (error) {
222
+ // 不自动关闭session,让agent根据异常信息自行处理
223
+ return createErrorResponse(error, 'zerocut-project-open');
224
+ }
139
225
  });
140
226
  server.registerTool('zerocut-project-close', {
141
227
  title: 'Close Project',
142
228
  description: 'Close the current Cerevox session and release all resources.',
143
229
  inputSchema: {},
144
230
  }, async () => {
145
- if (session) {
146
- await session.close();
231
+ try {
232
+ if (session) {
233
+ console.log('Closing Cerevox session...');
234
+ await session.close();
235
+ session = null;
236
+ console.log('Session closed successfully');
237
+ }
238
+ else {
239
+ console.warn('No active session to close');
240
+ }
241
+ return {
242
+ content: [
243
+ {
244
+ type: 'text',
245
+ text: JSON.stringify({
246
+ success: true,
247
+ message: 'Project closed successfully.',
248
+ timestamp: new Date().toISOString(),
249
+ }),
250
+ },
251
+ ],
252
+ };
253
+ }
254
+ catch (error) {
255
+ // 即使关闭失败,也要清理session引用
147
256
  session = null;
257
+ return createErrorResponse(error, 'zerocut-project-close');
148
258
  }
149
- return {
150
- content: [{ type: 'text', text: 'Cerevox session closed' }],
151
- };
152
259
  });
153
260
  // 将完成的成品下载到本地
261
+ // server.registerTool(
262
+ // 'download-outputs',
263
+ // {
264
+ // title: 'Download Outputs',
265
+ // description: 'Download the output files from the server.',
266
+ // inputSchema: {},
267
+ // },
268
+ // async (_, context) => {
269
+ // const terminal = session!.terminal;
270
+ // const workDir = `/home/user/cerevox-zerocut/projects/${terminal.id}/output`;
271
+ // const outputDir = resolve(
272
+ // process.env.ZEROCUT_PROJECT_CWD || process.cwd(),
273
+ // projectLocalDir,
274
+ // 'output'
275
+ // );
276
+ // await mkdir(outputDir, { recursive: true });
277
+ // let progress = 0;
278
+ // const outputs = (await session?.files.listFiles(workDir)) || [];
279
+ // const files = session!.files;
280
+ // for (const output of outputs) {
281
+ // await files.download(`${workDir}/${output}`, `${outputDir}/${output}`);
282
+ // sendProgress(context, ++progress, outputs.length, output);
283
+ // }
284
+ // return {
285
+ // content: [
286
+ // { type: 'text', text: JSON.stringify({ success: true, outputs }) },
287
+ // ],
288
+ // };
289
+ // }
290
+ // );
154
291
  server.registerTool('download-outputs', {
155
- title: 'Download Outputs',
292
+ title: 'Download Outputs from HTTP',
156
293
  description: 'Download the output files from the server.',
157
294
  inputSchema: {},
158
295
  }, async (_, context) => {
159
- const terminal = session.terminal;
160
- const workDir = `/home/user/cerevox-zerocut/projects/${terminal.id}/output`;
161
- const outputDir = (0, node_path_1.resolve)(process.env.ZEROCUT_PROJECT_CWD || process.cwd(), projectLocalDir, 'output');
162
- await (0, promises_1.mkdir)(outputDir, { recursive: true });
163
- let progress = 0;
164
- const outputs = (await session?.files.listFiles(workDir)) || [];
165
- const files = session.files;
166
- for (const output of outputs) {
167
- await files.download(`${workDir}/${output}`, `${outputDir}/${output}`);
168
- sendProgress(context, ++progress, outputs.length, output);
296
+ try {
297
+ // 验证session状态
298
+ const currentSession = validateSession('download-outputs');
299
+ console.log('Starting download outputs process...');
300
+ const terminal = currentSession.terminal;
301
+ if (!terminal) {
302
+ throw new Error('Terminal not available in current session');
303
+ }
304
+ const workDir = `/home/user/cerevox-zerocut/projects/${terminal.id}/output`;
305
+ const host = currentSession.getHost();
306
+ if (!host) {
307
+ throw new Error('Host information not available from session');
308
+ }
309
+ console.log(`Listing output files from: ${workDir}`);
310
+ let outputs = [];
311
+ try {
312
+ outputs = (await currentSession.files.listFiles(workDir)) || [];
313
+ }
314
+ catch (listError) {
315
+ console.warn('Failed to list output files:', listError);
316
+ outputs = [];
317
+ }
318
+ if (outputs.length === 0) {
319
+ console.log('No output files found');
320
+ return {
321
+ content: [
322
+ {
323
+ type: 'text',
324
+ text: JSON.stringify({
325
+ success: true,
326
+ status: 'no_files',
327
+ message: 'No output files found to download',
328
+ sources: [],
329
+ timestamp: new Date().toISOString(),
330
+ }),
331
+ },
332
+ ],
333
+ };
334
+ }
335
+ console.log(`Found ${outputs.length} output files`);
336
+ const publicDir = `/home/user/public/zerocut`;
337
+ try {
338
+ const copyCommand = `mkdir -p ${publicDir} && cp -R ${workDir} ${publicDir}`;
339
+ console.log(`Executing: ${copyCommand}`);
340
+ const copyResult = await terminal.run(copyCommand);
341
+ await copyResult.end();
342
+ console.log('Files copied to public directory successfully');
343
+ }
344
+ catch (copyError) {
345
+ console.error('Failed to copy files to public directory:', copyError);
346
+ throw new Error(`Failed to prepare files for download: ${copyError}`);
347
+ }
348
+ let progress = 0;
349
+ const downloadErrors = [];
350
+ const successfulDownloads = [];
351
+ const outputDir = (0, node_path_1.resolve)(process.env.ZEROCUT_PROJECT_CWD || process.cwd(), projectLocalDir, 'output');
352
+ await (0, promises_1.mkdir)(outputDir, { recursive: true });
353
+ const promises = outputs.map(async (output) => {
354
+ try {
355
+ const url = `https://${host}/public/zerocut/output/${output}`;
356
+ console.log(`Downloading: ${url}`);
357
+ const res = await fetch(url);
358
+ if (!res.ok) {
359
+ throw new Error(`HTTP ${res.status}: ${res.statusText}`);
360
+ }
361
+ const content = await res.arrayBuffer();
362
+ const buffer = Buffer.from(content);
363
+ await (0, promises_1.writeFile)(`${outputDir}/${output}`, buffer);
364
+ try {
365
+ await sendProgress(context, ++progress, outputs.length, output);
366
+ }
367
+ catch (progressError) {
368
+ console.warn('Failed to send progress update:', progressError);
369
+ }
370
+ successfulDownloads.push(url);
371
+ return url;
372
+ }
373
+ catch (downloadError) {
374
+ const errorMsg = `Failed to download ${output}: ${downloadError}`;
375
+ console.error(errorMsg);
376
+ downloadErrors.push(errorMsg);
377
+ return null;
378
+ }
379
+ });
380
+ const results = await Promise.all(promises);
381
+ const sources = results.filter(url => url !== null);
382
+ const result = {
383
+ success: downloadErrors.length === 0,
384
+ status: 'downloaded',
385
+ sources,
386
+ totalFiles: outputs.length,
387
+ successfulDownloads: sources.length,
388
+ failedDownloads: downloadErrors.length,
389
+ downloadErrors: downloadErrors.length > 0 ? downloadErrors : undefined,
390
+ timestamp: new Date().toISOString(),
391
+ };
392
+ console.log(`Download completed: ${sources.length}/${outputs.length} files successful`);
393
+ return {
394
+ content: [
395
+ {
396
+ type: 'text',
397
+ text: JSON.stringify(result),
398
+ },
399
+ ],
400
+ };
401
+ }
402
+ catch (error) {
403
+ return createErrorResponse(error, 'download-outputs');
169
404
  }
170
- // await session!.files.syncDownloadsDirectory(
171
- // outputDir,
172
- // workDir,
173
- // async metaData => {
174
- // await sendProgress(
175
- // context,
176
- // ++progress,
177
- // outputs.length,
178
- // JSON.stringify(metaData)
179
- // );
180
- // }
181
- // );
182
- return {
183
- content: [
184
- { type: 'text', text: JSON.stringify({ success: true, outputs }) },
185
- ],
186
- };
187
405
  });
188
406
  // 列出项目下的所有文件
189
407
  server.registerTool('list-project-files', {
@@ -191,67 +409,63 @@ server.registerTool('list-project-files', {
191
409
  description: 'List all files in the materials directory.',
192
410
  inputSchema: {},
193
411
  }, async () => {
194
- const terminal = session.terminal;
195
- if (!terminal) {
412
+ try {
413
+ // 验证session状态
414
+ const currentSession = validateSession('list-project-files');
415
+ console.log('Listing project files...');
416
+ const terminal = currentSession.terminal;
417
+ if (!terminal) {
418
+ throw new Error('Terminal not available in current session');
419
+ }
420
+ let cwd;
421
+ try {
422
+ cwd = await terminal.getCwd();
423
+ }
424
+ catch (cwdError) {
425
+ console.error('Failed to get current working directory:', cwdError);
426
+ throw new Error('Failed to get current working directory');
427
+ }
428
+ console.log(`Current working directory: ${cwd}`);
429
+ // 安全地列出各目录文件,失败时返回空数组
430
+ const listFilesWithFallback = async (path, dirName) => {
431
+ try {
432
+ const files = await currentSession.files.listFiles(path);
433
+ console.log(`Found ${files?.length || 0} files in ${dirName}`);
434
+ return files || [];
435
+ }
436
+ catch (error) {
437
+ console.warn(`Failed to list files in ${dirName} (${path}):`, error);
438
+ return [];
439
+ }
440
+ };
441
+ const [rootFiles, materialsFiles, outputFiles] = await Promise.all([
442
+ listFilesWithFallback(cwd, 'root'),
443
+ listFilesWithFallback(`${cwd}/materials`, 'materials'),
444
+ listFilesWithFallback(`${cwd}/output`, 'output'),
445
+ ]);
446
+ const result = {
447
+ success: true,
448
+ cwd,
449
+ root: rootFiles,
450
+ materials: materialsFiles,
451
+ output: outputFiles,
452
+ totalFiles: rootFiles.length + materialsFiles.length + outputFiles.length,
453
+ timestamp: new Date().toISOString(),
454
+ };
455
+ console.log(`Total files found: ${result.totalFiles}`);
196
456
  return {
197
- content: [{ type: 'text', text: 'No session found' }],
457
+ content: [
458
+ {
459
+ type: 'text',
460
+ text: JSON.stringify(result),
461
+ },
462
+ ],
198
463
  };
199
464
  }
200
- const cwd = await terminal.getCwd();
201
- const rootFiles = await session?.files.listFiles(cwd);
202
- const materialsFiles = await session?.files.listFiles(`${cwd}/materials`);
203
- const outputFiles = await session?.files.listFiles(`${cwd}/output`);
204
- return {
205
- content: [
206
- {
207
- type: 'text',
208
- text: JSON.stringify({
209
- root: rootFiles,
210
- materials: materialsFiles,
211
- output: outputFiles,
212
- }),
213
- },
214
- ],
215
- };
465
+ catch (error) {
466
+ return createErrorResponse(error, 'list-project-files');
467
+ }
216
468
  });
217
- // server.registerTool(
218
- // 'read-file',
219
- // {
220
- // title: 'Read File',
221
- // description: 'Read the content of a file.',
222
- // inputSchema: {
223
- // path: z.string().describe('The path of the file to read.'),
224
- // },
225
- // },
226
- // async ({ path }) => {
227
- // const files = session!.files;
228
- // const content: string = await files.read(path, { encoding: 'utf8' });
229
- // return {
230
- // content: [{ type: 'text', text: content }],
231
- // };
232
- // }
233
- // );
234
- // server.registerTool(
235
- // 'write-file',
236
- // {
237
- // title: 'Write File',
238
- // description: 'Write the content to a file.',
239
- // inputSchema: {
240
- // path: z.string().describe('The path of the file to write.'),
241
- // content: z.string().describe('The content to write.'),
242
- // },
243
- // },
244
- // async ({ path, content }) => {
245
- // const files = session!.files;
246
- // await files.write(path, content);
247
- // assetsCount++;
248
- // return {
249
- // content: [
250
- // { type: 'text', text: JSON.stringify({ path, success: true }) },
251
- // ],
252
- // };
253
- // }
254
- // );
255
469
  server.registerTool('search-context', {
256
470
  title: 'Search Context',
257
471
  description: 'Search the context.',
@@ -299,22 +513,59 @@ server.registerTool('generate-image', {
299
513
  saveToFileName: zod_1.z.string().describe('The filename to save.'),
300
514
  },
301
515
  }, async ({ prompt, size, saveToFileName }) => {
302
- const ai = session.ai;
303
- const res = await ai.generateImage({
304
- prompt,
305
- size,
306
- });
307
- if (res.url) {
308
- const uri = await saveMertial(session, res.url, saveToFileName);
309
- return {
310
- content: [
311
- { type: 'text', text: JSON.stringify({ source: res.url, uri }) },
312
- ],
313
- };
516
+ try {
517
+ // 验证session状态
518
+ const currentSession = validateSession('generate-image');
519
+ const validatedFileName = validateFileName(saveToFileName);
520
+ console.log(`Generating image with prompt: ${prompt.substring(0, 100)}...`);
521
+ const ai = currentSession.ai;
522
+ const res = await ai.generateImage({
523
+ prompt: prompt.trim(),
524
+ size,
525
+ });
526
+ if (!res) {
527
+ throw new Error('Failed to generate image: no response from AI service');
528
+ }
529
+ if (res.url) {
530
+ console.log('Image generated successfully, saving to materials...');
531
+ const uri = await saveMertial(currentSession, res.url, validatedFileName);
532
+ const result = {
533
+ success: true,
534
+ source: res.url,
535
+ uri,
536
+ prompt: prompt.substring(0, 100),
537
+ size,
538
+ timestamp: new Date().toISOString(),
539
+ };
540
+ return {
541
+ content: [
542
+ {
543
+ type: 'text',
544
+ text: JSON.stringify(result),
545
+ },
546
+ ],
547
+ };
548
+ }
549
+ else {
550
+ console.warn('Image generation completed but no URL returned');
551
+ return {
552
+ content: [
553
+ {
554
+ type: 'text',
555
+ text: JSON.stringify({
556
+ success: false,
557
+ error: 'No image URL returned from AI service',
558
+ response: res,
559
+ timestamp: new Date().toISOString(),
560
+ }),
561
+ },
562
+ ],
563
+ };
564
+ }
565
+ }
566
+ catch (error) {
567
+ return createErrorResponse(error, 'generate-image');
314
568
  }
315
- return {
316
- content: [{ type: 'text', text: JSON.stringify(res) }],
317
- };
318
569
  });
319
570
  server.registerTool('generate-video', {
320
571
  title: 'Generate Video',
@@ -335,38 +586,73 @@ server.registerTool('generate-video', {
335
586
  .describe('The end frame image URL.'),
336
587
  },
337
588
  }, async ({ prompt, saveToFileName, start_frame, end_frame, duration }, context) => {
338
- const ai = session.ai;
339
- let progress = 0;
340
- const res = await ai.framesToVideo({
341
- prompt,
342
- start_frame,
343
- end_frame,
344
- duration,
345
- resolution: '720p',
346
- onProgress: async (metaData) => {
347
- await sendProgress(context, ++progress, undefined, JSON.stringify(metaData));
348
- },
349
- });
350
- if (res.url) {
351
- const uri = await saveMertial(session, res.url, saveToFileName);
352
- const { url, duration, ...opts } = res;
353
- return {
354
- content: [
355
- {
356
- type: 'text',
357
- text: JSON.stringify({
358
- source: url,
359
- uri,
360
- durationMs: Math.floor(duration * 1000),
361
- ...opts,
362
- }),
363
- },
364
- ],
365
- };
589
+ try {
590
+ // 验证session状态
591
+ const currentSession = validateSession('generate-video');
592
+ const validatedFileName = validateFileName(saveToFileName);
593
+ console.log(`Generating video with prompt: ${prompt.substring(0, 100)}...`);
594
+ const ai = currentSession.ai;
595
+ let progress = 0;
596
+ const res = await ai.framesToVideo({
597
+ prompt: prompt.trim(),
598
+ start_frame,
599
+ end_frame,
600
+ duration,
601
+ resolution: '720p',
602
+ onProgress: async (metaData) => {
603
+ try {
604
+ await sendProgress(context, ++progress, undefined, JSON.stringify(metaData));
605
+ }
606
+ catch (progressError) {
607
+ console.warn('Failed to send progress update:', progressError);
608
+ }
609
+ },
610
+ });
611
+ if (!res) {
612
+ throw new Error('Failed to generate video: no response from AI service');
613
+ }
614
+ if (res.url) {
615
+ console.log('Video generated successfully, saving to materials...');
616
+ const uri = await saveMertial(currentSession, res.url, validatedFileName);
617
+ const { url, duration: videoDuration, ...opts } = res;
618
+ const result = {
619
+ success: true,
620
+ source: url,
621
+ uri,
622
+ durationMs: Math.floor((videoDuration || duration) * 1000),
623
+ prompt: prompt.substring(0, 100),
624
+ timestamp: new Date().toISOString(),
625
+ ...opts,
626
+ };
627
+ return {
628
+ content: [
629
+ {
630
+ type: 'text',
631
+ text: JSON.stringify(result),
632
+ },
633
+ ],
634
+ };
635
+ }
636
+ else {
637
+ console.warn('Video generation completed but no URL returned');
638
+ return {
639
+ content: [
640
+ {
641
+ type: 'text',
642
+ text: JSON.stringify({
643
+ success: false,
644
+ error: 'No video URL returned from AI service',
645
+ response: res,
646
+ timestamp: new Date().toISOString(),
647
+ }),
648
+ },
649
+ ],
650
+ };
651
+ }
652
+ }
653
+ catch (error) {
654
+ return createErrorResponse(error, 'generate-video');
366
655
  }
367
- return {
368
- content: [{ type: 'text', text: JSON.stringify(res) }],
369
- };
370
656
  });
371
657
  server.registerTool('generate-video-fallback', {
372
658
  title: 'Generate Ken Burns Motion as Video Fallback',
@@ -394,35 +680,94 @@ server.registerTool('generate-video-fallback', {
394
680
  saveToFileName: zod_1.z.string().describe('The filename to save.'),
395
681
  },
396
682
  }, async ({ frame_index, image_path, duration, size, saveToFileName }) => {
397
- const files = session.files;
398
- const terminal = session.terminal;
399
- const saveToPath = `/home/user/cerevox-zerocut/projects/${terminal.id}/materials/${saveToFileName}`;
400
- const saveLocalPath = (0, node_path_1.resolve)(projectLocalDir, 'materials', saveToFileName);
401
- const [width, height] = size.split('x') ?? ['1280', '720'];
402
- const command = await (0, videokit_1.compileKenBurnsMotion)(frame_index, image_path, duration, {
403
- output: saveToPath,
404
- width: Number(width),
405
- height: Number(height),
406
- });
407
- const res = await terminal.run(command);
408
- const result = await res.json();
409
- if (result.exitCode !== 0) {
683
+ try {
684
+ // 验证session状态
685
+ const currentSession = validateSession('generate-video-fallback');
686
+ const validatedFileName = validateFileName(saveToFileName);
687
+ console.log(`Generating Ken Burns motion for frame ${frame_index}: ${image_path} (${duration}s, ${size})`);
688
+ const files = currentSession.files;
689
+ const terminal = currentSession.terminal;
690
+ if (!terminal) {
691
+ throw new Error('Terminal not available in current session');
692
+ }
693
+ const saveToPath = `/home/user/cerevox-zerocut/projects/${terminal.id}/materials/${validatedFileName}`;
694
+ const saveLocalPath = (0, node_path_1.resolve)(projectLocalDir, 'materials', validatedFileName);
695
+ // 解析尺寸参数
696
+ const sizeArray = size.split('x');
697
+ if (sizeArray.length !== 2) {
698
+ throw new Error(`Invalid size format: ${size}. Expected format: WIDTHxHEIGHT`);
699
+ }
700
+ const [widthStr, heightStr] = sizeArray;
701
+ const width = Number(widthStr);
702
+ const height = Number(heightStr);
703
+ if (isNaN(width) || isNaN(height) || width <= 0 || height <= 0) {
704
+ throw new Error(`Invalid dimensions: ${width}x${height}. Both width and height must be positive numbers`);
705
+ }
706
+ console.log(`Compiling Ken Burns motion command...`);
707
+ let command;
708
+ try {
709
+ command = await (0, videokit_1.compileKenBurnsMotion)(frame_index, image_path, duration, {
710
+ output: saveToPath,
711
+ width,
712
+ height,
713
+ });
714
+ }
715
+ catch (compileError) {
716
+ console.error('Failed to compile Ken Burns motion command:', compileError);
717
+ throw new Error(`Failed to compile Ken Burns motion: ${compileError}`);
718
+ }
719
+ console.log(`Executing FFmpeg command: ${command.substring(0, 100)}...`);
720
+ const res = await terminal.run(command);
721
+ const result = await res.json();
722
+ if (result.exitCode !== 0) {
723
+ console.error('FFmpeg command failed:', result);
724
+ return {
725
+ content: [
726
+ {
727
+ type: 'text',
728
+ text: JSON.stringify({
729
+ success: false,
730
+ error: 'Ken Burns motion generation failed',
731
+ exitCode: result.exitCode,
732
+ stderr: result.stderr,
733
+ command: command.substring(0, 200),
734
+ timestamp: new Date().toISOString(),
735
+ }),
736
+ },
737
+ ],
738
+ };
739
+ }
740
+ console.log('Ken Burns motion generated successfully, downloading file...');
741
+ try {
742
+ await files.download(saveToPath, saveLocalPath);
743
+ }
744
+ catch (downloadError) {
745
+ console.warn('Failed to download file to local:', downloadError);
746
+ // 继续执行,因为远程文件已生成成功
747
+ }
748
+ const resultData = {
749
+ success: true,
750
+ uri: saveToPath,
751
+ durationMs: Math.floor(duration * 1000),
752
+ frameIndex: frame_index,
753
+ imagePath: image_path,
754
+ size,
755
+ dimensions: { width, height },
756
+ timestamp: new Date().toISOString(),
757
+ };
758
+ console.log(`Ken Burns motion completed: ${saveToPath}`);
410
759
  return {
411
- content: [{ type: 'text', text: JSON.stringify(result) }],
760
+ content: [
761
+ {
762
+ type: 'text',
763
+ text: JSON.stringify(resultData),
764
+ },
765
+ ],
412
766
  };
413
767
  }
414
- await files.download(saveToPath, saveLocalPath);
415
- return {
416
- content: [
417
- {
418
- type: 'text',
419
- text: JSON.stringify({
420
- uri: saveToPath,
421
- durationMs: Math.floor(duration * 1000),
422
- }),
423
- },
424
- ],
425
- };
768
+ catch (error) {
769
+ return createErrorResponse(error, 'generate-video-fallback');
770
+ }
426
771
  });
427
772
  server.registerTool('generate-bgm', {
428
773
  title: 'Generate BGM',
@@ -437,35 +782,71 @@ server.registerTool('generate-bgm', {
437
782
  saveToFileName: zod_1.z.string().describe('The filename to save.'),
438
783
  },
439
784
  }, async ({ prompt, duration, saveToFileName }, context) => {
440
- const ai = session.ai;
441
- let progress = 0;
442
- const res = await ai.generateBGM({
443
- prompt,
444
- duration,
445
- onProgress: async (metaData) => {
446
- await sendProgress(context, metaData.Result?.Progress ?? ++progress, metaData.Result?.Progress ? 100 : undefined, JSON.stringify(metaData));
447
- },
448
- });
449
- if (res.url) {
450
- const uri = await saveMertial(session, res.url, saveToFileName);
451
- const { url, duration, ...opts } = res;
452
- return {
453
- content: [
454
- {
455
- type: 'text',
456
- text: JSON.stringify({
457
- source: url,
458
- uri,
459
- durationMs: Math.floor(duration * 1000),
460
- ...opts,
461
- }),
462
- },
463
- ],
464
- };
785
+ try {
786
+ // 验证session状态
787
+ const currentSession = validateSession('generate-bgm');
788
+ const validatedFileName = validateFileName(saveToFileName);
789
+ console.log(`Generating BGM with prompt: ${prompt.substring(0, 100)}... (${duration}s)`);
790
+ const ai = currentSession.ai;
791
+ let progress = 0;
792
+ const res = await ai.generateBGM({
793
+ prompt: prompt.trim(),
794
+ duration,
795
+ onProgress: async (metaData) => {
796
+ try {
797
+ await sendProgress(context, metaData.Result?.Progress ?? ++progress, metaData.Result?.Progress ? 100 : undefined, JSON.stringify(metaData));
798
+ }
799
+ catch (progressError) {
800
+ console.warn('Failed to send progress update:', progressError);
801
+ }
802
+ },
803
+ });
804
+ if (!res) {
805
+ throw new Error('Failed to generate BGM: no response from AI service');
806
+ }
807
+ if (res.url) {
808
+ console.log('BGM generated successfully, saving to materials...');
809
+ const uri = await saveMertial(currentSession, res.url, validatedFileName);
810
+ const { url, duration: bgmDuration, ...opts } = res;
811
+ const result = {
812
+ success: true,
813
+ source: url,
814
+ uri,
815
+ durationMs: Math.floor((bgmDuration || duration) * 1000),
816
+ prompt: prompt.substring(0, 100),
817
+ requestedDuration: duration,
818
+ timestamp: new Date().toISOString(),
819
+ ...opts,
820
+ };
821
+ return {
822
+ content: [
823
+ {
824
+ type: 'text',
825
+ text: JSON.stringify(result),
826
+ },
827
+ ],
828
+ };
829
+ }
830
+ else {
831
+ console.warn('BGM generation completed but no URL returned');
832
+ return {
833
+ content: [
834
+ {
835
+ type: 'text',
836
+ text: JSON.stringify({
837
+ success: false,
838
+ error: 'No BGM URL returned from AI service',
839
+ response: res,
840
+ timestamp: new Date().toISOString(),
841
+ }),
842
+ },
843
+ ],
844
+ };
845
+ }
846
+ }
847
+ catch (error) {
848
+ return createErrorResponse(error, 'generate-bgm');
465
849
  }
466
- return {
467
- content: [{ type: 'text', text: JSON.stringify(res) }],
468
- };
469
850
  });
470
851
  server.registerTool('generate-scene-tts', {
471
852
  title: 'Generate Scene TTS',
@@ -501,32 +882,65 @@ server.registerTool('generate-scene-tts', {
501
882
  .describe('适合作为视频配音的中英文音色(推荐15个)。来源于系统音色清单,偏中性、耐听,覆盖新闻/主持、企业宣传、科普解说、纪录片与生活方式等场景。'),
502
883
  },
503
884
  }, async ({ text, voiceName, saveToFileName, speed }) => {
504
- const ai = session.ai;
505
- const res = await ai.textToSpeech({
506
- text,
507
- voiceName,
508
- speed,
509
- });
510
- if (res.url) {
511
- const uri = await saveMertial(session, res.url, saveToFileName);
512
- const { url, duration, ...opts } = res;
513
- return {
514
- content: [
515
- {
516
- type: 'text',
517
- text: JSON.stringify({
518
- source: url,
519
- uri,
520
- durationMs: Math.floor(duration * 1000),
521
- ...opts,
522
- }),
523
- },
524
- ],
525
- };
885
+ try {
886
+ // 验证session状态
887
+ const currentSession = validateSession('generate-scene-tts');
888
+ const validatedFileName = validateFileName(saveToFileName);
889
+ const finalSpeed = speed ?? 1;
890
+ console.log(`Generating TTS with voice: ${voiceName}, speed: ${finalSpeed}, text: ${text.substring(0, 100)}...`);
891
+ const ai = currentSession.ai;
892
+ const res = await ai.textToSpeech({
893
+ text: text.trim(),
894
+ voiceName,
895
+ speed: finalSpeed,
896
+ });
897
+ if (!res) {
898
+ throw new Error('Failed to generate TTS: no response from AI service');
899
+ }
900
+ if (res.url) {
901
+ console.log('TTS generated successfully, saving to materials...');
902
+ const uri = await saveMertial(currentSession, res.url, validatedFileName);
903
+ const { url, duration, ...opts } = res;
904
+ const result = {
905
+ success: true,
906
+ source: url,
907
+ uri,
908
+ durationMs: Math.floor((duration || 0) * 1000),
909
+ text: text.substring(0, 100),
910
+ voiceName,
911
+ speed: finalSpeed,
912
+ timestamp: new Date().toISOString(),
913
+ ...opts,
914
+ };
915
+ return {
916
+ content: [
917
+ {
918
+ type: 'text',
919
+ text: JSON.stringify(result),
920
+ },
921
+ ],
922
+ };
923
+ }
924
+ else {
925
+ console.warn('TTS generation completed but no URL returned');
926
+ return {
927
+ content: [
928
+ {
929
+ type: 'text',
930
+ text: JSON.stringify({
931
+ success: false,
932
+ error: 'No TTS URL returned from AI service',
933
+ response: res,
934
+ timestamp: new Date().toISOString(),
935
+ }),
936
+ },
937
+ ],
938
+ };
939
+ }
940
+ }
941
+ catch (error) {
942
+ return createErrorResponse(error, 'generate-scene-tts');
526
943
  }
527
- return {
528
- content: [{ type: 'text', text: JSON.stringify(res) }],
529
- };
530
944
  });
531
945
  server.registerTool('compile-and-run', {
532
946
  title: 'Compile And Run',
@@ -540,71 +954,89 @@ server.registerTool('compile-and-run', {
540
954
  },
541
955
  }, async ({ project, outputFileName }) => {
542
956
  try {
543
- // Project is already validated by zVideoProject schema
544
- const validated = project;
545
- // Get working directory
546
- const terminal = session.terminal;
957
+ // 验证session状态
958
+ const currentSession = validateSession('compile-and-run');
959
+ console.log('Starting video compilation and rendering...');
960
+ // 验证terminal可用性
961
+ const terminal = currentSession.terminal;
962
+ if (!terminal) {
963
+ throw new Error('Terminal not available in current session');
964
+ }
965
+ // 验证输出文件名安全性
966
+ const outFile = outputFileName || 'output.mp4';
967
+ const validatedFileName = validateFileName(outFile);
968
+ console.log(`Output file: ${validatedFileName}`);
969
+ // 构建工作目录路径
547
970
  const workDir = `/home/user/cerevox-zerocut/projects/${terminal.id}`;
548
971
  const outputDir = `${workDir}/output`;
549
- // Set output file
550
- const outFile = outputFileName || 'output.mp4';
551
- const outputPath = `${outputDir}/${outFile}`;
552
- // Update export configuration
553
- validated.export.outFile = outputPath;
554
- // Compile to FFmpeg command
555
- const compiled = (0, videokit_1.compileToFfmpeg)(validated, {
556
- workingDir: outputDir,
557
- subtitleStrategy: 'auto',
558
- });
559
- // Log the FFmpeg command for debugging
560
- console.log('FFmpeg Command:', compiled.cmd);
561
- // Run FFmpeg
562
- const result = await runFfmpeg(session, compiled);
972
+ const outputPath = `${outputDir}/${validatedFileName}`;
973
+ // Project已经通过zVideoProject schema验证
974
+ const validated = { ...project };
975
+ // 更新导出配置
976
+ validated.export = {
977
+ ...validated.export,
978
+ outFile: outputPath,
979
+ };
980
+ console.log('Compiling VideoProject to FFmpeg command...');
981
+ // 编译为FFmpeg命令
982
+ let compiled;
983
+ try {
984
+ compiled = (0, videokit_1.compileToFfmpeg)(validated, {
985
+ workingDir: outputDir,
986
+ subtitleStrategy: 'auto',
987
+ });
988
+ }
989
+ catch (compileError) {
990
+ console.error('Failed to compile VideoProject:', compileError);
991
+ throw new Error(`Failed to compile VideoProject: ${compileError}`);
992
+ }
993
+ console.log(`FFmpeg command generated (${compiled.cmd.length} chars)`);
994
+ console.log('FFmpeg Command:', compiled.cmd.substring(0, 200) + '...');
995
+ // 执行FFmpeg命令
996
+ console.log('Executing FFmpeg command...');
997
+ const result = await runFfmpeg(currentSession, compiled);
563
998
  if (result.exitCode === 0) {
999
+ console.log('Video compilation completed successfully');
1000
+ const successResult = {
1001
+ success: true,
1002
+ outputPath,
1003
+ outputFileName: validatedFileName,
1004
+ command: compiled.cmd.substring(0, 500), // 限制命令长度
1005
+ message: 'Video compilation completed successfully',
1006
+ timestamp: new Date().toISOString(),
1007
+ };
564
1008
  return {
565
1009
  content: [
566
1010
  {
567
1011
  type: 'text',
568
- text: JSON.stringify({
569
- success: true,
570
- outputPath,
571
- command: compiled.cmd,
572
- message: 'Video compilation completed successfully',
573
- }),
1012
+ text: JSON.stringify(successResult),
574
1013
  },
575
1014
  ],
576
1015
  };
577
1016
  }
578
1017
  else {
1018
+ console.error(`FFmpeg failed with exit code: ${result.exitCode}`);
1019
+ const failureResult = {
1020
+ success: false,
1021
+ exitCode: result.exitCode,
1022
+ outputPath,
1023
+ command: compiled.cmd.substring(0, 500),
1024
+ stderr: result.stderr?.substring(0, 1000), // 限制错误输出长度
1025
+ message: `FFmpeg exited with code ${result.exitCode}`,
1026
+ timestamp: new Date().toISOString(),
1027
+ };
579
1028
  return {
580
1029
  content: [
581
1030
  {
582
1031
  type: 'text',
583
- text: JSON.stringify({
584
- success: false,
585
- exitCode: result.exitCode,
586
- command: compiled.cmd,
587
- message: `FFmpeg exited with code ${result.exitCode}`,
588
- }),
1032
+ text: JSON.stringify(failureResult),
589
1033
  },
590
1034
  ],
591
1035
  };
592
1036
  }
593
1037
  }
594
1038
  catch (error) {
595
- const errorMessage = error instanceof Error ? error.message : String(error);
596
- return {
597
- content: [
598
- {
599
- type: 'text',
600
- text: JSON.stringify({
601
- success: false,
602
- error: errorMessage,
603
- message: 'Failed to compile and run project',
604
- }),
605
- },
606
- ],
607
- };
1039
+ return createErrorResponse(error, 'compile-and-run');
608
1040
  }
609
1041
  });
610
1042
  server.registerTool('get-video-project-schema', {
@@ -1 +1 @@
1
- {"version":3,"file":"zerocut.js","sourceRoot":"","sources":["../../../src/mcp/servers/zerocut.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"zerocut.js","sourceRoot":"","sources":["../../../src/mcp/servers/zerocut.ts"],"names":[],"mappings":"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"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "cerevox",
3
- "version": "0.3.3",
3
+ "version": "0.3.4",
4
4
  "description": "TypeScript SDK for browser automation and secure command execution in highly available and scalable micro computer environments",
5
5
  "main": "dist/index.js",
6
6
  "types": "dist/index.d.ts",