Nodes/ComfyUI Ino Nodes/Ino S3 Download String
ComfyUI Node

Ino S3 Download String

Read a text file from S3 straight into a string — no local file at all

By nobandegani·Created about a year ago·Updated 2 months ago· 6
Ino S3 Download String
    • success
    • message
    • string
    enabledtrue
    s3_keyinput/example.txt
    s3_config{"access_key_id": "", "access_key_secret": "", "bucket_name": "", "endpoint_url": "", "region_name": ""}
    encodingutf-8

    Sometimes what you need from your bucket isn't an image or a video - it's a small piece of text: a prompt file, a config, a batch manifest, a list of trigger words. Ino S3 Download String pulls a text object from S3 directly into memory and returns it as a STRING output. No temp file, no local copy, just the content, ready to wire into a prompt, a JSON node, or a save node. It's the simplest of the pack's S3 download nodes and one of the most quietly useful.

    It's part of ComfyUI Ino Nodes (nobandegani/ComfyUI-InoNodes), the 125+-node V3-schema pack, and one of its 16 S3 helpers.

    How it works

    Inputs:

    • enabled - the pack-wide toggle.
    • s3_key - the object's key in the bucket (default placeholder: input/example.txt).
    • s3_config - optional; the config string from Ino S3 Config, or leave empty and let env vars fill in the credentials.
    • encoding - the text encoding (default utf-8). Change it only if your file is something unusual like latin-1.

    Outputs: success (boolean), message (string), and string (STRING) - the file's contents.

    Mechanically it's a get_text call through the pack's S3 layer: fetch the object, decode with the requested encoding, hand you the text. Because it never touches disk, it's fast and leaves no litter behind - the right call for small files you consume immediately.

    When you'd use it

    This is where the "config-driven workflow" idea gets really nice. Keep prompts, model configs, or job parameters as text files in S3, and pull the right one by key at runtime. Your workflow stops being a pile of hardcoded text widgets and becomes "read this job's config from the bucket, then do the thing." Pair it with Ino Json Get Field to extract a single value from a downloaded JSON config and you've got a tidy little configuration system.

    Common issues

    • Key not found → success: False with a message. For automation, gate downstream nodes on the success output.
    • Wrong encoding → garbled text. Usually fine at utf-8; only touch encoding if you're reading legacy files.
    • Big files. This reads the whole object into memory as one string. It's great for configs and prompts, wrong tool for logs you want to stream or parse in chunks.

    Installing it

    ComfyUI Ino Nodes installs like any custom node pack:

    • ComfyUI Manager (easiest): search for "ComfyUI Ino Nodes", install, restart.
    • Manual:
      cd ComfyUI/custom_nodes
      git clone https://github.com/nobandegani/ComfyUI-InoNodes.git
      cd ComfyUI-InoNodes
      pip install -r requirements.txt
      Then restart ComfyUI.

    Requires inopyutils and a current ComfyUI. It's a niche pack with minimal Reddit presence - the whole S3-in-ComfyUI pattern is discussed in the community, but this specific pack rarely is. For "give me the text of that object," though, it's one input and one string out.

    CategoryInoS3Helper

    Inputs (4)

    NameTypeDefaultDescription
    enabledBOOLEANtrue
    s3_keySTRINGinput/example.txt
    s3_configoptSTRING{"access_key_id": "", "access_key_secret": "", "bucket_name": "", "endpoint_url": "", "region_name": ""}you can leave it empty and pass it with env vars
    encodingoptSTRINGutf-8

    Outputs (3)

    NameTypeDescription
    successBOOLEAN
    messageSTRING
    stringSTRING