@vibeframe/cli 0.115.9 → 0.116.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.
- package/dist/commands/_shared/build-video-providers.d.ts +9 -2
- package/dist/commands/_shared/image-cost.d.ts +5 -4
- package/dist/commands/_shared/storyboard-draft.d.ts +14 -0
- package/dist/commands/_shared/storyboard-parse.d.ts +1 -1
- package/dist/commands/_shared/storyboard-revise.d.ts +8 -3
- package/dist/commands/_shared/video-jobs.d.ts +0 -2
- package/dist/commands/ai-video.d.ts +2 -6
- package/dist/commands/generate/thumbnail.d.ts +2 -3
- package/dist/commands/generate/video-extend.d.ts +1 -1
- package/dist/commands/generate/video.d.ts +2 -2
- package/dist/commands/generate.d.ts +2 -2
- package/dist/config/index.d.ts +2 -7
- package/dist/config/schema.d.ts +2 -17
- package/dist/index.d.ts +1 -4
- package/dist/index.js +30772 -44024
- package/dist/tools/adapters/mcp.d.ts +1 -1
- package/dist/tools/adapters/mcp.js +2 -6
- package/dist/tools/define-tool.d.ts +8 -26
- package/dist/tools/define-tool.js +0 -14
- package/dist/tools/manifest/edit.d.ts +4 -4
- package/dist/tools/manifest/generate.d.ts +8 -14
- package/dist/tools/manifest/handlers.test.d.ts +7 -0
- package/dist/tools/manifest/index.d.ts +2 -3
- package/dist/tools/manifest/index.js +6760 -10081
- package/dist/tools/manifest/scene.d.ts +7 -7
- package/dist/tools/manifest/storyboard.d.ts +7 -7
- package/dist/tools/manifest.test.d.ts +1 -3
- package/dist/utils/model-lifecycle.d.ts +0 -1
- package/package.json +4 -12
- package/dist/agent/adapters/claude.d.ts +0 -14
- package/dist/agent/adapters/evolink.d.ts +0 -15
- package/dist/agent/adapters/evolink.test.d.ts +0 -4
- package/dist/agent/adapters/gemini.d.ts +0 -16
- package/dist/agent/adapters/index.d.ts +0 -30
- package/dist/agent/adapters/ollama.d.ts +0 -19
- package/dist/agent/adapters/openai.d.ts +0 -14
- package/dist/agent/adapters/openrouter.d.ts +0 -15
- package/dist/agent/adapters/openrouter.test.d.ts +0 -4
- package/dist/agent/adapters/provider-content.test.d.ts +0 -6
- package/dist/agent/adapters/xai.d.ts +0 -14
- package/dist/agent/index.d.ts +0 -109
- package/dist/agent/memory/index.d.ts +0 -69
- package/dist/agent/prompts/system.d.ts +0 -5
- package/dist/agent/tools/e2e.test.d.ts +0 -25
- package/dist/agent/tools/index.d.ts +0 -59
- package/dist/agent/tools/integration.test.d.ts +0 -10
- package/dist/agent/tools/scene.test.d.ts +0 -1
- package/dist/agent/types.d.ts +0 -80
- package/dist/commands/agent.d.ts +0 -30
- package/dist/tools/adapters/agent.d.ts +0 -9
- package/dist/tools/adapters/agent.js +0 -188
- package/dist/tools/manifest/agent-only.d.ts +0 -236
- /package/dist/{agent/index.test.d.ts → commands/_shared/image-jobs.test.d.ts} +0 -0
|
@@ -3,10 +3,17 @@
|
|
|
3
3
|
* `provider:` cues, project config) can target. One list, so adding a
|
|
4
4
|
* provider is a one-line change instead of a hunt through every command.
|
|
5
5
|
*/
|
|
6
|
-
export declare const BUILD_VIDEO_PROVIDERS: readonly ["seedance", "grok", "kling", "runway", "omni"
|
|
6
|
+
export declare const BUILD_VIDEO_PROVIDERS: readonly ["seedance", "grok", "kling", "runway", "omni"];
|
|
7
7
|
export type BuildVideoProvider = (typeof BUILD_VIDEO_PROVIDERS)[number];
|
|
8
8
|
export declare function isBuildVideoProvider(value: string): value is BuildVideoProvider;
|
|
9
|
-
/**
|
|
9
|
+
/** A requested provider, normalized; null when no build video provider has that name. */
|
|
10
|
+
export declare function parseBuildVideoProvider(value: string): BuildVideoProvider | null;
|
|
11
|
+
/**
|
|
12
|
+
* Normalize user input; seedance when unset. An unknown name throws rather
|
|
13
|
+
* than quietly switching to another paid provider (`vibe plan` reports it as
|
|
14
|
+
* a validation error before a build gets here).
|
|
15
|
+
*/
|
|
10
16
|
export declare function resolveBuildVideoProvider(value: unknown): BuildVideoProvider;
|
|
17
|
+
export declare function unknownVideoProviderMessage(value: string): string;
|
|
11
18
|
/** Config/API-key id that unlocks a video provider. */
|
|
12
19
|
export declare function videoProviderConfigKey(provider: string): string;
|
|
@@ -3,13 +3,14 @@
|
|
|
3
3
|
*
|
|
4
4
|
* Without these, real runs reported `costUsd: 0`, which reads as "free" to
|
|
5
5
|
* agents that gate spend on the JSON envelope. Values are upper bounds from
|
|
6
|
-
* provider list prices (checked 2026-10-
|
|
6
|
+
* provider list prices (checked 2026-10-17, see
|
|
7
7
|
* `.agents/references/providers/`), not metered billing:
|
|
8
|
-
* - OpenAI: high quality at 1024x1024 (we default to medium)
|
|
9
|
-
*
|
|
8
|
+
* - OpenAI: high quality at 1024x1024 (we default to medium), scaled by pixel
|
|
9
|
+
* count for an explicit `WxH` size, since output tokens grow with it.
|
|
10
|
+
* - Gemini: the requested size's price (1K when none is asked for).
|
|
10
11
|
* - Grok: grok-imagine-image-2.0 at its 2K medium price.
|
|
11
12
|
*/
|
|
12
|
-
export declare function estimateImageCostUsd(provider: string, model: string | undefined, count: number): {
|
|
13
|
+
export declare function estimateImageCostUsd(provider: string, model: string | undefined, count: number, resolution?: string, size?: string): {
|
|
13
14
|
costUsd: number;
|
|
14
15
|
warnings: string[];
|
|
15
16
|
};
|
|
@@ -1,3 +1,17 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* @module _shared/storyboard-draft
|
|
3
|
+
*
|
|
4
|
+
* The offline storyboard skeleton `vibe init --from "<brief>"` writes.
|
|
5
|
+
*
|
|
6
|
+
* Without a model this cannot know what the video says, so it does not
|
|
7
|
+
* pretend to: beats come from the brief's own outline when it has one
|
|
8
|
+
* ("hook, buoyancy, folding tip"), each beat gets a backdrop prompt from
|
|
9
|
+
* its topic and the brief, and narration is left for the composer
|
|
10
|
+
* (`storyboard revise`), the host agent, or the user to write. A skeleton
|
|
11
|
+
* that renders silently is better than one that narrates someone else's
|
|
12
|
+
* script. When a composer key is set, `init` hands this skeleton to the
|
|
13
|
+
* composer, which writes the real draft.
|
|
14
|
+
*/
|
|
1
15
|
import type { VisualStyle } from "./visual-styles.js";
|
|
2
16
|
export interface StoryboardDraft {
|
|
3
17
|
storyboardMd: string;
|
|
@@ -139,7 +139,7 @@ export interface BeatCues {
|
|
|
139
139
|
*/
|
|
140
140
|
motion?: string;
|
|
141
141
|
/**
|
|
142
|
-
* Video-provider override for this beat (seedance|
|
|
142
|
+
* Video-provider override for this beat (seedance|grok|kling|runway|omni).
|
|
143
143
|
* Use to pin a face-visible keyframe to a provider that accepts it (e.g.
|
|
144
144
|
* `provider: runway` — Seedance's likeness filter rejects face i2v inputs).
|
|
145
145
|
*/
|
|
@@ -1,14 +1,19 @@
|
|
|
1
|
-
import type
|
|
1
|
+
import { type TextGenerator } from "@vibeframe/ai-providers";
|
|
2
2
|
import { type ComposerProvider } from "./composer-resolve.js";
|
|
3
3
|
import { type StoryboardValidationResult } from "./storyboard-edit.js";
|
|
4
|
-
export type StoryboardRevisionChat = (messages: AgentMessage[]) => Promise<string>;
|
|
5
4
|
export interface StoryboardRevisionOptions {
|
|
6
5
|
projectDir: string;
|
|
7
6
|
request: string;
|
|
8
7
|
durationSec?: number;
|
|
9
8
|
composer?: ComposerProvider;
|
|
10
9
|
dryRun?: boolean;
|
|
11
|
-
|
|
10
|
+
/**
|
|
11
|
+
* "draft" writes a storyboard for `request` (a brief) on top of the
|
|
12
|
+
* skeleton `vibe init --from` scaffolds, instead of editing an authored one.
|
|
13
|
+
*/
|
|
14
|
+
mode?: "revise" | "draft";
|
|
15
|
+
/** Overrides the composer's text generator (tests). */
|
|
16
|
+
generator?: TextGenerator;
|
|
12
17
|
}
|
|
13
18
|
export interface StoryboardRevisionResult {
|
|
14
19
|
schemaVersion: "1";
|
|
@@ -7,8 +7,6 @@
|
|
|
7
7
|
import { type VideoGenerator, type VideoJob } from "@vibeframe/ai-providers";
|
|
8
8
|
/** Env var holding each video provider's key. */
|
|
9
9
|
export declare const VIDEO_PROVIDER_ENV: Readonly<Record<string, string>>;
|
|
10
|
-
/** `fal` is the old name for `seedance`. */
|
|
11
|
-
export declare function canonicalVideoProvider(provider: string): string;
|
|
12
10
|
/** A video generator for `provider`, with the given key or the configured one. */
|
|
13
11
|
export declare function openVideoGenerator(provider: string, apiKey?: string): Promise<VideoGenerator>;
|
|
14
12
|
/**
|
|
@@ -12,7 +12,7 @@ import { type ProviderErrorKind, type VideoJob, type VideoJobState } from "@vibe
|
|
|
12
12
|
export interface VideoGenerateOptions {
|
|
13
13
|
prompt: string;
|
|
14
14
|
/** Default: the configured or first available video provider. */
|
|
15
|
-
provider?: "grok" | "runway" | "kling" | "
|
|
15
|
+
provider?: "grok" | "runway" | "kling" | "seedance" | "omni";
|
|
16
16
|
image?: string;
|
|
17
17
|
/** Ending frame for providers that interpolate between two frames. */
|
|
18
18
|
endImage?: string;
|
|
@@ -25,7 +25,6 @@ export interface VideoGenerateOptions {
|
|
|
25
25
|
mode?: string;
|
|
26
26
|
negative?: string;
|
|
27
27
|
resolution?: string;
|
|
28
|
-
veoModel?: string;
|
|
29
28
|
runwayModel?: string;
|
|
30
29
|
seedanceModel?: string;
|
|
31
30
|
grokModel?: string;
|
|
@@ -42,8 +41,6 @@ export interface VideoGenerateOptions {
|
|
|
42
41
|
onSubmitted?: (job: VideoJob) => void | Promise<void>;
|
|
43
42
|
/** Called after every poll while waiting. */
|
|
44
43
|
onProgress?: (state: VideoJobState) => void;
|
|
45
|
-
/** Veo only: `allow_all` or `allow_adult`. */
|
|
46
|
-
personGeneration?: string;
|
|
47
44
|
}
|
|
48
45
|
export interface VideoGenerateResult {
|
|
49
46
|
success: boolean;
|
|
@@ -96,7 +93,7 @@ export interface VideoCancelResult {
|
|
|
96
93
|
}
|
|
97
94
|
export declare function executeVideoCancel(options: VideoCancelOptions): Promise<VideoCancelResult>;
|
|
98
95
|
export interface VideoExtendOptions {
|
|
99
|
-
/** The task ID of the video to extend
|
|
96
|
+
/** The task ID of the video to extend. */
|
|
100
97
|
videoId: string;
|
|
101
98
|
/** Default: kling. */
|
|
102
99
|
provider?: string;
|
|
@@ -104,7 +101,6 @@ export interface VideoExtendOptions {
|
|
|
104
101
|
prompt?: string;
|
|
105
102
|
duration?: number;
|
|
106
103
|
negative?: string;
|
|
107
|
-
veoModel?: string;
|
|
108
104
|
output?: string;
|
|
109
105
|
wait?: boolean;
|
|
110
106
|
apiKey?: string;
|
|
@@ -1,8 +1,7 @@
|
|
|
1
1
|
/**
|
|
2
2
|
* @module generate/thumbnail
|
|
3
|
-
* @description `vibe generate thumbnail` —
|
|
4
|
-
* best-frame extraction from video via Gemini analysis.
|
|
5
|
-
* `generate.ts` in v0.69 (Plan G Phase 2).
|
|
3
|
+
* @description `vibe generate thumbnail` — OpenAI image generation OR
|
|
4
|
+
* best-frame extraction from video via Gemini analysis.
|
|
6
5
|
*/
|
|
7
6
|
import type { Command } from "commander";
|
|
8
7
|
export declare function registerThumbnailCommand(parent: Command): void;
|
|
@@ -2,7 +2,7 @@
|
|
|
2
2
|
* @module generate/video-extend
|
|
3
3
|
* @description `vibe generate video-extend` (hidden) — extend a generated
|
|
4
4
|
* video from its last frame, on any provider that can (Kling, Grok classic,
|
|
5
|
-
* Gemini Omni
|
|
5
|
+
* and Gemini Omni).
|
|
6
6
|
*/
|
|
7
7
|
import type { Command } from "commander";
|
|
8
8
|
export declare function registerVideoExtendCommand(parent: Command): void;
|
|
@@ -1,8 +1,8 @@
|
|
|
1
1
|
/**
|
|
2
2
|
* @module generate/video
|
|
3
3
|
* @description `vibe generate video` (alias `vid`) — multi-provider video
|
|
4
|
-
* generation (Seedance via fal.ai, Grok, Kling, Runway, Gemini Omni
|
|
5
|
-
*
|
|
4
|
+
* generation (Seedance via fal.ai, Grok, Kling, Runway, and Gemini Omni).
|
|
5
|
+
* Validation, provider choice, and the dry run live here;
|
|
6
6
|
* generation itself is `executeVideoGenerate`, the same executor the MCP
|
|
7
7
|
* tool and builds use.
|
|
8
8
|
*/
|
|
@@ -5,13 +5,13 @@
|
|
|
5
5
|
*
|
|
6
6
|
* Commands:
|
|
7
7
|
* generate image - Generate image (Gemini, OpenAI, Grok, Runway)
|
|
8
|
-
* generate video - Generate video (Seedance, Grok, Kling, Runway, Omni
|
|
8
|
+
* generate video - Generate video (Seedance, Grok, Kling, Runway, Omni)
|
|
9
9
|
* generate sound-effect - Sound effects (ElevenLabs)
|
|
10
10
|
* generate music - Music generation (ElevenLabs default, Replicate MusicGen)
|
|
11
11
|
* generate motion - Standalone motion assets (Claude/Gemini + Remotion)
|
|
12
12
|
* generate thumbnail - Thumbnail generation/extraction
|
|
13
13
|
* generate video-cancel - Cancel video generation (Grok/Runway)
|
|
14
|
-
* generate video-extend - Extend video (Kling
|
|
14
|
+
* generate video-extend - Extend video (Kling, Grok, Omni)
|
|
15
15
|
*
|
|
16
16
|
* @dependencies OpenAI, Gemini, Runway, Kling, ElevenLabs, Replicate, Claude, FFmpeg
|
|
17
17
|
*/
|
package/dist/config/index.d.ts
CHANGED
|
@@ -87,15 +87,10 @@ export interface SaveConfigOptions {
|
|
|
87
87
|
}
|
|
88
88
|
/** Save configuration to the chosen scope. Default scope is "user". */
|
|
89
89
|
export declare function saveConfig(config: VibeConfig, options?: SaveConfigOptions): Promise<void>;
|
|
90
|
-
/**
|
|
91
|
-
* Check if any configuration is present and the primary LLM provider has a
|
|
92
|
-
* key (in the active scope or the environment).
|
|
93
|
-
*/
|
|
94
|
-
export declare function isConfigured(options?: Pick<LoadConfigOptions, "cwd">): Promise<boolean>;
|
|
95
90
|
/**
|
|
96
91
|
* Get an API key. Auto-detects scope (project > user) and falls through to
|
|
97
92
|
* the provider's environment variable if neither config has it.
|
|
98
93
|
*/
|
|
99
94
|
export declare function getApiKeyFromConfig(providerKey: string, options?: Pick<LoadConfigOptions, "cwd">): Promise<string | undefined>;
|
|
100
|
-
export type { VibeConfig
|
|
101
|
-
export { createDefaultConfig,
|
|
95
|
+
export type { VibeConfig } from "./schema.js";
|
|
96
|
+
export { createDefaultConfig, PROVIDER_ENV_ALIASES, PROVIDER_ENV_VARS, } from "./schema.js";
|
package/dist/config/schema.d.ts
CHANGED
|
@@ -2,15 +2,9 @@
|
|
|
2
2
|
* Configuration schema for VibeFrame CLI
|
|
3
3
|
* Stored at ~/.vibeframe/config.yaml by default.
|
|
4
4
|
*/
|
|
5
|
-
export type LLMProvider = "claude" | "openai" | "gemini" | "ollama" | "xai" | "openrouter" | "evolink";
|
|
6
5
|
export interface VibeConfig {
|
|
7
6
|
/** Config file version */
|
|
8
7
|
version: string;
|
|
9
|
-
/** LLM provider settings */
|
|
10
|
-
llm: {
|
|
11
|
-
/** Primary LLM provider for AI commands */
|
|
12
|
-
provider: LLMProvider;
|
|
13
|
-
};
|
|
14
8
|
/** API keys for various providers */
|
|
15
9
|
providers: {
|
|
16
10
|
anthropic?: string;
|
|
@@ -23,8 +17,6 @@ export interface VibeConfig {
|
|
|
23
17
|
imgbb?: string;
|
|
24
18
|
replicate?: string;
|
|
25
19
|
xai?: string;
|
|
26
|
-
openrouter?: string;
|
|
27
|
-
evolink?: string;
|
|
28
20
|
};
|
|
29
21
|
/** Default settings for new projects */
|
|
30
22
|
defaults: {
|
|
@@ -32,8 +24,8 @@ export interface VibeConfig {
|
|
|
32
24
|
exportQuality: "draft" | "standard" | "high" | "ultra";
|
|
33
25
|
/** Default provider for image generation */
|
|
34
26
|
imageProvider?: "gemini" | "openai" | "grok";
|
|
35
|
-
/** Default provider for video generation
|
|
36
|
-
videoProvider?: "seedance" | "
|
|
27
|
+
/** Default provider for video generation */
|
|
28
|
+
videoProvider?: "seedance" | "grok" | "kling" | "runway" | "omni";
|
|
37
29
|
/** Default provider for storyboard analysis */
|
|
38
30
|
storyboardProvider?: "claude" | "openai" | "gemini";
|
|
39
31
|
/** Default voice for TTS */
|
|
@@ -51,14 +43,7 @@ export interface VibeConfig {
|
|
|
51
43
|
publicBaseUrl?: string;
|
|
52
44
|
};
|
|
53
45
|
};
|
|
54
|
-
/** REPL settings */
|
|
55
|
-
repl: {
|
|
56
|
-
/** Auto-save project after each command */
|
|
57
|
-
autoSave: boolean;
|
|
58
|
-
};
|
|
59
46
|
}
|
|
60
|
-
/** Provider display names */
|
|
61
|
-
export declare const PROVIDER_NAMES: Record<LLMProvider, string>;
|
|
62
47
|
export declare const PROVIDER_ENV_VARS: Record<string, string>;
|
|
63
48
|
export declare const PROVIDER_ENV_ALIASES: Record<string, readonly string[]>;
|
|
64
49
|
/** Default configuration */
|
package/dist/index.d.ts
CHANGED
|
@@ -1,6 +1,3 @@
|
|
|
1
1
|
#!/usr/bin/env node
|
|
2
2
|
export { Project, generateId, type ProjectFile } from "./engine/index.js";
|
|
3
|
-
export {
|
|
4
|
-
export { loadConfig, saveConfig, isConfigured, type VibeConfig } from "./config/index.js";
|
|
5
|
-
export { AgentExecutor, ToolRegistry, ConversationMemory } from "./agent/index.js";
|
|
6
|
-
export type { AgentConfig, AgentContext, AgentMessage, ToolCall, ToolResult, LLMAdapter, } from "./agent/index.js";
|
|
3
|
+
export { loadConfig, saveConfig, type VibeConfig } from "./config/index.js";
|