Nodes/ComfyUI_agilly1989_motorway/CreateHookKeyframe_motorway_edition
ComfyUI Node

CreateHookKeyframe_motorway_edition

One strength keyframe on the sampling timeline, via the Motorway

By agilly1989·Created 2 years ago·Updated about a year ago· 7
CreateHookKeyframe_motorway_edition
  • MOTORWAY 🚌💨
  • MOTORWAY 🚌💨
INPUT_prev_hook_kf_keyprev_hook_kf
strength_mult1.00
start_percent0.000
OUTPUT_HOOK_KF_keyHOOK_KF

Hooks are ComfyUI's answer to "make this effect stronger at one point in the sample and weaker at another". A hook keyframe is a single point on that timeline - one moment where a LoRA or model patch sits at a given strength. CreateHookKeyframe builds one such keyframe, and the _motorway_edition is that node reading its inputs from agilly1989's Motorway bus.

Why you'd use it

Chained keyframes are how you schedule anything hookable over a sample: the LoRA that's strong for the first 30% and fades after, the model patch that only bites in the detail phase. This node makes one keyframe - the strength_mult value at the start_percent position - and chains it onto a prev_hook_kf group so you can build a timeline one keyframe at a time. If that sounds tedious, it is; that's why the interpolated variants exist. You reach for the single keyframe node when you want precise, hand-placed control points rather than auto-eased ones.

Inputs and outputs

  • MOTORWAY 🚌💨 - the bus, required.
  • INPUT_prev_hook_kf_key - key of an existing HOOK_KEYFRAMES group to append to, default prev_hook_kf. Leave it absent (empty string) and this node starts a fresh group.
  • strength_mult - the strength multiplier at this keyframe, -20 to 20, default 1.
  • start_percent - where on the 0–1 sampling timeline this keyframe sits, default 0.
  • OUTPUT_HOOK_KF_key - key for the resulting HOOK_KEYFRAMES group, default HOOK_KF.

Only output: the Motorway. Feed the final keyframe group into a hook-consuming node (like a CreateHookLora that takes keyframes) by reading the HOOK_KF key back out.

Installing

The pack install:

cd ComfyUI/custom_nodes
git clone https://github.com/agilly1989/ComfyUI_agilly1989_motorway

Restart, or ComfyUI Manager → "ComfyUI_agilly1989_motorway". No pip deps, no models.

Caveats

Pack-wide: active beta, "BIG BROKEN WITH ASYNC" README banner, and in the version I checked the _motorway_edition clones are commented out of __init__.py (re-enable ClonedNodeMapping if missing). Keys are exact and case-sensitive - hash_ error means a key isn't in the bus. Worth knowing the whole hooks system is marked EXPERIMENTAL in core ComfyUI too, so don't build a production pipeline on this family. And a practical tip: if your keyframe never seems to do anything, check that the hook actually consumes keyframes - CreateHookLora does, plain LoRA loaders don't.

Categoryagilly1989 Nodes/Motorway-ed/advanced/hooks/scheduling

Inputs (5)

NameTypeDefaultDescription
MOTORWAY 🚌💨MOTORWAY 🚌💨
INPUT_prev_hook_kf_keySTRINGprev_hook_kf
strength_multFLOAT1.00-20–20
start_percentFLOAT0.0000–1
OUTPUT_HOOK_KF_keySTRINGHOOK_KF

Outputs (1)

NameTypeDescription
MOTORWAY 🚌💨MOTORWAY 🚌💨