{"id":"4546b75a-0cf5-44b1-ae76-71a31537f718","shortId":"VArB3e","kind":"skill","title":"Wonda Cli","tagline":"Wonda skill by Degausai","description":"# Wonda CLI\n\nWonda CLI is a content creation toolkit for terminal-based agents. Use it to generate images, videos, music, and audio; edit and compose media; publish to social platforms; and research/automate across LinkedIn, Reddit, and X/Twitter.\n\n## Install\n\nIf `wonda` is not found on PATH, install it first:\n\n```bash\n# npm\nnpm i -g @degausai/wonda\n\n# Homebrew\nbrew tap degausai/tap && brew install wonda\n```\n\n## Setup\n\n- **Auth**: `wonda auth login` (opens browser, recommended) or set `WONDERCAT_API_KEY` env var\n- **Verify**: `wonda auth check`\n\n### Access tiers\n\nNot all commands are available to every account type:\n\n| Tier                                        | Access                                                                                                                           |\n| ------------------------------------------- | -------------------------------------------------------------------------------------------------------------------------------- |\n| **Anonymous** (temporary account, no login) | Media upload/download, editing (`video/edit`, `image/edit`, `audio/edit`), transcription, social publishing, scraping, analytics |\n| **Free** (logged in, Basic/Free plan)       | Everything above + **generation** (`image/generate`, `video/generate`, etc.), styles, recipes, brand                             |\n| **Paid** (Plus, Pro, or Absolute plan)      | Everything above + **video analysis** (requires credits), **skill commands** (`wonda skill install/list/get`)                    |\n\nIf a command returns a `403` error, check your plan at https://app.wondercat.ai/settings/billing.\n\n### Social signups (Instagram, TikTok, etc.)\n\nDrive them with the `wonda device` primitives + a throwaway mailbox from `wonda email`. The screenshot → decide → tap/type/swipe loop is how these flows work — there's no shortcut command, and that's fine: social apps change their UI constantly and any canned flow would drift faster than you could maintain it.\n\nStandard loop:\n\n1. `wonda email account create --random` → save `{email, password}`.\n2. `wonda device create` → pick a `ready` device (poll `wonda device get <id> --fields status`).\n3. `wonda device launch <device-id> com.instagram.android` (or `com.zhiliaoapp.musically` for TikTok). Fall back to `wonda device open-url` if you'd rather start in the web flow.\n4. Loop: `wonda device screenshot <device-id> > s.json` → decode the base64 PNG → read → pick an action → `tap | type | swipe | key` → screenshot again. Use `--text \"SomeButtonLabel\"` on `tap` before guessing coordinates; fall back to `--x --y` read off the screenshot for elements without matching text (number pickers, date spinners, etc.).\n5. When the app sends a verification email, `wonda email inbox wait <email> --timeout 120` — returns `{codes: [\"483921\"], links: [...]}` with the 6-digit code already extracted. `wonda device type <device-id> --text \"<code>\"` to feed it back.\n6. For number/date spinners: tap on the highlighted cell, Android pops up a numeric or alphabetic keyboard, `wonda device type --text \"<value>\"` replaces the selected text. `wonda device key --code 4` dismisses the keyboard when done.\n\n**Consent-like taps** — anything that accepts Terms/Privacy/Cookies, grants permissions, or publishes something — stop and ask the user for explicit confirmation in chat before tapping. That isn't about signups specifically; it applies to any automation step.\n\n**Rate-limit signals** — if the app shows you a visual puzzle (\"we want to make sure you're a real person\"), stop and hand off to the user with `wonda device stream <id>` (see next section). Don't click through puzzles yourself.\n\n### Handing off to a human\n\nIf automation hits a screen that requires a human to take over (consent flow you shouldn't auto-accept, ambiguous UI, step where the user prefers to act themselves), use `wonda device stream <device-id>` — returns a `playerUrl` signed with a short-lived JWT (1h). Give that URL to the user, they act in their own browser, and automation can resume afterward.\n\n```bash\nwonda device stream <device-id>\n# → { \"streamUrl\": \"wss://…\", \"playerUrl\": \"https://…\", \"deviceType\": \"social\" }\n```\n\n### Global output flags\n\nAll commands support these output control flags:\n\n- `--json` — Force JSON output (auto-enabled when stdout is piped)\n- `--quiet` — Only output the primary identifier (job ID, media ID, etc.) — ideal for scripting\n- `-o <path>` — Download output to file (implies `--wait`)\n- `--fields status,outputs` — Select specific JSON fields\n- `--jq '.outputs[0].media.url'` — Filter JSON output with a jq expression\n\n## How to think about content creation\n\nYou are a marketing director with access to a full production toolkit. Before touching any tool, think:\n\n1. **What product category?** (beauty, food, tech, fashion, fitness, etc.)\n2. **What format performs for this category?** (UGC memes for everyday products, cinematic for luxury, before/after for transformations, testimonial for services)\n3. **What's the hook?** (relatable scenario, surprising twist, aspirational lifestyle, social proof)\n4. **What specific scene?** (not \"product on table\" but \"person discovering the product in a funny situation\")\n\n## Decision flow\n\nWhen asked to create content, follow this order:\n\n### Step 1: Gather context\n\n```bash\nwonda brand                                                    # Brand identity, colors, products, audience\nwonda analytics instagram                                      # What content performs well\nwonda scrape social --handle @competitor --platform instagram --wait  # Competitive research (if relevant)\n\n# Cross-platform research (if relevant)\nwonda x search \"topic OR keyword\"                              # Find conversations on X/Twitter\nwonda x user-tweets @competitor                                # Competitor's recent tweets\nwonda reddit search \"topic\" --sort top --time week             # Reddit discussions\nwonda reddit feed marketing --sort hot                         # Subreddit trends\nwonda linkedin search \"topic\" --type COMPANIES                 # LinkedIn company/people research\nwonda linkedin profile competitor-vanity-name                  # LinkedIn profile intel\n```\n\n### Step 2: Check content skills\n\nContent skills are step-by-step guides for common content types. Each skill tells you exactly which models, prompts, and editing operations to use — and in what order. ALWAYS check skills before building from scratch.\n\n```bash\nwonda skill list                                # Browse all content skills\nwonda skill get <slug>                          # Full step-by-step guide for a skill\n```\n\n**Full skill index:**\n\n| Slug                         | Description                                                                  | Input                         |\n| ---------------------------- | ---------------------------------------------------------------------------- | ----------------------------- |\n| product-video                | Product/scene video — prompt library for all categories                      | optional product image        |\n| ugc-talking                  | Talking-head UGC — single clip, two-angle PIP, or 20s+ with B-roll           | optional reference            |\n| ugc-reaction-batch           | Batch TikTok-native UGC reactions with viral strategy                        | optional product image        |\n| tiktok-ugc-pipeline          | Scrape viral reel → generate 5 UGC → post as drafts                          | reel or TikTok URL            |\n| ugc-dance-motion             | Dance/motion transfer                                                        | image + video                 |\n| marketing-brain              | Marketing strategy brain — hooks, visuals, ads                               | user brief                    |\n| reddit-subreddit-intel       | Scrape top posts, analyze virality, generate ideas                           | subreddit + product           |\n| twitter-influencer-search    | Find X influencers and amplifiers                                            | competitor/niche keywords     |\n| tiktok-slideshow-carousel    | 3-slide TikTok carousel — hook, bridge, product reveal                       | app screenshot + audience     |\n| ffmpeg-local-video-finishing | Local ffmpeg finishing for deterministic trims, muxes, reverses, and exports | local video path or mediaId   |\n| ffmpeg-burn-captions         | Burn captions locally with ffmpeg after getting transcript/timing            | local video path or mediaId   |\n| ffmpeg-social-formatting     | Reformat local video for 9:16, 1:1, 16:9, and social-safe exports            | local video path or mediaId   |\n| ffmpeg-scene-splitting       | Detect scene boundaries locally, split into clips, or omit one scene         | local video path or mediaId   |\n| ffmpeg-silence-cut           | Detect and collapse dead air locally while preserving short natural pauses   | local video path or mediaId   |\n| ffmpeg-frame-extraction      | Extract single frames, poster frames, or evenly spaced stills locally        | local video path or mediaId   |\n| ffmpeg-analysis-artifacts    | Build local analysis artifacts: grid, first/last frame, and extracted audio  | local video path or mediaId   |\n| ffmpeg-reference             | Compact ffmpeg routing, font, codec, and command reference for agents        | local media path              |\n| remotion-local-render        | Render editorPipeline blueprint steps locally via @remotion/renderer         | manifest JSON + editor job id |\n\n**If a skill matches** → `wonda skill get <slug>`, read it, adapt to context, execute each step.\n\n**If no skill matches** → build from scratch (Step 3).\n\n### Step 2.5: Decide whether finishing should be local\n\nNot every media task should go back through Wonda editing. Use this routing rule:\n\n- Use `wonda` for AI generation, AI transcription/alignment, scraping, publishing, hosted transitions, and workflows that need media IDs or remote jobs.\n- Use local `ffmpeg` for deterministic transforms on files you already have or can download: trim, crop/scale/pad, concat, replace audio, extract audio/frame, reverse, normalize for delivery, burn captions, split scenes, cut silence, and build analysis artifacts.\n\nWhen a task starts from a Wonda media ID but the actual edit is deterministic, move it to local files first:\n\n```bash\nwonda media download <mediaId> -o ./input.mp4\n```\n\nBefore any local ffmpeg work:\n\n```bash\nwhich ffmpeg\nwhich ffprobe\nffmpeg -version\nffprobe -v error -show_format -show_streams -of json ./input.mp4\n```\n\nFont rule for local caption/text work:\n\n- Prefer an explicit font file path over a family name.\n- Never assume a font exists. Check first with `fc-match`, `fc-list`, `/System/Library/Fonts`, `/Library/Fonts`, `~/Library/Fonts`, or `/usr/share/fonts`.\n- If the task is mainly local finishing/captions/formatting/splitting/artifact extraction, check the ffmpeg-specific skills before inventing commands.\n- `wonda edit video` renders locally by default for single-video ops (`trim`, `crop`, `speed`, `volume`, `textOverlay`, `animatedCaptions` with supplied captions, `editAudio`). The server returns a manifest; the CLI runs `@remotion/renderer` against a CloudFront-hosted bundle, uploads the output, and finalizes the editor_job. No flag needed. Pass `--render-server` only to force Lambda. Multi-video ops (`overlay`, `splitScreen`, `merge`, `splitScenes`, `motionDesign`) auto-reject with a 400 — the CLI will tell you to use `--render-server`. See the `remotion-local-render` content skill for the full recipe (including the STT-free TikTok-style caption flow via `wonda alignment extract-timestamps` → `--caption-segments`).\n\nDefault local export target unless the user asked otherwise:\n\n```bash\n-c:v libx264 -preset medium -crf 18 -pix_fmt yuv420p -movflags +faststart -c:a aac -b:a 192k\n```\n\nAlways pass `-y` as the first flag so the command auto-overwrites the output. `ffmpeg` prompts interactively when the output path exists and agent shells hang on that prompt until timeout.\n\n### Step 3: Build from scratch (chain endpoints)\n\nWhen no skill matches, chain individual CLI commands. Each step produces an output that feeds into the next.\n\n**Single asset:**\n\n```bash\nwonda generate image --model nano-banana-2 --prompt \"...\" --aspect-ratio 9:16 --wait -o out.png\n# --negative-prompt \"...\" — override what to exclude (models like cookie have good defaults)\n# --seed <number>         — pin the seed for reproducible results\nwonda generate video --model seedance-2 --prompt \"...\" --duration 5 --params '{\"quality\":\"high\"}' --wait -o out.mp4\nwonda generate text --model <model> --prompt \"...\" --wait\nwonda generate music --model suno-music --prompt \"upbeat lo-fi\" --wait -o music.mp3\n```\n\n**Audio (speech, transcription, dialogue):**\n\n```bash\n# Text-to-speech\nwonda audio speech --model elevenlabs-tts --prompt \"Your script here\" \\\n  --params '{\"voiceId\":\"21m00Tcm4TlvDq8ikWAM\"}' --wait -o speech.mp3\n# elevenlabs-tts always requires a voiceId param\n# Common voice: Rachel (female) \"21m00Tcm4TlvDq8ikWAM\"\n\n# Transcribe audio/video to text\nwonda audio transcribe --model elevenlabs-stt --attach $MEDIA --wait\n\n# Multi-speaker dialogue\nwonda audio dialogue --model elevenlabs-dialogue --prompt \"Speaker A: Hi! Speaker B: Hello!\" \\\n  --wait -o dialogue.mp3\n```\n\n**Audio AI operations (direct-inference, NOT editor ops):**\n\n```bash\n# Denoise / dereverberate speech\nwonda audio enhance --model replicate-resemble-enhance --attach $MEDIA \\\n  --params '{\"denoise\":true,\"chunkSeconds\":10}' --wait -o enhanced.wav\n\n# Split a track into voice and instrumental stems\nwonda audio extract-voice --model replicate-demucs --attach $MEDIA \\\n  --wait -o vocals.wav\n```\n\nDO NOT use `wonda edit video --operation enhanceAudio` or `--operation voiceExtractor` — those paths are deprecated. They still work but emit a warning, and they route through the heavier editor_job pipeline for no functional reason.\n\n**Add animated captions to a video:**\n\nThe `animatedCaptions` operation handles everything in one step — it extracts audio, transcribes for word-level timing, and renders animated word-by-word captions onto the video.\n\n```bash\n# Generate a video with speech audio\nVID_JOB=$(wonda generate video --model seedance-2 --prompt \"...\" --duration 5 --aspect-ratio 9:16 --params '{\"quality\":\"high\"}' --wait --quiet)\nVID_MEDIA=$(wonda jobs get inference $VID_JOB --jq '.outputs[0].media.mediaId')\n\n# Add animated captions (single step)\nwonda edit video --operation animatedCaptions --media $VID_MEDIA \\\n  --params '{\"fontFamily\":\"TikTok Sans SemiCondensed\",\"position\":\"bottom-center\",\"sizePercent\":80,\"strokeWidth\":2.5,\"fontSizeScale\":0.8,\"highlightColor\":\"rgb(252, 61, 61)\"}' \\\n  --wait -o final.mp4\n```\n\nThe video's original audio is preserved. Do NOT replace the audio with TTS — Sora already generated the speech.\n\n**Transitions (effects pipelines on a single video):**\n\n```bash\nwonda transitions presets                            # List built-in presets (JSON)\nwonda transitions operations                         # Grouped by category (analysis/effect/...)\nwonda transitions operations --json                  # Full per-param metadata\nwonda transitions llms                               # Full reference (presets + ops + dependencies)\nwonda transitions run --media $VID --preset flash_glow --wait -o out.mp4\n# Or build a custom pipeline of steps:\nwonda transitions run --media $VID \\\n  --steps '[{\"glow\":{\"spread\":8}},{\"scene_flash\":{}}]' --wait -o out.mp4\n# Or send an agent-generated timeline of clips (inline JSON):\nwonda transitions run --media $VID \\\n  --clips '[{\"layer_type\":\"video\",\"start_frame\":0,\"end_frame\":60}]' --wait -o out.mp4\n# …or from a file (handy for long agent timelines):\nwonda transitions run --media $VID --clips ./timeline.json --wait -o out.mp4\nwonda transitions job <jobId>                        # Poll a transition job\n```\n\nUse exactly one of `--preset`, `--steps`, or `--clips`. Requires a full (logged-in) account. **Always read `wonda transitions llms` first when composing a custom pipeline or a clips timeline** — it documents the detect→segment→effect dependencies, which ops need masks, and the full clip-spec shape (layer types, tracks, effects, transforms).\n\n**Preset variables (`variables` block).** Each preset declares the template variables it accepts under `variables` in `wonda transitions presets`. Each entry has `name`, `description`, and `required`. Required variables MUST be supplied or the job is rejected with a 400 — no more silent skipping. Pass them with `--var name=value` (repeatable) or, for the common `prompt` case, the `--prompt` shortcut:\n\n```bash\n# flash_glow_prompted requires { prompt }\nwonda transitions run --media $VID --preset flash_glow_prompted \\\n  --prompt \"woman in white dress\" --wait -o out.mp4\n\n# text_behind_person requires { prompt, text }\nwonda transitions run --media $VID --preset text_behind_person \\\n  --var prompt=\"the person\" --var text=\"HELLO WORLD\" --wait -o out.mp4\n```\n\nThe `prompt` variable is a **detection text query** (Grounding DINO target describing which subject to mask), not a content-generation prompt. For presets that don't declare a `prompt` variable but still list `sam2`/`clip` in `models`, detection auto-picks the most recurring subject via CLIP — no variable needed.\n\nBuilding a custom `--steps` pipeline that uses `detect` + `segment`? Add a `detect` step with `method: grounding_dino` and put the subject description in that step's `prompt` param (or use `method: clip` for auto-detect).\n\n**Multi-scene presets (`requiresMultiScene: true`).** Some presets use `scene_split` and expect a video with multiple cuts/scenes. Check `requiresMultiScene` in `wonda transitions presets` — if true, feeding a single continuous shot will produce only one scene and the effect may look underwhelming. Combine clips first or use a video with natural cuts.\n\n**Per-step overrides (`--overrides`).** Tweak individual params of a preset's steps without rewriting the whole pipeline. Shape is **nested**: `{stepName: {paramName: value}}`. Step and param names come from `wonda transitions operations --json`.\n\n```bash\nwonda transitions run --media $VID --preset flash_glow \\\n  --overrides '{\"glow\":{\"spread\":12},\"zoom\":{\"end\":2.5}}' --wait -o out.mp4\n```\n\n**Output URL paths differ by job type:**\n\n- Inference jobs (generate, audio): `.outputs[0].media.url` and `.outputs[0].media.mediaId`\n- Editor jobs (edit): `.outputs[0].url` and `.outputs[0].mediaId`\n\n## Model waterfall\n\n### Image\n\nDefault: `nano-banana-2`. Only use others when:\n\n- User explicitly asks for a different model\n- Need vector output → `runware-vectorize`\n- Need background removal → `birefnet-bg-removal`\n- Cheapest possible → `z-image`\n- NanoBanana fails (rare) → `seedream-4-5`\n- Need readable text in image → `nano-banana-pro`\n- Photorealistic/creative imagery → `grok-imagine` or `grok-imagine-pro`\n- Spicy content → `cookie` (SDXL-based, tag-based or natural language prompts) — **ONLY select when the user explicitly asks for spicy content. Never auto-select.**\n\n**Cookie model (`cookie`):** SDXL with DMD acceleration and hires fix. **Restricted: only use when the user explicitly requests spicy content.** Accepts both danbooru-style tags (`1cat, portrait, soft lighting`) and natural language. Supports `--negative-prompt` (has sensible defaults; override only when needed) and `--seed` for reproducibility.\n\n```bash\nwonda generate image --model cookie --prompt \"1cat, portrait, soft lighting\" --wait -o out.png\nwonda generate image --model cookie --prompt \"a woman in a garden, golden hour\" \\\n  --negative-prompt \"ugly, blurry, watermark\" --seed 42 --wait -o out.png\n```\n\n### Video\n\nDefault: `seedance-2` (duration 5/10/15s, default 5s, quality: high). Escalation:\n\n- Quality complaint or different style → `sora2` or `sora2pro`\n- Max single-clip duration is **15s** for Seedance 2, **20s** for Sora → for longer content, stitch multiple clips via merge\n- Veo (`veo3_1`, `veo3_1-fast`) is available but NOT in the default waterfall. Only pick Veo when the user explicitly asks for Veo by name.\n\n**Image-to-video routing (MANDATORY when attaching a reference image):**\n\n- Person/face visible in the **reference image** → MUST use `kling_3_pro` (preserves identity better for faces)\n- No person in reference image → use `seedance-2`\n- **Text-to-video (no reference image):** Seedance 2 generates people fine. This rule ONLY applies when you `--attach` an image.\n\n**Kling model family:**\n\n- `kling_3_pro` — Text-to-video and image-to-video, supports start/end images, custom elements (@Element1, @Element2), 3-15s duration, 16:9/9:16/1:1\n- `kling_2_6_pro` — General purpose, 5-10s, 16:9/9:16/1:1, text-to-video and image-to-video\n- `kling_2_6_motion_control` — Motion transfer: requires both a reference image AND a reference video, recreates the video's motion with the image's appearance\n- `kling2_5-pro` — Budget Kling option, 5-10s, supports first/last frame images\n\n**Kling prompt rules (important):** Kling's prompt field caps at **2,500 characters** and Kling responds poorly to Sora-style structured briefs (`SCENE:` / `SUBJECT:` / `MOTION:` / `BANNED LOOK:` section headers). In that format Kling latches onto atmosphere nouns and silently drops the central subject (verified empirically: the same 2,842-char Sora-style prompt that rendered correctly on Sora 2 Pro and Seedance 2 produced no phone at all on Kling — even when trimmed to 2,250 chars). When escalating Seedance → Kling, or targeting Kling directly, **rewrite the prompt as short natural-language prose (~1,000–1,500 chars)** and **lead with the hero subject in the opening sentence** rather than burying it inside a `SUBJECT:` block. Do NOT pass a Sora-formatted prompt through to Kling unchanged.\n\n**Other video models:**\n\n- `grok-imagine-video` — xAI video generation, 5-15s, supports 7 aspect ratios including 4:3 and 3:2\n- `topaz-video-upscale` — Upscale video resolution (1-4x factor, supports fps conversion)\n- `sync-lipsync-v2-pro` — Legacy lipsync for user-supplied video + audio pairs. Inferior to native-audio generation and almost never the right choice for new content. See the \"Lip sync\" section for rules.\n\nSeedance family (DEFAULT video model, watermarks automatically removed):\n\n- `seedance-2` — Base Seedance 2.0 (T2V/I2V, 5-15s, high=standard/basic=fast)\n- `seedance-2-omni` — Multi-reference generation (images, audio refs)\n- `seedance-2-video-edit` — Edit existing video via text prompt\n\n**Video durations:** Accepted `--duration` values vary by model. Check with `wonda capabilities` or `wonda models info <slug>`.\n\n### Audio\n\n- Music: `suno-music` (set `--params '{\"instrumental\":true}'` for no vocals)\n- Text-to-speech: `elevenlabs-tts` — only for explicit narrator/voice-over asks over silent footage. Do NOT use to \"make a UGC character talk\" — Sora / Sora 2 Pro / Veo 3.1 / Kling 3 / Seedance 2 generate native synced speech in any language, which looks and sounds far better. Always set voiceId in params. Default female voice: `--params '{\"voiceId\":\"21m00Tcm4TlvDq8ikWAM\"}'` (Rachel).\n- Transcription: `elevenlabs-stt`\n- Multi-speaker dialogue: `elevenlabs-dialogue`\n- Enhance audio (clean up noisy speech): `replicate-resemble-enhance` via `wonda audio enhance` — denoise + dereverberate. Use when a voice recording sounds muffled, echoey, or has background noise. NOT a general \"sounds better\" button; if the source is already clean this can soften it.\n- Extract voice (isolate vocals / split stems): `replicate-demucs` via `wonda audio extract-voice` — splits into voice and instrumental tracks. Use to pull a speaker or singer off a track, or to isolate the music behind a vocal.\n\n**Native synced speech (preferred over TTS + lipsync):** Sora, Sora 2 Pro, Veo 3.1, Kling 3, and Seedance 2 all generate dialogue in any language directly inside the video, with mouth movements baked in. Put the line (and language) in the video model's `--prompt`. Never chain `elevenlabs-tts` → `sync-lipsync-v2-pro` to fake speech over a silent generation.\n\n## Prompt writing rules\n\nFollow this waterfall top-to-bottom. Use the FIRST matching rule and stop.\n\n1. **PASSTHROUGH** — If the user says \"use my exact prompt\" / \"verbatim\" / \"no enhancements\" → copy their words exactly. Zero modifications.\n\n2. **IMAGE-TO-VIDEO** — When a source image feeds into a video model, describe MOTION ONLY. The model can see the image. Do NOT describe the image content.\n   - Good: `\"gentle breathing motion, camera slowly pushes in, atmospheric lighting shifts\"`\n   - Bad: `\"Two cats on a lavender background breathing softly\"` (describes the image)\n\n3. **EMPTY PROMPT (from scratch)** — Use the user's exact request as the prompt. Do NOT add style descriptors, lighting, composition, or mood.\n   - User says \"create an image of a cat with sunglasses\" → prompt: `\"create an image of a cat with sunglasses\"`\n   - Do NOT enhance to `\"A playful orange tabby wearing oversized reflective sunglasses, studio lighting, shallow depth of field\"`\n\n4. **NON-EMPTY PROMPT (adapting a template)** — Keep the structure and style, only swap content to match the user's request. Keep prompts literal and constraint-heavy.\n\n## Aspect ratio rules\n\nThree cases, no exceptions:\n\n1. User specifies a ratio → use it: `--aspect-ratio 16:9`\n2. User doesn't mention ratio → explicitly set `--aspect-ratio 9:16` for social content (UGC, TikTok, Reels, Stories). Portrait is the default for any social/marketing video.\n3. Editing existing media → use `--aspect-ratio auto` to preserve source dimensions\n\n**UGC and social content is ALWAYS portrait (9:16).** If someone asks for a TikTok, Reel, Story, or UGC video, always use `--aspect-ratio 9:16`. Landscape is only for YouTube, presentations, or when explicitly requested.\n\n**Square (1:1)** is supported by all Kling models and some image models — use for Instagram feed posts when requested.\n\n## Common chaining patterns\n\nThese patterns show how to compose multi-step pipelines by chaining CLI commands. Each step's output feeds into the next.\n\n> **No need to download and re-upload between steps.** Every generation and edit\n> produces a media ID in its output. Pass that ID directly to the next command\n> via `--media` or `--audio-media`. Use `--jq '.outputs[0].media.mediaId'`\n> for inference jobs and `--jq '.outputs[0].mediaId'` for editor jobs.\n> Only use `-o <file>` on the FINAL step to download the finished output.\n\n### Animate an image to video\n\n```bash\nMEDIA=$(wonda media upload ./product.jpg --quiet)\n# No person in image → Seedance 2\nwonda generate video --model seedance-2 --prompt \"camera slowly pushes in, product rotates\" \\\n  --attach $MEDIA --duration 5 --params '{\"quality\":\"high\"}' --wait -o animated.mp4\n# Person in image → Kling (ONLY when attaching a reference image with a person)\nwonda generate video --model kling_3_pro --prompt \"the person turns and smiles\" \\\n  --attach $MEDIA --duration 5 --wait -o person.mp4\n```\n\n### Replace audio on a video (TTS voiceover or music)\n\n```bash\n# Generate TTS\nTTS_JOB=$(wonda audio speech --model elevenlabs-tts --prompt \"The script\" \\\n  --params '{\"voiceId\":\"21m00Tcm4TlvDq8ikWAM\"}' --wait --quiet)\nTTS_MEDIA=$(wonda jobs get inference $TTS_JOB --jq '.outputs[0].media.mediaId')\n# Mix onto video (mute original, full voiceover)\nwonda edit video --operation editAudio --media $VID_MEDIA --audio-media $TTS_MEDIA \\\n  --params '{\"videoVolume\":0,\"audioVolume\":100}' --wait -o with-voice.mp4\n```\n\nOnly use this when you need to REPLACE the video's audio. Sora, Sora 2 Pro, Veo 3.1, Kling 3, and Seedance 2 all generate native synced speech in any language — don't replace it with TTS unless the user explicitly asks for a different voiceover. Never reach for this step to \"add speech\" to a UGC/talking-head clip; put the dialogue in the video model's prompt instead.\n\n### Add static text overlay\n\nStatic overlays (meme text, \"chat did i cook\", etc.) use smaller font sizes than captions. They're ambient, not meant to dominate the frame.\n\n```bash\nwonda edit video --operation textOverlay --media $VID_MEDIA \\\n  --prompt-text \"chat, did i cook\" \\\n  --params '{\"fontFamily\":\"TikTok Sans SemiCondensed\",\"position\":\"top-center\",\"sizePercent\":66,\"fontSizeScale\":0.5,\"strokeWidth\":4.5,\"paddingTop\":10}' \\\n  --wait -o with-text.mp4\n```\n\n**Font sizing guide:**\n\n- Static overlays: `sizePercent: 66`, `fontSizeScale: 0.5`, `strokeWidth: 4.5`\n- Animated captions: `sizePercent: 80`, `fontSizeScale: 0.8`, `strokeWidth: 2.5`, `highlightColor: rgb(252, 61, 61)`\n- Font: `TikTok Sans SemiCondensed` for both\n\n### Add animated captions (word-by-word with timing)\n\nThe `animatedCaptions` operation extracts audio, transcribes, and renders animated word-by-word captions — all in one step.\n\n```bash\nwonda edit video --operation animatedCaptions --media $VIDEO_MEDIA \\\n  --params '{\"fontFamily\":\"TikTok Sans SemiCondensed\",\"position\":\"bottom-center\",\"sizePercent\":80,\"strokeWidth\":2.5,\"fontSizeScale\":0.8,\"highlightColor\":\"rgb(252, 61, 61)\"}' \\\n  --wait -o with-captions.mp4\n```\n\nFor quick static captions (no timing, just text on screen), use `textOverlay` with `--prompt-text`:\n\n```bash\nwonda edit video --operation textOverlay --media $VIDEO_MEDIA \\\n  --prompt-text \"Summer Sale - 50% Off\" \\\n  --params '{\"fontFamily\":\"TikTok Sans SemiCondensed\",\"position\":\"bottom-center\",\"sizePercent\":80}' \\\n  --wait -o captioned.mp4\n```\n\n### Add background music\n\n```bash\nMUSIC_JOB=$(wonda generate music --model suno-music \\\n  --prompt \"upbeat lo-fi hip hop, warm vinyl crackle\" --wait --quiet)\nMUSIC_MEDIA=$(wonda jobs get inference $MUSIC_JOB --jq '.outputs[0].media.mediaId')\nwonda edit video --operation editAudio --media $VID_MEDIA --audio-media $MUSIC_MEDIA \\\n  --params '{\"videoVolume\":100,\"audioVolume\":30}' --wait -o with-music.mp4\n```\n\n### Editor output chaining\n\nWhen chaining multiple editor operations (e.g., editAudio → animatedCaptions → textOverlay), extract the media ID from each editor job output and pass it to the next step. Note the jq path differs from inference jobs:\n\n```bash\n# Inference jobs: .outputs[0].media.mediaId\n# Editor jobs:    .outputs[0].mediaId\n\nEDIT_JOB=$(wonda edit video --operation editAudio --media $VID --audio-media $AUDIO \\\n  --params '{\"videoVolume\":0,\"audioVolume\":100}' --wait --quiet)\nSTEP1_MEDIA=$(wonda jobs get editor $EDIT_JOB --jq '.outputs[0].mediaId')\n\nCAP_JOB=$(wonda edit video --operation animatedCaptions --media $STEP1_MEDIA \\\n  --params '{\"fontFamily\":\"TikTok Sans SemiCondensed\",\"position\":\"bottom-center\",\"sizePercent\":80,\"strokeWidth\":2.5,\"fontSizeScale\":0.8,\"highlightColor\":\"rgb(252, 61, 61)\"}' --wait --quiet)\nSTEP2_MEDIA=$(wonda jobs get editor $CAP_JOB --jq '.outputs[0].mediaId')\n\nwonda edit video --operation textOverlay --media $STEP2_MEDIA \\\n  --prompt-text \"Hook text\" --params '{\"position\":\"top-center\",\"fontFamily\":\"TikTok Sans SemiCondensed\",\"sizePercent\":66,\"fontSizeScale\":0.5,\"strokeWidth\":4.5}' --wait -o final.mp4\n```\n\n### Merge multiple clips\n\n```bash\nwonda edit video --operation merge --media $CLIP1,$CLIP2,$CLIP3 --wait -o merged.mp4\n```\n\nMedia order = playback order. Up to 5 clips.\n\n### Split scenes / keep a specific scene\n\nTwo modes — pick by intent:\n\n```bash\n# Keep a specific scene (split mode) — splits into scenes, auto-selects one\nwonda edit video --operation splitScenes --media $VID_MEDIA \\\n  --params '{\"mode\":\"split\",\"threshold\":0.5,\"minClipDuration\":2,\"outputSelection\":\"last\"}' \\\n  --wait -o last-scene.mp4\n# outputSelection: \"first\", \"last\", or 1-indexed number (e.g. 2 for second scene)\n\n# Remove a scene (omit mode) — removes one scene, merges the rest\nwonda edit video --operation splitScenes --media $VID_MEDIA \\\n  --params '{\"mode\":\"omit\",\"threshold\":0.5,\"minClipDuration\":2,\"outputSelection\":\"first\"}' \\\n  --wait -o without-first.mp4\n# outputSelection: which scene to REMOVE\n```\n\nUse omit mode for \"remove frozen first frame\" (common with Sora videos). Use split mode for \"keep just scene X\".\n\n### Image editing (img2img)\n\n```bash\nMEDIA=$(wonda media upload ./photo.jpg --quiet)\nwonda generate image --model nano-banana-2 --prompt \"change the background to blue\" \\\n  --attach $MEDIA --aspect-ratio auto --wait -o edited.png\n```\n\nWhen editing an existing image, always use `--aspect-ratio auto` to preserve dimensions. The prompt should describe ONLY the edit, not the full image.\n\n### Background removal\n\n```bash\n# Image → use birefnet-bg-removal\nwonda generate image --model birefnet-bg-removal --attach $IMAGE_MEDIA --wait -o no-bg.png\n# Video → use bria-video-background-removal\nwonda generate video --model bria-video-background-removal --attach $VIDEO_MEDIA --wait -o no-bg.mp4\n```\n\nCRITICAL: Image and video background removal are different models. Never swap them.\n\n### Lip sync (last-resort fallback — prefer native-audio video models)\n\nSora, Sora 2 Pro, Veo 3.1, Kling 3, and Seedance 2 all generate speech in any language with correctly synced mouth movements as part of the video itself. That path produces dramatically better results than `sync-lipsync-v2-pro`: better lip physics, better lighting, better costs, and no second inference round-trip. For any talking UGC, ad, or spokesperson video, put the dialogue directly in the video model's prompt — do not chain TTS + lipsync.\n\nOnly reach for `sync-lipsync-v2-pro` when the user EXPLICITLY supplies both a pre-existing video and a pre-existing audio clip and asks you to align the mouth to that audio. If a user asks for lipsync as the default method of making a character speak, push back: the native-audio video models are the better tool and work in any language.\n\n```bash\nwonda generate video --model sync-lipsync-v2-pro --attach $VIDEO_MEDIA,$AUDIO_MEDIA --wait -o synced.mp4\n```\n\n### Video upscale\n\n```bash\nwonda generate video --model topaz-video-upscale --attach $VIDEO_MEDIA \\\n  --params '{\"upscaleFactor\":2}' --wait -o upscaled.mp4\n```\n\n## Editor operations reference\n\n| Operation          | Inputs                      | Key Params                                                                    |\n| ------------------ | --------------------------- | ----------------------------------------------------------------------------- |\n| `animatedCaptions` | video_0                     | fontFamily, position, sizePercent, fontSizeScale, strokeWidth, highlightColor |\n| `textOverlay`      | video_0 + prompt            | fontFamily, position, sizePercent, fontSizeScale, strokeWidth                 |\n| `editAudio`        | video_0 + audio_0           | videoVolume (0-100), audioVolume (0-100)                                      |\n| `merge`            | video_0..video_4            | Handle order = playback order                                                 |\n| `overlay`          | video_0 (bg) + video_1 (fg) | position, resizePercent                                                       |\n| `splitScreen`      | video_0 + video_1           | targetAspectRatio (16:9 or 9:16)                                              |\n| `trim`             | video_0                     | trimStartMs, trimEndMs (milliseconds)                                         |\n| `splitScenes`      | video_0                     | mode (split/omit), threshold, outputSelection                                 |\n| `speed`            | video_0                     | speed (multiplier: 2 = 2x faster)                                             |\n| `extractAudio`     | video_0                     | Extracts audio track                                                          |\n| `reverseVideo`     | video_0                     | Plays backwards                                                               |\n| `skipSilence`      | video_0                     | maxSilenceDuration (default 0.03)                                             |\n| `imageCrop`        | video_0                     | aspectRatio                                                                   |\n| `textOverlay`      | video_0 (image)             | Same as video textOverlay — works on images, outputs image (png/jpg)          |\n\nValid textOverlay fonts: Inter, Montserrat, Bebas Neue, Oswald, TikTok Sans, TikTok Sans Condensed, TikTok Sans SemiCondensed, TikTok Sans SemiExpanded, TikTok Sans Expanded, TikTok Sans ExtraExpanded, Nohemi, Poppins, Raleway, Anton, Comic Cat, Gavency\nValid positions: top-left, top-center, top-right, center-left, center, center-right, bottom-left, bottom-center, bottom-right\n\n## Marketing & distribution\n\n```bash\n# Connected social accounts\nwonda accounts instagram\nwonda accounts tiktok\n\n# Analytics\nwonda analytics instagram\nwonda analytics tiktok\nwonda analytics meta-ads\n\n# Scrape competitors\nwonda scrape social --handle @nike --platform instagram --wait\nwonda scrape social-status <taskId>                   # Get results of a social scrape\nwonda scrape ads --query \"sneakers\" --country US --wait\nwonda scrape ads --query \"sneakers\" --country US --search-type keyword \\\n  --active-status active --sort-by impressions_desc --period last30d \\\n  --media-type video --max-results 50 --wait\nwonda scrape ads-status <taskId>                      # Get results of an ads search\n\n# Download a single reel or TikTok video\nSCRAPE=$(wonda scrape video --url \"https://www.instagram.com/reel/ABC123/\" --wait --quiet)\n# → returns scrape result with mediaId in the media array\n\n# Publish\nwonda publish instagram --media <id> --account <accountId> --caption \"New drop\"\nwonda publish instagram --media <id> --account <accountId> --caption \"...\" --alt-text \"...\" --product IMAGE --share-to-feed\nwonda publish instagram-carousel --media <id1>,<id2>,<id3> --account <accountId> --caption \"...\"\nwonda publish tiktok --media <id> --account <accountId> --caption \"New drop\"\nwonda publish tiktok --media <id> --account <accountId> --caption \"...\" --privacy-level PUBLIC_TO_EVERYONE --aigc\nwonda publish tiktok-carousel --media <id1>,<id2> --account <accountId> --caption \"...\" --cover-index 0\n\n# History\nwonda publish history instagram --limit 10\nwonda publish history tiktok --limit 10\n\n# Browse media library\nwonda media list --kind image --limit 20\nwonda media info <mediaId>\n```\n\n### X/Twitter\n\nSupports reads, writes, and social graph.\n\n```bash\n# Auth setup (run `wonda x auth --help` for details)\nwonda x auth set\nwonda x auth check\n\n# Read\nwonda x search \"sneakers\" -n 20                     # Search tweets\nwonda x user @nike                                   # User profile\nwonda x user-tweets @nike -n 20                      # User's recent tweets\nwonda x read <tweet-id-or-url>                       # Single tweet\nwonda x replies <tweet-id-or-url>                    # Replies to a tweet\nwonda x thread <tweet-id-or-url>                     # Full thread (author's self-replies)\nwonda x home                                         # Home timeline (--following for Following tab)\nwonda x bookmarks                                    # Your bookmarks\nwonda x likes                                        # Your liked tweets\nwonda x following @handle                            # Who a user follows\nwonda x followers @handle                            # A user's followers\nwonda x lists @handle                                # User's lists (--member-of for memberships)\nwonda x list-timeline <list-id-or-url>               # Tweets from a list\nwonda x news --tab trending                          # Trending topics (tabs: for_you, trending, news, sports, entertainment)\n\n# Write (uses internal API — use on secondary accounts)\nwonda x tweet \"Hello world\"                          # Post a tweet\nwonda x tweet \"Hello world\" --browser                # Full stealth via real browser (Patchright)\nwonda x tweet \"Hello world\" --attach ~/clip.mp4      # Attach image/gif/video (up to 4)\nwonda x reply <tweet-id-or-url> \"Great point\"        # Reply\nwonda x like <tweet-id-or-url>                       # Like\nwonda x unlike <tweet-id-or-url>                     # Unlike\nwonda x retweet <tweet-id-or-url>                    # Retweet\nwonda x unretweet <tweet-id-or-url>                  # Unretweet\nwonda x follow @handle                               # Follow\nwonda x unfollow @handle                             # Unfollow\n\n# Maintenance\nwonda x refresh-ids                                  # Refresh cached GraphQL query IDs from X's JS bundles\n```\n\nAll paginated commands support: `-n <count>`, `--cursor`, `--all`, `--max-pages`, `--delay <ms>`.\n\n**Tweet modes:** The `tweet` command has two modes:\n\n- **Default (API):** X's internal GraphQL (`CreateTweet` for ≤280 chars, `CreateNoteTweet` for long-form Premium). Fast (<1s), supports `--attach` for media. Occasionally fails with error 226 when X rotates query IDs or feature flags — when that happens, recapture via `twitter-tone-research/_artifacts/scripts/capture-ct-bw.mjs` and bump the three knobs in `xclient/`.\n- **`--browser` (Patchright):** Launches a real undetected Chrome browser, opens x.com compose, types with human-style jitter, clicks Post. Supports `--attach` (image/gif/video, up to 4) — files are driven through the hidden compose input via Playwright's `setInputFiles`, no native picker dialog opens; the script waits for X's upload pipeline to finalize (up to 5 min for video) before submitting. Zero fingerprinting risk. Slower (~10s text, ~30-90s with video) but fully drift-proof — no queryIds, feature flags, or request shape to maintain. Requires: `npm i patchright && npx patchright install chromium`.\n\n### LinkedIn\n\nSupports search, profiles, companies, messaging, and engagement.\n\n```bash\n# Auth setup (run `wonda linkedin auth --help` for details)\nwonda linkedin auth set\nwonda linkedin auth check\n\n# Read\nwonda linkedin me                                    # Your identity\nwonda linkedin search \"data engineer\" --type PEOPLE  # Search (types: PEOPLE, COMPANIES, ALL)\nwonda linkedin profile johndoe                       # View profile (vanity name or URL)\nwonda linkedin company google                        # View company page\nwonda linkedin conversations                         # List message threads\nwonda linkedin messages <conversation-urn>           # Read messages in a thread\nwonda linkedin notifications -n 20                   # Recent notifications\nwonda linkedin connections                           # Your connections\nwonda linkedin reactions <activity-id>               # Reactions with reactor profiles + type\n\n# Write\nwonda linkedin connect <vanity-name> --message \"Hey!\" # Send connection request with note\nwonda linkedin connect <vanity-name> -m \"Hey!\" --browser  # Full stealth via real browser (Patchright)\nwonda linkedin like <activity-urn>                   # Like a post\nwonda linkedin unlike <activity-urn>                 # Remove a like\nwonda linkedin send-message <conversation-urn> \"Hi!\" # Send a message\nwonda linkedin post \"Excited to announce...\"         # Create a post\nwonda linkedin delete-post <activity-id>             # Delete a post\n```\n\nPaginated commands support: `-n <count>`, `--start`, `--all`, `--max-pages`, `--delay <ms>`.\n\n**Connection request modes:** The `connect` command has two modes:\n\n- **Default (API):** Voyager REST API with fingerprint mitigations (profile visit → drawer warm-up → connect). Fast (~3s), supports notes via `customMessage`.\n- **`--browser` (Patchright):** Launches a real undetected Chrome browser, navigates to the profile, and clicks through the UI. Zero fingerprinting risk. Slower (~10s) but fully safe. Use this as a fallback if you want full protection. Requires: `npm i patchright && npx patchright install chromium`.\n\n### Reddit\n\nAuth is optional — many reads work unauthenticated. Supports search, feeds, users, posts, trending, and chat/DMs.\n\n```bash\n# Auth setup (run `wonda reddit auth --help` for details)\nwonda reddit auth set\nwonda reddit auth check\n\n# Read (works without auth)\nwonda reddit search \"AI video\" --sort top --time week   # Search posts (sort: relevance, hot, top, new, comments)\nwonda reddit subreddit marketing                        # Subreddit info\nwonda reddit feed marketing --sort hot                  # Subreddit posts (sort: hot, new, top, rising)\nwonda reddit user spez                                  # User profile\nwonda reddit user-posts spez --sort top                 # User's posts\nwonda reddit user-comments spez                         # User's comments\nwonda reddit post <id-or-url> -n 50                     # Post with comments\nwonda reddit trending --sort hot                        # Popular/trending posts\n\n# Read (requires auth)\nwonda reddit home --sort best                           # Your home feed\n\n# Write (requires auth)\nwonda reddit submit marketing --title \"Great tool\" --text \"Check this out...\"  # Self post\nwonda reddit submit marketing --title \"Great tool\" --url \"https://...\"         # Link post\nwonda reddit comment <parent-fullname> --text \"Nice post!\"                     # Reply\nwonda reddit vote <fullname> --up                       # Upvote (--down, --unvote)\nwonda reddit subscribe marketing                        # Subscribe (--unsub to unsubscribe)\nwonda reddit save <fullname>                            # Save a post or comment\nwonda reddit unsave <fullname>                          # Unsave\nwonda reddit delete <fullname>                          # Delete your post or comment\n```\n\nPaginated commands support: `-n <count>`, `--after <cursor>`, `--all`, `--max-pages`, `--delay <ms>`.\n\n### Reddit chat / DMs\n\nDirect messaging via the Matrix protocol. Requires a separate chat token.\n\n```bash\n# Auth setup (run `wonda reddit chat auth-set --help` for details)\nwonda reddit chat auth-set\n\n# Read\nwonda reddit chat inbox                                  # List DM conversations with latest messages\nwonda reddit chat messages <room-id> -n 50               # Fetch messages from a room\nwonda reddit chat all-rooms                              # List ALL joined rooms (not limited to sync window)\n\n# Write\nwonda reddit chat send <room-id> --text \"Hey!\"           # Send a DM (mimics browser typing behavior)\n\n# Management\nwonda reddit chat accept-all                             # Accept all pending chat requests\nwonda reddit chat refresh                                # Force-refresh the Matrix chat token\n```\n\n**Important**: The chat token expires every ~24h. The CLI auto-refreshes on use, but if it expires fully, re-run `auth-set`. Rate limit DM sends to 15-20/day with varied text to avoid detection. The `send` command includes a typing delay (1-5s) to mimic human behavior.\n\n## Workflow & discovery\n\n### Video analysis\n\nAnalyze a video to extract a composite frame grid (visual) and audio transcript (text). Useful for understanding video content before creating variations. Requires a **full account** (not anonymous) and costs credits based on video duration (ElevenLabs STT pricing).\n\nIf the video was just uploaded and is still normalizing, the CLI auto-retries until the media is ready.\n\n```bash\n# Analyze a video — returns composite grid image + transcript\nANALYSIS_JOB=$(wonda analyze video --media $VIDEO_MEDIA --wait --quiet)\n\n# The job output contains:\n# - compositeGrid: image showing 24 evenly-spaced frames\n# - transcript: full text of any speech\n# - wordTimestamps: word-level timing [{word, start, end}]\n# - videoMetadata: {width, height, durationMs, fps, aspectRatio}\n\n# Download the composite grid for visual inspection\nwonda analyze video --media $VIDEO_MEDIA --wait -o /tmp/grid.jpg\n\n# Get just the transcript\nwonda analyze video --media $VIDEO_MEDIA --wait --jq '.outputs[] | select(.outputKey==\"transcript\") | .outputValue'\n```\n\n**Error handling**: 402 = insufficient credits, 409 = media still processing (CLI auto-retries).\n\n### Chat (AI assistant)\n\nInteractive chat sessions for content creation — the AI handles generation, editing, and iteration.\n\n```bash\nwonda chat create --title \"Product launch\"            # New session\nwonda chat list                                       # List sessions (--limit, --offset)\nwonda chat messages <chatId>                          # Get messages\nwonda chat send <chatId> --message \"Create a UGC reaction video\"\nwonda chat send <chatId> --message \"Edit it\" --media <id>\nwonda chat send <chatId> --message \"...\" --aspect-ratio 9:16 --quality-tier max\nwonda chat send <chatId> --message \"...\" --style <styleId>\nwonda chat send <chatId> --message \"...\" --passthrough-prompt  # Use exact prompt, no AI enhancement\n```\n\n### Jobs & runs\n\n```bash\nwonda jobs get inference <id>                         # Inference job status\nwonda jobs get editor <id>                            # Editor job status\nwonda jobs get publish <id>                           # Publish job status\nwonda jobs wait inference <id> --timeout 20m          # Wait for completion\nwonda run get <runId>                                 # Run status\nwonda run wait <runId> --timeout 30m                  # Wait for run completion\n```\n\n### Discovery\n\n```bash\nwonda models list                                     # All available models\nwonda models info <slug>                              # Model details and params\nwonda operations list                                 # All editor operations\nwonda operations info <operation>                     # Operation details\nwonda capabilities                                    # Full platform capabilities\nwonda pricing list                                    # Pricing for all models\nwonda pricing estimate --model seedance-2 --prompt \"...\" # Cost estimate\nwonda style list                                      # Available visual styles\nwonda topup                                            # Top up credits (opens Stripe checkout)\n```\n\n### Editing audio & images\n\n```bash\n# Edit audio\nwonda edit audio --operation <op> --media <id> --wait -o out.mp3\n\n# Edit image (crop, text overlay)\nwonda edit image --operation imageCrop --media <id> \\\n  --params '{\"aspectRatio\":\"9:16\"}' --wait -o cropped.png\n\n# Add text to an image (outputs image, same format as input)\nwonda edit image --operation textOverlay --media <id> \\\n  --prompt-text \"Your text here\" \\\n  --params '{\"fontFamily\":\"TikTok Sans\",\"position\":\"bottom-center\",\"fontSizeScale\":1.5,\"textColor\":\"#FFFFFF\",\"strokeWidth\":2}' \\\n  --wait -o output.png\n```\n\n### Alignment (timestamp extraction)\n\n```bash\nwonda alignment extract-timestamps --model <model> --attach <mediaId> --wait\n```\n\n## Quality tiers\n\n| Tier     | Image Model       | Resolution | Video Model              | When                                                                                           |\n| -------- | ----------------- | ---------- | ------------------------ | ---------------------------------------------------------------------------------------------- |\n| Standard | `nano-banana-2`   | 1K         | `seedance-2` (high, 5s)  | Default. High quality, good for iteration.                                                     |\n| High     | `nano-banana-pro` | 1K         | `seedance-2` (high, 15s) | Longer duration. Also offer `sora2pro` for different style.                                    |\n| Max      | `nano-banana-pro` | 4K         | `seedance-2` (high, 15s) | Best possible. Also offer `sora2pro` (1080p). Use `--params '{\"resolution\":\"4K\"}'` for images. |\n\n## Troubleshooting\n\n| Symptom                          | Likely Cause                                  | Fix                                                    |\n| -------------------------------- | --------------------------------------------- | ------------------------------------------------------ |\n| Sora rejected image              | Person in image                               | Switch to `kling_3_pro`                                |\n| Video adds objects not in source | Motion prompt describes elements not in image | Simplify to camera movement and atmosphere only        |\n| Text unreadable in video         | AI tried to render text in generation         | Remove text from video prompt, use textOverlay instead |\n| Hands look wrong                 | Complex hand actions in prompt                | Simplify to passive positions or frame to exclude      |\n| Style inconsistent across series | No shared anchor                              | Use same reference image via `--attach`                |\n| Changes to step A not in step B  | Stale render                                  | Re-run all downstream steps                            |\n\n## Timing expectations\n\n- Image: 30s - 2min\n- Video (Sora): 2 - 5min\n- Video (Sora Pro): 5 - 10min\n- Video (Veo 3.1): 1 - 3min\n- Video (Kling): 3 - 8min\n- Video (Grok): 2 - 5min\n- Music (Suno): 1 - 3min\n- TTS: 10 - 30s\n- Editor operations: 30s - 2min\n- Lip sync: 1 - 3min\n- Video upscale: 2 - 5min\n\n## Error recovery\n\n- **Unknown model**: `wonda models list`\n- **No API key**: `wonda auth login` or set `WONDERCAT_API_KEY` env var\n- **Job failed**: `wonda jobs get inference <id>` for error details\n- **Bad params**: `wonda models info <slug>` for valid params\n- **Timeout**: `wonda jobs wait inference <id> --timeout 20m`\n- **Insufficient credits (402)**: `wonda topup` to add credits","tags":["wonda","cli","degausai"],"capabilities":["skill","source-degausai","category-wonda"],"categories":["wonda"],"synonyms":[],"warnings":[],"endpointUrl":"https://skills.sh/degausai/wonda/wonda-cli","protocol":"skill","transport":"skills-sh","auth":{"type":"none","details":{"install_from":"skills.sh"}},"qualityScore":"0.300","qualityRationale":"deterministic score 0.30 from registry signals: · indexed on skills.sh · published under degausai/wonda","verified":false,"liveness":"unknown","lastLivenessCheck":null,"agentReviews":{"count":0,"score_avg":null,"cost_usd_avg":null,"success_rate":null,"latency_p50_ms":null,"narrative_summary":null,"summary_updated_at":null},"enrichmentModel":"deterministic:skill:v1","enrichmentVersion":1,"enrichedAt":"2026-04-22T11:40:27.140Z","embedding":null,"createdAt":"2026-04-19T13:32:19.313Z","updatedAt":"2026-04-22T11:40:27.140Z","lastSeenAt":"2026-04-22T11:40:27.140Z","tsv":"'-10':2756,2804 '-100':4801,4804 '-15':2742,2952,3029 '-2':1592,1833,2600,2697,3023,3035,3045,3702,6494,6612,6628,6646 '-20':6139 '-4':2463,2972 '-5':2464,6155 '-90':5532 '/_artifacts/scripts/capture-ct-bw.mjs':5457 '/clip.mp4':5340 '/day':6140 '/input.mp4':1275,1297 '/library/fonts':1329,1330 '/photo.jpg':4464 '/product.jpg':3689 '/reel/abc123/':5058 '/settings/billing.':161 '/system/library/fonts':1328 '/timeline.json':2031 '/tmp/grid.jpg':6289 '/usr/share/fonts':1332 '0':588,1857,2009,2406,2410,2416,2420,3654,3662,3792,3816,4133,4199,4204,4221,4236,4280,4778,4787,4796,4798,4800,4803,4807,4816,4825,4836,4842,4849,4857,4863,4868,4874,4878,5134 '0.03':4871 '0.5':3949,3968,4307,4374,4420 '0.8':1886,3976,4040,4262 '000':2907 '1':219,620,692,1024,1025,2639,2641,2748,2761,2906,2908,2971,3314,3481,3572,3573,4389,4819,4827,6154,6778,6790,6801 '1.5':6576 '10':1724,3953,5141,5147,6793 '100':3818,4150,4223 '1080p':6654 '10min':6774 '10s':5529,5775 '12':2387 '120':328 '15':6138 '15s':2622,6630,6648 '16':1023,1026,1563,1841,2745,2758,3491,3505,3542,3560,4829,4833,6381,6540 '16/1':2747,2760 '18':1478 '192k':1489 '1cat':2537,2566 '1h':511 '1k':6610,6626 '1s':5430 '2':228,630,786,1557,2429,2625,2706,2750,2772,2820,2858,2870,2874,2886,2963,3109,3116,3245,3253,3333,3493,3696,3839,3847,4376,4393,4422,4473,4588,4596,4765,4852,6580,6609,6768,6786,6805 '2.0':3026 '2.5':1173,1884,2390,3978,4038,4260 '20':5157,5192,5208,5637 '20m':6433,6850 '20s':879,2626 '21m00tcm4tlvdq8ikwam':1645,1661,3140,3779 '226':5439 '24':6249 '24h':6114 '250':2887 '252':1889,3981,4043,4265 '280':5421 '2min':6765,6798 '2x':4853 '3':242,651,966,1171,1523,2683,2723,2741,2960,2962,3114,3250,3385,3521,3738,3844,4593,6675,6782 '3.1':3112,3248,3842,4591,6777 '30':4152,5531 '30m':6446 '30s':6764,6794,6797 '3min':6779,6791,6802 '3s':5749 '4':268,377,664,2959,3445,4809,5345,5489 '4.5':3951,3970,4309 '400':1420,2132 '402':6309,6853 '403':153 '409':6312 '42':2593 '483921':331 '4k':6644,6658 '5':315,910,1595,1836,2755,2798,2803,2951,3028,3713,3749,4335,5519,6773 '5/10/15s':2602 '50':4082,5031,5901,6050 '500':2821,2909 '5min':6769,6787,6806 '5s':2604,6614 '6':335,348,2751,2773 '60':2012 '61':1890,1891,3982,3983,4044,4045,4266,4267 '66':3947,3966,4305 '7':2955 '8':1981 '80':1882,3974,4036,4094,4258 '842':2859 '8min':6783 '9':1022,1027,1562,1840,3492,3504,3541,3559,4830,4832,6380,6539 '9/9':2746,2759 'aac':1486 'absolut':135 'acceler':2517 'accept':389,486,2106,2531,3057,6090,6092 'accept-al':6089 'access':88,100,609 'account':97,103,222,2056,4954,4956,4959,5075,5083,5100,5106,5114,5129,5313,6190 'across':40,6734 'act':495,519 'action':281,6721 'activ':5014,5016 'active-status':5013 'actual':1260 'ad':935,4644,4972,4996,5004,5036,5042 'adapt':1157,3450 'add':1785,1859,2262,3401,3877,3893,3990,4098,6544,6678,6857 'ads-status':5035 'afterward':528 'agent':20,1128,1514,1991,2023 'agent-gener':1990 'ai':1197,1199,1698,5838,6321,6330,6402,6701 'aigc':5122 'air':1066 'align':1455,4693,6584,6589 'all-room':6059 'almost':2999 'alphabet':363 'alreadi':338,1223,1910,3191 'also':6633,6651 'alt':5086 'alt-text':5085 'alway':819,1490,1652,2057,3130,3539,3554,4494 'ambient':3914 'ambigu':487 'amplifi':959 'analysi':140,1099,1103,1247,6164,6232 'analysis/effect':1937 'analyt':116,704,4961,4963,4966,4969 'analyz':945,6165,6224,6235,6282,6295 'anchor':6738 'android':357 'angl':876 'anim':1786,1810,1860,3679,3971,3991,4007 'animated.mp4':3719 'animatedcapt':1367,1792,1868,4000,4022,4169,4244,4776 'announc':5702 'anonym':101,6192 'anton':4918 'anyth':387 'api':80,5309,5414,5734,5737,6815,6823 'app':200,318,426,974 'app.wondercat.ai':160 'app.wondercat.ai/settings/billing.':159 'appear':2796 'appli':415,2713 'array':5069 'artifact':1100,1104,1248 'ask':398,684,1469,2436,2503,2658,3094,3545,3866,4690,4702 'aspect':1560,1838,2956,3474,3489,3502,3527,3557,4483,4497,6378 'aspect-ratio':1559,1837,3488,3501,3526,3556,4482,4496,6377 'aspectratio':4875,6273,6538 'aspir':660 'asset':1548 'assist':6322 'assum':1315 'atmospher':2846,3370,6695 'attach':1673,1718,1745,2670,2716,3710,3726,3746,4480,4531,4553,4741,4760,5339,5341,5432,5485,6594,6744 'audienc':702,976 'audio':29,1110,1232,1623,1633,1667,1681,1697,1711,1737,1801,1825,1899,1906,2404,2990,2996,3042,3071,3154,3165,3208,3649,3754,3768,3810,3836,4003,4144,4216,4218,4583,4687,4698,4719,4744,4797,4859,6176,6513,6517,6520 'audio-media':3648,3809,4143,4215 'audio/edit':111 'audio/frame':1234 'audio/video':1663 'audiovolum':3817,4151,4222,4802 'auth':70,72,86,5169,5174,5180,5184,5567,5572,5578,5582,5798,5814,5819,5825,5829,5834,5914,5925,6016,6023,6032,6131,6818 'auth-set':6022,6031,6130 'author':5230 'auto':485,552,1416,1501,2242,2287,2509,3529,4359,4485,4499,6118,6216,6318 'auto-accept':484 'auto-detect':2286 'auto-en':551 'auto-overwrit':1500 'auto-pick':2241 'auto-refresh':6117 'auto-reject':1415 'auto-retri':6215,6317 'auto-select':2508,4358 'autom':418,468,525 'automat':3020 'avail':94,2644,6457,6501 'avoid':6145 'b':882,1487,1692,6752 'b-roll':881 'back':252,297,347,1186,4715 'background':2448,3179,3379,4099,4477,4514,4542,4551,4566 'backward':4865 'bad':3373,6836 'bake':3267 'ban':2836 'banana':1556,2428,2472,4472,6608,6624,6642 'base':19,2489,2492,3024,6196 'base64':276 'bash':56,529,695,826,1270,1281,1471,1549,1627,1706,1819,1921,2153,2375,2559,3684,3762,3921,4017,4068,4101,4195,4316,4348,4459,4516,4731,4751,4951,5168,5566,5813,6015,6223,6336,6406,6452,6515,6587 'basic/free':120 'batch':889,890 'beauti':624 'beba':4895 'before/after':645 'behavior':6084,6160 'behind':2177,2189,3233 'best':5919,6649 'better':2687,3129,3185,4618,4626,4629,4631,4724 'bg':2452,4521,4529,4560,4817 'birefnet':2451,4520,4528 'birefnet-bg-remov':2450,4519,4527 'block':2098,2928 'blue':4479 'blueprint':1138 'blurri':2590 'bookmark':5246,5248 'bottom':1879,3306,4033,4091,4255,4941,4944,4947,6573 'bottom-cent':1878,4032,4090,4254,4943,6572 'bottom-left':4940 'bottom-right':4946 'boundari':1044 'brain':929,932 'brand':130,697,698 'breath':3364,3380 'brew':63,66 'bria':4540,4549 'bria-video-background-remov':4539,4548 'bridg':971 'brief':937,2832 'brows':830,5148 'browser':75,523,5327,5332,5465,5472,5669,5674,5754,5761,6082 'budget':2800 'build':823,1101,1167,1246,1524,1967,2253 'built':1927 'built-in':1926 'bump':5459 'bundl':1386,5393 'buri':2923 'burn':999,1001,1239 'button':3186 'c':1472,1484 'cach':5385 'camera':3366,3704,6692 'can':207 'cap':2818,4238,4276 'capabl':3066,6478,6481 'caption':1000,1002,1240,1370,1451,1460,1787,1815,1861,3911,3972,3992,4012,4050,4055,5076,5084,5101,5107,5115,5130 'caption-seg':1459 'caption/text':1302 'captioned.mp4':4097 'carousel':965,969,5098,5127 'case':2149,3478 'cat':3375,3415,3424,4920 'categori':623,636,861,1936 'category-wonda' 'caus':6664 'cell':356 'center':1880,3945,4034,4092,4256,4299,4929,4934,4936,4938,4945,6574 'center-left':4933 'center-right':4937 'central':2852 'chain':1527,1533,3281,3592,3605,4161,4163,4660 'chang':201,4475,6745 'char':2860,2888,2910,5422 'charact':2822,3105,4712 'chat':405,3901,3933,6002,6013,6021,6030,6037,6047,6058,6074,6088,6095,6099,6106,6110,6320,6324,6338,6346,6353,6358,6367,6374,6387,6392 'chat/dms':5812 'cheapest':2454 'check':87,155,787,820,1319,1341,2307,3063,5185,5583,5830,5934 'checkout':6511 'choic':3003 'chrome':5471,5760 'chromium':5557,5796 'chunksecond':1723 'cinemat':642 'clean':3155,3192 'cli':2,8,10,1378,1422,1535,3606,6116,6214,6316 'click':458,5482,5767 'clip':873,1048,1995,2003,2030,2049,2070,2087,2237,2249,2284,2332,2619,2634,3882,4315,4336,4688 'clip-spec':2086 'clip1':4323 'clip2':4324 'clip3':4325 'cloudfront':1384 'cloudfront-host':1383 'code':330,337,376 'codec':1123 'collaps':1064 'color':700 'com.instagram.android':246 'com.zhiliaoapp.musically':248 'combin':2331 'come':2369 'comic':4919 'command':92,144,150,194,541,1125,1349,1499,1536,3607,3644,5396,5409,5715,5729,5992,6149 'comment':5851,5892,5896,5904,5951,5978,5990 'common':799,1657,2147,3591,4444 'compact':1119 'compani':771,5562,5600,5614,5617 'company/people':773 'competit':718 'competitor':714,743,744,779,4974 'competitor-vanity-nam':778 'competitor/niche':960 'complaint':2609 'complet':6436,6450 'complex':6719 'compos':32,2064,3599,5475,5496 'composit':3405,6171,6228,6276 'compositegrid':6246 'concat':1230 'condens':4902 'confirm':403 'connect':4952,5642,5644,5656,5660,5666,5724,5728,5747 'consent':384,479 'consent-lik':383 'constant':204 'constraint':3472 'constraint-heavi':3471 'contain':6245 'content':13,601,687,707,788,790,800,832,1437,2221,2485,2506,2530,2631,3006,3361,3460,3508,3537,6183,6327 'content-gener':2220 'context':694,1159 'continu':2318 'control':545,2775 'convers':735,2977,5621,6041 'cook':3904,3936 'cooki':1576,2486,2511,2513,2564,2577 'coordin':295 'copi':3327 'correct':2867,4604 'cost':4632,6194,6496 'could':214 'countri':4999,5007 'cover':5132 'cover-index':5131 'crackl':4120 'creat':223,231,686,3410,3419,5703,6185,6339,6361 'createnotetweet':5423 'createtweet':5419 'creation':14,602,6328 'credit':142,6195,6311,6508,6852,6858 'crf':1477 'critic':4562 'crop':1363,6528 'crop/scale/pad':1229 'cropped.png':6543 'cross':723 'cross-platform':722 'cursor':5399 'custom':1969,2066,2255,2737 'custommessag':5753 'cut':1061,1243,2340 'cuts/scenes':2306 'd':261 'danbooru':2534 'danbooru-styl':2533 'danc':921 'dance/motion':923 'data':5593 'date':312 'dead':1065 'decid':182,1174 'decis':681 'declar':2101,2229 'decod':274 'default':1356,1462,1579,2425,2550,2598,2603,2649,3016,3135,3516,4707,4870,5413,5733,6615 'degausai':6 'degausai/tap':65 'degausai/wonda':61 'delay':5404,5723,6000,6153 'delet':5709,5711,5985,5986 'delete-post':5708 'deliveri':1238 'demuc':1744,3205 'denois':1707,1721,3167 'depend':1954,2078 'deprec':1764 'depth':3442 'dereverber':1708,3168 'desc':5021 'describ':2213,3347,3358,3382,4506,6685 'descript':850,2117,2274 'descriptor':3403 'detail':5177,5575,5822,6027,6463,6476,6835 'detect':1042,1062,2075,2207,2240,2260,2264,2288,6146 'determinist':986,1218,1263 'devic':172,230,235,238,244,255,271,341,366,374,451,499,531 'devicetyp':535 'dialog':5505 'dialogu':1626,1679,1682,1686,3149,3152,3256,3885,4650 'dialogue.mp3':1696 'differ':2397,2439,2611,3869,4191,4569,6637 'digit':336 'dimens':3533,4502 'dino':2211,2269 'direct':1701,2896,3260,3640,4651,6004 'direct-infer':1700 'director':607 'discov':674 'discoveri':6162,6451 'discuss':757 'dismiss':378 'distribut':4950 'dm':6040,6080,6135 'dmd':2516 'dms':6003 'document':2073 'doesn':3495 'domin':3918 'done':382 'download':573,1227,1273,3619,3675,5044,6274 'downstream':6759 'draft':914 'dramat':4617 'drawer':5743 'dress':2172 'drift':210,5539 'drift-proof':5538 'drive':167 'driven':5492 'drop':2850,5078,5109 'durat':1594,1835,2601,2620,2744,3056,3058,3712,3748,6199,6632 'durationm':6271 'e.g':4167,4392 'echoey':3176 'edit':30,108,811,1189,1261,1351,1754,1865,2414,3048,3049,3522,3629,3802,3923,4019,4070,4136,4206,4209,4232,4241,4283,4318,4363,4409,4457,4490,4509,6333,6370,6512,6516,6519,6526,6532,6556 'editaudio':1371,3805,4139,4168,4212,4794 'edited.png':4488 'editor':1145,1393,1704,1778,2412,3665,4159,4165,4177,4201,4231,4275,4769,6417,6418,6470,6795 'editorpipelin':1137 'effect':1915,2077,2093,2327 'element':306,2738,6686 'element1':2739 'element2':2740 'elevenlab':1637,1650,1671,1685,3088,3144,3151,3283,3772,6200 'elevenlabs-dialogu':1684,3150 'elevenlabs-stt':1670,3143 'elevenlabs-tt':1636,1649,3087,3282,3771 'email':179,221,226,322,324 'emit':1769 'empir':2855 'empti':3386,3448 'enabl':553 'end':2010,2389,6267 'endpoint':1528 'engag':5565 'engin':5594 'enhanc':1712,1717,3153,3162,3166,3326,3429,6403 'enhanceaudio':1757 'enhanced.wav':1727 'entertain':5305 'entri':2114 'env':82,6825 'error':154,1290,5438,6307,6807,6834 'escal':2607,2890 'estim':6491,6497 'etc':127,166,314,568,629,3905 'even':1088,2882,6251 'evenly-spac':6250 'everi':96,1181,3626,6113 'everyday':640 'everyon':5121 'everyth':122,137,1795 'exact':806,2043,3322,3330,3394,6399 'except':3480 'excit':5700 'exclud':1573,6731 'execut':1160 'exist':1318,1512,3050,3523,4492,4680,4686 'expand':4911 'expect':2301,6762 'expir':6112,6125 'explicit':402,1306,2435,2502,2527,2657,3092,3499,3569,3865,4674 'export':991,1032,1464 'express':596 'extract':339,1081,1082,1109,1233,1340,1457,1739,1800,3197,3210,4002,4171,4858,6169,6586,6591 'extract-timestamp':1456,6590 'extract-voic':1738,3209 'extractaudio':4855 'extraexpand':4914 'face':2689 'factor':2974 'fail':2460,5436,6828 'fake':3291 'fall':251,296 'fallback':4579,5783 'famili':1312,2721,3015 'far':3128 'fashion':627 'fast':2642,3033,5429,5748 'faster':211,4854 'faststart':1483 'fc':1323,1326 'fc-list':1325 'fc-match':1322 'featur':5446,5543 'feed':345,760,1543,2315,3342,3587,3612,5093,5807,5860,5922 'femal':1660,3136 'fetch':6051 'ffffff':6578 'ffmpeg':978,983,998,1005,1015,1039,1059,1079,1098,1117,1120,1216,1279,1283,1286,1344,1505 'ffmpeg-analysis-artifact':1097 'ffmpeg-burn-capt':997 'ffmpeg-frame-extract':1078 'ffmpeg-local-video-finish':977 'ffmpeg-refer':1116 'ffmpeg-scene-split':1038 'ffmpeg-silence-cut':1058 'ffmpeg-social-format':1014 'ffmpeg-specif':1343 'ffprobe':1285,1288 'fg':4820 'fi':1619,4115 'field':240,579,585,2817,3444 'file':576,1221,1268,1308,2019,5490 'filter':590 'final':1391,3672,5516 'final.mp4':1894,4312 'find':734,955 'fine':198,2709 'fingerprint':5526,5739,5772 'finish':981,984,1176,3677 'finishing/captions/formatting/splitting/artifact':1339 'first':55,1269,1320,1495,2062,2333,3309,4386,4424,4429,4442 'first/last':1106,2807 'fit':628 'fix':2520,6665 'flag':539,546,1396,1496,5447,5544 'flash':1961,1983,2154,2165,2382 'flow':188,208,267,480,682,1452 'fmt':1480 'follow':688,3300,5240,5242,5257,5262,5265,5270,5370,5372 'font':1122,1298,1307,1317,3908,3960,3984,4892 'fontfamili':1873,3938,4027,4085,4249,4300,4779,4789,6568 'fontsizescal':1885,3948,3967,3975,4039,4261,4306,4782,4792,6575 'food':625 'footag':3097 'forc':548,1404,6102 'force-refresh':6101 'form':5427 'format':632,1017,1292,2842,2935,6552 'found':50 'fps':2976,6272 'frame':1080,1084,1086,1107,2008,2011,2808,3920,4443,6172,6253,6729 'free':117,1447 'frozen':4441 'full':612,837,846,1441,1942,1950,2052,2085,3799,4512,5228,5328,5670,5787,6189,6255,6479 'fulli':5537,5777,6126 'function':1783 'funni':679 'g':60 'garden':2583 'gather':693 'gavenc':4921 'general':2753,3183 'generat':24,124,909,947,1198,1551,1588,1603,1609,1820,1829,1911,1992,2222,2403,2561,2574,2707,2950,2997,3040,3117,3255,3296,3627,3698,3734,3763,3849,4105,4467,4524,4545,4598,4733,4753,6332,6707 'gentl':3363 'get':239,836,1007,1154,1851,3786,4127,4230,4274,4988,5038,6290,6355,6409,6416,6423,6439,6831 'give':512 'global':537 'glow':1962,1979,2155,2166,2383,2385 'go':1185 'golden':2584 'good':1578,3362,6618 'googl':5615 'grant':391 'graph':5167 'graphql':5386,5418 'great':5349,5931,5944 'grid':1105,6173,6229,6277 'grok':2477,2481,2945,6785 'grok-imagin':2476 'grok-imagine-pro':2480 'grok-imagine-video':2944 'ground':2210,2268 'group':1934 'guess':294 'guid':797,842,3962 'hand':444,462,6716,6720 'handi':2020 'handl':713,1794,4810,4978,5258,5266,5274,5371,5376,6308,6331 'hang':1516 'happen':5450 'head':870 'header':2839 'heavi':3473 'heavier':1777 'height':6270 'hello':1693,2197,5317,5325,5337 'help':5175,5573,5820,6025 'hero':2915 'hey':5658,5668,6077 'hi':1690,5693 'hidden':5495 'high':1598,1844,2606,3031,3716,6613,6616,6621,6629,6647 'highlight':355 'highlightcolor':1887,3979,4041,4263,4784 'hip':4116 'hire':2519 'histori':5135,5138,5144 'hit':469 'home':5237,5238,5917,5921 'homebrew':62 'hook':655,933,970,4293 'hop':4117 'host':1203,1385 'hot':763,5848,5863,5867,5909 'hour':2585 'human':466,475,5479,6159 'human-styl':5478 'id':565,567,1147,1210,1257,3633,3639,4174,5383,5388,5444 'idea':948 'ideal':569 'ident':699,2686,5589 'identifi':563 'imag':25,864,901,925,1552,2424,2458,2469,2562,2575,2664,2673,2679,2694,2704,2718,2731,2736,2768,2782,2794,2809,3041,3335,3341,3355,3360,3384,3412,3421,3582,3681,3694,3722,3729,4456,4468,4493,4513,4517,4525,4532,4563,4879,4886,4888,5089,5155,6230,6247,6514,6527,6533,6548,6550,6557,6599,6660,6668,6671,6689,6742,6763 'image-to-video':2663,2730,2767,3334 'image/edit':110 'image/generate':125 'image/gif/video':5342,5486 'imagecrop':4872,6535 'imageri':2475 'imagin':2478,2482,2946 'img2img':4458 'impli':577 'import':2813,6108 'impress':5020 'inbox':325,6038 'includ':1443,2958,6150 'inconsist':6733 'index':848,4390,5133 'individu':1534,2347 'infer':1702,1852,2401,3657,3787,4128,4193,4196,4636,6410,6411,6431,6832,6848 'inferior':2992 'influenc':953,957 'info':3070,5160,5857,6461,6474,6840 'inlin':1996 'input':851,4773,5497,6554 'insid':2925,3261 'inspect':6280 'instagram':164,705,716,3586,4957,4964,4981,5073,5081,5097,5139 'instagram-carousel':5096 'instal':45,53,67,5556,5795 'install/list/get':147 'instead':3892,6715 'instrument':1734,3078,3216 'insuffici':6310,6851 'intel':784,941 'intent':4347 'inter':4893 'interact':1507,6323 'intern':5308,5417 'invent':1348 'isn':409 'isol':3199,3230 'iter':6335,6620 'jitter':5481 'job':564,1146,1213,1394,1779,1827,1850,1854,2037,2041,2127,2399,2402,2413,3658,3666,3766,3785,3789,4103,4126,4130,4178,4194,4197,4202,4207,4229,4233,4239,4273,4277,6233,6243,6404,6408,6412,6415,6419,6422,6426,6429,6827,6830,6846 'johndo':5605 'join':6064 'jq':586,595,1855,3652,3660,3790,4131,4189,4234,4278,6301 'js':5392 'json':547,549,584,591,1144,1296,1930,1941,1997,2374 'jwt':510 'keep':3453,3467,4339,4349,4452 'key':81,285,375,4774,6816,6824 'keyboard':364,380 'keyword':733,961,5012 'kind':5154 'kling':2682,2719,2722,2749,2771,2801,2810,2814,2824,2843,2881,2892,2895,2939,3113,3249,3578,3723,3737,3843,4592,6674,6781 'kling2':2797 'knob':5462 'lambda':1405 'landscap':3561 'languag':2495,2543,2904,3123,3259,3273,3855,4602,4730 'last':4378,4382,4387,4577 'last-resort':4576 'last-scen':4381 'last30d':5023 'latch':2844 'latest':6043 'launch':245,5467,5756,6342 'lavend':3378 'layer':2004,2090 'lead':2912 'left':4926,4935,4942 'legaci':2983 'level':1806,5118,6263 'librari':858,5150 'libx264':1474 'lifestyl':661 'light':2540,2569,3371,3404,3440,4630 'like':385,1575,5251,5253,5354,5355,5678,5679,5687,6663 'limit':422,5140,5146,5156,6067,6134,6350 'line':3271 'link':332,5947 'linkedin':41,767,772,776,782,5558,5571,5577,5581,5586,5591,5603,5613,5620,5626,5634,5641,5646,5655,5665,5677,5683,5689,5698,5707 'lip':3009,4574,4627,6799 'lipsync':2980,2984,3242,3287,4623,4662,4668,4704,4738 'list':829,1327,1925,2235,5153,5273,5277,5286,5291,5622,6039,6062,6347,6348,6455,6468,6484,6500,6813 'list-timelin':5285 'liter':3469 'live':509 'llms':1949,2061 'lo':1618,4114 'lo-fi':1617,4113 'local':979,982,992,1003,1009,1019,1033,1045,1053,1067,1073,1091,1092,1102,1111,1129,1134,1140,1179,1215,1267,1278,1301,1338,1354,1435,1463 'log':118,2054 'logged-in':2053 'login':73,105,6819 'long':2022,5426 'long-form':5425 'longer':2630,6631 'look':2329,2837,3125,6717 'loop':184,218,269 'luxuri':644 'm':5667 'mailbox':176 'main':1337 'maintain':215,5549 'mainten':5378 'make':435,3102,4710 'manag':6085 'mandatori':2668 'mani':5801 'manifest':1143,1376 'market':606,761,928,930,4949,5855,5861,5929,5942,5966 'marketing-brain':927 'mask':2082,2217 'match':308,1151,1166,1324,1532,3310,3462 'matrix':6008,6105 'max':2616,5029,5402,5721,5998,6385,6639 'max-pag':5401,5720,5997 'max-result':5028 'maxsilencedur':4869 'may':2328 'meant':3916 'media':33,106,566,1130,1182,1209,1256,1272,1674,1719,1746,1848,1869,1871,1958,1976,2001,2028,2162,2185,2379,3524,3632,3646,3650,3685,3687,3711,3747,3783,3806,3808,3811,3813,3927,3929,4023,4025,4074,4076,4124,4140,4142,4145,4147,4173,4213,4217,4227,4245,4247,4271,4287,4289,4322,4329,4367,4369,4413,4415,4460,4462,4481,4533,4555,4743,4745,4762,5025,5068,5074,5082,5099,5105,5113,5128,5149,5152,5159,5434,6220,6237,6239,6284,6286,6297,6299,6313,6372,6522,6536,6560 'media-typ':5024 'media.mediaid':1858,2411,3655,3793,4134,4200 'media.url':589,2407 'mediaid':996,1013,1037,1057,1077,1096,1115,2421,3663,4205,4237,4281,5065 'medium':1476 'member':5279 'member-of':5278 'membership':5282 'meme':638,3899 'mention':3497 'merg':1412,2636,4313,4321,4405,4805 'merged.mp4':4328 'messag':5563,5623,5627,5629,5657,5692,5696,6005,6044,6048,6052,6354,6356,6360,6369,6376,6389,6394 'meta':4971 'meta-ad':4970 'metadata':1946 'method':2267,2283,4708 'millisecond':4839 'mimic':6081,6158 'min':5520 'minclipdur':4375,4421 'mitig':5740 'mix':3794 'mode':4344,4354,4371,4401,4417,4438,4450,4843,5406,5412,5726,5732 'model':808,1553,1574,1590,1605,1611,1635,1669,1683,1713,1741,1831,2239,2422,2440,2512,2563,2576,2720,2943,3018,3062,3069,3277,3346,3351,3579,3583,3700,3736,3770,3889,4107,4469,4526,4547,4570,4585,4655,4721,4735,4755,6454,6458,6460,6462,6488,6492,6593,6600,6603,6810,6812,6839 'modif':3332 'montserrat':4894 'mood':3407 'motion':922,2774,2776,2791,2835,3348,3365,6683 'motiondesign':1414 'mouth':3265,4606,4695 'move':1264 'movement':3266,4607,6693 'movflag':1482 'mp4':3824,3959,4051,4158,4384,4430,4561 'muffl':3175 'multi':1407,1677,2290,3038,3147,3601 'multi-refer':3037 'multi-scen':2289 'multi-speak':1676,3146 'multi-step':3600 'multi-video':1406 'multipl':2305,2633,4164,4314 'multipli':4851 'music':27,1610,1614,3072,3075,3232,3761,4100,4102,4106,4110,4123,4129,4146,4157,6788 'music.mp3':1622 'must':2122,2680 'mute':3797 'mux':988 'n':5191,5207,5398,5636,5717,5900,5994,6049 'name':781,1313,2116,2141,2368,2662,5609 'nano':1555,2427,2471,4471,6607,6623,6641 'nano-banana':1554,2426,4470,6606 'nano-banana-pro':2470,6622,6640 'nanobanana':2459 'narrator/voice-over':3093 'nativ':893,2995,3118,3236,3850,4582,4718,5503 'native-audio':2994,4581,4717 'natur':1071,2339,2494,2542,2903 'natural-languag':2902 'navig':5762 'need':1208,1397,2081,2252,2441,2447,2465,2554,3617,3830 'negat':1568,2546,2587 'negative-prompt':1567,2545,2586 'nest':2361 'neue':4896 'never':1314,2507,3000,3280,3871,4571 'new':3005,5077,5108,5850,5868,6343 'news':5294,5303 'next':454,1546,3615,3643,4185 'nice':5953 'nike':4979,5198,5206 'no-bg':4558 'no-bg.png':4536 'nohemi':4915 'nois':3180 'noisi':3157 'non':3447 'non-empti':3446 'normal':1236,6212 'note':4187,5663,5751 'notif':5635,5639 'noun':2847 'npm':57,58,5551,5790 'npx':5554,5793 'number':310,4391 'number/date':350 'numer':361 'o':572,1274,1565,1600,1621,1647,1695,1726,1748,1893,1964,1985,2014,2033,2174,2200,2392,2571,2595,3669,3718,3751,3820,3955,4047,4096,4154,4311,4327,4380,4426,4487,4535,4557,4747,4767,6288,6524,6542,6582 'object':6679 'occasion':5435 'offer':6634,6652 'offset':6351 'omit':1050,4400,4418,4437 'omni':3036 'one':1051,1797,2044,2323,4015,4361,4403 'onto':1816,2845,3795 'op':1361,1409,1705,1953,2080 'open':74,257,2919,5473,5506,6509 'open-url':256 'oper':812,1699,1756,1759,1793,1867,1933,1940,2373,3804,3925,4001,4021,4072,4138,4166,4211,4243,4285,4320,4365,4411,4770,4772,6467,6471,6473,6475,6521,6534,6558,6796 'option':862,884,899,2802,5800 'orang':3433 'order':690,818,4330,4332,4811,4813 'origin':1898,3798 'oswald':4897 'other':2432 'otherwis':1470 'out.mp3':6525 'out.mp4':1601,1965,1986,2015,2034,2175,2201,2393 'out.png':1566,2572,2596 'output':538,544,550,560,574,581,587,592,1389,1504,1510,1541,1856,2394,2405,2409,2415,2419,2443,3611,3636,3653,3661,3678,3791,4132,4160,4179,4198,4203,4235,4279,4887,6244,6302,6549 'output.png':6583 'outputkey':6304 'outputselect':4377,4385,4423,4431,4846 'outputvalu':6306 'overlay':1410,3896,3898,3964,4814,6530 'overrid':1570,2344,2345,2384,2551 'overs':3436 'overwrit':1502 'paddingtop':3952 'page':5403,5618,5722,5999 'pagin':5395,5714,5991 'paid':131 'pair':2991 'param':1596,1643,1656,1720,1842,1872,1945,2280,2348,2367,3077,3134,3138,3714,3777,3814,3937,4026,4084,4148,4219,4248,4295,4370,4416,4763,4775,6465,6537,6567,6656,6837,6843 'paramnam':2363 'part':4609 'pass':1398,1491,2137,2931,3637,4181 'passiv':6726 'passthrough':3315,6396 'passthrough-prompt':6395 'password':227 'patchright':5333,5466,5553,5555,5675,5755,5792,5794 'path':52,994,1011,1035,1055,1075,1094,1113,1131,1309,1511,1762,2396,4190,4615 'pattern':3593,3595 'paus':1072 'pend':6094 'peopl':2708,5596,5599 'per':1944,2342 'per-param':1943 'per-step':2341 'perform':633,708 'period':5022 'permiss':392 'person':441,673,2178,2190,2194,2691,3692,3720,3732,3742,6669 'person.mp4':3752 'person/face':2674 'phone':2877 'photorealistic/creative':2474 'physic':4628 'pick':232,279,2243,2652,4345 'picker':311,5504 'pin':1581 'pip':877 'pipe':557 'pipelin':905,1780,1916,1970,2067,2257,2358,3603,5514 'pix':1479 'plan':121,136,157 'platform':37,715,724,4980,6480 'play':3432,4864 'playback':4331,4812 'playerurl':503,534 'playwright':5499 'plus':132 'png':277 'png/jpg':4889 'point':5350 'poll':236,2038 'poor':2826 'pop':358 'poppin':4916 'popular/trending':5910 'portrait':2538,2567,3513,3540 'posit':1877,3942,4031,4089,4253,4296,4780,4790,4821,4923,6571,6727 'possibl':2455,6650 'post':912,944,3588,5319,5483,5681,5699,5705,5710,5713,5809,5845,5865,5881,5887,5899,5902,5911,5938,5948,5954,5976,5988 'poster':1085 'pre':4679,4685 'pre-exist':4678,4684 'prefer':493,1304,3239,4580 'premium':5428 'present':3566 'preserv':1069,1901,2685,3531,4501 'preset':1475,1924,1929,1952,1960,2046,2095,2100,2112,2164,2187,2225,2292,2296,2312,2351,2381 'price':6202,6483,6485,6490 'primari':562 'primit':173 'privaci':5117 'privacy-level':5116 'pro':133,2473,2483,2684,2724,2752,2799,2871,2982,3110,3246,3289,3739,3840,4589,4625,4670,4740,6625,6643,6676,6772 'process':6315 'produc':1539,2321,2875,3630,4616 'product':613,622,641,669,676,701,853,863,900,950,972,3708,5088,6341 'product-video':852 'product/scene':855 'profil':777,783,5200,5561,5604,5607,5651,5741,5765,5876 'prompt':809,857,1506,1519,1558,1569,1593,1606,1615,1639,1687,1834,2148,2151,2156,2158,2167,2168,2180,2192,2203,2223,2231,2279,2496,2547,2565,2578,2588,2811,2816,2864,2899,2936,3054,3279,3297,3323,3387,3398,3418,3449,3468,3703,3740,3774,3891,3931,4066,4078,4111,4291,4474,4504,4657,4788,6397,6400,6495,6562,6684,6712,6723 'prompt-text':3930,4065,4077,4290,6561 'proof':663,5540 'prose':2905 'protect':5788 'protocol':6009 'public':5119 'publish':34,114,394,1202,5070,5072,5080,5095,5103,5111,5124,5137,5143,6424,6425 'pull':3220 'purpos':2754 'push':3368,3706,4714 'put':2271,3269,3883,4648 'puzzl':431,460 'qualiti':1597,1843,2605,2608,3715,6383,6596,6617 'quality-ti':6382 'queri':2209,4997,5005,5387,5443 'queryid':5542 'quick':4053 'quiet':558,1846,3690,3781,4122,4225,4269,4465,5060,6241 'rachel':1659,3141 'raleway':4917 'random':224 'rare':2461 'rate':421,6133 'rate-limit':420 'rather':262,2921 'ratio':1561,1839,2957,3475,3485,3490,3498,3503,3528,3558,4484,4498,6379 're':438,3622,3913,6128,6756 're-run':6127,6755 're-upload':3621 'reach':3872,4664 'reaction':888,895,5647,5648,6364 'reactor':5650 'read':278,301,1155,2058,5163,5186,5215,5584,5628,5802,5831,5912,6034 'readabl':2466 'readi':234,6222 'real':440,5331,5469,5673,5758 'reason':1784 'recaptur':5451 'recent':746,5211,5638 'recip':129,1442 'recommend':76 'record':3173 'recoveri':6808 'recreat':2787 'recur':2246 'reddit':42,749,756,759,939,5797,5818,5824,5828,5836,5853,5859,5872,5878,5889,5898,5906,5916,5927,5940,5950,5957,5964,5972,5980,5984,6001,6020,6029,6036,6046,6057,6073,6087,6098 'reddit-subreddit-intel':938 'reel':908,915,3511,3549,5047 'ref':3043 'refer':885,1118,1126,1951,2672,2678,2693,2703,2781,2785,3039,3728,4771,6741 'reflect':3437 'reformat':1018 'refresh':5382,5384,6100,6103,6119 'refresh-id':5381 'reject':1417,2129,6667 'relat':656 'relev':721,727,5847 'remot':1133,1212,1434 'remotion-local-rend':1132,1433 'remotion/renderer':1142,1380 'remov':2449,2453,3021,4397,4402,4435,4440,4515,4522,4530,4543,4552,4567,5685,6708 'render':1135,1136,1353,1400,1429,1436,1809,2866,4006,6704,6754 'render-serv':1399,1428 'repeat':2143 'replac':369,1231,1904,3753,3832,3858 'repli':5220,5221,5234,5348,5351,5955 'replic':1715,1743,3160,3204 'replicate-demuc':1742,3203 'replicate-resemble-enh':1714,3159 'reproduc':1585,2558 'request':2528,3395,3466,3570,3590,5546,5661,5725,6096 'requir':141,473,1653,2050,2119,2120,2157,2179,2778,5550,5789,5913,5924,6010,6187 'requiresmultiscen':2293,2308 'research':719,725,774,5456 'research/automate':39 'resembl':1716,3161 'resizeperc':4822 'resolut':2970,6601,6657 'resort':4578 'respond':2825 'rest':4407,5736 'restrict':2521 'result':1586,4619,4989,5030,5039,5063 'resum':527 'retri':6217,6319 'return':151,329,501,1374,5061,6227 'retweet':5362,5363 'reveal':973 'revers':989,1235 'reversevideo':4861 'rewrit':2355,2897 'rgb':1888,3980,4042,4264 'right':3002,4932,4939,4948 'rise':5870 'risk':5527,5773 'roll':883 'room':6055,6061,6065 'rotat':3709,5442 'round':4638 'round-trip':4637 'rout':1121,1192,1774,2667 'rule':1193,1299,2711,2812,3013,3299,3311,3476 'run':1379,1957,1975,2000,2027,2161,2184,2378,5171,5569,5816,6018,6129,6405,6438,6440,6443,6449,6757 'runwar':2445 'runware-vector':2444 's.json':273 'safe':1031,5778 'sale':4081 'sam2':2236 'san':1875,3940,3986,4029,4087,4251,4302,4899,4901,4904,4907,4910,4913,6570 'save':225,5973,5974 'say':3319,3409 'scenario':657 'scene':667,1040,1043,1052,1242,1982,2291,2298,2324,2833,4338,4342,4352,4357,4383,4396,4399,4404,4433,4454 'scrape':115,711,906,942,1201,4973,4976,4984,4993,4995,5003,5034,5051,5053,5062 'scratch':825,1169,1526,3389 'screen':471,4061 'screenshot':181,272,286,304,975 'script':571,1641,3776,5508 'sdxl':2488,2514 'sdxl-base':2487 'search':730,750,768,954,5010,5043,5189,5193,5560,5592,5597,5806,5837,5844 'search-typ':5009 'second':4395,4635 'secondari':5312 'section':455,2838,3011 'see':453,1431,3007,3353 'seed':1580,1583,2556,2592 'seedanc':1591,1832,2599,2624,2696,2705,2873,2891,3014,3022,3025,3034,3044,3115,3252,3695,3701,3846,4595,6493,6611,6627,6645 'seedream':2462 'segment':1461,2076,2261 'select':371,582,2498,2510,4360,6303 'self':5233,5937 'self-repli':5232 'semicondens':1876,3941,3987,4030,4088,4252,4303,4905 'semiexpand':4908 'send':319,1988,5659,5691,5694,6075,6078,6136,6148,6359,6368,6375,6388,6393 'send-messag':5690 'sensibl':2549 'sentenc':2920 'separ':6012 'seri':6735 'server':1373,1401,1430 'servic':650 'session':6325,6344,6349 'set':78,3076,3131,3500,5181,5579,5826,6024,6033,6132,6821 'setinputfil':5501 'setup':69,5170,5568,5815,6017 'shallow':3441 'shape':2089,2359,5547 'share':5091,6737 'share-to-fe':5090 'shell':1515 'shift':3372 'short':508,1070,2901 'short-liv':507 'shortcut':193,2152 'shot':2319 'shouldn':482 'show':427,1291,1293,3596,6248 'sign':504 'signal':423 'signup':163,412 'silenc':1060,1244 'silent':2135,2849,3096,3295 'simplifi':6690,6724 'singer':3224 'singl':872,1083,1359,1547,1862,1919,2317,2618,5046,5216 'single-clip':2617 'single-video':1358 'situat':680 'size':3909,3961 'sizeperc':1881,3946,3965,3973,4035,4093,4257,4304,4781,4791 'skill':4,143,146,789,791,803,821,828,833,835,845,847,1150,1153,1165,1346,1438,1531 'skip':2136 'skipsil':4866 'slide':967 'slideshow':964 'slower':5528,5774 'slowli':3367,3705 'slug':849 'smaller':3907 'smile':3745 'sneaker':4998,5006,5190 'social':36,113,162,199,536,662,712,1016,1030,3507,3536,4953,4977,4986,4992,5166 'social-saf':1029 'social-status':4985 'social/marketing':3519 'soft':2539,2568,3381 'soften':3195 'somebuttonlabel':290 'someon':3544 'someth':395 'sora':1909,2628,2829,2862,2869,2934,3107,3108,3243,3244,3837,3838,4446,4586,4587,6666,6767,6771 'sora-format':2933 'sora-styl':2828,2861 'sora2':2613 'sora2pro':2615,6635,6653 'sort':752,762,5018,5840,5846,5862,5866,5883,5908,5918 'sort-bi':5017 'sound':3127,3174,3184 'sourc':3189,3340,3532,6682 'source-degausai' 'space':1089,6252 'speak':4713 'speaker':1678,1688,1691,3148,3222 'spec':2088 'specif':413,583,666,1345,4341,4351 'specifi':3483 'speech':1624,1631,1634,1709,1824,1913,3086,3120,3158,3238,3292,3769,3852,3878,4599,6259 'speech.mp3':1648 'speed':1364,4847,4850 'spez':5874,5882,5893 'spici':2484,2505,2529 'spinner':313,351 'split':1041,1046,1241,1728,2299,3201,3212,4337,4353,4355,4372,4449 'split/omit':4844 'splitscen':1413,4366,4412,4840 'splitscreen':1411,4823 'spokesperson':4646 'sport':5304 'spread':1980,2386 'squar':3571 'stale':6753 'standard':217,6605 'standard/basic':3032 'start':263,1252,2007,5718,6266 'start/end':2735 'static':3894,3897,3963,4054 'status':241,580,4987,5015,5037,6413,6420,6427,6441 'stdout':555 'stealth':5329,5671 'stem':1735,3202 'step':419,489,691,785,794,796,839,841,1139,1162,1170,1172,1522,1538,1798,1863,1972,1978,2047,2256,2265,2277,2343,2353,2365,3602,3609,3625,3673,3875,4016,4186,6747,6751,6760 'step-by-step':793,838 'step1':4226,4246 'step2':4270,4288 'stepnam':2362 'still':1090,1766,2234,6211,6314 'stitch':2632 'stop':396,442,3313 'stori':3512,3550 'strategi':898,931 'stream':452,500,532,1294 'streamurl':533 'stripe':6510 'strokewidth':1883,3950,3969,3977,4037,4259,4308,4783,4793,6579 'structur':2831,3455 'stt':1446,1672,3145,6201 'stt-free':1445 'studio':3439 'style':128,1450,2535,2612,2830,2863,3402,3457,5480,6390,6499,6503,6638,6732 'subject':2215,2247,2273,2834,2853,2916,2927 'submit':5524,5928,5941 'subreddit':764,940,949,5854,5856,5864 'subscrib':5965,5967 'summer':4080 'sunglass':3417,3426,3438 'suno':1613,3074,4109,6789 'suno-mus':1612,3073,4108 'suppli':1369,2124,2988,4675 'support':542,2544,2734,2806,2954,2975,3575,5162,5397,5431,5484,5559,5716,5750,5805,5993 'sure':436 'surpris':658 'swap':3459,4572 'swipe':284 'switch':6672 'symptom':6662 'sync':2979,3010,3119,3237,3286,3851,4575,4605,4622,4667,4737,6069,6800 'sync-lipsync-v2-pro':2978,3285,4621,4666,4736 'synced.mp4':4748 't2v/i2v':3027 'tab':5243,5295,5299 'tabbi':3434 'tabl':671 'tag':2491,2536 'tag-bas':2490 'take':477 'talk':867,869,3106,4642 'talking-head':868 'tap':64,282,292,352,386,407 'tap/type/swipe':183 'target':1465,2212,2894 'targetaspectratio':4828 'task':1183,1251,1335 'tech':626 'tell':804,1424 'templat':2103,3452 'temporari':102 'termin':18 'terminal-bas':17 'terms/privacy/cookies':390 'testimoni':648 'text':289,309,343,368,372,1604,1629,1665,2176,2181,2188,2196,2208,2467,2699,2726,2763,3053,3084,3895,3900,3932,3958,4059,4067,4079,4292,4294,5087,5530,5933,5952,6076,6143,6178,6256,6529,6545,6563,6565,6697,6705,6709 'text-to-speech':1628,3083 'text-to-video':2698,2725,2762 'textcolor':6577 'textoverlay':1366,3926,4063,4073,4170,4286,4785,4876,4883,4891,6559,6714 'think':599,619 'thread':5227,5229,5624,5632 'three':3477,5461 'threshold':4373,4419,4845 'throwaway':175 'tier':89,99,6384,6597,6598 'tiktok':165,250,892,903,917,963,968,1449,1874,3510,3548,3939,3985,4028,4086,4250,4301,4898,4900,4903,4906,4909,4912,4960,4967,5049,5104,5112,5126,5145,6569 'tiktok-carousel':5125 'tiktok-n':891 'tiktok-slideshow-carousel':962 'tiktok-styl':1448 'tiktok-ugc-pipelin':902 'time':754,1807,3998,4057,5842,6264,6761 'timelin':1993,2024,2071,5239,5287 'timeout':327,1521,6432,6445,6844,6849 'timestamp':1458,6585,6592 'titl':5930,5943,6340 'token':6014,6107,6111 'tone':5455 'tool':618,4725,5932,5945 'toolkit':15,614 'top':753,943,3304,3944,4298,4925,4928,4931,5841,5849,5869,5884,6506 'top-cent':3943,4297,4927 'top-left':4924 'top-right':4930 'top-to-bottom':3303 'topaz':2965,4757 'topaz-video-upscal':2964,4756 'topic':731,751,769,5298 'topup':6505,6855 'touch':616 'track':1730,2092,3217,3227,4860 'transcrib':1662,1668,1802,4004 'transcript':112,1625,3142,6177,6231,6254,6293,6305 'transcript/timing':1008 'transcription/alignment':1200 'transfer':924,2777 'transform':647,1219,2094 'transit':1204,1914,1923,1932,1939,1948,1956,1974,1999,2026,2036,2040,2060,2111,2160,2183,2311,2372,2377 'trend':765,5296,5297,5302,5810,5907 'tri':6702 'trim':987,1228,1362,2884,4834 'trimendm':4838 'trimstartm':4837 'trip':4639 'troubleshoot':6661 'true':1722,2294,2314,3079 'tts':1638,1651,1908,3089,3241,3284,3758,3764,3765,3773,3782,3788,3812,3861,4661,6792 'turn':3743 'tweak':2346 'tweet':742,747,5194,5205,5212,5217,5224,5254,5288,5316,5321,5324,5336,5405,5408 'twist':659 'twitter':952,5454 'twitter-influencer-search':951 'twitter-tone-research':5453 'two':875,3374,4343,5411,5731 'two-angl':874 'type':98,283,342,367,770,801,2005,2091,2400,5011,5026,5476,5595,5598,5652,6083,6152 'ugc':637,866,871,887,894,904,911,920,3104,3509,3534,3552,4643,6363 'ugc-dance-mot':919 'ugc-reaction-batch':886 'ugc-talk':865 'ugc/talking-head':3881 'ugli':2589 'ui':203,488,5770 'unauthent':5804 'unchang':2940 'understand':6181 'underwhelm':2330 'undetect':5470,5759 'unfollow':5375,5377 'unknown':6809 'unless':1466,3862 'unlik':5358,5359,5684 'unread':6698 'unretweet':5366,5367 'unsav':5981,5982 'unsub':5968 'unsubscrib':5970 'unvot':5962 'upbeat':1616,4112 'upload':1387,3623,3688,4463,5513,6208 'upload/download':107 'upscal':2967,2968,4750,4759,6804 'upscaled.mp4':4768 'upscalefactor':4764 'upvot':5960 'url':258,514,918,2395,2417,5055,5611,5946 'us':5000,5008 'use':21,288,497,814,1190,1194,1214,1427,1752,2042,2259,2282,2297,2335,2431,2523,2681,2695,3100,3169,3218,3307,3320,3390,3486,3525,3555,3584,3651,3668,3826,3906,4062,4436,4448,4495,4518,4538,5307,5310,5779,6121,6179,6398,6655,6713,6739 'user':400,448,492,517,741,936,1468,2434,2501,2526,2656,2987,3318,3392,3408,3464,3482,3494,3864,4673,4701,5197,5199,5204,5209,5261,5268,5275,5808,5873,5875,5880,5885,5891,5894 'user-com':5890 'user-post':5879 'user-suppli':2986 'user-tweet':740,5203 'v':1289,1473 'v2':2981,3288,4624,4669,4739 'valid':4890,4922,6842 'valu':2142,2364,3059 'vaniti':780,5608 'var':83,2140,2191,2195,6826 'vari':3060,6142 'variabl':2096,2097,2104,2108,2121,2204,2232,2251 'variat':6186 'vector':2442,2446 'veo':2637,2653,2660,3111,3247,3841,4590,6776 'veo3':2638,2640 'verbatim':3324 'verif':321 'verifi':84,2854 'version':1287 'via':1141,1453,2248,2635,3052,3163,3206,3645,5330,5452,5498,5672,5752,6006,6743 'vid':1826,1847,1853,1870,1959,1977,2002,2029,2163,2186,2380,3807,3928,4141,4214,4368,4414 'video':26,139,854,856,926,980,993,1010,1020,1034,1054,1074,1093,1112,1352,1360,1408,1589,1755,1790,1818,1822,1830,1866,1896,1920,2006,2303,2337,2597,2666,2701,2728,2733,2765,2770,2786,2789,2942,2947,2949,2966,2969,2989,3017,3047,3051,3055,3263,3276,3337,3345,3520,3553,3683,3699,3735,3757,3796,3803,3834,3888,3924,4020,4024,4071,4075,4137,4210,4242,4284,4319,4364,4410,4447,4537,4541,4546,4550,4554,4565,4584,4612,4647,4654,4681,4720,4734,4742,4749,4754,4758,4761,4777,4786,4795,4806,4808,4815,4818,4824,4826,4835,4841,4848,4856,4862,4867,4873,4877,4882,5027,5050,5054,5522,5535,5839,6163,6167,6182,6198,6205,6226,6236,6238,6283,6285,6296,6298,6365,6602,6677,6700,6711,6766,6770,6775,6780,6784,6803 'video-edit':3046 'video/edit':109 'video/generate':126 'videometadata':6268 'videovolum':3815,4149,4220,4799 'view':5606,5616 'vinyl':4119 'viral':897,907,946 'visibl':2675 'visit':5742 'visual':430,934,6174,6279,6502 'vocal':3082,3200,3235 'vocals.wav':1749 'voic':1658,1732,1740,3137,3172,3198,3211,3214,3823 'voiceextractor':1760 'voiceid':1644,1655,3132,3139,3778 'voiceov':3759,3800,3870 'volum':1365 'vote':5958 'voyag':5735 'wait':326,578,717,1564,1599,1607,1620,1646,1675,1694,1725,1747,1845,1892,1963,1984,2013,2032,2173,2199,2391,2570,2594,3717,3750,3780,3819,3954,4046,4095,4121,4153,4224,4268,4310,4326,4379,4425,4486,4534,4556,4746,4766,4982,5001,5032,5059,5509,6240,6287,6300,6430,6434,6444,6447,6523,6541,6581,6595,6847 'want':433,5786 'warm':4118,5745 'warm-up':5744 'warn':1771 'waterfal':2423,2650,3302 'watermark':2591,3019 'wear':3435 'web':266 'week':755,5843 'well':709 'whether':1175 'white':2171 'whole':2357 'width':6269 'window':6070 'with-capt':4048 'with-mus':4155 'with-text':3956 'with-voic':3821 'without':307,2354,4428,5833 'without-first':4427 'woman':2169,2580 'wonda':1,3,7,9,47,68,71,85,145,171,178,220,229,237,243,254,270,323,340,365,373,450,498,530,696,703,710,728,738,748,758,766,775,827,834,1152,1188,1195,1255,1271,1350,1454,1550,1587,1602,1608,1632,1666,1680,1710,1736,1753,1828,1849,1864,1922,1931,1938,1947,1955,1973,1998,2025,2035,2059,2110,2159,2182,2310,2371,2376,2560,2573,3065,3068,3164,3207,3686,3697,3733,3767,3784,3801,3922,4018,4069,4104,4125,4135,4208,4228,4240,4272,4282,4317,4362,4408,4461,4466,4523,4544,4732,4752,4955,4958,4962,4965,4968,4975,4983,4994,5002,5033,5052,5071,5079,5094,5102,5110,5123,5136,5142,5151,5158,5172,5178,5182,5187,5195,5201,5213,5218,5225,5235,5244,5249,5255,5263,5271,5283,5292,5314,5322,5334,5346,5352,5356,5360,5364,5368,5373,5379,5570,5576,5580,5585,5590,5602,5612,5619,5625,5633,5640,5645,5654,5664,5676,5682,5688,5697,5706,5817,5823,5827,5835,5852,5858,5871,5877,5888,5897,5905,5915,5926,5939,5949,5956,5963,5971,5979,5983,6019,6028,6035,6045,6056,6072,6086,6097,6234,6281,6294,6337,6345,6352,6357,6366,6373,6386,6391,6407,6414,6421,6428,6437,6442,6453,6459,6466,6472,6477,6482,6489,6498,6504,6518,6531,6555,6588,6811,6817,6829,6838,6845,6854 'wondercat':79,6822 'word':1805,1812,1814,3329,3994,3996,4009,4011,6262,6265 'word-by-word':1811,3993,4008 'word-level':1804,6261 'wordtimestamp':6260 'work':189,1280,1303,1767,4727,4884,5803,5832 'workflow':1206,6161 'world':2198,5318,5326,5338 'would':209 'write':3298,5164,5306,5653,5923,6071 'wrong':6718 'www.instagram.com':5057 'www.instagram.com/reel/abc123/':5056 'x':299,729,739,956,2973,4455,5173,5179,5183,5188,5196,5202,5214,5219,5226,5236,5245,5250,5256,5264,5272,5284,5293,5315,5323,5335,5347,5353,5357,5361,5365,5369,5374,5380,5390,5415,5441,5511 'x.com':5474 'x/twitter':44,737,5161 'xai':2948 'xclient':5464 'y':300,1492 'youtub':3565 'yuv420p':1481 'z':2457 'z-imag':2456 'zero':3331,5525,5771 'zoom':2388","prices":[{"id":"d51cb741-6617-4b89-bc4a-fd4105ea6079","listingId":"4546b75a-0cf5-44b1-ae76-71a31537f718","amountUsd":"0","unit":"free","nativeCurrency":null,"nativeAmount":null,"chain":null,"payTo":null,"paymentMethod":"skill-free","isPrimary":true,"details":{"org":"degausai","category":"wonda","install_from":"skills.sh"},"createdAt":"2026-04-19T13:32:19.313Z"}],"sources":[{"listingId":"4546b75a-0cf5-44b1-ae76-71a31537f718","source":"github","sourceId":"degausai/wonda/wonda-cli","sourceUrl":"https://github.com/degausai/wonda/tree/main/skills/wonda-cli","isPrimary":false,"firstSeenAt":"2026-04-19T13:32:19.313Z","lastSeenAt":"2026-04-22T06:56:10.545Z"},{"listingId":"4546b75a-0cf5-44b1-ae76-71a31537f718","source":"skills_sh","sourceId":"degausai/wonda/wonda-cli","sourceUrl":"https://skills.sh/degausai/wonda/wonda-cli","isPrimary":true,"firstSeenAt":"2026-04-22T06:40:41.501Z","lastSeenAt":"2026-04-22T11:40:27.140Z"}],"details":{"listingId":"4546b75a-0cf5-44b1-ae76-71a31537f718","quickStartSnippet":null,"exampleRequest":null,"exampleResponse":null,"schema":null,"openapiUrl":null,"agentsTxtUrl":null,"citations":[],"useCases":[],"bestFor":[],"notFor":[],"kindDetails":{"org":"degausai","slug":"wonda-cli","source":"skills_sh","category":"wonda","skills_sh_url":"https://skills.sh/degausai/wonda/wonda-cli"},"updatedAt":"2026-04-22T11:40:27.140Z"}}