Nodes/DIGIT Nodes/Shade Mount
ComfyUI Node

Shade Mount

Mount a Shade.inc project drive from inside ComfyUI

By thedepartmentofexternalservices·Created 6 months ago·Updated 26 days ago· 0
Shade Mount
    • mount_path
    project

    Shade Mount is the most niche node in the whole DIGIT pack, so let's be honest about who it's for. Shade.inc is a filespace service - think LucidLink-style project drives for render VMs - and this node lists the drives in your Shade workspace, configures the one you pick with the shadefs CLI, and mounts it to a local path. If you don't have a Shade account and a VM with shadefs installed, this node does nothing useful for you. It's a studio-internal tool that got open-sourced with the rest of the pack.

    For anyone who does run render machines against Shade drives, that's exactly the point: instead of mounting a drive by hand over SSH before every session, you drop this node in the workflow, pick the project drive, and its mount_path output becomes a normal path the rest of the graph can read and write to.

    The inputs and output

    • project - a dropdown listing the drives in your workspace. If the node can't reach the API or no drives are configured, it shows (no drives found).
    • Output: mount_path - a string like /Volumes/shade/my_project, wired into Save to Shade (its intended partner) or any node that takes a path.

    That's the whole surface. One dropdown, one string output.

    How it works

    The mechanism, from the source: the node queries https://api.shade.inc for the drives in your workspace, then uses the shadefs binary to configure and mount the selected drive. Each project is a separate drive identified by a UUID, so the node derives a stable drive number from that UUID, registers it in the local shadefs database if it isn't already there, and mounts it under SHADE_MOUNT_BASE (default /Volumes/shade/).

    It's driven entirely by environment variables:

    export SHADE_API_KEY=sk_...
    export SHADE_WORKSPACE_ID=<workspace-uuid>
    export SHADE_DB_DIR=/root/.shade/fs      # default
    export SHADE_MOUNT_BASE=/Volumes/shade   # default
    export SHADEFS_BIN=/path/to/shadefs
    

    SHADEFS_BIN also auto-detects the binary from a Shade desktop install path, and the API key can come from a token-refresh script if it's not in the environment.

    The honest gotchas

    This is not a plug-and-play node for the general ComfyUI audience - it presumes shadefs is installed and configured on the machine, and a real Shade workspace. If the dropdown sits at (no drives found), the first thing to check is that SHADE_API_KEY is actually set in the environment ComfyUI started with (not a .env your shell hasn't sourced). If mounting fails, check the shadefs binary path and that the shadefs database dir is writable. The source even logs these, so ComfyUI's console is your friend. It's a purpose-built node for a specific stack - if that's your stack, it's a genuinely nice convenience; if it isn't, file this one under "interesting, not for me." Pack install: ComfyUI Manager, search comfyui-digit, restart.

    CategoryDIGIT/Shade

    Inputs (1)

    NameTypeDefaultDescription
    projectCOMBO1 options: (no drives found)

    Outputs (1)

    NameTypeDescription
    mount_pathSTRING