Nodes/KIE.ai Nodes Next/HappyHorse-1-1 text-to-video
ComfyUI Node

HappyHorse-1-1 text-to-video

The cleanest node in the pack

By felipederosilva·Created about a month ago·Updated a day ago· 3
HappyHorse-1-1 text-to-video
    • video
    • url
    • all_urls_json
    • task_id
    • raw_json
    • credits_consumed
    • credits_left
    ◄promptA dog running on the earth►
    ◄resolution1080p►
    ◄aspect_ratio16:9►
    ◄duration5.00►
    ◄timeout_seconds1200►
    ◄callback_url►

    Four inputs you'd actually use, no reference images, no mask URLs, no URL strings pretending to be image sockets. If you want to see what HappyHorse looks like before building anything around it, this is the node.

    HappyHorse itself is the anonymous model that turned up in video-arena rankings under a name everyone treated as a placeholder, went viral in fits and starts through spring 2026, and never released weights - the fake-repo scam wave that followed the first "is it open source?" thread is worth remembering when some site offers you HappyHorse .safetensors. Calling it through this node is the honest way to use it.

    Inputs

    prompt is the only required field: text description of the video, any language, up to 5000 non-Chinese characters or 2500 Chinese. It's a video prompt, so give it motion, camera and pacing - not just a scene.

    resolution is 1080p (default) or 720p. aspect_ratio is a nine-way dropdown: 16:9, 9:16, 1:1, 4:3, 3:4, 4:5, 5:4, 9:21, 21:9. If you're generating vertical shorts, set it here rather than cropping later - a 9:16 native render is not the same thing as a crop of a 16:9 one.

    duration is a float from 3 to 15 seconds, default 5. Whole seconds only, per the docs.

    That's it for creative control. No seed, so nothing is reproducible - a rerun is a new roll, which is either the point or the frustration depending on your day. timeout_seconds (default 1200) and callback_url (leave empty) are the only other knobs, and neither affects the output.

    Outputs

    video is a native ComfyUI VIDEO - wire it into a combine/save node, or into the pack's upscale or edit nodes. url is the primary result, all_urls_json collects every URL the provider returned, task_id is KIE's job id (grab it from here if a run fails and you need support), raw_json is the raw response, and credits_consumed / credits_left are floats for tracking spend. Downloads are archived to ComfyUI/output/KIE-Results/videos/, so a restart doesn't cost you a clip you already paid for.

    Install

    cd ComfyUI/custom_nodes
    git clone https://github.com/felipederosilva/ComfyUI-KIE-Nodes-Next
    cd ComfyUI-KIE-Nodes-Next
    pip install -r requirements.txt
    

    Restart, and the node appears under KIE Next / Video / HappyHorse. Dependencies: requests, Pillow, numpy, PyYAML. Nothing downloads into models/ - the generation happens on KIE's servers, which also means your prompt leaves your machine. That's the mechanism, not a side effect.

    Key setup is one-time: Settings → KIE.ai Nodes Next → Connection → Paste / replace KIE.ai API key. Validated before saving, masked afterwards, never written into the workflow. KIE_API_KEY for headless boxes, and it takes priority over the saved key.

    If ComfyUI Manager has the pack, use it; if not, don't read that as a problem - the README still frames the Manager/registry route as something that will become the preferred install once publishing completes. The Windows one-click installer in dist/ is the third option.

    Common problems

    Queueing again produces no new video. ComfyUI cached the node output because nothing changed. You weren't charged twice, and you won't get a different clip. Change the prompt to submit.

    Timeout errors still cost money. The task is running remotely whether or not your node is still waiting. Take the task_id out of the error message and poll it with the Task Status utility node.

    Prompt too long? The limit is 5000 non-Chinese characters, 2500 in Chinese. Long prompt-library bricks get truncated rather than rejected, which is worse - you find out when the video comes back missing a scene.

    "KIE model ID has not been resolved yet." The node list is generated from KIE's live documentation. If the initial sync never completed, run the Catalog Sync node and reload the frontend.

    A 15-second clip is four times the bill of a five-second one. Duration is the main cost lever on this node; budget accordingly before you use it as your iteration setting.

    CategoryKIE Next/Video/HappyHorse

    Inputs (6)

    NameTypeDefaultDescription
    promptSTRINGA dog running on the earthText description of the video to generate. Supports any language. Maximum 5,000 non-Chinese characters or 2,500 Chinese
    resolutionoptCOMBO1080pOutput video resolution. Options: 720p; 1080p
    aspect_ratiooptCOMBO16:9Output video aspect ratio. Options: 16:9; 9:16; 1:1; 4:3; 3:4; 4:5; 5:4; 9:21; 21:9
    durationoptFLOAT5.003–15Output video duration in seconds.
    timeout_secondsoptINT120030–7200—
    callback_urloptSTRINGOptional KIE callback URL. Leave empty for normal ComfyUI use.

    Outputs (7)

    NameTypeDescription
    videoVIDEO—
    urlSTRING—
    all_urls_jsonSTRING—
    task_idSTRING—
    raw_jsonSTRING—
    credits_consumedFLOAT—
    credits_leftFLOAT—