Checkpoint List Selector
Your checkpoints, as a list you can actually click — and push to the review pipeline
- ckpt_name
- ckpt_name_str
- ckpt_name_safe
If CheckpointNameCycler is the jukebox, this node is the track list. Checkpoint List Selector is the manual-review companion: a clickable list of every checkpoint you own, plus one context-aware action button that decides what "selecting a checkpoint" means depending on what you've wired it to. It generates nothing on its own - it's the hands-on part of the suite, the thing you reach for when you're not batch-cycling but sitting down to actually judge models.
It takes a single input, checkpoint (a string, usually from the Cycler), and hands back three outputs: ckpt_name (feeds a loader directly), ckpt_name_str (plain string for the Tagger or ImageDir Preview), and ckpt_name_safe (filename-scrubbed, for saver labels). If the input is empty or points at a checkpoint that no longer exists, it snaps back to the first entry in your list.
The action button changes the story
The list itself is pleasant: wheel-scroll, up/down buttons, a draggable scrollbar, status icons (from the Tagger) shown inline, and a hover thumbnail if a checkpoint has a sidecar image. The real behavior is in the main button, which does three different jobs depending on what's connected to ckpt_name_str:
- Nothing connected →
🏹 Push to Local List. Sends the selected checkpoint to the Cycler's Local List - the per-tab temporary queue that overrides normal cycling. This is "run this specific model next" in button form. - ImageDir Preview connected →
🎯 Sync Checkpoint. Pushes the selected checkpoint to the preview node so its contact sheet updates. This is the recommended setup: select a model, immediately see every image it actually produced, judge it. It does not queue or execute anything - pure UI sync. - Only a Checkpoint Status Tagger connected →
🌑 DirectLink OFF/🌕 DirectLink ON. This is the external-review mode.
DirectLink, briefly
DirectLink exists for a specific scenario: you're reviewing generated images somewhere outside ComfyUI - a tablet, a shared folder, an external viewer - and you want the Tagger to follow whatever you select in the list. Turning it on asks for confirmation once per page load, because the semantics are genuinely different: while ON, the Tagger labels whatever's selected in the Selector, not what a preview node synced. Off by default, on purpose. If you're reviewing inside ComfyUI, you don't need it - connect ImageDir Preview and use Sync instead. If both are connected, Sync wins.
The suite is emphatic about this because it's a footgun: you don't want to be tagging random checkpoints while you think you're still tagging the one in front of you.
Install
Part of the one-pack install - no extra dependencies, nothing to download beyond the repo itself:
cd ComfyUI/custom_nodes
git clone https://github.com/ruminar/ComfyUI-CheckpointHandpickerSuite.git
Restart ComfyUI (or grab it via ComfyUI Manager as "Checkpoint Handpicker Suite").
Realistic take
On its own this node is a nicer dropdown. Where it earns its keep is as the glue: select → sync → inspect → tag is a tight little review loop, and the per-tab isolation means you can have a review tab open next to your generation tab without them fighting. If you only batch-generate and never manually judge, the Cycler + Tagger will cover you and you can skip this one. If you do sit down to handpick, it's the desk you sit at.
Inputs (1)
| Name | Type | Default | Description |
|---|---|---|---|
| checkpoint | STRING | — |
Outputs (3)
| Name | Type | Description |
|---|---|---|
| ckpt_name | — | |
| ckpt_name_str | STRING | — |
| ckpt_name_safe | STRING | — |