π Gimbal GPS Anchor (Save)
Bookmark a latent so you never have to rediscover the good one
- latent_batch
- gimbal_meta
- wayfinder_meta
- anchored_latent
- waypoint_meta
- waypoint_report
You finally get the exact latent you wanted - the lighting, the composition, the whole vibe - and then you close ComfyUI and it's gone, because re-rolling that exact tensor by hand is impossible. Gimbal GPS Anchor is the bookmark: it pulls a single latent out of a batch, stamps it with statistics and a cryptographic hash, and optionally saves it to disk as a JSON waypoint that GPS Load can bring back in any future session.
It's part of the Gimbal-comfy suite by Form & Noise, the pack that treats latents as coordinates in a navigable space. In that metaphor the Anchor is the "save point" - the reason you can treat a good generation as a place you've been, not a lottery you won once.
How it works
The core is simple: you feed it latent_batch, tell it select_index, and it extracts that one sample from the batch. On its own, that's a glorified "get item from batch" node. The interesting part is the metadata: it computes tensor statistics (mean, std, min/max, norm) and a SHA-256 hash of the tensor, and packages everything as waypoint_meta (a DICT) and a human-readable waypoint_report (STRING you can preview in a text node). The hash is the pack's "did we find the exact same point" fingerprint.
Flip save_waypoint to true and give it a waypoint_name, and it writes output/gimbal/<name>.json containing the tensor coordinates, stats, and provenance. If a file with that name already exists, the node version-stamps the new one rather than clobbering your old bookmark (there's an env-var override, GIMBAL_OUTPUT_DIR, if you want waypoints somewhere other than output/gimbal).
It also accepts optional gimbal_meta / wayfinder_meta DICT inputs - plug in the metadata output of a Manifold Explorer or Compass Pro and the saved waypoint carries grid coordinates or steering provenance along with it. That's how you bookmark "cell (1,2) of my 3Γ3 grid," not just a bare tensor.
The inputs that matter
select_index- which sample in the batch to anchor. The pack's tutorial uses 4 to grab the center of a 3Γ3 grid (0-indexed).save_waypoint- off by default. Nothing hits disk until you flip it on; the node still outputs the anchored latent and metadata either way.waypoint_name- the bookmark's filename. Keep it descriptive ("golden_arch_hero_v1"), it's what you'll pick from later.
Outputs: anchored_latent (wire into a KSampler/VAEDecode), waypoint_meta, and waypoint_report.
Common issues
select_index past the end of your batch will error - check the batch size if you get an index exception. And don't be surprised that the dropdown on the matching GPS Load node starts empty: no waypoint exists until this node has actually saved one, so run the save branch first.
Install
# ComfyUI Manager β search "Gimbal"
# or:
cd ComfyUI/custom_nodes
git clone https://github.com/FormAndNoise/Gimbal-comfy
pip install -r Gimbal-comfy/requirements.txt
Restart ComfyUI; it's under Add Node β Gimbal/Navigation. Dependencies are torch, numpy, pillow - nothing extra to install or download.
Inputs (7)
| Name | Type | Default | Description |
|---|---|---|---|
| latent_batch | LATENT | β | |
| select_index | INT | 00β4095 | β |
| save_waypoint | BOOLEAN | false | β |
| waypoint_name | STRING | waypoint_01 | β |
| enable_perf_logging | BOOLEAN | false | β |
| gimbal_metaopt | DICT | β | |
| wayfinder_metaopt | DICT | β |
Outputs (3)
| Name | Type | Description |
|---|---|---|
| anchored_latent | LATENT | β |
| waypoint_meta | DICT | β |
| waypoint_report | STRING | β |