_.reverse
Flip your list, but keep the original intact
- obj
- *
_.reverse does one thing: takes a list and gives it back in reverse order. The useful bit is how. Python's own list.reverse() mutates the list in place, which in ComfyUI means the node upstream of you suddenly sees different data - a classic source of "why did my other branch change?" confusion. The underscore3 implementation this node wraps copies the list first and reverses the copy, and the comfy-ovum wrapper deep-copies your input on top of that. So the source list never changes. That's the whole reason to reach for this instead of half the alternatives.
It's part of the ovum/underscore family in comfy-ovum: a set of auto-generated graph wrappers around underscore3, a Python port of Underscore.js that ships inside the pack repo. The author's own README flags the whole family as a work in progress and "not recommended for use in workflows," so treat this as a convenience for quick experiments rather than the load-bearing wall of your production graph.
When you'd actually use it
Reversal shows up more than you'd think in Comfy pipelines. Frame order from a video loader sometimes comes out backwards relative to your caption or mask list. A list of saved filenames is newest-last and you want newest-first for a preview node. Or you built a list in one direction and a scheduler expects it in the other. Whenever the order matters but the contents don't, this is a one-node fix.
Inputs and output
- obj (
*) - the list (or any collection) to reverse. It's typed*, so the node won't reject a dict or a string - though reversing those gives you results that are technically consistent with the underlying library and probably not what you wanted.
Output is a single * typed socket carrying the reversed list. Because the return type is generic, Comfy won't type-check what's downstream - wire it into something list-shaped and you're fine.
Same as every node in this family, obj also accepts a _.CHAIN: feed it a chain and _.reverse continues the chain, returning a chain you unwrap with _.value. That's how you'd slot a reversal into the middle of a multi-step list pipeline without unwrapping and re-wrapping.
Install
# via ComfyUI Manager: search "comfy-ovum"
cd ComfyUI/custom_nodes
git clone https://github.com/sfinktah/comfy-ovum
# restart ComfyUI
No model downloads; Manager pulls the pack's declared Python deps (aiohttp, pillow, numpy, requests, and friends) automatically, and underscore3 is bundled in the repo. If you need to reverse a list of tensors (like an image batch), this isn't the node - a batch/array flip lives in whatever image-processing pack you already have. _.reverse is for plain Python lists of scalars, strings, and small objects.
Inputs (1)
| Name | Type | Default | Description |
|---|---|---|---|
| objopt | * | Primary input object. Also accepts _.CHAIN to continue chaining. |
Outputs (1)
| Name | Type | Description |
|---|---|---|
| * | * | — |