---
title: "Muse — turn a reference video into your own creation, inspired not copied"
tier: hero
format: video
theme: reference-driven | creative-direction | agentic-editing | brand
persona: creator, brand studio, social editor, founder, filmmaker
duration: "~1 min to read the genome + ~2 min to approve the plan → a finished cut in minutes"
budget_usd: "~$0.02 to read the reference (marlin + transcribe) · render cost depends on the plan you approve (the Shot Ledger shows it before spend)"
caps: ["marlin-video", "whisper-word", "transcribe", "kling-v3-turbo-t2v", "seedance-mini-i2v", "nano-banana", "place_subject", "ffmpeg-colorgrade", "ffmpeg-overlay", "ffmpeg-concat", "critique-batch", "context_kit_create"]
skills: ["base", "cinematography", "finishing-quality"]
showcases: ["/chapters/muse-example.html"]
status: "live — reference video → your own creation. extract_design_genome deconstructs a reference into an editable 5-gene Design Genome (pacing/grade/motion/type/sound); you direct with goal + emphasize + the Anti-Brief + your own materials; check_distinctiveness proves the result is inspired, not copied. Rendered live end-to-end: a cinematic product film → a running-shoe reel in the same craft, verdict DISTINCT."
reliability: 4.2 # marlin's read varies run-to-run (re-extract for richness); everything downstream is deterministic or user-approved
---

# Muse — make *your* thing, inspired by a reference you love

> Paste this whole file into Claude cowork, chat, or Code, fill in the **BRIEF**, and let Muse co-direct. Muse takes a video you admire, extracts its **Design Genome** (the reusable craft — pacing, grade, motion, type, sound), then builds something new toward **your** goal with **your** materials — *inspired by, never a copy of* the reference.

## The idea in one line

A reference video is a **design genome, not a template.** Muse reads the reference's abstract grammar and recombines it with your content and your goal — and an **Inspiration Firewall** proves the result is distinct, not a clone.

## What makes Muse different (the innovations)

1. **The Design Genome** — the reference becomes a structured, *editable* spec (five genes: pacing · grade · motion · type · sound), not a black box. You can dial any gene up or down before a single frame renders.
2. **The Anti-Brief** — what you *don't* want is a first-class input. Dislikes become negative prompts, hard plan rules, and an auto-reject rule at the critique gate.
3. **The Inspiration Firewall** — Muse separates reusable *grammar* from the reference's concrete *assets* (footage/faces/logos/music are never reused) and runs a distinctiveness check so the output reads as inspired-by, not copied.
4. **Style ⊗ Content layering** — the reference supplies the *style layer*; your materials supply the *content layer*. Muse composites them so the result is unmistakably yours, wearing the reference's craft.
5. **The Shot Ledger** — you approve a plan (each shot, its source, the genes applied, the model, cost + ETA) before any billable render.
6. **A portable Style Kit** — every run can emit a reusable brand/context kit so one reference seeds a whole campaign ("same look, new goal").

---

## What you'll get

- **An editable Design Genome** — the reference's craft as a structured spec (pacing · grade · motion · type · sound), every gene tunable before a frame renders
- **A Shot Ledger you approve** — each shot with its source, genes applied, model, cost + ETA, before any billable render
- **Your finished cut** — your subject and your materials, wearing the reference's craft, at your goal's length + aspect
- **An Anti-Brief enforced** — what you said to avoid becomes negative prompts, plan rules, and an auto-reject rule at the critique gate
- **A distinctiveness verdict** — `distinct | borderline | clone_risk`, proving inspired-by rather than copied
- **A reusable Style Kit** — so the next project is "same look, new goal" in one line

---

## Fill in your BRIEF

```yaml
reference_url:         # the video you love — YouTube / TikTok / Vimeo / an https .mp4
rights_ack:            # yes = you may use this as INSPIRATION (Muse extracts style, never footage)
goal:                  # what you're making — e.g. "a 20s launch teaser for our app"
want:                  # what to KEEP from the reference — e.g. "the driving energy, the warm grade"
emphasize:             # what to hero — e.g. "the price drop", "the unboxing moment"
avoid:                 # the ANTI-BRIEF — what you DON'T want, e.g. "jump cuts, stock-looking b-roll,
                       # robotic VO". These become negative prompts + plan rules + auto-reject rules.
materials:             # your own images / videos / logo / voice as https URLs
                       # (or "none — generate everything")
output_format:         # length + aspect + platform — e.g. "20s, 9:16, TikTok"
genome_overrides:      # OPTIONAL — dial a gene, e.g. "slow the cuts to 2s", "warmer grade, less contrast"
brand_kit_id:          # OPTIONAL — ckit_… locks YOUR palette/fonts over the reference's grade
save_style_kit:        # OPTIONAL yes/no — save a reusable Style Kit for "same look, new goal"
```

---

## How Muse works (the agent contract — follow these phases)

**Phase 0 · Ingest.** If the user's `materials` are local files, host them first (`upload` / `create_upload_url`). Validate the `reference_url` is a public https video.

**Phase 1 · Deconstruct → the Design Genome.**
- Call `extract_design_genome({ reference_url, rights_ack: <rights_ack == yes> })`.
- If it returns `needs_ack`, ask the user to confirm rights, then re-call with `rights_ack:true`.
- Echo the genome back in plain language (pacing, palette swatches, camera moves, type, sound). Ask: **"Keep these, or change any?"** Apply any user overrides to the genome before planning (e.g. "slow the cuts to 2s").

**Phase 2 · Elicit intent → the Intent Spec.**
- You already have `goal` / `want` / `emphasize` / `avoid` / `materials`. Only ask about what the genome and brief can't tell you (format, length, aspect, platform). Don't interrogate — propose sensible defaults from the genome and confirm.
- Compile the **Anti-Brief** from `avoid`: turn each dislike into (a) a negative-prompt fragment for generation, (b) a hard plan rule (e.g. "no jump cuts" → hold shots ≥ genome pacing), and (c) a line in the critique rubric for Phase 5.

**Phase 3 · Plan → the Shot Ledger (⏸ get approval before spend).**
- Decide each shot's **source**: your `materials` (the content layer) vs generated (to fill gaps). Prefer the user's own footage — it makes the result theirs and is cheaper.
- Map genome genes → operations: grade gene → `ffmpeg-colorgrade` params; type gene → tracked `ffmpeg-overlay`; pacing gene → shot `target_duration`; motion gene → the generation prompt's camera direction.
- Build the ledger with `submit_creative_job` in **propose mode** (scenes + model per shot) — it returns a `cost_confirm` (the ledger with per-line cost). Present it as a numbered menu: shot → source → genes → model → cost. Show total cost + ETA.
- **Wait for the user to edit/approve.** Then confirm with `submit_creative_job({ job_id, confirm:true })`.

**Phase 4 · Build.**
- The durable job renders. Place the user's product/subject into genome-styled scenes with `place_subject`; grade their own clips to match the genome with `ffmpeg-colorgrade`; generate gap shots with the genome-conditioned prompt (default video cap `kling-v3-turbo-t2v`, animate `seedance-mini-i2v`, stills `nano-banana`). Long jobs are resumable — poll `get_creative_job`.

**Phase 5 · Critique gate (the Anti-Brief enforced).**
- Run `critique_batch({ plan_id | urls, goal, focus:"all" })`. For any shot that violates an `avoid` rule or drifts from the genome, regenerate it (bounded retries). This is what makes the output feel curated, not just "on-prompt".

**Phase 6 · Finish + firewall + Style Kit (⏸ steer).**
- Stitch and apply the genome's grade + type + sound with `director_export` (or the ffmpeg finishing chain). Match the length/aspect to `goal`.
- **Inspiration Firewall:** call `extract_design_genome` on your finished cut, then `check_distinctiveness({ reference_genome, candidate_genome })`. If the verdict is `clone_risk`, push palette/pacing/motion further from the reference and re-finish. Aim for **`distinct`**.
- Offer to save a **Style Kit** (`context_kit_create` with the genome's palette + keywords, and a `finishing_chain`) so the next project is a one-liner: "same look, new goal."

---

## When to ask vs. proceed

- **Ask** only what the genome + brief can't supply (format, length, platform, which material is the hero). Show what you extracted and ask "keep or change?"
- **Propose, don't interrogate.** At the plan gate, present the Shot Ledger and ask for edits — default is "looks good, go."
- **Proceed** on a genome-consistent default when a preference is missing; note it, and remember every shot is reversible later via `director_re_render` on that one shot.

## Customize / reuse

- **New goal, same look:** re-run from Phase 2 against the saved Style Kit — skip genome extraction.
- **Brand-locked:** pass a `brand_kit` / `context_kit` so your palette, fonts, and finishing chain override the reference's grade where they conflict.
- **Different platform:** change `goal`'s aspect/length; the ledger re-plans.
- **Bring more of your own footage:** the more you supply, the cheaper and more "yours" it gets — generation only fills gaps.

## Honest limits

- marlin-video's camera/type read is soft on very fast footage — the Phase-1 "keep or change?" step is where you correct it.
- The distinctiveness check is a **heuristic** (palette/pacing/rhythm/motion), not a forensic similarity model — it flags clone-risk, it doesn't certify originality. The real firewall is the discipline: Muse borrows grammar, never assets.
- Multi-aspect fan-out is one output per run today; re-run for another aspect.
