ugc-base-character
Skill4 starsChanged 5 months agoMITView on GitHub
Step 2 of the ugc-ad pipeline. Generate one consistent, photorealistic base portrait of a UGC creator/actor — person only, neutral professional environment, NO product. Registers the face to cast.md so a winner can be reused. Use standalone to mint a reusable creator face, or as step 2 of a UGC ad. Brand-agnostic.
In this repository7 other files it gives its agents.
- ugc-adSkill
- ugc-briefSkill
- ugc-enhanceSkill
- ugc-multicut-scriptSkill
- ugc-product-profileSkill
- ugc-storyboard-sheetSkill
- ugc-videoSkill
The file
We split this skill into the rules it gives an agent
3 rules. About 0 are common, 0 are distinctive, and 3 are very specific to this project.
≈0
Common · estimate
Many files like this have a rule of this kind.
≈0
Distinctive · estimate
This author's own choices. Worth a look.
3
Very specific
Tied to their project's names, files or tools. Probably skip.
- Common
- Distinctive
- Very specific
- Very specific: line 16
Confirm the image model + reference roles: Default soul_2 (best for photoreal UGC/portrait).
- Very specific: line 18
Generate the portrait: Call generate_image:
- Very specific: line 36
If a brands/<brand>/cast.md exists for the target brand, also append the same entry there.
≈ “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.
Files
ugc-base-character
Generates the master portrait that locks the actor's identity across every cut of the ad.
Inputs
CREATOR_BRIEF(text) — age range, gender presentation, ethnicity if specified, hair, attire, vibe.DEST(path).
Steps
- Confirm the image model + reference roles. Default
soul_2(best for photoreal UGC/portrait). Callmodels_explore(action="get", model_id="soul_2")if unsure ofaspect_ratio/ params. - Generate the portrait. Call
generate_image:model: "soul_2"prompt: describe ONLY the person — physical features, attire, expression, and a neutral professional environment (soft studio or clean indoor light). Do not mention the product, props, or any branding.aspect_ratio: "9:16",count: 1- Poll
job_statusuntil terminal; capturejob_idand the result URL.
- Download the result:
curl -fsSL <url> -o "$DEST/character.png". Register to cast. Append to
DEST/cast.md(create if missing):## <slug> — generated <date> - source: ugc-base-character - job_id: <job_id> - brief: <one-line CREATOR_BRIEF summary> - status: candidate # promote to "keeper" after a winning adIf a
brands/<brand>/cast.mdexists for the target brand, also append the same entry there.
Output
DEST/character.png + the character job_id (report it — downstream steps pass it as a media reference).
Constraints
- PERSON ONLY. No product. (Hard rule — product in the base portrait causes compositing drift in the storyboard + video steps.)
- One face per run. Identity variety comes from generating fresh per ad, not from multiple faces in one image.
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
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.

