@vibeframe/cli 0.33.1 → 0.36.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (38) hide show
  1. package/dist/commands/ai-edit.d.ts.map +1 -1
  2. package/dist/commands/ai-edit.js +46 -5
  3. package/dist/commands/ai-edit.js.map +1 -1
  4. package/dist/commands/ai-script-pipeline-cli.d.ts.map +1 -1
  5. package/dist/commands/ai-script-pipeline-cli.js +14 -4
  6. package/dist/commands/ai-script-pipeline-cli.js.map +1 -1
  7. package/dist/commands/detect.d.ts +53 -0
  8. package/dist/commands/detect.d.ts.map +1 -1
  9. package/dist/commands/detect.js +140 -0
  10. package/dist/commands/detect.js.map +1 -1
  11. package/dist/commands/doctor.js +105 -1
  12. package/dist/commands/doctor.js.map +1 -1
  13. package/dist/commands/generate.d.ts +39 -0
  14. package/dist/commands/generate.d.ts.map +1 -1
  15. package/dist/commands/generate.js +99 -0
  16. package/dist/commands/generate.js.map +1 -1
  17. package/dist/commands/setup.js +7 -3
  18. package/dist/commands/setup.js.map +1 -1
  19. package/dist/index.d.ts.map +1 -1
  20. package/dist/index.js +39 -28
  21. package/dist/index.js.map +1 -1
  22. package/dist/utils/api-key.d.ts +0 -3
  23. package/dist/utils/api-key.d.ts.map +1 -1
  24. package/dist/utils/api-key.js +17 -2
  25. package/dist/utils/api-key.js.map +1 -1
  26. package/dist/utils/first-run.d.ts +4 -0
  27. package/dist/utils/first-run.d.ts.map +1 -1
  28. package/dist/utils/first-run.js +29 -3
  29. package/dist/utils/first-run.js.map +1 -1
  30. package/dist/utils/input-validation.d.ts +27 -0
  31. package/dist/utils/input-validation.d.ts.map +1 -0
  32. package/dist/utils/input-validation.js +67 -0
  33. package/dist/utils/input-validation.js.map +1 -0
  34. package/dist/utils/remotion.d.ts +21 -0
  35. package/dist/utils/remotion.d.ts.map +1 -1
  36. package/dist/utils/remotion.js +165 -17
  37. package/dist/utils/remotion.js.map +1 -1
  38. package/package.json +19 -3
@@ -86,6 +86,37 @@ Examples:
86
86
  }
87
87
  printReport(results);
88
88
  });
89
+ /** FFmpeg filters required by offline commands */
90
+ const REQUIRED_FFMPEG_FILTERS = {
91
+ drawtext: {
92
+ commands: ["edit text-overlay", "edit caption"],
93
+ fix: {
94
+ darwin: "brew uninstall ffmpeg && brew install ffmpeg",
95
+ linux: "sudo apt install ffmpeg (or rebuild with --enable-libfreetype)",
96
+ },
97
+ },
98
+ subtitles: {
99
+ commands: ["edit caption"],
100
+ fix: {
101
+ darwin: "brew uninstall ffmpeg && brew install ffmpeg",
102
+ linux: "sudo apt install ffmpeg (or rebuild with --enable-libass)",
103
+ },
104
+ },
105
+ afftdn: {
106
+ commands: ["edit noise-reduce"],
107
+ fix: {
108
+ darwin: "brew uninstall ffmpeg && brew install ffmpeg",
109
+ linux: "sudo apt install ffmpeg (or rebuild with --enable-libfftw3)",
110
+ },
111
+ },
112
+ };
113
+ /** Optional external tools for advanced commands */
114
+ const OPTIONAL_TOOLS = {
115
+ remotion: {
116
+ commands: ["generate motion", "edit caption (fallback)"],
117
+ install: "npm install -g @remotion/cli",
118
+ },
119
+ };
89
120
  async function runDiagnostics() {
90
121
  loadEnv();
91
122
  // System checks
@@ -102,6 +133,50 @@ async function runDiagnostics() {
102
133
  ffmpegVersion = "unknown";
103
134
  }
104
135
  }
136
+ // FFmpeg filter checks
137
+ let ffmpegFilters;
138
+ if (ffmpegExists) {
139
+ try {
140
+ const filtersResult = await execSafe("ffmpeg", ["-filters"]);
141
+ const filtersOutput = filtersResult.stdout;
142
+ const platform = process.platform;
143
+ ffmpegFilters = {};
144
+ for (const [filterName, info] of Object.entries(REQUIRED_FFMPEG_FILTERS)) {
145
+ const available = filtersOutput.includes(filterName);
146
+ ffmpegFilters[filterName] = {
147
+ available,
148
+ commands: info.commands,
149
+ ...(!available && info.fix[platform] ? { fix: info.fix[platform] } : {}),
150
+ };
151
+ }
152
+ }
153
+ catch {
154
+ // filter check failed, skip
155
+ }
156
+ }
157
+ // Optional tools check
158
+ const optionalTools = {};
159
+ for (const [toolName, info] of Object.entries(OPTIONAL_TOOLS)) {
160
+ let installed = false;
161
+ if (toolName === "remotion") {
162
+ // Check global install without triggering npx download
163
+ try {
164
+ await execSafe("npx", ["--no", "remotion", "--version"], { timeout: 5000 });
165
+ installed = true;
166
+ }
167
+ catch {
168
+ installed = false;
169
+ }
170
+ }
171
+ else {
172
+ installed = commandExists(toolName);
173
+ }
174
+ optionalTools[toolName] = {
175
+ installed,
176
+ commands: info.commands,
177
+ install: info.install,
178
+ };
179
+ }
105
180
  let configExists = false;
106
181
  try {
107
182
  await access(CONFIG_PATH);
@@ -127,8 +202,9 @@ async function runDiagnostics() {
127
202
  return {
128
203
  system: {
129
204
  node: { version: nodeVersion, ok: true },
130
- ffmpeg: { version: ffmpegVersion, ok: ffmpegExists },
205
+ ffmpeg: { version: ffmpegVersion, ok: ffmpegExists, ...(ffmpegFilters ? { filters: ffmpegFilters } : {}) },
131
206
  config: { path: CONFIG_PATH, ok: configExists },
207
+ ...(Object.keys(optionalTools).length > 0 ? { optionalTools } : {}),
132
208
  },
133
209
  providers,
134
210
  readyCount,
@@ -148,6 +224,34 @@ function printReport(results) {
148
224
  else {
149
225
  console.log(` FFmpeg ${chalk.red("NOT FOUND")} ${chalk.dim("Install: brew install ffmpeg")}`);
150
226
  }
227
+ // FFmpeg filters
228
+ if (results.system.ffmpeg.ok && results.system.ffmpeg.filters) {
229
+ const filters = results.system.ffmpeg.filters;
230
+ const missingFilters = Object.entries(filters).filter(([, f]) => !f.available);
231
+ if (missingFilters.length > 0) {
232
+ for (const [name, info] of missingFilters) {
233
+ console.log(` Filter ${chalk.yellow(`${name} MISSING`)} ${chalk.dim(`needed by: ${info.commands.join(", ")}`)}`);
234
+ if (info.fix) {
235
+ console.log(` ${chalk.dim(`Fix: ${info.fix}`)}`);
236
+ }
237
+ }
238
+ }
239
+ else {
240
+ console.log(` Filters ${chalk.green("OK")} ${chalk.dim("drawtext, subtitles, afftdn")}`);
241
+ }
242
+ }
243
+ // Optional tools
244
+ if (results.system.optionalTools) {
245
+ for (const [name, info] of Object.entries(results.system.optionalTools)) {
246
+ if (info.installed) {
247
+ console.log(` ${name.padEnd(11)}${chalk.green("OK")} ${chalk.dim(info.commands.join(", "))}`);
248
+ }
249
+ else {
250
+ console.log(` ${name.padEnd(11)}${chalk.yellow("MISSING")} ${chalk.dim(`needed by: ${info.commands.join(", ")}`)}`);
251
+ console.log(` ${chalk.dim(`Install: ${info.install}`)}`);
252
+ }
253
+ }
254
+ }
151
255
  // Config
152
256
  if (results.system.config.ok) {
153
257
  console.log(` Config ${chalk.green("OK")} ${chalk.dim(results.system.config.path)}`);
@@ -1 +1 @@
1
- {"version":3,"file":"doctor.js","sourceRoot":"","sources":["../../src/commands/doctor.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"doctor.js","sourceRoot":"","sources":["../../src/commands/doctor.ts"],"names":[],"mappings":"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"}
@@ -22,4 +22,43 @@
22
22
  */
23
23
  import { Command } from "commander";
24
24
  export declare const generateCommand: Command;
25
+ export interface ExecuteSpeechOptions {
26
+ text: string;
27
+ output?: string;
28
+ voice?: string;
29
+ }
30
+ export interface ExecuteSpeechResult {
31
+ success: boolean;
32
+ outputPath?: string;
33
+ characterCount?: number;
34
+ error?: string;
35
+ }
36
+ export declare function executeSpeech(options: ExecuteSpeechOptions): Promise<ExecuteSpeechResult>;
37
+ export interface ExecuteSoundEffectOptions {
38
+ prompt: string;
39
+ output?: string;
40
+ duration?: number;
41
+ promptInfluence?: number;
42
+ }
43
+ export interface ExecuteSoundEffectResult {
44
+ success: boolean;
45
+ outputPath?: string;
46
+ error?: string;
47
+ }
48
+ export declare function executeSoundEffect(options: ExecuteSoundEffectOptions): Promise<ExecuteSoundEffectResult>;
49
+ export interface ExecuteMusicOptions {
50
+ prompt: string;
51
+ output?: string;
52
+ duration?: number;
53
+ provider?: "elevenlabs" | "replicate";
54
+ instrumental?: boolean;
55
+ }
56
+ export interface ExecuteMusicResult {
57
+ success: boolean;
58
+ outputPath?: string;
59
+ provider?: string;
60
+ duration?: number;
61
+ error?: string;
62
+ }
63
+ export declare function executeMusic(options: ExecuteMusicOptions): Promise<ExecuteMusicResult>;
25
64
  //# sourceMappingURL=generate.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"generate.d.ts","sourceRoot":"","sources":["../../src/commands/generate.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;GAqBG;AAEH,OAAO,EAAE,OAAO,EAAE,MAAM,WAAW,CAAC;AAmDpC,eAAO,MAAM,eAAe,SA8BzB,CAAC"}
1
+ {"version":3,"file":"generate.d.ts","sourceRoot":"","sources":["../../src/commands/generate.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;GAqBG;AAEH,OAAO,EAAE,OAAO,EAAE,MAAM,WAAW,CAAC;AAmDpC,eAAO,MAAM,eAAe,SA8BzB,CAAC;AAwgEJ,MAAM,WAAW,oBAAoB;IACnC,IAAI,EAAE,MAAM,CAAC;IACb,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,KAAK,CAAC,EAAE,MAAM,CAAC;CAChB;AACD,MAAM,WAAW,mBAAmB;IAClC,OAAO,EAAE,OAAO,CAAC;IACjB,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,cAAc,CAAC,EAAE,MAAM,CAAC;IACxB,KAAK,CAAC,EAAE,MAAM,CAAC;CAChB;AAED,wBAAsB,aAAa,CAAC,OAAO,EAAE,oBAAoB,GAAG,OAAO,CAAC,mBAAmB,CAAC,CAyB/F;AAED,MAAM,WAAW,yBAAyB;IACxC,MAAM,EAAE,MAAM,CAAC;IACf,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,eAAe,CAAC,EAAE,MAAM,CAAC;CAC1B;AACD,MAAM,WAAW,wBAAwB;IACvC,OAAO,EAAE,OAAO,CAAC;IACjB,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,KAAK,CAAC,EAAE,MAAM,CAAC;CAChB;AAED,wBAAsB,kBAAkB,CAAC,OAAO,EAAE,yBAAyB,GAAG,OAAO,CAAC,wBAAwB,CAAC,CA0B9G;AAED,MAAM,WAAW,mBAAmB;IAClC,MAAM,EAAE,MAAM,CAAC;IACf,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,QAAQ,CAAC,EAAE,YAAY,GAAG,WAAW,CAAC;IACtC,YAAY,CAAC,EAAE,OAAO,CAAC;CACxB;AACD,MAAM,WAAW,kBAAkB;IACjC,OAAO,EAAE,OAAO,CAAC;IACjB,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,KAAK,CAAC,EAAE,MAAM,CAAC;CAChB;AAED,wBAAsB,YAAY,CAAC,OAAO,EAAE,mBAAmB,GAAG,OAAO,CAAC,kBAAkB,CAAC,CA6D5F"}
@@ -1893,4 +1893,103 @@ generateCommand
1893
1893
  exitWithError(apiError(`Video extension failed: ${msg}`, true));
1894
1894
  }
1895
1895
  });
1896
+ export async function executeSpeech(options) {
1897
+ try {
1898
+ const apiKey = hasApiKey("ELEVENLABS_API_KEY")
1899
+ ? (await getApiKeyFromConfig("elevenlabs") || process.env.ELEVENLABS_API_KEY)
1900
+ : null;
1901
+ if (!apiKey)
1902
+ return { success: false, error: "ElevenLabs API key required. Set ELEVENLABS_API_KEY or run: vibe setup" };
1903
+ const elevenlabs = new ElevenLabsProvider();
1904
+ await elevenlabs.initialize({ apiKey });
1905
+ const result = await elevenlabs.textToSpeech(options.text, {
1906
+ voiceId: options.voice || "21m00Tcm4TlvDq8ikWAM",
1907
+ });
1908
+ if (!result.success || !result.audioBuffer) {
1909
+ return { success: false, error: result.error || "TTS generation failed" };
1910
+ }
1911
+ const outputPath = resolve(process.cwd(), options.output || "output.mp3");
1912
+ await writeFile(outputPath, result.audioBuffer);
1913
+ return { success: true, outputPath, characterCount: result.characterCount };
1914
+ }
1915
+ catch (error) {
1916
+ return { success: false, error: `TTS failed: ${error instanceof Error ? error.message : String(error)}` };
1917
+ }
1918
+ }
1919
+ export async function executeSoundEffect(options) {
1920
+ try {
1921
+ const apiKey = hasApiKey("ELEVENLABS_API_KEY")
1922
+ ? (await getApiKeyFromConfig("elevenlabs") || process.env.ELEVENLABS_API_KEY)
1923
+ : null;
1924
+ if (!apiKey)
1925
+ return { success: false, error: "ElevenLabs API key required. Set ELEVENLABS_API_KEY or run: vibe setup" };
1926
+ const elevenlabs = new ElevenLabsProvider();
1927
+ await elevenlabs.initialize({ apiKey });
1928
+ const result = await elevenlabs.generateSoundEffect(options.prompt, {
1929
+ duration: options.duration,
1930
+ promptInfluence: options.promptInfluence,
1931
+ });
1932
+ if (!result.success || !result.audioBuffer) {
1933
+ return { success: false, error: result.error || "Sound effect generation failed" };
1934
+ }
1935
+ const outputPath = resolve(process.cwd(), options.output || "sound-effect.mp3");
1936
+ await writeFile(outputPath, result.audioBuffer);
1937
+ return { success: true, outputPath };
1938
+ }
1939
+ catch (error) {
1940
+ return { success: false, error: `SFX failed: ${error instanceof Error ? error.message : String(error)}` };
1941
+ }
1942
+ }
1943
+ export async function executeMusic(options) {
1944
+ try {
1945
+ const provider = options.provider || "elevenlabs";
1946
+ if (provider === "elevenlabs") {
1947
+ const apiKey = hasApiKey("ELEVENLABS_API_KEY")
1948
+ ? (await getApiKeyFromConfig("elevenlabs") || process.env.ELEVENLABS_API_KEY)
1949
+ : null;
1950
+ if (!apiKey)
1951
+ return { success: false, error: "ElevenLabs API key required. Set ELEVENLABS_API_KEY or run: vibe setup" };
1952
+ const elevenlabs = new ElevenLabsProvider();
1953
+ await elevenlabs.initialize({ apiKey });
1954
+ const duration = Math.max(3, Math.min(600, options.duration || 8));
1955
+ const result = await elevenlabs.generateMusic(options.prompt, {
1956
+ duration,
1957
+ forceInstrumental: options.instrumental || false,
1958
+ });
1959
+ if (!result.success || !result.audioBuffer) {
1960
+ return { success: false, error: result.error || "Music generation failed" };
1961
+ }
1962
+ const outputPath = resolve(process.cwd(), options.output || "music.mp3");
1963
+ await writeFile(outputPath, result.audioBuffer);
1964
+ return { success: true, outputPath, provider: "elevenlabs", duration };
1965
+ }
1966
+ // Replicate MusicGen
1967
+ const apiKey = hasApiKey("REPLICATE_API_TOKEN")
1968
+ ? (await getApiKeyFromConfig("replicate") || process.env.REPLICATE_API_TOKEN)
1969
+ : null;
1970
+ if (!apiKey)
1971
+ return { success: false, error: "Replicate API token required. Set REPLICATE_API_TOKEN or run: vibe setup" };
1972
+ const replicate = new ReplicateProvider();
1973
+ await replicate.initialize({ apiKey });
1974
+ const duration = Math.max(1, Math.min(30, options.duration || 8));
1975
+ const result = await replicate.generateMusic(options.prompt, { duration });
1976
+ if (!result.success || !result.taskId) {
1977
+ return { success: false, error: result.error || "Music generation failed" };
1978
+ }
1979
+ const finalResult = await replicate.waitForMusic(result.taskId);
1980
+ if (!finalResult.success || !finalResult.audioUrl) {
1981
+ return { success: false, error: finalResult.error || "Music generation failed" };
1982
+ }
1983
+ const response = await fetch(finalResult.audioUrl);
1984
+ if (!response.ok)
1985
+ return { success: false, error: "Failed to download generated audio" };
1986
+ const audioBuffer = Buffer.from(await response.arrayBuffer());
1987
+ const outputPath = resolve(process.cwd(), options.output || "music.mp3");
1988
+ await writeFile(outputPath, audioBuffer);
1989
+ return { success: true, outputPath, provider: "replicate", duration };
1990
+ }
1991
+ catch (error) {
1992
+ return { success: false, error: `Music failed: ${error instanceof Error ? error.message : String(error)}` };
1993
+ }
1994
+ }
1896
1995
  //# sourceMappingURL=generate.js.map