Agent skill

Ugc Model Swap

by alecs5am in alecs5am/ralphy

How to recreate a short UGC-style video with a DIFFERENT person/character while keeping everything else identical — setting, action, props, audio, camera feel.

Apache-2.0Auto-check passedMarketing & SEO

Install Ugc Model Swap

skills CLI
$ npx skills add alecs5am/ralphy --skill ugc-model-swap -a claude-code

Project install by default; add -g for ~/.claude/skills/.

GitHub CLI
$ gh skill install alecs5am/ralphy ugc-model-swap --agent claude-code

Project scope by default; add --scope user for a personal install. Needs GitHub CLI 2.90.0 or later (public preview).

Manual copy
$ git clone --depth 1 https://github.com/alecs5am/ralphy.git skills-src && mkdir -p .claude/skills && cp -r skills-src/.agents/skills/ugc-model-swap .claude/skills/ugc-model-swap && rm -rf skills-src

Use ~/.claude/skills/ instead of .claude/skills for a personal install. The folder must contain SKILL.md.

Claude Code skills documentation · loads skills from .claude/skills/

Facts

Skill name
ugc-model-swap
GitHub stars
138
Token cost
~1.7k tokens
SKILL.md length
746 words
Files
1
Skills in repo
28
Repo updated
First seen
Licence
Apache-2.0

At a glance

How to recreate a short UGC-style video with a DIFFERENT person/character while keeping everything else identical — setting, action, props, audio, camera feel.

  • Works in 5 steps: Single continuous scene — no numbered… → Face always in frame — state it… → Props — hyper-specific, with negatives.… → …
  • The user shares a UGC clip (challenge / reaction / review / try-on / unboxing) and wants the same clip with a different person
  • SKILL.md covers Trigger, What this skill is, Hard invariants and The craft, in five rules, plus 4 more sections
  • Instructions only: no scripts, shell commands, URLs or credentials in SKILL.md

What it does

Ugc Model Swap is an agent skill from alecs5am/ralphy. How to recreate a short UGC-style video with a DIFFERENT person/character while keeping everything else identical — setting, action, props, audio, camera feel. The craft layer behind the remix-with-swap pattern ("same video, but replace the creator with X"). Supplies the source-video analysis step, the single-continuous-scene prompt shape, the face-lock rule, prop-negative discipline, and explicit body-mechanics that keep the swap faithful. Works for any source clip + any replacement character. USE WHEN the user…

Its SKILL.md is about 1.7k tokens, which your agent loads only when the skill is triggered. It is a single SKILL.md file with no bundled scripts.

It sits in Marketing & SEO, covering Influencer and creator marketing. It works with Seedance. The repository describes itself as: Open-source desktop app for content creation, with an agent runtime and standalone CLI. The licence is Apache-2.0.

When your agent uses it

  • The user shares a UGC clip (challenge / reaction / review / try-on / unboxing) and wants the same clip with a different person
  • Wants several character variants of one clip

Example prompts

  • “same video, but replace the creator with X”
  • “/ugc-model-swap”

Workflow steps

5 steps, taken from the first numbered list in SKILL.md.

  1. Single continuous scene — no numbered splits. Describe the entire video as ONE flowing paragraph. "Scene 1 / Scene 2" labels confuse i2v…
  2. Face always in frame — state it repeatedly. If the action has the subject look down, reach, or place something, the camera must NOT…
  3. Props — hyper-specific, with negatives. If there's one prop, forbid the variations the model invents: "only ONE standalone ice cube…
  4. Body mechanics — describe the motion, not the intent. Not "she puts it away" → "she deliberately reaches her hand down and tucks the cube…
  5. Lock the setting up top. Open the prompt with the interior/exterior + lighting ("INTERIOR kitchen, soft window light, blurred counter…

What it can do on your machine

Read from SKILL.md and the folder at commit 8d139f0. It shows what the files ask for, not the result of running them.

  • Tool permissions

    Pre-approves nothing: there is no allowed-tools line, so your agent's usual permission prompts apply.

    From allowed-tools in the SKILL.md frontmatter.

  • Runs code

    No scripts in the folder and no shell commands in SKILL.md.

    From the folder's file list and the shell code blocks in SKILL.md.

  • Network

    No URLs in SKILL.md.

    From URLs in SKILL.md, links to its own repository left out.

  • Credentials

    Names no API keys, tokens, secrets or passwords.

    From names ending in _API_KEY, _TOKEN, _SECRET, _KEY or _PASSWORD in SKILL.md.

Context cost

Ugc Model Swap loads about 1.7k tokens when it runs. Until then it costs about 231 tokens; SKILL.md has 746 words of instructions outside code blocks.

Always · name and description, kept in context so the agent knows when to use it
~231
When it runs · the whole SKILL.md, loaded when a task matches
~1.7k

Estimates: characters ÷ 4, the usual rule of thumb; real counts depend on the model's tokenizer. Scripts and assets cost tokens only if the agent reads them.

Safety

Auto-check passed

The automated check found no risky patterns in SKILL.md.

Automated static check — not a guarantee. Review scripts before installing. It scans the text of SKILL.md for risky patterns (piping downloads into a shell, reading credential files, hidden Unicode, destructive commands); files beside SKILL.md are not scanned.

SKILL.md

The full file from alecs5am/ralphy at commit 8d139f0, republished under its Apache-2.0 licence (© alecs5am). 746 words, ~1,724 tokens.

Download SKILL.mdSave it as .claude/skills/ugc-model-swap/SKILL.md (or your agent's skills folder).
name
ugc-model-swap
description
How to recreate a short UGC-style video with a DIFFERENT person/character while keeping everything else identical — setting, action, props, audio, camera feel. The craft layer behind the remix-with-swap pattern ("same video, but replace the creator with X"). Supplies the source-video analysis step, the single-continuous-scene prompt shape, the face-lock rule, prop-negative discipline, and explicit body-mechanics that keep the swap faithful. Works for any source clip + any replacement character. USE WHEN the user shares a UGC clip (challenge / reaction / review / try-on / unboxing) and wants the same clip with a different person or character, or wants several character variants of one clip. Pairs with the remix path in docs/skills-vs-templates.md: remix swaps any element of a template; this skill is the specialist for swapping the on-camera person. For building a UGC ad from scratch, see /ugc-ad.
namespace
user

Trigger

FIRES on a swap brief: "same video but with a different girl/guy", "recreate this clip with <character>", "give me 4 versions of this clip with different people", "swap the creator in this UGC video".

DO NOT FIRE when:

  • The user wants a brand-new ad authored from a product (no source clip to mirror) → /ugc-ad.
  • The user wants a different niche of video → match that niche's skill.

What this skill is

The craft specialist for the swap kind of remix. The user supplies a source clip and a replacement person/character; this skill mirrors the source faithfully and changes only the on-camera subject. It runs through ralphy generate / ralphy render like everything else.

Hard invariants

  • Provider invariants stand. Source analysis, generation, and render all go through ralphy (ralphy ref analyze-video <slug> for the source breakdown; ralphy generate video for the swap; ralphy render). No Higgsfield MCP, no raw API. Read MODELS.md before naming a model id.
  • Model choice is the trap — get it right (per MEMORY.md):
    • Photoreal human replacement → kwaivgi/kling-v3.0-pro. bytedance/seedance-2.0 blocks photoreal-human i2v anchors (privacy filter), even AI-generated ones — it fails the swap. Do NOT reach for seedance for a realistic person, regardless of what a non-ralphy tutorial claims.
    • Stylized / non-human character (cartoon, creature, mascot) → bytedance/seedance-2.0 is fine and often better for non-default physics motion. The privacy filter only bites photoreal humans.
  • Reference gate. If the replacement is a named real person ("make it Tom Cruise"), the reference-required gate fires — refuse without a ref or logged --no-ref-consent. A generic replacement ("a young woman with red hair") proceeds without a ref.
  • Don't recreate copyrighted source audio. Mirror the structure of the source; the user supplies/approves the actual VO and music.

The craft, in five rules

  1. Single continuous scene — no numbered splits. Describe the entire video as ONE flowing paragraph. "Scene 1 / Scene 2" labels confuse i2v models and break continuity.
  2. Face always in frame — state it repeatedly. If the action has the subject look down, reach, or place something, the camera must NOT follow. Put the lock inline in the action AND as a closing rule: "FACE IS ALWAYS CENTER FRAME. Camera locked on the face. Never tilts down. Never follows the hand."
  3. Props — hyper-specific, with negatives. If there's one prop, forbid the variations the model invents: "only ONE standalone ice cube resting in the palm — no bucket, no bowl, no container, no pile."
  4. Body mechanics — describe the motion, not the intent. Not "she puts it away" → "she deliberately reaches her hand down and tucks the cube into the waistband, her hand moves below frame, the object disappears from view." Specific mechanics = faithful output.
  5. Lock the setting up top. Open the prompt with the interior/exterior + lighting ("INTERIOR kitchen, soft window light, blurred counter behind") before any action, or the model relocates the scene.
Show full SKILL.md (279 more words)Show less

Prompt shape (single continuous flow)

[Replacement character: age, look, outfit — specific; OR "@ref the attached photo"].
INTERIOR/EXTERIOR [setting] — [lighting], [background].
Opening: [shot type], [what's in foreground]. The subject [neutral start]. FACE ALWAYS IN FRAME.
[Continuous action — body mechanics in order, one flow].
Camera stays tight on the face throughout. Handheld smartphone UGC feel.
FACE IS ALWAYS CENTER FRAME. Camera locked on the face. Never tilts down. Never follows the hand.
Audio: "[line]" / "[line]" / [sound] / "[line]". Natural room acoustics.

Workflow

  1. Analyze the source. ralphy ref pull <url> then ralphy ref analyze-video <slug> (gemini-3.1-pro over the full mp4 — don't eyeball frames; see MEMORY.md). Extract: setting + lighting, the continuous action sequence, props (what + how used), audio/dialogue, camera feel.
  2. Lock the replacement. Photo provided → pass via --ref (lock it as the master and pass on every variant to prevent drift — MEMORY.md super-original-refs). No photo → describe in text. Named real person → reference gate.
  3. Build the single-continuous-scene prompt per the shape above. Pick the model by the rule (photoreal human → kling; stylized → seedance).
  4. Generate via ralphy generate video ... --ref <character>. 9:16, duration matched to source.
  5. Variants: to produce multiple character versions, change ONLY the character description; keep setting/action/props/audio identical across variants. Generate as separate ralphy generate calls (auto-versioned).
  6. Render + eval → ralphy render <id> → /evaluator.

Pitfalls → fixes

ProblemFix
Photoreal human swap fails / returns nothingYou used seedance — switch to kling-v3.0-pro (privacy filter).
Model makes a pile/bucket instead of one propAdd explicit negatives: "only ONE … no bucket, no bowl, no pile".
Camera tilts down and follows the handRepeat the face-lock rule inline AND at the end.
Subject drops the prop instead of placing itSpell out body mechanics ("deliberately reaches down and tucks … hand moves below frame").
Scene opens in the wrong locationPut "INTERIOR <room>" at the very top before any action.
Video splits into disconnected shotsRemove any "Scene N" labels — one continuous paragraph.
Replacement identity drifts between variantsLock the ref as a master and pass --ref on every call.

See also

  • docs/skills-vs-templates.md — the remix-with-swap pattern this serves.
  • MEMORY.md — seedance-rejects-realistic-people, super-original-refs, use-ralphy-ref-analyze-video.
  • MODELS.md — per-model i2v caps + privacy-filter notes.

© alecs5am, Apache-2.0. Rendered from Markdown: HTML in the file is shown as text, images as links, and headings moved down two levels. Raw file

Files

Just SKILL.md in .agents/skills/ugc-model-swap of alecs5am/ralphy.

Open the folder on GitHubat commit 8d139f0

Compare with similar skills

Ugc Model Swap next to the 5 skills that share the most tags, products or categories with it. Stars are the repository's; “used in” counts other GitHub owners with a copy.

Ugc Model Swap compared with similar skills
SkillStarsUsed inTokensAuto-checkLicenceRepo updated
Ugc Model Swap this skillalecs5am/ralphy138—~1.7kAutomated safety check: PassApache-2.0
Ugc Fixloopgooseworks-ai/goose-skills1.2k—~865Automated safety check: PassMIT
AI Social Media ContentNeverSight/learn-skills.dev2171 repos~1.8kAutomated safety check: PassNone
Analyze Videokrusemediallc/arcads-claude-code1.6k—~4.2kAutomated safety check: PassMIT
Audience ResearchScrapeCreators/social-media-research-skills3.4k—~635Automated safety check: NotesMIT
Influencer Discoverytigerless-labs/influencer-discovery212—~2.5kAutomated safety check: NotesNone

Similar skills

  • Ugc Fixloop

    gooseworks-ai/goose-skills

    the UGC fix-loop toolkit — surgically re-render a bad window/beat of a single-take UGC master (stitchreplacement.py, pure FFmpeg) and GPT cross-model review a Seedance prompt before render…

    1.2k GitHub stars~865 tokensUpdated 2 days ago
    Media & CreativeAuto-check passed
  • AI Social Media Content

    NeverSight/learn-skills.dev

    Create AI-powered social media content for TikTok, Instagram, YouTube, Twitter/X.

    217 GitHub starsUsed in 1 repo~1.8k tokens
    Writing & ContentAuto-check passed
  • Analyze Video

    krusemediallc/arcads-claude-code

    Analyze a reference video and reverse-engineer its style into a reusable Seedance 2.0 prompting template.

    1.6k GitHub stars~4.2k tokensUpdated 18 days ago
    Media & CreativeAuto-check passed
  • Audience Research

    ScrapeCreators/social-media-research-skills

    A skill your agent uses when the user wants to evaluate a creator, influencer, or brand audience using public profile signals, TikTok audience demographics, follower/following data, comments…

    3.4k GitHub stars~635 tokensUpdated 1 mo ago
    Marketing & SEOAuto-check: notes
  • Influencer Discovery

    tigerless-labs/influencer-discovery

    Find the bloggers/creators who can help promote your work, capture their contact info, and append them to the target sheet in Google Sheets.

    212 GitHub stars~2.5k tokensUpdated 18 days ago
    Marketing & SEOAuto-check: notes
  • Openclone

    team-attention/openclone

    Create, manage, or talk to an openclone "clone" — a named AI persona with one or more categories (vc, tech, founder, expert, influencer, politician, celebrity) and attached knowledge.

    130 GitHub stars~2.6k tokensUpdated 1 mo ago
    Marketing & SEOAuto-check: notes

More from alecs5am/ralphy

All 28 skills in this repo
  • Gsap

    alecs5am/ralphy

    GSAP animation reference for HyperFrames. An agent skill from alecs5am/ralphy.

    138 GitHub stars~2.4k tokensUpdated 18 days ago
    Auto-check passed
  • Researcher

    alecs5am/ralphy

    Deep-research workflow for UGC reference material — turns one or more URLs / handles / trend queries into a single cited research report (report.md + sources.json) that a scenarist or art-director…

    138 GitHub stars~1.9k tokensUpdated 18 days ago
    Auto-check passed
  • Editor

    alecs5am/ralphy

    Composition and render craft — assembles scenario.json plus asset-manifest.json into a HyperFrames HTML composition and renders the mp4.

    138 GitHub stars~3.6k tokensUpdated 18 days ago
    Auto-check passed
  • Evaluator

    alecs5am/ralphy

    Quality evaluation of rendered UGC mp4s — scene segmentation, audio loudness / dead-air, caption density, and per-scene visual analysis.

    138 GitHub stars~3.6k tokensUpdated 18 days ago
    Auto-check passed
  • Producer

    alecs5am/ralphy

    End-to-end orchestration — the wrapper that drives the whole production contract across roles, plus batch production.

    138 GitHub stars~4.7k tokensUpdated 18 days ago
    Auto-check passed
  • Scenarist

    alecs5am/ralphy

    Scenario and script craft — writes and reworks the scene-by-scene scenario.json: hook, beat structure, per-scene VO, on-screen text, pacing, and the language/aspect pre-flight.

    138 GitHub stars~3.2k tokensUpdated 18 days ago
    Auto-check passed

Works with

Categories

Questions about Ugc Model Swap

What does Ugc Model Swap do?

How to recreate a short UGC-style video with a DIFFERENT person/character while keeping everything else identical — setting, action, props, audio, camera feel. Ugc Model Swap is an agent skill from alecs5am/ralphy. How to recreate a short UGC-style video with a DIFFERENT person/character while keeping everything else identical — setting, action, props, audio, camera feel.

When should I use Ugc Model Swap?

Ugc Model Swap fits situations like: the user shares a UGC clip (challenge / reaction / review / try-on / unboxing) and wants the same clip with a different person; wants several character variants of one clip.

How do I install Ugc Model Swap in Claude Code?

Run `npx skills add alecs5am/ralphy --skill ugc-model-swap -a claude-code`. Or copy the skill folder (.agents/skills/ugc-model-swap in alecs5am/ralphy) into .claude/skills/ugc-model-swap in your project. Claude Code loads it when a task matches its description.

How do I install Ugc Model Swap in Codex?

Run `npx skills add alecs5am/ralphy --skill ugc-model-swap -a codex`. Or copy the skill folder (.agents/skills/ugc-model-swap in alecs5am/ralphy) into .agents/skills/ugc-model-swap in your project. Codex loads it when a task matches its description.

Can I use Ugc Model Swap in Cursor, Gemini CLI or GitHub Copilot?

Cursor, Gemini CLI, GitHub Copilot and OpenCode also load SKILL.md folders. With the skills CLI, run `npx skills add alecs5am/ralphy --skill ugc-model-swap -a cursor` (or -a gemini-cli, github-copilot or opencode for the others). To copy it by hand, put the folder in .cursor/skills/ugc-model-swap, .gemini/skills/ugc-model-swap, .github/skills/ugc-model-swap and .opencode/skills/ugc-model-swap in your project.

What does Ugc Model Swap need to run?

SKILL.md names no scripts, command-line tools or credentials: Ugc Model Swap is instructions for the agent only.

Does Ugc Model Swap access the network?

SKILL.md contains no URLs. Any network use would come from the scripts or tools the agent runs. This is read from the text; nothing was executed.

Is Ugc Model Swap safe to install?

Our automated static check of SKILL.md found no risky patterns, such as piping downloads into a shell, reading credential files or hidden Unicode. It is not a guarantee. Review the folder before installing.

What licence does Ugc Model Swap use?

Ugc Model Swap is published under the Apache-2.0 licence (the repository's licence). It allows redistribution, so the full SKILL.md is shown on this page.

How many tokens does Ugc Model Swap use?

About 1.7k tokens (SKILL.md is roughly 6.9k characters). Agents keep only the skill's name and description in context until a task matches; then they load SKILL.md in full.

What are the alternatives to Ugc Model Swap?

Skills that share tags, products or a category with Ugc Model Swap: Ugc Fixloop (gooseworks-ai/goose-skills, 1.2k stars), AI Social Media Content (NeverSight/learn-skills.dev, 217 stars), Analyze Video (krusemediallc/arcads-claude-code, 1.6k stars) and Audience Research (ScrapeCreators/social-media-research-skills, 3.4k stars). The comparison table on this page puts their stars, adoption, token cost, safety result and licence side by side.

Who maintains Ugc Model Swap?

alecs5am (a GitHub user) maintains it in alecs5am/ralphy, which has 138 GitHub stars. The repository holds 28 skills in this directory. The repository was last updated on September 22, 2026.

Source: alecs5am/ralphy on GitHub. Facts on this page come from the repository at the commit we read; the author's words are quoted as theirs.