Nodes/GenAsset/Test GenAsset Connection
ComfyUI Node

Test GenAsset Connection

The GenAsset node you run first (it makes no images)

By steliosot·Created 4 months ago·Updated 3 months ago· 1
Test GenAsset Connection
    • workspace_name
    • status_json
    • summary
    • state
    • normalized_status_json
    base_urlhttps://genasset.xyz
    tokenComfyUI/user/genasset.json

    Test GenAsset Connection is the front door of the whole pack. Before you save anything, before you wire up a workflow, this one node tells you the boring but critical truth: can ComfyUI actually reach GenAsset, and does your token work? Everything else in the pack is a wasted click until that's green.

    The pack is the ComfyUI side of GenAsset, a cloud workspace that versions your image generations - the author's own framing is "git, but for workflows." Every save keeps the image together with its recipe (prompt, model, seed, sampler, workflow JSON, repro-lock metadata), so teams and agents can reload, compare, and branch it later. But git doesn't work before you authenticate, and neither does this.

    How it works

    It's not a magic health check. Under the hood the node sends a GET to api/v1/workspace with your token as a Bearer header, and the server answers with your workspace's name, id, and slug. No image is generated, no file is uploaded - this is the "am I holding it right" step.

    The thing people trip over is the token field. Its default value isn't a token at all - it's the path ComfyUI/user/genasset.json, which is the node telling you where to put your token. The resolution order is:

    1. If you paste an actual token into the token widget, that wins.
    2. Otherwise the GENASSET_WORKSPACE_TOKEN environment variable.
    3. Otherwise the ComfyUI/user/genasset.json file, which should look like:
    {
      "base_url": "https://genasset.xyz",
      "workspace_token": "PASTE_TOKEN"
    }
    

    A literal PASTE_TOKEN is treated as "nothing set," so the node will error until you replace it with a real workspace token from genasset.xyz (Settings → Tokens).

    Inputs and outputs that matter

    Only two inputs: base_url (defaults to https://genasset.xyz) and token. A beginner sets exactly those and nothing else.

    The outputs are verbose on purpose:

    • workspace_name - the human-readable name of your workspace. Wire this into a display node if you want proof it worked.
    • state - just "success" or "error", the quickest thing to branch on.
    • summary - a one-line human message like "SUCCESS: Connected to workspace 'your-workspace'."
    • status_json / normalized_status_json - the full JSON blob with workspace details and token_source (whether the token came from the widget, the env var, or the file). That last bit is genuinely useful for debugging later.

    Installation

    This is one node in the steliosot/ComfyUI-GenAsset pack, so installing the pack installs it. In ComfyUI Manager, search GenAsset and hit install, or:

    cd ComfyUI/custom_nodes
    git clone https://github.com/steliosot/ComfyUI-GenAsset.git
    

    Restart ComfyUI either way. There are no extra pip dependencies - the pack leans on torch, numpy, and Pillow that ComfyUI already ships. The node lives in the genasset category on the canvas.

    Common issues

    • "Paste your GenAsset token into token..." - you haven't set a real token anywhere in the three-step chain above. Create one at genasset.xyz and put it in the widget or the genasset.json file.
    • Connection errors with a bad base_url - you're almost certainly leaving the default alone (correct) or pasting a trailing-slash URL that confuses the join. Keep it as https://genasset.xyz.
    • It says success but saves fail later - the token is fine but the workspace or asset-level permissions aren't. Check that the token is workspace-scoped, and note that the README explicitly says to rotate tokens periodically.

    One caution worth keeping in mind from the API-node playbook: this is a node whose whole job is to hold a credential and phone home with it. That's normal for the pack, but it's exactly why you should never commit a workflow file containing a pasted token, and why the pack redacts token-like fields from the workflow JSON it saves.

    Categorygenasset

    Inputs (2)

    NameTypeDefaultDescription
    base_urlSTRINGhttps://genasset.xyz
    tokenSTRINGComfyUI/user/genasset.json

    Outputs (5)

    NameTypeDescription
    workspace_nameSTRING
    status_jsonSTRING
    summarySTRING
    stateSTRING
    normalized_status_jsonSTRING