Nodes/CMK Flow/CMK Log Create
ComfyUI Node

CMK Log Create

An empty log, so the rest of the chain has something to hold

By CMKFlow·Created 3 months ago·Updated a day ago· 6
CMK Log Create
    • log_pipe

    Zero inputs. One output. It hands you {"blocks": []} and that's the entire node.

    It reads like a joke until you try to use CMK's toolbox nodes on their own. Nearly every CMK module that does anything takes a LOG pipe - not because it needs the data, but because the pack treats the log as part of the module contract. Append a block, hand the pipe on. Skip out of the flow and use a Toolbox node by itself, and you're staring at a required CMK_LOG_PIPE socket with nothing upstream to fill it.

    That's the job. It's a seed value, in the same spirit as ComfyUI's primitive nodes: one authoritative source for a value that several places need.

    Inputs and outputs

    | | name | type | |---|---|---| | in | (none) | | | out | log_pipe | CMK_LOG_PIPE |

    The output is a dict with a blocks key holding an empty list. That's the full contract other nodes expect - every log helper in the pack starts from that shape and appends to it.

    What to wire it into

    CMK Log Create → your toolbox node's LOG input → onward. Any Toolbox node that accepts a log pipe (CMK Log Set Block, the FaceRebuild prepare nodes, the detailer, the boundary) can be a consumer, and CMK LOG CONCAT or CMK Log Export Text is where the chain ends.

    Because the pipe is just a dict travelling on a wire, it merges naturally: node A appends, hands it to node B, which appends again. What you get at the end is an ordered record of what ran, in the order it ran - not a sortable table, an append-only narration. That's a deliberate choice in this pack, and it's the reason a CMK report reads like a procedure rather than a dashboard.

    Install

    cd ComfyUI
    git clone https://github.com/CMKFlow/cmk_nodes.git custom_nodes/cmk_nodes
    python3 custom_nodes/cmk_nodes/scripts/install_cmk_requirements.py
    

    Manager users: search CMK Flow (registry package cmk-flow, publisher CMKFlow), install and restart. The node has no dependencies of its own, but the pack's requirements.txt is heavy (insightface, onnxruntime, ultralytics, segment-anything, nudenet==3.4.2, opencv-python, imageio-ffmpeg) and a manual git clone will not install any of it - that second command is part of the install, not an optional extra. It prints CMK dependency check: OK when all mandatory imports resolve.

    Two things worth flagging

    It's not a logger you can point at console output. Nothing here writes to stdout or to a file. It starts an in-memory data structure that CMK's own nodes populate. If what you want is a text file of the run, you render the pipe at the end with CMK Log Export Text and feed the resulting STRING to a save-text node.

    Skipping it costs you nothing. Most CMK flow modules start their own log chain - CMK Flow · Load Image literally outputs a LOG with a Load Image block already in it. CMK Log Create is for the case the pack calls the open toolbox: loose Toolbox nodes, no flow around them, and a required socket to satisfy. Small node, correct node.

    CategoryCMK/Toolbox/Diagnostics

    Inputs (0)

    No inputs

    Outputs (1)

    NameTypeDescription
    log_pipeCMK_LOG_PIPE—