Both make the clip the same way: a still of the persona in the scene, then a talking video with the script in their voice.
Files
Personas
A persona is the creator in the video. Make one in Appeeky (Personas and clips) and pull it:personas.yaml says ready: true when it can, and ugc pull marks the others (no look yet). clips.jsonl lists the clips made with each persona: script, caption, status, and the social post when one was made from it.
For --local, you can instead keep a persona in the repo, with its images next to it:
looks is required. Up to six images are used. Personas in the repo work only with --local.
Write a brief
Spec adds
status, the clip id and the cost when the clip is made. Leave them out of a new brief.
Make clips through Appeeky
Always look at the cost first:status: generating with the clipId and credits. It stops before spending anything when a brief names an unknown persona (run ugc pull), when a persona has no look yet, or when there are not enough credits for every brief.
Make clips on your own fal key
appeeky/ugc/personas/ first, then from Appeeky when APPEEKY_API_KEY is set. An Appeeky persona’s cover image is its look. fal bills your account directly, and no Appeeky credits are used.
The clip is saved to .appeeky/media/<brief>.mp4 (gitignored). The brief records status: generated, clipFile, fal’s videoUrl and costUsd. Use the videoUrl in a social draft’s media: to post it.
Asking before paying
Both ways quote first and ask before they spend.--dry-run only quotes. --yes skips the question; without it, a script with no terminal makes nothing. The push workflow passes --yes because the merge is the approval.
Review and send
- A pull request adds briefs under
appeeky/ugc/briefs/, often next to a listing change or a social draft. - The pull request report lists the clips the merge would make, with persona, length and script.
- You merge.
- The push workflow from
init --ci(or the Dockerpushroutine) runsugc generate --yes, adding--localwhenFAL_KEYis set, and commits the updated briefs. Clips made withFAL_KEYare kept with the workflow run.
--dry-run, but is never allowed to make clips.
Measure
Run each video as an experiment with a smart link, so its installs and revenue are counted:verify fills in the result from the link when it is due, and --playbook adds it to appeeky/playbook.md, so the next brief starts from what worked. See Attribution for the iOS caveat.
The appeeky-ugc specialist reads past UGC experiments, link results, personas and the words users use in reviews, and proposes the next video. The co-founder review writes it as a brief when a persona is ready.
Related: Social posts · Experiments and screenshots · On your own keys
