Mesh Vert Connect Path
Blender's vertex-connect operator, wired into ComfyUI
- BPY_OBJ
- BPY_OBJ
If you've never opened Blender, this node is going to look like it does nothing - no widgets, one plug in, one plug out. That's because it's a direct wrapper around a single Blender mesh operator, vert_connect_path, dropped into a ComfyUI graph as part of Avatar Graph, a pack built by avatech.ai for rigging 2D character art into a live, interactive avatar without ever opening Blender's actual UI.
What it does
"Connect Vertex Path" is the Blender operator you reach for when you've got a handful of selected vertices on a mesh and you want them joined by new edges in selection order - not just the shortest possible connections, which is what plain "Connect Vertices" does. It's how you cut a clean line across a mesh face, split off a region, or lay groundwork for extruding a new shape. In this pack's context, that's typically prepping the flat mesh that gets built from a segmented character part (an eye, a mouth) before it's turned into something a shape key can deform.
The node itself has no parameters because the Blender operator doesn't need any beyond "what's currently selected." That selection has to happen upstream in the graph - via another blender-category node in this same pack that sets vertex selection or a vertex group - before this one runs. Wire it wrong (nothing selected, or the wrong object) and it silently does nothing, since there's no vertex path to connect.
Inputs and outputs
There's exactly one thing to know: a BPY_OBJ in, a BPY_OBJ out. BPY_OBJ is this pack's custom socket type - it carries a live reference to a Blender object through the graph, the way IMAGE or LATENT carry data in a normal ComfyUI workflow. Nearly every node in Avatar Graph's blender category takes one in and hands one back out, mutated, so you chain them like a sequence of Blender operator calls. This node doesn't add or remove anything from the object - it just runs the operator against it and passes it along.
Installing it
Search avatar-graph-comfyui (or "Avatar Graph") in ComfyUI Manager, or install by hand:
cd ComfyUI/custom_nodes
git clone https://github.com/avatechai/avatar-graph-comfyui
cd avatar-graph-comfyui && python -m pip install -r requirements.txt
The one thing that actually matters here, and the README is upfront about it: this pack depends on bpy, Blender shipped as a headless Python package, and bpy only installs against Python 3.10.x. If your ComfyUI environment is on a newer Python (very likely if you set up recently), the install will fail or the pack will silently not load. On Windows the README points you at a prebuilt Python 3.10 ComfyUI zip specifically for this; on macOS/Linux, they recommend a dedicated conda env (conda create --name comfyui python=3.10). Don't try to force this into your existing 3.11+/3.12 environment - a fresh 3.10 environment for this pack specifically is the path of least pain. After install, restart ComfyUI with --enable-cors-header if you want the pack's live avatar preview to talk to its companion web viewer at editor.avatech.ai; without it, ComfyUI still runs the graph fine, you just export a .glb/.gltf and view it elsewhere.
Troubleshooting
Avatar Graph had a loud launch in October 2023 - demo reels, a dog-rig workflow that made the rounds on r/comfyui - and has been quiet since; the README's own "we are still making changes" warning banner has sat there unchanged the whole time. So don't expect an active support thread if something breaks - you're mostly on your own or in their Discord. One real report worth knowing about: at least one user installing this through ComfyUI Desktop's node manager hit a broken install (an oversized logo, a phantom audio window) that was bad enough they had to wipe and reinstall ComfyUI Desktop entirely. If you're on Desktop, installing this pack manually into a portable/git-based ComfyUI first is the safer route. Beyond that, if this node (or any blender-category node here) does nothing, the two things to check first are: is your Python actually 3.10, and is there something upstream actually selecting vertices before this node runs.
Inputs (1)
| Name | Type | Default | Description |
|---|---|---|---|
| BPY_OBJopt | BPY_OBJ | — |
Outputs (1)
| Name | Type | Description |
|---|---|---|
| BPY_OBJ | BPY_OBJ | — |