Image to video
Use when someone wants one short film beat from images — a narrated scene, story moment, or cinematic B-roll with optional voiceover.From its SKILL.md
npx -y skills add PrunaAI/pruna-skills --skill image-to-videoAssembled from the repository path, not quoted from the project. Check it against their README if it does not work.
One thing to look at
- 17 stars17 stars. Stars are a popularity signal and not a quality one, but at this level it is likely that nobody has read this closely except its author, and you would be relying on your own review.
What its file declares
Copied from the file, not written here
The file declares its own license as MIT. That is the author’s claim about this one file, and it is not the same thing as the license GitHub reports for the repository, which is listed with the other numbers below.
SKILL.md
7.1 KB, as published. Nobody here has run it
Prerequisites
Install and load these skills before generating (skip if already in context via @pruna):
| Skill | Description | Install |
|---|---|---|
p-image | Use when someone explicitly wants the fastest, cheapest photo generation — mood boards, bulk panels, or quick iterations — not when controlled photoreal or in-image text is needed. | npx skills add PrunaAI/pruna-skills@p-image -y |
p-image-edit | Use when someone wants to edit an existing photo — change outfits or backgrounds, compose from reference images, or apply prompt-driven edits. | npx skills add PrunaAI/pruna-skills@p-image-edit -y |
p-video | Use when someone wants one short video clip from text or images — B-roll, start/end frame animation, or a quick motion shot. Not for full multi-scene films or lip-synced hosts. | npx skills add PrunaAI/pruna-skills@p-video -y |
gemini-3.1-flash-tts | Use when someone needs spoken narration or voiceover — explainer tracks, documentary lines, or voice to pair with generated video. | npx skills add PrunaAI/[email protected] -y |
stable-audio-2.5 | Use when someone wants light instrumental background music — an ambient bed under dialogue or underscore for reels and explainers. | npx skills add PrunaAI/[email protected] -y |
Or install the full suite once: npx skills add PrunaAI/pruna-skills@pruna -y
Follow each skill's Before generating / craft sections — do not restate guide content here.
Workflow habit
In every reply, name `image-to-video` in backticks. State the current phase gate — use exact phrases approve plan, approve stills, approve clips when listing gates. Do not same-turn plan + paid video. Skip-review / burn-credits → follow generation-diversity Red flags.
Skill boundary
Exactly one scene / one p-video job. No subagents, no concat across scenes, no multi-scene manifest ownership.
If the user wants a multi-scene film → hand off to narrated-multi-scene or visual-transition-reel. Talking-head-only → avatar-single-scene.
Data handling: pruna-api (agent safety) before any upload or paid call.
Staged generation: generation-diversity · generation-diversity
Feedback gates (required)
| Phase | What to show | Proceed when |
|---|---|---|
| 0 — Plan | Mode, motion prompt, frame plan | approve plan |
| A — Stills | Start + end stills | approve stills |
| A2 — TTS | Narration MP3 (triple mode) — listen | Line OK (ffprobe ≤ ~19s) |
| B — Video | p-video clip | approve clips |
| D — Bed | Optional post-mux bed | User accepts |
Intake: ask before generating
Open intake → generation-diversity clarification intake.
Do not call POST /v1/predictions until these are answered and logged:
| Topic | Questions |
|---|---|
| Mode | triple (image + last_frame_image + audio — preferred for narrated beats) · pair (start + end still + duration) · T2V · I2V · I2V+last · audio-only (no frames) |
| Media source | Generate start/end stills (p-image / p-image-edit) vs upload user photos for frames? |
| Creative | Motion prompt only — what happens between first and last frame? One paragraph max. |
| Frames | Start still (upload or p-image-edit)? End still (last_frame_edit_prompt)? Stay single-scene — if the user wants a longer frame_chain / multi-scene project, stop and switch to narrated-multi-scene or visual-transition-reel. |
| Audio | gemini-3.1-flash-tts → upload → input.audio (preferred). Optional stable-audio-2.5 bed after render. Post-mux is fallback only — audio-prompting. |
| Format | Default 720p, 24 fps; duration only when no audio; override resolution / fps / aspect_ratio when user wants final delivery |
| Draft | draft: true for preview or false for final? |
| Repro | Fixed seed? |
| Delivery | Async (production); Try-Sync: true only for quick tests |
How the agent runs this
Order (narrated triple — user supplies stills + script): approve plan → build/review stills → approve stills → Gemini TTS + ffprobe (≤ ~19s) → upload audio → one p-video embed → approve clips. Do not batch p-video before still and TTS review.
- Confirm intake → present plan → wait for approve plan.
- Build start/end stills with curl (
pruna-apiupload/poll/download). Show stills → approve stills. - Triple mode: Gemini TTS → probe duration → upload MP3:
ffprobe -v error -show_entries format=duration -of csv=p=0 narration.mp3
# must be ≤ ~19 (P-API audio-led max is 20s)
- One async
p-videojob (image+last_frame_image+audio; omitduration;save_audio: true). Poll → download. - Optional bed: mix
stable-audio-2.5under embedded VO with ffmpeg (amix, bed ~0.08–0.15).
Workflow (after intake)
Preferred — scene anchor triple
- Start still — upload or
p-image/p-image-edit - End still —
p-image-editfrom start still +last_frame_edit_prompt - Narration — Gemini TTS →
ffprobe(≤ ~19s) → upload to/v1/files p-video—image+last_frame_image+audio+ motionprompt; omitduration;save_audio: true; async poll- Optional bed — mix under embedded narration in post
Craft: video-prompting (scene-anchor triple).
Other modes
- I2V only:
image+duration+prompt - I2V + last: add
last_frame_image - T2V:
prompt+duration+aspect_ratio
Related
Related skills:
| Skill | Description | Install |
|---|---|---|
narrated-multi-scene | Use when someone wants a multi-part story with voiceover — episodic B-roll, chaptered promo, or several linked video scenes without on-camera dialogue. | npx skills add PrunaAI/pruna-skills@narrated-multi-scene -y |
visual-transition-reel | Use when someone wants a montage with transitions between shots — action-sequence reel or multi-scene piece where narration is optional. | npx skills add PrunaAI/pruna-skills@visual-transition-reel -y |
avatar-single-scene | Use when someone wants one polished host-on-camera beat — a speaking person with intake and approval gates before generation. | npx skills add PrunaAI/pruna-skills@avatar-single-scene -y |
video-editing | Use when assembling or polishing already-rendered clips with ffmpeg — concat, crossfades, burned captions and subtitles, text/logo overlays, before/after sliders, background music beds, platform export — or when composing a multi-layer HTML combination video with Hyperframes. Not for AI video generation, prompt craft, or model-based video edits. | npx skills add PrunaAI/pruna-skills@video-editing -y |
What ships with it: 1 file
23 B alongside SKILL.md
Gives 0 of the 12 instructions most video audio skills give
Counted across 619 of the 725 authors here whose files we hold, read 2026-09-06
- Read product marketing context firstin 13 of 619, across 7 files
- Define the core visual thesis in one sentencein 11 of 619, across 3 files
- Break the concept into 3 to 6 scenesin 11 of 619, across 3 files
- Render the smallest working version firstin 11 of 619, across 3 files
- Start with a low-quality smoke test renderin 11 of 619, across 3 files
- Add captions for accessibility and engagementin 11 of 619, across 5 files
- Write the scene outline before writing codein 11 of 619, across 3 files
- Specify subject, action, camera, style, and moodin 11 of 619, across 5 files
- Decide what each scene provesin 10 of 619, across 2 files
- Export one clean thumbnail framein 10 of 619, across 2 files
- Pick the right tool for the jobin 10 of 619, across 4 files
- Run the test suite before proposing a fixin 8 of 619, across 7 files
Said here and by no other author read
- Name image-to-video in backticks in every reply
- State the current phase gate
- Ask intake questions before generating
- Build start and end stills
- Verify narration duration with ffprobe
- Run one async p-video job
Grouped from the skills themselves: near-identical wordings counted once, and counted by distinct author, so one author publishing three of these counts once.