Commands

tracee clips

Clip long videos into shorts, dub them, AI actor ads.

list

List recent clipping jobs.

tracee clips list

Calls GET /api/v1/clips

create

Clip a long video. Turns a talk, webinar, podcast or interview (up to 2 hours, 1 GB) into up to 12 vertical clips with a viral score, a hook line, captions and ready-made copy. url takes a video page on YouTube, Vimeo, TikTok, Instagram, X, LinkedIn, Loom and more, a Google Drive, Dropbox, OneDrive or Box share link, or a direct file link; or pass media_id for a video in the library. Runs a few minutes; returns job_id at once.

tracee clips create [--url <url>] [--media-id <media_id>] [--clip-length <clip_length>] [--layout <layout>] [--captions] [--caption-style <caption_style>]
  • --urlstring

    A link to the video (YouTube, Vimeo, TikTok, Instagram, X, LinkedIn, Loom…, a Google Drive/Dropbox/OneDrive/Box share link, or a direct file link)

    uri

  • --media-idstring

    A video already in the library

    uuid

  • --clip-lengthstring

    Auto 15-60s (default), short 15-30s, medium 30-60s, long 60-90s

    Available options:autoshortmediumlong

  • --layoutstring

    Auto (default, picked per shot), track (follow the speaker), split (stack two speakers), fit (whole frame over blur)

    Available options:autotracksplitfit

  • --captions / --no-captionsboolean

    Burn captions in; default true

  • --caption-stylestring

    The caption look

    Available options:defaulthormozipilllimeonewordcleanglowbeast

--data <json|@file|-> sends the whole body instead of flags.

Example
tracee clips create \
  --url https://youtu.be/dQw4w9WgXcQ \
  --caption-style hormozi
Calls POST /api/v1/clips

get

Follow a clipping job. Waits up to about 45 seconds, then returns its stage and progress; once done, each clip's clip_id, media_id, score, hook, title, copy and transcript, best first.

tracee clips get <job_id>
  • <job_id>argumentrequired

    From POST /api/v1/clips (leave out to list recent jobs)

    uuid

Example
tracee clips get $JOB_ID
Calls GET /api/v1/clips/{job_id}

edit

Re-make one clip. Trim it (start and end in seconds of the source video), change the hook (empty removes it), the captions or their look, or let a model add effects. Under a minute in the background; GET /clips/{job_id} shows the new media_id.

tracee clips edit <job_id> <clip_id> [--start <start>] [--end <end>] [--hook <hook>] [--captions] [--caption-style <caption_style>] [--effects <effects>]
  • <job_id>argumentrequired

    The clip's job

    uuid

  • <clip_id>argumentrequired

    The clip, from clip_status. From GET /api/v1/clips/{job_id} job_id=<job_id>

    uuid

  • --startnumber

    New start, seconds into the source video

  • --endnumber

    New end, seconds into the source video

  • --hookstring

    The line over the first 5 seconds; empty string removes it

    up to 120 characters

  • --captions / --no-captionsboolean

    Burn captions in; default true

  • --caption-stylestring

    The caption look

    Available options:defaulthormozipilllimeonewordcleanglowbeast

  • --effectsstring

    Auto lets a model place zooms, colour pops and flashes; none removes them

    Available options:autonone

--data <json|@file|-> sends the whole body instead of flags.

Example
tracee clips edit $JOB_ID $CLIP_ID \
  --hook "Nobody tells you this about churn" \
  --caption-style pill
Calls PATCH /api/v1/clips/{job_id}/clips/{clip_id}

dub

Dub a clip into another language. Translated and spoken by an ElevenLabs voice in the original timing, with captions and the hook in that language. A new video next to the clip.

tracee clips dub <job_id> <clip_id> --language <language> [--voice <voice>]
  • <job_id>argumentrequired

    uuid

  • <clip_id>argumentrequired

    uuid

  • --languagestringrequired

    ISO 639-1 code (es, pt, fr, de…)

    2–5 characters

  • --voicestring

    An ElevenLabs voice id (default by gender)

    up to 40 characters

--data <json|@file|-> sends the whole body instead of flags.

Example
tracee clips dub $JOB_ID $CLIP_ID --language es
Calls POST /api/v1/clips/{job_id}/clips/{clip_id}/dubs

youtube

Package the long video for YouTube. Without title: ten titles, best first, each with words for its thumbnail. With title: a description with chapters and three thumbnails, as media.

tracee clips youtube <job_id> [--title <title>]
  • <job_id>argumentrequired

    uuid

  • --titlestring

    The title to write the description and thumbnails for

    up to 200 characters

--data <json|@file|-> sends the whole body instead of flags.

Example
tracee clips youtube $JOB_ID --title "Launch week"
Calls POST /api/v1/clips/{job_id}/youtube

ai-actor

Make an AI actor ad. A 20-25 second vertical ad with an AI actor talking about the product: scripted, cast, voiced, lip-synced, with b-roll and captions. Pass url (product page) and/or prompt. About 5 minutes and about $1.50 in credits; returns ai_video_id.

tracee clips ai-actor [--url <url>] [--prompt <prompt>] [--language <language>] [--style <style>] [--gender <gender>] [--voice <voice>]
  • --urlstring

    uri

  • --promptstring

    3–4,000 characters

  • --languagestring

    The script's language

    2–5 characters

  • --stylestring

    The script's style; default ugc

    Available options:ugceducationalshockstorycomparison

  • --genderstring

    The actor

    Available options:femalemale

  • --voicestring

    An ElevenLabs voice id (default by gender)

    up to 40 characters

--data <json|@file|-> sends the whole body instead of flags.

Example
tracee clips ai-actor --url https://acme.com --language en
Calls POST /api/v1/ai-actor-videos

ai-actor-status

Follow an AI actor ad. Where it is, and the media_id when done. job_id is the ai_video_id.

tracee clips ai-actor-status <job_id>
  • <job_id>argumentrequired

    uuid

Example
tracee clips ai-actor-status $JOB_ID
Calls GET /api/v1/ai-actor-videos/{job_id}