@amaster.ai/pi-video-gen 0.1.8 → 0.1.10
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/README.md +57 -111
- package/dist/config.d.ts.map +1 -1
- package/dist/config.js +9 -0
- package/dist/config.js.map +1 -1
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +217 -40
- package/dist/index.js.map +1 -1
- package/dist/jobs/store.d.ts.map +1 -1
- package/dist/jobs/store.js +5 -7
- package/dist/jobs/store.js.map +1 -1
- package/dist/prompt.d.ts +28 -0
- package/dist/prompt.d.ts.map +1 -0
- package/dist/prompt.js +112 -0
- package/dist/prompt.js.map +1 -0
- package/dist/providers/ark.d.ts +2 -2
- package/dist/providers/ark.d.ts.map +1 -1
- package/dist/providers/ark.js +47 -4
- package/dist/providers/ark.js.map +1 -1
- package/dist/providers/dashscope.js +2 -2
- package/dist/providers/dashscope.js.map +1 -1
- package/dist/providers/kling.js +2 -2
- package/dist/providers/kling.js.map +1 -1
- package/dist/providers/minimax.js +2 -2
- package/dist/providers/minimax.js.map +1 -1
- package/dist/providers/models.d.ts.map +1 -1
- package/dist/providers/models.js +9 -0
- package/dist/providers/models.js.map +1 -1
- package/dist/providers/newapi.js +2 -2
- package/dist/providers/newapi.js.map +1 -1
- package/dist/providers/openrouter.js +2 -2
- package/dist/providers/openrouter.js.map +1 -1
- package/dist/providers/request.d.ts +11 -1
- package/dist/providers/request.d.ts.map +1 -1
- package/dist/providers/request.js +56 -0
- package/dist/providers/request.js.map +1 -1
- package/dist/providers/task.d.ts +4 -0
- package/dist/providers/task.d.ts.map +1 -1
- package/dist/providers/task.js +10 -2
- package/dist/providers/task.js.map +1 -1
- package/dist/render.d.ts +6 -4
- package/dist/render.d.ts.map +1 -1
- package/dist/render.js +53 -11
- package/dist/render.js.map +1 -1
- package/dist/types.d.ts +49 -0
- package/dist/types.d.ts.map +1 -1
- package/package.json +5 -5
- package/skills/video-gen/SKILL.md +90 -171
- package/skills/video-gen/evals.json +65 -0
- package/skills/video-gen/references/seedance-personas.json +72626 -0
- package/skills/video-gen/references/seedance-public-material-library.md +269 -0
- package/skills/video-gen/scripts/search-seedance-personas.mjs +75 -0
package/dist/index.js
CHANGED
|
@@ -12,13 +12,14 @@ import { AmbiguousSubmitError, errorMessageForUser, missingKeyError, providerLab
|
|
|
12
12
|
import { resolveFfmpeg, resolveFfprobe, resolveGplFfmpeg } from './ffmpeg.js';
|
|
13
13
|
import { readApprovedFrame } from './frame-input.js';
|
|
14
14
|
import { ActiveJobs, assertSafeId, ensureSingleJobDir, loadRenderJob, loadSingleJob, newJobId, readJsonFile, resolveJobDirInsideOutput, saveRenderJob, saveSingleJob, singleJobDir, writeJsonAtomic, } from './jobs/store.js';
|
|
15
|
+
import { assemblePrompt, validateFilmPrompt, validateShotPrompt } from './prompt.js';
|
|
15
16
|
import { arkAdapter } from './providers/ark.js';
|
|
16
17
|
import { dashscopeAdapter } from './providers/dashscope.js';
|
|
17
18
|
import { klingAdapter } from './providers/kling.js';
|
|
18
19
|
import { minimaxAdapter } from './providers/minimax.js';
|
|
19
20
|
import { newapiAdapter } from './providers/newapi.js';
|
|
20
21
|
import { openrouterAdapter } from './providers/openrouter.js';
|
|
21
|
-
import { requestFingerprint } from './providers/request.js';
|
|
22
|
+
import { normalizeReferenceAssets, referenceAssetPreflightError, requestFingerprint, } from './providers/request.js';
|
|
22
23
|
import { CancelledError, pollTask, RateLimiter } from './providers/task.js';
|
|
23
24
|
import { runRender } from './render.js';
|
|
24
25
|
import { hasCjkFont } from './text-layer.js';
|
|
@@ -64,12 +65,76 @@ function boundDetails(details) {
|
|
|
64
65
|
return { truncated: true };
|
|
65
66
|
}
|
|
66
67
|
}
|
|
68
|
+
/**
|
|
69
|
+
* Parse `--key value` / `--key "quoted value"` flags for `/video-gen generate`.
|
|
70
|
+
* Quoted values may escape their delimiter quote (and backslash) with `\`.
|
|
71
|
+
*/
|
|
72
|
+
function parseGenerateFlags(text) {
|
|
73
|
+
const flags = {};
|
|
74
|
+
const re = /--([a-z][a-z-]*)\s+("((?:[^"\\]|\\.)*)"|'((?:[^'\\]|\\.)*)'|(\S+))/g;
|
|
75
|
+
let covered = 0;
|
|
76
|
+
for (let m = re.exec(text); m !== null; m = re.exec(text)) {
|
|
77
|
+
const gap = text.slice(covered, m.index).trim();
|
|
78
|
+
if (gap !== '') {
|
|
79
|
+
return { error: `Unrecognized text "${gap}" — use --key "value" flags.` };
|
|
80
|
+
}
|
|
81
|
+
const quoted = m[3] ?? m[4];
|
|
82
|
+
const bare = m[5];
|
|
83
|
+
// A bare value starting with a quote char means an unterminated quote — the
|
|
84
|
+
// quoted alternative needed a closer, so `--visuals "wide` must not slide
|
|
85
|
+
// through as the literal value `"wide` into a paid request.
|
|
86
|
+
if (bare !== undefined && (bare.startsWith('"') || bare.startsWith("'"))) {
|
|
87
|
+
return {
|
|
88
|
+
error: `Unterminated quoted value for --${m[1]} (${bare}…). Close the quote, or escape it as \\${bare[0]}.`,
|
|
89
|
+
};
|
|
90
|
+
}
|
|
91
|
+
flags[m[1]] = quoted !== undefined ? quoted.replace(/\\(["'\\])/g, '$1') : (bare ?? '');
|
|
92
|
+
covered = m.index + m[0].length;
|
|
93
|
+
}
|
|
94
|
+
const tail = text.slice(covered).trim();
|
|
95
|
+
if (tail !== '') {
|
|
96
|
+
return { error: `Unrecognized text "${tail}" — use --key "value" flags.` };
|
|
97
|
+
}
|
|
98
|
+
return { flags };
|
|
99
|
+
}
|
|
67
100
|
/** Capability-driven schema for video_generate (mirrors pi-image-gen's approach). */
|
|
68
101
|
function buildGenerateParams(caps) {
|
|
69
102
|
return Type.Object({
|
|
70
|
-
prompt: Type.
|
|
71
|
-
|
|
72
|
-
|
|
103
|
+
prompt: Type.Optional(Type.Object({
|
|
104
|
+
scene: Type.Optional(Type.String({
|
|
105
|
+
description: 'Setting of the clip. REQUIRED when no firstFrame is passed (text-to-video).',
|
|
106
|
+
})),
|
|
107
|
+
visuals: Type.String({
|
|
108
|
+
description: 'Camera, framing, composition (e.g. "Slow push-in from medium shot to close-up, shallow depth of field").',
|
|
109
|
+
}),
|
|
110
|
+
action: Type.String({ description: 'In-frame action/movement.' }),
|
|
111
|
+
effects: Type.Optional(Type.String({
|
|
112
|
+
description: 'Time-varying visuals a static frame cannot carry: transformations, lighting shifts, particles, atmosphere.',
|
|
113
|
+
})),
|
|
114
|
+
audio: Type.Optional(Type.String({
|
|
115
|
+
description: 'Audio cues when the active model has nativeAudio (e.g. "[Sound Effect] rain; [Speaker] Alice (soft): line").',
|
|
116
|
+
})),
|
|
117
|
+
visibleCharacters: Type.Optional(Type.Array(Type.String(), {
|
|
118
|
+
description: 'Ids of characters (from the characters param) appearing in this clip.',
|
|
119
|
+
})),
|
|
120
|
+
}, {
|
|
121
|
+
description: 'Structured per-shot prompt. Fields are assembled into labeled sections ([Scene]/[Visuals]/[Action]/[Effects]/[Audio]) — write content, not a pre-joined string. Required for a fresh generation; omit when resuming an interrupted job via jobId.',
|
|
122
|
+
})),
|
|
123
|
+
style: Type.Optional(Type.String({
|
|
124
|
+
description: 'Film-level look: genre, quality, render texture (e.g. "cinematic, 8K, shallow DoF, film grain"). REQUIRED when no firstFrame is passed.',
|
|
125
|
+
})),
|
|
126
|
+
characters: Type.Optional(Type.Array(Type.Object({
|
|
127
|
+
id: Type.String(),
|
|
128
|
+
description: Type.String({ description: 'Appearance + outfit.' }),
|
|
129
|
+
}), {
|
|
130
|
+
description: 'Reusable character registry; shots inline a character via prompt.visibleCharacters.',
|
|
131
|
+
})),
|
|
132
|
+
consistency: Type.Optional(Type.String({
|
|
133
|
+
description: 'Consistency directive appended to the prompt (e.g. "Face, hair and outfit stay identical throughout, no morphing or drift").',
|
|
134
|
+
})),
|
|
135
|
+
negative: Type.Optional(Type.String({
|
|
136
|
+
description: 'Negative directive (e.g. "no text, watermarks, or subtitles").',
|
|
137
|
+
})),
|
|
73
138
|
firstFrame: Type.Optional(Type.String({
|
|
74
139
|
description: 'Path to a regular png/jpg/webp first-frame image inside the session cwd. The path may be absolute or relative; symlinks and paths outside cwd are rejected.',
|
|
75
140
|
})),
|
|
@@ -80,6 +145,18 @@ function buildGenerateParams(caps) {
|
|
|
80
145
|
})),
|
|
81
146
|
}
|
|
82
147
|
: {}),
|
|
148
|
+
...(caps?.referenceAssetModalities?.length
|
|
149
|
+
? {
|
|
150
|
+
referenceAssets: Type.Optional(Type.Array(Type.Object({
|
|
151
|
+
modality: StringEnum(caps.referenceAssetModalities),
|
|
152
|
+
assetId: Type.String({
|
|
153
|
+
description: 'Asset ID from the current provider account/project. Accepts asset-... or asset://asset-....',
|
|
154
|
+
}),
|
|
155
|
+
}), {
|
|
156
|
+
description: 'Provider-managed trusted assets in prompt-numbering order. In the prompt refer to Image 1, Video 1, or Audio 1; never write the Asset ID.',
|
|
157
|
+
})),
|
|
158
|
+
}
|
|
159
|
+
: {}),
|
|
83
160
|
durationSec: Type.Optional(Type.Integer({
|
|
84
161
|
...(caps ? { minimum: caps.durations[0], maximum: caps.durations[1] } : {}),
|
|
85
162
|
description: caps
|
|
@@ -151,20 +228,27 @@ export default function piVideoGenExtension(pi) {
|
|
|
151
228
|
if (!resolved.provider.apiKey) {
|
|
152
229
|
return errResult(missingKeyError(resolved.provider.style, ENV_VAR_BY_STYLE[resolved.provider.style], resolved.provider.apiKeyPath).message);
|
|
153
230
|
}
|
|
154
|
-
//
|
|
155
|
-
//
|
|
156
|
-
|
|
157
|
-
const
|
|
158
|
-
|
|
159
|
-
|
|
160
|
-
|
|
161
|
-
|
|
162
|
-
|
|
163
|
-
|
|
164
|
-
|
|
165
|
-
|
|
166
|
-
|
|
167
|
-
if (toolParams.
|
|
231
|
+
// Trim-normalized once — validation, capability checks and the submit
|
|
232
|
+
// mapping must all agree on whether a frame is present.
|
|
233
|
+
const firstFrame = toolParams.firstFrame?.trim();
|
|
234
|
+
const lastFrame = toolParams.lastFrame?.trim();
|
|
235
|
+
let referenceAssets = [];
|
|
236
|
+
try {
|
|
237
|
+
referenceAssets = normalizeReferenceAssets(toolParams.referenceAssets);
|
|
238
|
+
}
|
|
239
|
+
catch (error) {
|
|
240
|
+
return errResult(errorMessageForUser(error));
|
|
241
|
+
}
|
|
242
|
+
// Structured prompt validation happens only on fresh submits — the resume
|
|
243
|
+
// path (jobId) re-polls a frozen request and never re-reads the prompt.
|
|
244
|
+
if (!toolParams.jobId) {
|
|
245
|
+
const promptError = validateFilmPrompt(toolParams, 'video_generate') ??
|
|
246
|
+
validateShotPrompt(toolParams, toolParams.prompt, { hasFirstFrame: !!firstFrame }, 'prompt');
|
|
247
|
+
if (promptError) {
|
|
248
|
+
return errResult(promptError);
|
|
249
|
+
}
|
|
250
|
+
}
|
|
251
|
+
if (lastFrame && !caps.supportsFirstLastFrame) {
|
|
168
252
|
return errResult(`The active model (${resolved.entry.id}) does not support last-frame interpolation. Remove lastFrame, or switch models (/video-gen models).`);
|
|
169
253
|
}
|
|
170
254
|
if (toolParams.durationSec != null &&
|
|
@@ -176,15 +260,23 @@ export default function piVideoGenExtension(pi) {
|
|
|
176
260
|
}
|
|
177
261
|
return errResult(`durationSec must be ${caps.durations[0]}-${caps.durations[1]}s for ${resolved.entry.id} (got ${toolParams.durationSec}).`);
|
|
178
262
|
}
|
|
263
|
+
// Reject empty-string ratio before the truthy capability check — "" would
|
|
264
|
+
// skip the check yet survive `??` into the fingerprint and paid request.
|
|
265
|
+
if (toolParams.aspectRatio !== undefined && toolParams.aspectRatio.trim() === '') {
|
|
266
|
+
return errResult('aspectRatio must be a non-empty string when passed (e.g. "16:9").');
|
|
267
|
+
}
|
|
179
268
|
if (toolParams.aspectRatio && !caps.aspectRatios.includes(toolParams.aspectRatio)) {
|
|
180
269
|
return errResult(`aspectRatio must be one of ${caps.aspectRatios.join(', ')} for ${resolved.entry.id} (got ${toolParams.aspectRatio}).`);
|
|
181
270
|
}
|
|
182
|
-
const
|
|
183
|
-
|
|
184
|
-
|
|
185
|
-
|
|
186
|
-
|
|
187
|
-
|
|
271
|
+
const referenceError = referenceAssetPreflightError({
|
|
272
|
+
providerStyle: resolved.provider.style,
|
|
273
|
+
modelId: resolved.entry.id,
|
|
274
|
+
capabilities: caps,
|
|
275
|
+
referenceAssets,
|
|
276
|
+
localImageReferences: (firstFrame ? 1 : 0) + (lastFrame ? 1 : 0) + (toolParams.referenceImages?.length ?? 0),
|
|
277
|
+
});
|
|
278
|
+
if (referenceError)
|
|
279
|
+
return errResult(referenceError);
|
|
188
280
|
const outputDir = resolveOutputDir(settings, ctx.cwd);
|
|
189
281
|
// Resume path: a job id means "keep polling the persisted handle", never re-submit.
|
|
190
282
|
if (toolParams.jobId) {
|
|
@@ -260,6 +352,22 @@ export default function piVideoGenExtension(pi) {
|
|
|
260
352
|
}
|
|
261
353
|
const jobId = newJobId('gen');
|
|
262
354
|
const jobDir = ensureSingleJobDir(outputDir, jobId);
|
|
355
|
+
// Map tool params → internal params, applying model defaults. (A raw cast
|
|
356
|
+
// here silently DROPPED firstFrame/lastFrame and defaulted resolution,
|
|
357
|
+
// duration, ratio and audio — turning paid requests into silent t2v.)
|
|
358
|
+
const params = {
|
|
359
|
+
// prompt is present here: fresh submits were validated above, and the
|
|
360
|
+
// resume branch (jobId) has already returned.
|
|
361
|
+
prompt: assemblePrompt(toolParams, toolParams.prompt),
|
|
362
|
+
firstFramePath: firstFrame ? resolve(ctx.cwd, firstFrame) : undefined,
|
|
363
|
+
lastFramePath: lastFrame ? resolve(ctx.cwd, lastFrame) : undefined,
|
|
364
|
+
referenceImagePaths: toolParams.referenceImages?.map((p) => resolve(ctx.cwd, p)),
|
|
365
|
+
referenceAssets,
|
|
366
|
+
durationSec: toolParams.durationSec ?? resolved.entry.defaultDurationSec,
|
|
367
|
+
aspectRatio: toolParams.aspectRatio ?? resolved.entry.defaultAspectRatio,
|
|
368
|
+
resolution: resolved.entry.defaultResolution,
|
|
369
|
+
generateAudio: caps.nativeAudio,
|
|
370
|
+
};
|
|
263
371
|
params.requestId = jobId;
|
|
264
372
|
const release = activeJobs.acquire(jobDir);
|
|
265
373
|
try {
|
|
@@ -503,7 +611,7 @@ export default function piVideoGenExtension(pi) {
|
|
|
503
611
|
];
|
|
504
612
|
if (resolved) {
|
|
505
613
|
const c = resolved.entry.capabilities;
|
|
506
|
-
lines.push(`Provider: ${resolved.provider.style} (key ${resolved.provider.apiKey ? 'ready' : 'MISSING'})`, `Durations: ${c.durations[0]}-${c.durations[1]}s; Resolutions: ${c.resolutions.join('/')}; Aspect ratios: ${c.aspectRatios.join(', ')}`, `Native audio: ${c.nativeAudio ? 'yes' : 'no'}; First+last frame: ${c.supportsFirstLastFrame ? 'yes' : 'no'}; Max reference images: ${c.maxReferenceImages}`);
|
|
614
|
+
lines.push(`Provider: ${resolved.provider.style} (key ${resolved.provider.apiKey ? 'ready' : 'MISSING'})`, `Durations: ${c.durations[0]}-${c.durations[1]}s; Resolutions: ${c.resolutions.join('/')}; Aspect ratios: ${c.aspectRatios.join(', ')}`, `Native audio: ${c.nativeAudio ? 'yes' : 'no'}; First+last frame: ${c.supportsFirstLastFrame ? 'yes' : 'no'}; Max reference images: ${c.maxReferenceImages}`, `Trusted asset references: ${resolved.provider.style === 'ark' ? c.referenceAssetModalities?.join(', ') || 'none' : 'none'}; Max videos: ${c.maxReferenceVideos ?? 0}; Max audios: ${c.maxReferenceAudios ?? 0}`);
|
|
507
615
|
}
|
|
508
616
|
lines.push('Registered models:');
|
|
509
617
|
for (const m of info.models) {
|
|
@@ -512,18 +620,25 @@ export default function piVideoGenExtension(pi) {
|
|
|
512
620
|
return lines.join('\n');
|
|
513
621
|
};
|
|
514
622
|
const registerTools = () => {
|
|
515
|
-
const
|
|
623
|
+
const active = resolveModel(settings);
|
|
624
|
+
const caps = active?.entry.capabilities ?? null;
|
|
625
|
+
const schemaCaps = caps && active?.provider.style !== 'ark'
|
|
626
|
+
? { ...caps, referenceAssetModalities: undefined }
|
|
627
|
+
: caps;
|
|
516
628
|
pi.registerTool({
|
|
517
629
|
name: 'video_generate',
|
|
518
630
|
label: 'Generate Video Clip',
|
|
519
|
-
description: 'Generate a single short video clip (one shot) from a
|
|
520
|
-
parameters: buildGenerateParams(
|
|
521
|
-
promptSnippet: 'Generate one short video clip (paid, minutes) via the active video model',
|
|
631
|
+
description: 'Generate a single short video clip (one shot) from a structured prompt, optionally anchored by first/last frames or provider-managed trusted assets. Paid, slow (minutes per clip). For multi-shot videos, use the video-gen skill workflow instead of calling this repeatedly.',
|
|
632
|
+
parameters: buildGenerateParams(schemaCaps),
|
|
633
|
+
promptSnippet: 'Generate one short video clip (paid, minutes) from a structured prompt via the active video model',
|
|
522
634
|
promptGuidelines: [
|
|
523
635
|
"Before composing prompts for a video task, call video_capabilities to learn the active model's duration range, aspect ratios, audio support, and first/last-frame support — do not assume.",
|
|
636
|
+
'Fill the structured prompt fields; never a pre-joined string. visuals + action are always required; style + scene are required when no firstFrame anchors the clip; use effects for transformations or lighting shifts a static frame cannot carry.',
|
|
524
637
|
'Video generation is paid and slow. State the expected clip count and duration to the user and get explicit confirmation before the first call.',
|
|
525
638
|
'Only pass lastFrame when the user needs first+last-frame interpolation and the active model supports it.',
|
|
526
|
-
'
|
|
639
|
+
'For Seedance references containing recognizable real people, use a preset-avatar or authorized-person Asset ID from the current account/project. Pass it through referenceAssets and refer to it in the prompt as Image 1, Video 1, or Audio 1 — never as the Asset ID.',
|
|
640
|
+
'Treat user approval as scoped to the exact asset list, provider/account context, model, clip count, and duration; ask again when any of those change.',
|
|
641
|
+
'If a call is interrupted, resume with the returned jobId instead of submitting a new task (avoids double billing); prompt is not needed on resume.',
|
|
527
642
|
'If submit is reported as ambiguous, do not start another generation until the provider console confirms that no paid task exists.',
|
|
528
643
|
],
|
|
529
644
|
async execute(_toolCallId, params, signal, onUpdate, ctx) {
|
|
@@ -563,7 +678,7 @@ export default function piVideoGenExtension(pi) {
|
|
|
563
678
|
pi.registerTool({
|
|
564
679
|
name: 'video_render',
|
|
565
680
|
label: 'Render Multi-Shot Video',
|
|
566
|
-
description: 'Render a multi-shot video from <jobDir>/render-input.json:
|
|
681
|
+
description: 'Render a multi-shot video from <jobDir>/render-input.json: each shot requires a local first frame or at least one provider-managed trusted asset. Submits one paid task per shot (resuming persisted handles on rerun), downloads clips, and concatenates them into final_video.mp4.',
|
|
567
682
|
parameters: Type.Object({
|
|
568
683
|
renderSpecPath: Type.String({
|
|
569
684
|
description: 'Path to <jobDir>/render-input.json. The parent directory must live under the video-gen output dir and acts as the (immutable) job. Rerunning the same path resumes; revisions require a NEW job directory.',
|
|
@@ -574,8 +689,9 @@ export default function piVideoGenExtension(pi) {
|
|
|
574
689
|
}),
|
|
575
690
|
promptSnippet: 'Render a prepared multi-shot video spec (paid, long-running) into a final mp4',
|
|
576
691
|
promptGuidelines: [
|
|
577
|
-
'Call ONLY after the user explicitly confirmed rendering: frames ready, shot count and cost magnitude stated.',
|
|
578
|
-
'
|
|
692
|
+
'Call ONLY after the user explicitly confirmed rendering: exact local frames/trusted assets ready, shot count, durations, provider/account context, and cost magnitude stated.',
|
|
693
|
+
'For each shot, either generate required local frames via image_generate and record their returned paths, or pass current-account provider assets in referenceAssets. Recognizable real-person references sent to Seedance must use preset-avatar or authorized-person assets.',
|
|
694
|
+
'render-input.json carries structured prompts: film-level style/characters/consistency/negative, per-shot prompt.{scene,visuals,action,effects,audio,visibleCharacters} — the plugin assembles the labeled prompt text; never pre-join a prompt string.',
|
|
579
695
|
'The spec is immutable per job directory: rerunning the same path resumes identical input; revisions go in a NEW job directory.',
|
|
580
696
|
'Interrupting stops locally only — remote tasks may keep billing; rerun the same spec path to resume after they finish.',
|
|
581
697
|
],
|
|
@@ -586,7 +702,7 @@ export default function piVideoGenExtension(pi) {
|
|
|
586
702
|
pi.registerTool({
|
|
587
703
|
name: 'video_capabilities',
|
|
588
704
|
label: 'Video Model Capabilities',
|
|
589
|
-
description: "Read-only: list the active video model's capabilities (duration range, resolutions, aspect ratios, native audio, first/last-frame support) and the registered models. Call before composing video prompts or shot books.",
|
|
705
|
+
description: "Read-only: list the active video model's capabilities (duration range, resolutions, aspect ratios, native audio, first/last-frame support, trusted asset modalities) and the registered models. Call before composing video prompts or shot books.",
|
|
590
706
|
parameters: Type.Object({}),
|
|
591
707
|
promptSnippet: 'Show active video model capabilities and registered models',
|
|
592
708
|
async execute() {
|
|
@@ -599,17 +715,78 @@ export default function piVideoGenExtension(pi) {
|
|
|
599
715
|
registerTools();
|
|
600
716
|
});
|
|
601
717
|
pi.registerCommand('video-gen', {
|
|
602
|
-
description: 'pi-video-gen: /video-gen [generate
|
|
718
|
+
description: 'pi-video-gen: /video-gen [generate --visuals ".." --action ".." [--style .. --scene .. --asset-images asset-...]|render <spec>|compose <spec>|recover <jobId>|models|reload|doctor]',
|
|
603
719
|
handler: async (args, ctx) => {
|
|
604
720
|
const tokens = (args ?? '').trim().split(/\s+/).filter(Boolean);
|
|
605
721
|
const sub = tokens[0];
|
|
606
722
|
if (sub === 'generate') {
|
|
607
|
-
const
|
|
608
|
-
if (
|
|
609
|
-
ctx.ui.notify('Usage: /video-gen generate <
|
|
723
|
+
const parsed = parseGenerateFlags((args ?? '').trim().slice('generate'.length));
|
|
724
|
+
if ('error' in parsed || Object.keys(parsed.flags).length === 0) {
|
|
725
|
+
ctx.ui.notify(`${'error' in parsed ? `${parsed.error} ` : ''}Usage: /video-gen generate --visuals "..." --action "..." [--style "..."] [--scene "..."] [--effects "..."] [--audio "..."] [--consistency "..."] [--negative "..."] [--first-frame <path>] [--last-frame <path>] [--asset-images <id,id>] [--asset-videos <id,id>] [--asset-audios <id,id>] [--duration <sec>] [--ratio <ratio>]`, 'error');
|
|
610
726
|
return;
|
|
611
727
|
}
|
|
612
|
-
const
|
|
728
|
+
const f = parsed.flags;
|
|
729
|
+
const known = new Set([
|
|
730
|
+
'style',
|
|
731
|
+
'scene',
|
|
732
|
+
'visuals',
|
|
733
|
+
'action',
|
|
734
|
+
'effects',
|
|
735
|
+
'audio',
|
|
736
|
+
'consistency',
|
|
737
|
+
'negative',
|
|
738
|
+
'first-frame',
|
|
739
|
+
'last-frame',
|
|
740
|
+
'asset-images',
|
|
741
|
+
'asset-videos',
|
|
742
|
+
'asset-audios',
|
|
743
|
+
'duration',
|
|
744
|
+
'ratio',
|
|
745
|
+
]);
|
|
746
|
+
const unknown = Object.keys(f).filter((k) => !known.has(k));
|
|
747
|
+
if (unknown.length > 0) {
|
|
748
|
+
ctx.ui.notify(`Unknown flag(s): ${unknown.map((k) => `--${k}`).join(', ')}.`, 'error');
|
|
749
|
+
return;
|
|
750
|
+
}
|
|
751
|
+
const durationSec = f.duration !== undefined ? Number(f.duration) : undefined;
|
|
752
|
+
if (durationSec !== undefined && !Number.isInteger(durationSec)) {
|
|
753
|
+
ctx.ui.notify(`--duration must be an integer number of seconds (got "${f.duration}").`, 'error');
|
|
754
|
+
return;
|
|
755
|
+
}
|
|
756
|
+
const referenceAssets = [];
|
|
757
|
+
for (const [flag, modality] of [
|
|
758
|
+
['asset-images', 'image'],
|
|
759
|
+
['asset-videos', 'video'],
|
|
760
|
+
['asset-audios', 'audio'],
|
|
761
|
+
]) {
|
|
762
|
+
if (f[flag] === undefined)
|
|
763
|
+
continue;
|
|
764
|
+
const ids = f[flag].split(',')
|
|
765
|
+
.map((id) => id.trim())
|
|
766
|
+
.filter(Boolean);
|
|
767
|
+
if (ids.length === 0) {
|
|
768
|
+
ctx.ui.notify(`--${flag} must contain at least one Asset ID.`, 'error');
|
|
769
|
+
return;
|
|
770
|
+
}
|
|
771
|
+
referenceAssets.push(...ids.map((assetId) => ({ modality, assetId })));
|
|
772
|
+
}
|
|
773
|
+
const result = await runGenerate({
|
|
774
|
+
style: f.style,
|
|
775
|
+
consistency: f.consistency,
|
|
776
|
+
negative: f.negative,
|
|
777
|
+
prompt: {
|
|
778
|
+
scene: f.scene,
|
|
779
|
+
visuals: f.visuals ?? '',
|
|
780
|
+
action: f.action ?? '',
|
|
781
|
+
effects: f.effects,
|
|
782
|
+
audio: f.audio,
|
|
783
|
+
},
|
|
784
|
+
firstFrame: f['first-frame'],
|
|
785
|
+
lastFrame: f['last-frame'],
|
|
786
|
+
referenceAssets,
|
|
787
|
+
durationSec,
|
|
788
|
+
aspectRatio: f.ratio,
|
|
789
|
+
}, ctx, ctx.signal);
|
|
613
790
|
ctx.ui.notify(result.content[0].text, result.isError ? 'error' : 'info');
|
|
614
791
|
return;
|
|
615
792
|
}
|
|
@@ -775,7 +952,7 @@ export default function piVideoGenExtension(pi) {
|
|
|
775
952
|
ctx.ui.notify(result.content[0].text, 'info');
|
|
776
953
|
return;
|
|
777
954
|
}
|
|
778
|
-
ctx.ui.notify('pi-video-gen commands:\n /video-gen generate
|
|
955
|
+
ctx.ui.notify('pi-video-gen commands:\n /video-gen generate --visuals ".." --action ".." [--style ".." --scene ".."] Generate a single clip\n /video-gen render <spec> Render a multi-shot video\n /video-gen compose <spec> Concat clips or render an image/TTS timeline\n /video-gen recover <jobId> Resolve ambiguous shots (reset/adopt)\n /video-gen models List registered models\n /video-gen reload Reload settings\n /video-gen doctor Check environment (ffmpeg, CJK fonts, keys, image_generate, output dir)', 'info');
|
|
779
956
|
},
|
|
780
957
|
});
|
|
781
958
|
function runDoctor(ctx) {
|
package/dist/index.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"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"}
|
package/dist/jobs/store.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"store.d.ts","sourceRoot":"","sources":["../../src/jobs/store.ts"],"names":[],"mappings":"AAaA,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,aAAa,CAAC;AAgBpD,wBAAgB,YAAY,CAAC,EAAE,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM,GAAG,IAAI,CAO3D;AAED,wBAAgB,QAAQ,CAAC,MAAM,EAAE,MAAM,GAAG,MAAM,CAI/C;AAED,MAAM,MAAM,eAAe,GAAG;IAC5B,gGAAgG;IAChG,KAAK,EAAE,SAAS,GAAG,WAAW,GAAG,MAAM,GAAG,QAAQ,GAAG,iBAAiB,GAAG,WAAW,CAAC;IACrF,0FAA0F;IAC1F,OAAO,CAAC,EAAE,MAAM,GAAG,SAAS,CAAC;IAC7B,MAAM,CAAC,EAAE,gBAAgB,GAAG,SAAS,CAAC;IACtC,gFAAgF;IAChF,kBAAkB,CAAC,EAAE,MAAM,GAAG,SAAS,CAAC;IACxC,SAAS,CAAC,EAAE,MAAM,GAAG,SAAS,CAAC;IAC/B,KAAK,CAAC,EAAE,MAAM,GAAG,SAAS,CAAC;CAC5B,CAAC;AAEF,MAAM,MAAM,iBAAiB,GAAG;IAC9B,KAAK,EAAE,MAAM,CAAC;IACd,IAAI,EAAE,QAAQ,CAAC;IACf,KAAK,EAAE,WAAW,GAAG,eAAe,GAAG,MAAM,GAAG,QAAQ,GAAG,iBAAiB,CAAC;IAC7E,+EAA+E;IAC/E,eAAe,EAAE,MAAM,CAAC;IACxB,oEAAoE;IACpE,WAAW,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;IACpC,KAAK,EAAE,MAAM,CAAC,MAAM,EAAE,eAAe,CAAC,CAAC;IACvC,cAAc,CAAC,EAAE,MAAM,GAAG,SAAS,CAAC;IACpC,KAAK,CAAC,EAAE,MAAM,GAAG,SAAS,CAAC;IAC3B,SAAS,EAAE,MAAM,CAAC;CACnB,CAAC;AAEF,MAAM,MAAM,iBAAiB,GAAG;IAC9B,KAAK,EAAE,MAAM,CAAC;IACd,IAAI,EAAE,QAAQ,CAAC;IACf,KAAK,EACD,WAAW,GACX,WAAW,GACX,SAAS,GACT,aAAa,GACb,MAAM,GACN,QAAQ,GACR,iBAAiB,CAAC;IACtB,MAAM,CAAC,EAAE,gBAAgB,CAAC;IAC1B,gFAAgF;IAChF,kBAAkB,CAAC,EAAE,MAAM,CAAC;IAC5B,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,KAAK,CAAC,EAAE,MAAM,CAAC;IACf;;;OAGG;IACH,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,aAAa,CAAC,EAAE,MAAM,CAAC;IACvB,eAAe,CAAC,EAAE,MAAM,CAAC;IACzB,+EAA+E;IAC/E,WAAW,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,GAAG,SAAS,CAAC;IACjD,SAAS,EAAE,MAAM,CAAC;CACnB,CAAC;AAEF;;;;;GAKG;AACH,wBAAgB,eAAe,CAAC,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE,OAAO,GAAG,IAAI,CAajE;AAED;;;;GAIG;AACH,wBAAgB,YAAY,CAAC,CAAC,EAAE,IAAI,EAAE,MAAM,GAAG,CAAC,GAAG,SAAS,CAmB3D;AAED,uFAAuF;AACvF,wBAAsB,cAAc,CAAC,IAAI,EAAE,MAAM,EAAE,MAAM,CAAC,EAAE,WAAW,GAAG,OAAO,CAAC,MAAM,CAAC,CAOxF;AAED,4FAA4F;AAC5F,wBAAsB,aAAa,CAAC,IAAI,EAAE,MAAM,GAAG,OAAO,CAAC,OAAO,CAAC,CAQlE;AAED,wBAAgB,YAAY,CAAC,SAAS,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM,GAAG,MAAM,CAGrE;AAED;;;;GAIG;AACH,wBAAgB,kBAAkB,CAAC,SAAS,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM,GAAG,MAAM,CAgB3E;AAED,kGAAkG;AAClG,wBAAgB,yBAAyB,CAAC,SAAS,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,GAAG,MAAM,CAgBnF;AAED,wBAAgB,eAAe,CAAC,MAAM,EAAE,MAAM,GAAG,MAAM,CAEtD;AAED,wBAAgB,aAAa,CAAC,SAAS,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM,GAAG,iBAAiB,GAAG,SAAS,CAmE7F;
|
|
1
|
+
{"version":3,"file":"store.d.ts","sourceRoot":"","sources":["../../src/jobs/store.ts"],"names":[],"mappings":"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"}
|
package/dist/jobs/store.js
CHANGED
|
@@ -206,15 +206,13 @@ function validateRenderManifest(raw, path) {
|
|
|
206
206
|
if (broken) {
|
|
207
207
|
throw new VideoGenError(`${safeBasename(path)} is not a valid render manifest (wrong shape). Refusing to resume — move it aside and start a new job. Rerunning as-is would re-bill all shots.`, 'store: manifest shape invalid');
|
|
208
208
|
}
|
|
209
|
-
//
|
|
210
|
-
//
|
|
211
|
-
//
|
|
209
|
+
// Every recorded hash must be valid. Exact coverage cannot be inferred from
|
|
210
|
+
// the manifest alone because asset-only shots have no local frames;
|
|
211
|
+
// runRender compares this map with the immutable spec before any submit.
|
|
212
212
|
const frameHashEntries = Object.entries(m.frameHashes);
|
|
213
|
-
const
|
|
214
|
-
const hashesInvalid = frameHashEntries.length < shotsCount ||
|
|
215
|
-
frameHashEntries.some(([, hash]) => typeof hash !== 'string' || !/^[0-9a-f]{64}$/.test(hash));
|
|
213
|
+
const hashesInvalid = frameHashEntries.some(([, hash]) => typeof hash !== 'string' || !/^[0-9a-f]{64}$/.test(hash));
|
|
216
214
|
if (hashesInvalid) {
|
|
217
|
-
throw new VideoGenError(`${safeBasename(path)} has
|
|
215
|
+
throw new VideoGenError(`${safeBasename(path)} has an invalid frame hash. Refusing to resume — the frozen frames cannot be verified.`, 'store: frameHashes invalid');
|
|
218
216
|
}
|
|
219
217
|
// Per-shot validation: a shot marked 'submitted' WITHOUT its remote handle
|
|
220
218
|
// would be re-submitted on resume — a paid duplicate. Refuse truncated
|