name: artokun-flow
display_name: Artokun Flow — Character Dance / Motion Transfer (WAN Animate 2.2)
family: wan
kind: video
description: >-
  THE go-to / default pack for "take this person and animate them" — give it a
  character image (a photo or a generated still) plus a driving video and it makes
  that character dance, move, and mimic the clip's pose, face and motion, then outputs
  the animated video. Reach for THIS for any character-animation / motion-transfer /
  "have/make <character> dance this video" / video-to-video character drive or replace
  request. WAN Animate 2.2 + Uni3C controlnet (temporal stability) + ViTPose/YOLOv10
  pose+face detection + SAM3 tracking/masking + a ReActor first-frame face-lock + color
  match. TWO MODES via the "REPLACEMENT MODE" subgraph node: it ships disabled = OFF
  (default — animate the whole character + background to the driving motion); set its
  Mode to Active = ON to replace the person in the real video (Mute or Bypass = OFF).
  Optional off-by-default "Upscale4x-RIFE-1080p" subgraph (RIFE + SeedVR2) for 1080p.
  Kijai WanVideo stack + lightx2v/relight/Pusa/Fun LoRAs.
vram: 24GB+
workflow: workflow.json
skill: wan-t2v-video
launch_args: []
sources:
  base_models: https://huggingface.co/wdsfdsdf/OFMHUB
  kijai: https://huggingface.co/Kijai/WanVideo_comfy
notes:
  - "AUTHOR'S MAINTAINED PACK — this is the recommended/default WAN Animate
    character-animation pipeline. The TS utility nodes (TSColorMatch temporal color
    stabilizer, TSPoseDataSmoother pose-jitter smoother) now auto-install from
    github.com/artokun/comfyui-teskors-utils (a maintained public fork); no public
    drop-in equivalents exist for the color/pose nodes. Final video is saved with
    VHS_VideoCombine (a proven OUTPUT_NODE) so panel_run(to_node_id) can target it."
  - SAM3 + frame-interpolation + math/mask/post-processing are CORE in recent
    ComfyUI (comfy_extras) — keep ComfyUI updated so SAM3_VideoTrack exists.
    The SAM3 checkpoint sam3.1_multiplex_fp16.safetensors is installed into
    models/checkpoints by the manifest (required by REPLACEMENT MODE).
  - Base models download under placeholder names and are saved under the workflow's
    real Kijai filenames (rename-on-download) — same content.
  - GAPS the gist does NOT cover, source separately. (a) ReActor
    inswapper_128.onnx + GPEN-BFR-512.onnx — ReActor auto-fetches these on first
    use into models/insightface and models/facerestore_models. (b) OPTIONAL
    upscale only (muted subgraph) — seedvr2_ema_3b_fp8_e4m3fn.safetensors,
    ema_vae_fp16.safetensors, rife_v4.26.safetensors.
  - Bypass the ReActor face-lock node to disable first-frame identity locking.
  - Static-validated (clean lint + UI→API convert; the muted upscale subgraph is
    skipped). Run locally to confirm on your hardware.
post_install:
  - Restart ComfyUI (or ComfyUI-Manager -> Install missing custom nodes).
  - Load workflow.json.
