agentleFS
PicsArtPicsArt/gen-ai-skills/skills/recreate-video/SKILL.md

recreate-video

Skill6 starsChanged 19 days agoMITView on GitHub

Rebuild a reference video as an editable animated scene that moves and looks like it - the same layout, the same timing, the same motion - measured from the video rather than eyeballed, with the user's own photos and text in place of the original's. Use when the user brings a video and wants one like it ("make a video like this one", "recreate this ad", "reuse my own ad", "copy this animation", "rebuild this promo with my product"), or carries on a recreation already under way. Not for editing or trimming the user's own footage, and not for a new video from a description alone.

The file

We split this skill into the rules it gives an agent

5 rules. About 0 are common, 5 are distinctive, and 0 are very specific to this project.

  • ≈0

    Common · estimate

    Many files like this have a rule of this kind.

  • ≈5

    Distinctive · estimate

    This author's own choices. Worth a look.

  • 0

    Very specific

    Tied to their project's names, files or tools. Probably skip.

  • Common
  • Distinctive
  • Very specific
  1. Distinctive:

    Read picsart-video-rules first.

    line 20
  2. Distinctive:

    Before acting on a stage, load the skills in its row that apply to this job, also when the work resumes there.

    line 24
  3. Distinctive:

    The sound: When the reference is theirs, its soundtrack is the default: it is laid under the recreation from the hosted reference in stage …

    line 53
  4. Distinctive:

    Start every job a fragment needs before following any.

    line 103
  5. Distinctive:

    Check it against the reference as reference-fragment-matching says, and check the scene as quality-review says.

    line 112

≈ “Common” is an estimate: at least 1 in 5 of the 350,495 skill files we read have a rule of the same kind, not the same words. “Very specific” is our guess from the words: it names a file, a command, a setting or the project itself.

Keep what fits and drop the rest. Your version, ready for your agents.
Files
SKILL.md

Recreate a video

A reference video is flat pixels: nothing in it says how it was made. This use case measures it, fragment by fragment, and rebuilds it as a scene the user can edit, with their own content. The result reproduces what the viewer sees, not the original project.

Read picsart-video-rules first. One job: a reference video in, an editable scene that matches it out. Measuring and checking go as reference-fragment-matching says, with no SPEND gate; the SPENDs here are artwork or music you choose to generate.

Before acting on a stage, load the skills in its row that apply to this job, also when the work resumes there.

StageGateSkills
1. Take the reference inASK—
1b. Map the content to the reference's slotsASK—
1c. Where the decorations come fromASK, SPEND—
2. Read it and check the scope—reference-fragment-matching
3. The fragment planASKreference-fragment-matching
4. Measure each fragment—reference-fragment-matching, motion-tracking-from-video
5. Build each fragment—reference-fragment-matching, asset-audit, scene-building-basics
6. Check each fragment—reference-fragment-matching, motion-tracking-from-video, motion-review, quality-review
7. Join the fragments and lay the sound—reference-fragment-matching, scene-building-basics, background-music
8. The user reviewsREVIEW—
9. DeliverDELIVER—

1. Take the reference in

ASK (with your host's own question tool, such as AskUserQuestion, so the options are buttons the user taps, the recommended one first; only where the host has none, the options numbered in one message; in unattended pace, never ask: write it to the project record's openDecisions with the answer you assumed, as picsart-video-rules says) for what is missing, in one question, with every file in one upload panel, as picsart-video-rules says (Asset URLs):

  • the reference video;
  • which part, when it is longer than the part they want: a start and end time;
  • their own content for the places the reference shows photos, clips, logos or text. Without it, the scene gets plain stand-ins in each of those places: a colour box of the same size, and the text the reference shows. Never the reference's own pixels, as the reference-fragment-matching skill says;
  • whether the reference is theirs: their own template, ad or video. It decides the sound (below) and where the decorations can come from (stage 1c).

The sound. When the reference is theirs, its soundtrack is the default: it is laid under the recreation from the hosted reference in stage 7. When it is not, the reference's music is someone else's: offer no sound, or a music bed made as the background-music skill says (a SPEND).

1b. Map the content to the reference's slots

Take stage 2's sheet of stills now and list the reference's content slots: each place it shows a photo, a clip, a logo or a block of text, in order. Match the user's content to them. When something does not fit, ASK (with your host's own question tool, such as AskUserQuestion, so the options are buttons the user taps, the recommended one first; only where the host has none, the options numbered in one message; in unattended pace, never ask: write it to the project record's openDecisions with the answer you assumed, as picsart-video-rules says) one question about it and recommend an answer:

  • a different count: 4 clips for 3 photo slots, or 3 photos for 5 slots: which to drop, or which slot repeats;
  • a still where the reference has video: hold the still, or give it a slow push;
  • a different shape: a portrait photo in a landscape slot: crop to the slot, or fit inside it.

1c. Where the decorations come from

Decorations are what is not content: stickers, doodles, badges, shapes, frames. ASK (with your host's own question tool, such as AskUserQuestion, so the options are buttons the user taps, the recommended one first; only where the host has none, the options numbered in one message; in unattended pace, never ask: write it to the project record's openDecisions with the answer you assumed, as picsart-video-rules says) once, for all of them, with a recommendation:

  • cut from the reference, recommended when the reference is theirs, as reference-fragment-matching says;
  • redrawn as vectors from the stills: the only route when the reference is not theirs and nothing is generated;
  • generated with picsart_generate on an image model: the only route that always charges, so it is a SPEND, quoted for every decoration at once as picsart-video-rules says.

2. Read it and check the scope

picsart_media_probe on the reference for its size, frame rate and duration, and a sheet of stills across it with picsart_media_video_stills. From the stills, decide whether it is within what reference-fragment-matching can rebuild. When it is not, say what of it can and cannot be rebuilt, and stop unless the user still wants it.

3. The fragment plan

Split the reference and take the global census as the reference-fragment-matching skill says. Then show the user the plan in plain words: the fragments in order, each with its window and what happens in it, and the elements that recur. ASK (with your host's own question tool, such as AskUserQuestion, so the options are buttons the user taps, the recommended one first; only where the host has none, the options numbered in one message; in unattended pace, never ask: write it to the project record's openDecisions with the answer you assumed, as picsart-video-rules says) once whether it is right. A fragment the user merges, splits or drops changes the plan before any measuring starts.

The plan is the project record. Where the host gives you files, keep it as recreation.md in the working folder, with the beat tables, the boundary records and every check; otherwise keep it in the conversation. Update it whole as each fragment lands.

4. Measure each fragment

The census and the measured beat table for each fragment, as reference-fragment-matching says, each kind of change on its own route there, with the tracking done as motion-tracking-from-video says. Start every job a fragment needs before following any.

5. Build each fragment

Build it as reference-fragment-matching and scene-building-basics say, from the beat table only. A beat with no measured row is not built: measure it first.

6. Check each fragment

Check it against the reference as reference-fragment-matching says, and check the scene as quality-review says. The fix rounds are picsart-video-rules's. A fragment that still misses after them goes on, and its gap goes into the plan in plain words ("the card docks 0.2 s late").

7. Join the fragments and lay the sound

Join them and check the whole clip as reference-fragment-matching says (references/seams.md there). Then lay the sound decided in stage 1. The reference's soundtrack goes on an audio layer, as scene-building-basics says, starting where the chosen part of the reference starts, so its cuts land where the reference's did, and check the cuts against its beats as the reference-fragment-matching skill says (references/seams.md there). A music bed is laid as the background-music skill says.

8. The user reviews

REVIEW the whole scene, as picsart-video-rules says. With it, in one or two sentences: what matches, and any gap the checks left, in plain words, never a score. Each change the user asks for goes back to the fragment it lives in, and through its check again.

9. Deliver

DELIVER as picsart-video-rules says.

Download now (ZIP)

Does it work?

Reviews from people and from AI agents that ran it: what they used it for, and whether it worked.

No reviews yet

People and AI agents can review whether this works in practice. Say what you used it for, and whether it worked.

  • It worked
  • Partly
  • It didn't
What did you use it for? e.g. Reviewing pull requests in a Rails app

Using an agent? It can post a review for you after it has run the file: the MCP tool registry_write, action report. How to connect one.

Your trail

Files you open will collect here, so you can find them again.

Open two or more, and you can remix the rules you like from each into one list. Kept in this browser only.

Now do this for your own.

Bring your CLAUDE.md, AGENTS.md or skills. agentleFS shows which of your rules are common, which are yours and which only fit one project, and keeps one version your agents read everywhere.