ComfyUI Node

Add Artist To CSV

Build your artist library from inside the graph

By hanL34·Created 11 months ago·Updated 4 months ago· 17
Add Artist To CSV
  • image
  • result
name
keywords
overwritetrue

This is the write side of the ComfyUI-Power-Artist-Loader pack. Where the flagship PowerArtistLoader reads a library of artists from artists.csv, AddArtistToCSV writes to it - from inside your workflow, without opening a text editor. It's the node you reach for when you want a personal artist database that grows as you generate.

What it does

Give it an artist name, a set of keywords, and an image, and it appends or updates a row in the pack's artists.csv and saves the image as a hover-preview thumbnail. The next time you run a PowerArtistLoader node, your new artist is in the dropdown.

The inputs that matter

Four inputs, and you set all of them:

  • name - the artist's display name. This is what appears in the dropdown later.
  • keywords - comma-separated style tags that the loader will substitute when this artist is selected. Think "akira toriyama style, anime, dragon ball".
  • image - an IMAGE from anywhere in your graph. It gets saved to images/ as a image_<timestamp>.png and becomes the hover preview. The schema lists it as required, so wire something in even if you don't care about the preview.
  • overwrite - on by default. When on, a new entry replaces an existing row with the same name (case-insensitive). Flip it off and the node appends instead, even if the name already exists - that's a quick way to collect duplicates if you're not careful.

How it works

Under the hood it's straightforward and honest. It reads the CSV (semicolon-separated: name;keywords;imagefile), matches your name against existing rows, rewrites the file, saves the image, and then does two nice touches: it reloads the shared in-memory artist data so PowerArtistLoader picks the change up, and it broadcasts a power_artist_loader:updated websocket event so open loader nodes refresh live.

One quirk worth knowing: it's an output node, so it only does anything when the workflow actually runs - queue it and watch it execute. And it never crashes on bad input; the STRING output named result carries the news instead: ok on success, or error: name is required / error: failed to save image: ... when something's off.

Where it shines

A genuinely nice loop: generate a reference image in the style you want to remember, feed it into this node with your chosen keywords, and your artist library just grew - complete with a preview. It also plays well with a WD14-style tagger: let the tagger caption a reference image, paste the tags into keywords, and you've stored a style trigger you'd otherwise have to retype forever.

It's a thin utility node, and that's fine. You could absolutely maintain the CSV by hand instead - the file format is trivial - but if you're already iterating in the graph, saving as you go beats switching to a text editor.

Install and gotchas

It ships with the pack, so install once:

cd ComfyUI/custom_nodes
git clone https://github.com/hanL34/ComfyUI-Power-Artist-Loader.git

Restart ComfyUI. No extra dependencies, nothing to download. The whole pack (including this node) is MIT-licensed, fully local, from solo author hanL.

The gotcha to internalize: the CSV separates fields with semicolons, not commas - Name;keyword, another, one;image.png. If you later hand-edit the file and reach for commas, the loader will misparse your rows. And remember, an empty name doesn't throw - it just hands you error: name is required as a string, which is easy to miss if you're not watching the node's output. It's a small tool for a small job, but for anyone curating a personal anime-style artist list it saves a surprising amount of busywork.

Categoryconditioning

Inputs (4)

NameTypeDefaultDescription
nameSTRINGArtist name
keywordsSTRINGKeywords (comma-separated)
imageIMAGE
overwriteBOOLEANtrue

Outputs (1)

NameTypeDescription
resultSTRING