Nodes/ComfyUI-PromptTimelineSplitter/Prompt Timeline Splitter
ComfyUI Node

Prompt Timeline Splitter

It reformats your prompt timeline — and that's honestly all it does

By singhdivyanshi·Created 4 months ago·Updated 4 months ago· 0
Prompt Timeline Splitter
    • STRING
    timeline_text0-3s: man walking 3-6s: enters cafe

    Let's be direct about this one: Prompt Timeline Splitter does not split anything, schedule anything, or call an API. It's a text formatter. You paste in a scene-by-scene timeline and it hands you back a tidied-up block of text. If you're a beginner who saw "timeline" and hoped for automatic per-scene video prompting, temper that expectation now - and you'll still find a use for it.

    It's aimed at image-to-video workflows, where the community standard is to think of a clip as a series of short scenes. Real-world video prompting splits into an image prompt (describe the frame flatly, "like a robot") and a motion prompt (describe only what happens, "like George R.R. Martin"). The timeline idea here is the same thing, timestamped: 0-3s: cat walks into room, then 3-6s: cat eats food, and so on.

    What it actually does

    The whole node is ~20 lines of pure Python, no dependencies, no models. It takes your multi-line timeline text and processes it line by line:

    1. Each line is split on the first :.
    2. The part before the colon becomes TIME = ..., the part after becomes PROMPT = ....
    3. Every line that contains no : is silently dropped.
    4. Everything is joined back into one string.

    So this input:

    0-3s: cat walks into room
    3-6s: cat eats food
    
    6-9s: cat sleeps near window
    

    comes out as:

    TIME = 0-3s | PROMPT = cat walks into room
    TIME = 3-6s | PROMPT = cat eats food
    TIME = 6-9s | PROMPT = cat sleeps near window
    

    Note the blank line in the middle - gone. That's the mechanism, in full.

    The one input, the one output

    There's exactly one input, timeline_text (a multiline STRING, pre-filled with a 0-3s: man walking example). And exactly one output: a single STRING. Wire it anywhere ComfyUI accepts a string - a CLIP text encode node, a text field upstream of a video sampler, whatever. It's is_list: false, so don't expect it to iterate over your scenes for you; this node formats the whole timeline into one block and stops.

    That's the honest limitation. The TIME = prefix is for you - a readable plan of your shot list. Don't assume the video model parses timestamps out of prompt text; most i2v models treat the whole string as narration, and the timestamp tokens are usually just noise to them. Use this to keep your scene planning organized, not as a scheduling mechanism.

    Installing it

    No Manager entry needed, but ComfyUI Manager will find it if you search "PromptTimelineSplitter." The manual route is the usual one:

    cd ComfyUI/custom_nodes
    git clone https://github.com/singhdivyanshi/ComfyUI-PromptTimelineSplitter
    

    Then restart ComfyUI. That's it - no requirements.txt, no model downloads, no Python packages beyond the standard library. It's one of those rare custom nodes that can't break your environment, which puts it ahead of half the ecosystem on the dependency-hell scale.

    Gotchas worth knowing

    • Lines without a colon vanish. A blank line, a stray note, a heading - all dropped without warning. If your output is missing a scene, that's why.
    • Colons inside the prompt survive, because it splits on the first colon only. 3-6s: cat eats: really keeps the : really.
    • Timestamps aren't validated. banana: whatever becomes TIME = banana | PROMPT = whatever. Garbage in, formatted garbage out.
    • The pack is v1.0.0, a single node, from an author who openly says they wrote it while learning Python. It's a beginner's first node - which is fine, it works - but treat it as a utility, not a tool that will grow with you.

    If your workflow already has a text-editing node or you're comfortable just writing clean prompts, you don't need this. But if you're sketching shot lists for Wan, LTX, or Hunyuan and want them readable at a glance, it's a lightweight, zero-risk add. Just don't expect it to do the heavy lifting.

    CategoryTimeline Tools

    Inputs (1)

    NameTypeDefaultDescription
    timeline_textSTRING0-3s: man walking 3-6s: enters cafe

    Outputs (1)

    NameTypeDescription
    STRINGSTRING