NAI Vibe 文件保存器
Turn the Vibes in your pipeline into a file you can reuse
- nai_pipe
- nai_pipe
- Vibe文件名
- 保存摘要
You've got a pipeline with Vibes attached - maybe you encoded one from an image, maybe you loaded a couple from files and stacked them into a look you like. NAIVibeFileSaverV2 writes that whole vibe stack to disk as a .naiv4vibe or .naiv4vibeBundle file, so the exact combination becomes a reusable asset. And unlike almost every other node that does real work in this pack, it costs nothing: no API call, no Anlas.
What it is
Inputs: the NAI_PIPE (which carries the vibe list), a vibe_name (default NovelAI-Vibes, the base filename), and include_disabled (default false - leave it off unless you specifically want disabled Vibes in the file too).
Outputs: the nai_pipe passed through unchanged, the saved Vibe文件名 (STRING), and a 保存摘要 (STRING) with the file size and count. It's marked as an output node, so it runs as a terminal step.
The saving logic is simple and sensible: one Vibe in the pipe → a single .naiv4vibe file; multiple Vibes → automatically a .naiv4vibeBundle. Files land in ComfyUI/input/novelai_vibes, the same folder the loader watches, so anything you save here is immediately available to NAIVibeFileLoaderV2 (after the dropdown refreshes).
How it behaves
Saving is pure file I/O on the encoding already sitting in the pipe - there's no re-encode, no round trip to NovelAI. That's why it's free. The pipe passes through untouched, which means you can save a Vibe stack mid-pipeline and keep generating with it, or save at the end as the archive step of a workflow.
One distinction worth making: this node saves files from encodings you already have. It does not encode an image into a Vibe - that's the NAIImageVibeEncoder node's job (paid, ~2 Anlas on NovelAI's current pricing). If you think "I'll just save my image as a Vibe" and wire an image in here, that's the wrong node. Encode first, then save.
When you'd use it
- Building a style library: encode the Vibes you like once, save them, and reuse them in later workflows by loading the file instead of re-encoding.
- Sharing a specific look with someone - a bundle file is a self-contained style.
- Backing up a vibe stack you've tuned so a parameter change doesn't lose it.
Install and setup
Part of ComfyUI-NovelAI-GENYTOOLS. Manager search, or:
cd ComfyUI/custom_nodes
git clone https://github.com/XTOGENY/ComfyUI-NovelAI-GENYTOOLS.git
pip install -r ComfyUI-NovelAI-GENYTOOLS/requirements.txt
Restart, set your NovelAI Persistent API Token under NovelAI 2.0: Persistent API Token.
Gotchas
- It saves what's in the pipe, not what you wish was there. If the saved file has fewer Vibes than you expected, check how many are attached upstream (the loader/encoder summaries tell you).
include_disableddefaults to off for a reason - a disabled Vibe is usually disabled for a reason.- Free to save, but remember the encodings came from somewhere: if you built the stack by encoding images, the Anlas was spent at the encoder, not here.
- Files are written to the input directory's
novelai_vibessubfolder. If you can't find a file you saved, that's where it is.
Inputs (3)
| Name | Type | Default | Description |
|---|---|---|---|
| nai_pipe | NAI_PIPE | — | |
| vibe_name | STRING | NovelAI-Vibes | — |
| include_disabled | BOOLEAN | false | — |
Outputs (3)
| Name | Type | Description |
|---|---|---|
| nai_pipe | NAI_PIPE | — |
| Vibe文件名 | STRING | — |
| 保存摘要 | STRING | — |