<?xml version="1.0" encoding="UTF-8"?><rss xmlns:dc="http://purl.org/dc/elements/1.1/" xmlns:content="http://purl.org/rss/1.0/modules/content/" xmlns:atom="http://www.w3.org/2005/Atom" version="2.0" xmlns:itunes="http://www.itunes.com/dtds/podcast-1.0.dtd" xmlns:googleplay="http://www.google.com/schemas/play-podcasts/1.0"><channel><title><![CDATA[ComfyUI Newsletter]]></title><description><![CDATA[News and updates from the ComfyUI Team.]]></description><link>https://blog.comfy.org</link><image><url>https://substackcdn.com/image/fetch/$s_!uyu8!,w_256,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F9545d140-0202-4a03-b9a2-58724fc1be59_500x500.png</url><title>ComfyUI Newsletter</title><link>https://blog.comfy.org</link></image><generator>Substack</generator><lastBuildDate>Fri, 14 Aug 2026 21:07:54 GMT</lastBuildDate><atom:link href="https://blog.comfy.org/feed" rel="self" type="application/rss+xml"/><copyright><![CDATA[Comfy Org]]></copyright><language><![CDATA[en]]></language><webMaster><![CDATA[comfyui@substack.com]]></webMaster><itunes:owner><itunes:email><![CDATA[comfyui@substack.com]]></itunes:email><itunes:name><![CDATA[Robin]]></itunes:name></itunes:owner><itunes:author><![CDATA[Robin]]></itunes:author><googleplay:owner><![CDATA[comfyui@substack.com]]></googleplay:owner><googleplay:email><![CDATA[comfyui@substack.com]]></googleplay:email><googleplay:author><![CDATA[Robin]]></googleplay:author><itunes:block><![CDATA[Yes]]></itunes:block><item><title><![CDATA[MiniMax Music 3: State of the Art Open Weight Music Generation]]></title><description><![CDATA[Full songs up to five minutes, driven by lyrics and a music description &#8212; expressive vocals, evolving arrangements, and 32 kHz stereo output.]]></description><link>https://blog.comfy.org/p/minimax-music-3-state-of-the-art</link><guid isPermaLink="false">https://blog.comfy.org/p/minimax-music-3-state-of-the-art</guid><dc:creator><![CDATA[Rob]]></dc:creator><pubDate>Thu, 13 Aug 2026 20:41:33 GMT</pubDate><enclosure url="https://substack-post-media.s3.amazonaws.com/public/images/4827eb79-f9c5-4f8d-b0aa-a449a4b440fb_1920x1080.png" length="0" type="image/jpeg"/><content:encoded><![CDATA[<p>Another big day for the open source community! A new state of the art open weights music generation model has arrived in ComfyUI. MiniMax has released MiniMax Music 3. Give it lyrics and a description of the sound you want, and it returns a complete, structurally coherent song up to five minutes, in 32 kHz stereo. </p><p class="button-wrapper" data-attrs="{&quot;url&quot;:&quot;https://cloud.comfy.org/?template=audio_minimax_music_3&quot;,&quot;text&quot;:&quot;Try on Comfy Cloud&quot;,&quot;action&quot;:null,&quot;class&quot;:null}" data-component-name="ButtonCreateButton"><a class="button primary" href="https://cloud.comfy.org/?template=audio_minimax_music_3"><span>Try on Comfy Cloud</span></a></p><div class="native-video-embed" data-component-name="VideoPlaceholder" data-attrs="{&quot;mediaUploadId&quot;:&quot;bef14480-4dfd-46ce-b037-8b97037d2bd9&quot;,&quot;duration&quot;:null}"></div><p>MiniMax Music 3 is built for complete songs rather than loops or clips: conditioned on lyrics and a music description, it holds themes, rhythm, vocal identity, and arrangement progression together across the full track, and outputs 32 kHz, 16-bit stereo audio.</p><p>The architecture is a hybrid of two language models and a continuous synthesis stage. An 8B Global LLM (initialized from Qwen3-8B) models the song&#8217;s long-range semantic and structural progression. A 0.6B Local LLM restores fine-grained acoustic detail within each frame. Instead of decoding audio from discrete tokens alone, the synthesis module fuses the hidden states of both LLMs and passes them through a 2.4B Flow Matching stage and a 123M Flow-VAE decoder. Those continuous representations carry more acoustic information than tokens can which shows up in vocal articulation, instrumental texture, and temporal continuity.</p><h2>Model Highlights</h2><ul><li><p><strong>Full songs with long-range coherence</strong>: Native support for generation up to five minutes. The model sustains complete song structures including intro, verse, pre-chorus, chorus, bridge, instrumental break, and outro, without losing the thread on melody, rhythm, or vocal identity.</p></li><li><p><strong>Lyrics with section tags</strong>: The lyrics input accepts explicit structure tags: <code>[Intro]</code>, <code>[Verse]</code>, <code>[Pre-Chorus]</code>, <code>[Chorus]</code>, <code>[Post-Chorus]</code>, <code>[Bridge]</code>, <code>[Instrumental]</code>, <code>[Solo]</code>, and <code>[Outro]</code>. You decide the song structure.</p></li><li><p><strong>Fine-grained control via Structured Captions</strong> &#8212; Beyond a plain-language description, the model accepts a Structured Caption with three sections: Global Metadata (genre, BPM, key, scale, emotional progression, production profile), Vocal Details (gender, timbre, performance style, harmony, backing vocals, effects), and Arrangement (instruments, section-level instrument evolution, groove, bass, percussion, textures, spatial effects). This lets you steer not just the overall style but how the song develops over time.</p></li><li><p><strong>Expressive vocals</strong> &#8212; Vocal performance is controllable down to timbre, harmony, and effects, and the hidden-state synthesis path is what keeps articulation clean across long passages.</p></li><li><p><strong>32 kHz stereo output</strong> &#8212; 16-bit stereo WAV, with the Flow-VAE decoder retrained for the dynamic range and spectral characteristics of music.<br><br><span>MiniMax also published an official </span><strong><a href="https://github.com/MiniMax-AI/MiniMax-Music3">music caption rewriter skill</a></strong><span> that turns a brief music description and optional tagged lyrics into a detailed Music 3.0 structured caption. The skill builds a coherent section-by-section arrangement with global metadata, vocal details, and arrangement descriptions, preserving explicit musical constraints while keeping the lyric text in the lyrics input. Install it with:<br></span><code>npx skills add MiniMax-AI/MiniMax-Music3 --skill music-caption-rewriter</code></p></li></ul><h2>Examples</h2><p>Gospel Soul</p><div class="native-audio-embed" data-component-name="AudioPlaceholder" data-attrs="{&quot;label&quot;:null,&quot;mediaUploadId&quot;:&quot;19501492-2f42-46dc-bd0c-e29fa09e6ef5&quot;,&quot;duration&quot;:110.027756,&quot;downloadable&quot;:false,&quot;isEditorNode&quot;:true}"></div><p>Rock (Instrumental)</p><div class="native-audio-embed" data-component-name="AudioPlaceholder" data-attrs="{&quot;label&quot;:null,&quot;mediaUploadId&quot;:&quot;0c158033-c581-4f62-8bd5-3c38d664b88f&quot;,&quot;duration&quot;:120.03265,&quot;downloadable&quot;:false,&quot;isEditorNode&quot;:true}"></div><p>Lo-fi Chillhop</p><div class="native-audio-embed" data-component-name="AudioPlaceholder" data-attrs="{&quot;label&quot;:null,&quot;mediaUploadId&quot;:&quot;d1c24089-8e8a-48b5-8fe8-177ceffbb0d2&quot;,&quot;duration&quot;:102.13878,&quot;downloadable&quot;:false,&quot;isEditorNode&quot;:true}"></div><p></p><h2>Getting Started</h2><ol><li><p>Update ComfyUI to the latest version <span>0.33.0 or go to </span><a href="https://cloud.comfy.org/"><span>Comfy Cloud</span></a>.</p></li><li><p>Download the workflow below, or find it in the template library.<br></p><p class="button-wrapper" data-attrs="{&quot;url&quot;:&quot;https://github.com/Comfy-Org/workflow_templates/blob/main/templates/audio_minimax_music_3.json&quot;,&quot;text&quot;:&quot;Download MiniMax Music 3 Workflow&quot;,&quot;action&quot;:null,&quot;class&quot;:null}" data-component-name="ButtonCreateButton"><a class="button primary" href="https://github.com/Comfy-Org/workflow_templates/blob/main/templates/audio_minimax_music_3.json"><span>Download MiniMax Music 3 Workflow</span></a></p></li><li><p>Follow the note in the workflow to download the model weights and save them in the correct model directory.</p></li><li><p>Add your lyrics and music description, then run the workflow.</p></li></ol><p>Model weights: &#129303; <a href="https://huggingface.co/Comfy-Org/MiniMax-Music-3">MiniMaxAI/MiniMax-Music3</a></p><p>As always, enjoy creating!</p>]]></content:encoded></item><item><title><![CDATA[LTX-2.5 Day-0 Support in ComfyUI]]></title><description><![CDATA[Diffusion Fidelity Rendering, native multi-shot generation, and a pretrained checkpoint built for fine-tuning &#8212; LTX&#8217;s open video model arrives in ComfyUI on day one.]]></description><link>https://blog.comfy.org/p/ltx-25-day-0-support-in-comfyui</link><guid isPermaLink="false">https://blog.comfy.org/p/ltx-25-day-0-support-in-comfyui</guid><dc:creator><![CDATA[Rob]]></dc:creator><pubDate>Wed, 12 Aug 2026 04:42:09 GMT</pubDate><enclosure url="https://substack-post-media.s3.amazonaws.com/public/images/be3047da-d6b5-488a-9839-3ce230d51d56_1920x1080.png" length="0" type="image/jpeg"/><content:encoded><![CDATA[<div class="native-video-embed" data-component-name="VideoPlaceholder" data-attrs="{&quot;mediaUploadId&quot;:&quot;66206721-71dc-4d5e-a6bd-0b390c84299d&quot;,&quot;duration&quot;:null}"></div><p>LTX-2.5 is the newest version of LTX&#8217;s open video model. The line has been built on a consistent premise: powerful video generation should be open, fast, and something you can actually run on consumer hardware. Weights are downloadable, the raw model can be fine-tuned on your own data, and it runs <em>fast</em> on local GPUs.</p><p>LTX-2.5 is an improvement across the full generation stack rather than a single-stage upgrade. It comes with significant improvements including a new rendering approach, a new video decoder, a custom text encoder, a better distilled variant, a prompt enhancer, and a base checkpoint built for adaptation. Native 4K, synchronized audio and video, and frame rates up to 50fps carry over from LTX-2.3.</p><p>Not only that, the LTX team also delivered a small experimental duration head model that automatically sets the length of the generated video.</p><p><strong>Variants</strong></p><p>LTX-2.5 comes in two forms in ComfyUI: open weights you run yourself, and hosted models available through Partner Nodes.</p><p><em>Open weights</em></p><ul><li><p><strong>LTX-2.5 dev</strong> &#8212; the main model.</p></li><li><p><strong>LTX-2.5 distilled</strong> &#8212; a smaller, faster variant. Distillation has been reworked to carry more quality, prompt adherence, and motion than previous distilled releases, which makes it viable for deployment where the full model isn&#8217;t economical.</p></li></ul><p><em>Via Partner Nodes</em></p><ul><li><p><strong>LTX-2.5 (Fast)</strong> &#8212; the wider envelope. 2 to 20 seconds, 720p through 4K in landscape or portrait, and frame rates of 24, 25, 48, or 50. Clips over 10 seconds run at 720p or 1080p and 24 or 25fps.</p></li><li><p><strong>LTX-2.5 (Pro)</strong> &#8212; 2 to 10 seconds at 720p or 1080p, with frame rates of 24, 25, or 50.</p><p></p></li></ul><h3>Model Highlights</h3><ul><li><p><strong>Diffusion Fidelity Rendering.</strong> New in LTX-2.5, and the core change in this release. Rather than spending compute evenly across a scene, the model allocates it by complexity. Structure comes first: motion, composition, and framing are generated in an 8x temporally compressed latent space, alongside a set of high-fidelity keyframes &#8212; more keyframes for complex scenes, fewer for simple ones, within the available compute budget. A dedicated pixel-diffusion stage then renders the final video from the structure and keyframes together, carrying fine detail and texture across every frame. In practice that means textures, materials, intricate objects, and faces resolve with pixel-level precision, and busier shots automatically draw more rendering compute than static ones.</p></li><li><p><strong>Diffusion Video Decoder.</strong> Replaces standard VAE decoding. Sharper faces, legible text, and fewer smears in fast motion.</p></li><li><p><strong>Native multi-shot.</strong> One generation produces multiple connected shots, holding character, environment, lighting, voice, and style across the cuts. A sequence comes out of a single run instead of being assembled from separate generations that have to be matched afterward.</p></li><li><p><strong>Custom Gemma 4 12B text encoder.</strong> Purpose-built. Retains multiple subjects, actions, lighting details, and camera direction across a long prompt instead of dropping clauses as the prompt gets more complex.</p></li><li><p><strong>Dedicated prompt enhancer.</strong> A lightweight model that expands short prompts into detailed cinematic instructions, at near-zero additional compute.</p></li><li><p><strong>Auto duration.</strong> The model reads the action described in the prompt and predicts the right clip length before diffusion starts. With the prompt enhancer, that&#8217;s two fewer parameters to tune and less app-side logic to maintain in a pipeline.</p></li></ul><h3>Examples</h3><div class="native-video-embed" data-component-name="VideoPlaceholder" data-attrs="{&quot;mediaUploadId&quot;:&quot;4f21060b-13eb-4b35-a1cf-08651bb1433a&quot;,&quot;duration&quot;:null}"></div><div class="native-video-embed" data-component-name="VideoPlaceholder" data-attrs="{&quot;mediaUploadId&quot;:&quot;fd3d185f-c17f-4925-81be-00467f2cdf5b&quot;,&quot;duration&quot;:null}"></div><div class="native-video-embed" data-component-name="VideoPlaceholder" data-attrs="{&quot;mediaUploadId&quot;:&quot;3ea32b9a-0022-4aef-85dc-6a498edf345f&quot;,&quot;duration&quot;:null}"></div><div class="native-video-embed" data-component-name="VideoPlaceholder" data-attrs="{&quot;mediaUploadId&quot;:&quot;813a370a-a8e9-4ef3-8c5a-3bed9b747216&quot;,&quot;duration&quot;:null}"></div><h3>Getting Started</h3><ol><li><p>Update ComfyUI to the latest version <strong>0.32.0</strong>, or open <a href="https://cloud.comfy.org/">Comfy Cloud</a>.</p></li><li><p>Download the <a href="https://huggingface.co/Lightricks/LTX-2.5">LTX-2.5 weights</a> and place them in your models directory.</p></li><li><p>Load the LTX-2.5 template from the Templates panel, or download the templates below.<br></p><p class="button-wrapper" data-attrs="{&quot;url&quot;:&quot;https://github.com/Comfy-Org/workflow_templates/blob/main/templates/video_ltx2_5_t2v.json&quot;,&quot;text&quot;:&quot;Download LTX-2.5 T2V Workflow&quot;,&quot;action&quot;:null,&quot;class&quot;:null}" data-component-name="ButtonCreateButton"><a class="button primary" href="https://github.com/Comfy-Org/workflow_templates/blob/main/templates/video_ltx2_5_t2v.json"><span>Download LTX-2.5 T2V Workflow</span></a></p><p class="button-wrapper" data-attrs="{&quot;url&quot;:&quot;https://github.com/Comfy-Org/workflow_templates/blob/main/templates/video_ltx2_5_i2v.json&quot;,&quot;text&quot;:&quot;Download LTX-2.5 I2V Workflow&quot;,&quot;action&quot;:null,&quot;class&quot;:null}" data-component-name="ButtonCreateButton"><a class="button primary" href="https://github.com/Comfy-Org/workflow_templates/blob/main/templates/video_ltx2_5_i2v.json"><span>Download LTX-2.5 I2V Workflow</span></a></p><p class="button-wrapper" data-attrs="{&quot;url&quot;:&quot;https://github.com/Comfy-Org/workflow_templates/blob/main/templates/video_ltx2_5_flf2v.json&quot;,&quot;text&quot;:&quot;Download LTX-2.5 FLF2V Workflow&quot;,&quot;action&quot;:null,&quot;class&quot;:null}" data-component-name="ButtonCreateButton"><a class="button primary" href="https://github.com/Comfy-Org/workflow_templates/blob/main/templates/video_ltx2_5_flf2v.json"><span>Download LTX-2.5 FLF2V Workflow</span></a></p></li><li><p>Add your prompt, input images, and run.</p></li></ol><p>As always, enjoy creating!</p><p>Model weights: &#129303; <a href="https://huggingface.co/Lightricks/LTX-2.5">Lightricks/LTX-2.5</a></p>]]></content:encoded></item><item><title><![CDATA[Wan Animate 2 is now available in ComfyUI]]></title><description><![CDATA[We present Wan-Animate-2, a novel end-to-end character animation framework that directly consumes driving videos in a redesigned Diffusion Transformer, which achieves high-fidelity motion generation and strong identity preservation by eliminating intermediate motion extractors.]]></description><link>https://blog.comfy.org/p/wan-animate-2-is-now-available-in</link><guid isPermaLink="false">https://blog.comfy.org/p/wan-animate-2-is-now-available-in</guid><dc:creator><![CDATA[Rob]]></dc:creator><pubDate>Sat, 08 Aug 2026 05:22:42 GMT</pubDate><enclosure url="https://substack-post-media.s3.amazonaws.com/public/images/a87b701d-2895-4089-a1c0-f7ed42156a99_1920x1080.jpeg" length="0" type="image/jpeg"/><content:encoded><![CDATA[<div class="native-video-embed" data-component-name="VideoPlaceholder" data-attrs="{&quot;mediaUploadId&quot;:&quot;e7fce1d0-4941-4df4-bf0c-abd065e434ba&quot;,&quot;duration&quot;:null}"></div><p>Wan Animate 2 is now supported natively in ComfyUI. This model uses a novel end-to-end character animation framework that directly consumes driving videos in a redesigned Diffusion Transformer, which achieves high-fidelity motion generation and strong identity preservation by eliminating intermediate motion extractors, with further text-driven viewpoint control to decouple the output camera perspective from the driving video. Wan Animate 2 Lite is the efficient variant of the same model, built for streaming character animation. <br><br>Two new nodes ship with them: <strong>WanAnimate2ToVideo</strong>, the conditioning node that takes your reference character and driving video, and <strong>WanAnimate2Cache</strong>, an optional node that caches the pose branch to cut generation time roughly in half.</p><p class="button-wrapper" data-attrs="{&quot;url&quot;:&quot;https://cloud.comfy.org/?template=video_wan_animate2&quot;,&quot;text&quot;:&quot;Try it on Comfy Cloud&quot;,&quot;action&quot;:null,&quot;class&quot;:null}" data-component-name="ButtonCreateButton"><a class="button primary" href="https://cloud.comfy.org/?template=video_wan_animate2"><span>Try it on Comfy Cloud</span></a></p><h2>Model Highlights</h2><ul><li><p><strong>The driving video goes straight into the transformer.</strong> No intermediate motion extractor sits between your source footage and the model. That removes a lossy hand-off &#8212; anything the extractor failed to represent, like subtle expression or finger position, was gone before generation started.</p></li><li><p><strong>Higher-fidelity motion.</strong> Reading the driving video directly is what the Wan team points to for the jump in motion quality over the previous release.</p></li><li><p><strong>Stronger identity preservation.</strong> The same architectural change holds the reference character&#8217;s appearance more consistently across the clip.</p></li><li><p><strong>Text-driven viewpoint control.</strong> Camera perspective in the output is decoupled from camera perspective in the driving video. The driving clip supplies the performance; the prompt can place the camera somewhere else.</p></li><li><p><strong>Wan Animate 2 Lite runs at real-time latency.</strong> The efficient variant brings inference latency down to real-time thresholds, which puts streaming character animation on the table rather than batch rendering only.</p></li><li><p><strong>Video extension.</strong> Generations can be continued past a single clip, carrying motion across the seam.</p></li><li><p><strong>Optional pose caching.</strong> WanAnimate2Cache reuses the pose branch&#8217;s work across sampling steps instead of recomputing it every step, roughly halving generation time in exchange for system memory.</p></li><li><p><strong>Context window support.</strong> Long sequences can be generated in windows, including alongside the cache.</p></li></ul><h3>Getting Started</h3><ol><li><p>Update ComfyUI to the latest version, or open <a href="https://cloud.comfy.org/">Comfy Cloud</a>.</p></li><li><p>Load a template from the Templates panel, or download the workflows below.</p><p></p><p class="button-wrapper" data-attrs="{&quot;url&quot;:&quot;https://github.com/Comfy-Org/workflow_templates/blob/main/templates/video_wan_animate2.json&quot;,&quot;text&quot;:&quot;Download Wan Animate 2 Workflow&quot;,&quot;action&quot;:null,&quot;class&quot;:null}" data-component-name="ButtonCreateButton"><a class="button primary" href="https://github.com/Comfy-Org/workflow_templates/blob/main/templates/video_wan_animate2.json"><span>Download Wan Animate 2 Workflow</span></a></p></li><li><p>Connect your reference character and your driving video, set your output resolution and length, and run.</p></li><li><p>Optional: use <strong>WanAnimate2Cache</strong> to cut generation time.</p></li></ol><p>Model weights: &#129303; <a href="https://huggingface.co/Comfy-Org/Wan-Animate-2">Comfy-Org/Wan-Animate-2</a></p><p>As always, enjoy creating.</p>]]></content:encoded></item><item><title><![CDATA[Seedance 2.5 is now available via Partner Nodes]]></title><description><![CDATA[30-second single-shot generation, up to 50 reference assets, prompt-driven video editing, and native output in 10+ languages &#8212; Seedance 2.5 lands in ComfyUI as a Partner Node.]]></description><link>https://blog.comfy.org/p/seedance-25-is-now-available-via</link><guid isPermaLink="false">https://blog.comfy.org/p/seedance-25-is-now-available-via</guid><dc:creator><![CDATA[Rob]]></dc:creator><pubDate>Sat, 08 Aug 2026 03:48:53 GMT</pubDate><enclosure url="https://substack-post-media.s3.amazonaws.com/public/images/9a26c92a-c7cb-4087-b699-a6c4978b34e4_1920x1080.png" length="0" type="image/jpeg"/><content:encoded><![CDATA[<div class="native-video-embed" data-component-name="VideoPlaceholder" data-attrs="{&quot;mediaUploadId&quot;:&quot;97c364c2-1f9a-43b7-93bb-0420f192ff59&quot;,&quot;duration&quot;:null}"></div><p>Seedance 2.5 is now available in ComfyUI through Partner Nodes. This state of the art model moves the format past the short-clip ceiling most video models still operate under: one run produces a single continuous 30-second segment, driven by up to 50 reference assets.</p><p>The other half of the release is control. Seedance 2.5 handles instruction following more reliably than its predecessor, supports editing and extending existing footage, and generates spoken content natively in more than ten languages. </p><p class="button-wrapper" data-attrs="{&quot;url&quot;:&quot;https://cloud.comfy.org/?template=api_seedance2_5_r2v&quot;,&quot;text&quot;:&quot;Try Seedance 2.5 on Comfy Cloud&quot;,&quot;action&quot;:null,&quot;class&quot;:null}" data-component-name="ButtonCreateButton"><a class="button primary" href="https://cloud.comfy.org/?template=api_seedance2_5_r2v"><span>Try Seedance 2.5 on Comfy Cloud</span></a></p><h2>Model Highlights</h2><p><strong>A full 30 seconds in one pass.</strong> Seedance 2.5 generates a single continuous 30-second segment directly &#8212; no stitching, no chaining shorter clips and hoping the seams hold. Composition, lighting, and subject continuity carry across the whole duration.</p><p><strong>Up to 50 reference assets per run.</strong> A single generation accepts 30 images, 10 videos, and 10 audio files. That&#8217;s enough to lock character, environment, motion reference, and soundtrack in one prompt rather than negotiating them across multiple passes. References are addressed inline in the prompt, so you can point a specific instruction at a specific asset.</p><p><strong>Second-level shot control.</strong> Prompts can be written as a timeline. Specify what happens in each time block, call out shot size, camera type, and transitions, and the model holds to the schedule &#8212; including hard cuts on the beat. Long-form output is only useful if you can direct it, and this is the mechanism.</p><p><strong>Controllable editing and extension.</strong> Feed in an existing video and describe the change in plain language. Remove everyone in frame except the protagonist, and the model isolates the subject, reconstructs the background behind the removed elements, and keeps the rest of the shot intact. The same path covers extending footage past its original end point.</p><p><strong>Multilingual performance with lip sync.</strong> Seedance 2.5 generates dialogue and vocal performance natively in more than ten languages. Lip shapes and jaw movement match the words being spoken, which holds up even when a single clip cycles through several languages in sequence.</p><h2>Examples</h2><div class="native-video-embed" data-component-name="VideoPlaceholder" data-attrs="{&quot;mediaUploadId&quot;:&quot;c6f5f10e-285a-4360-8cee-c36f422d4980&quot;,&quot;duration&quot;:null}"></div><div class="native-video-embed" data-component-name="VideoPlaceholder" data-attrs="{&quot;mediaUploadId&quot;:&quot;20f4a048-a5f8-4723-a3c7-83f51f633a92&quot;,&quot;duration&quot;:null}"></div><div class="native-video-embed" data-component-name="VideoPlaceholder" data-attrs="{&quot;mediaUploadId&quot;:&quot;cb6fcbf1-7bdc-46e8-acdd-847f72d0b8db&quot;,&quot;duration&quot;:null}"></div><p></p><h2>Getting Started</h2><ol><li><p>Update ComfyUI to the latest version, or open <a href="https://cloud.comfy.org/">Comfy Cloud</a>.</p></li><li><p>Load a template from the Templates panel, or download the workflows below.<br></p><p class="button-wrapper" data-attrs="{&quot;url&quot;:&quot;https://github.com/Comfy-Org/workflow_templates/blob/main/templates/api_seedance2_5_r2v.json&quot;,&quot;text&quot;:&quot;Download Seedance 2.5 R2V Workflow&quot;,&quot;action&quot;:null,&quot;class&quot;:null}" data-component-name="ButtonCreateButton"><a class="button primary" href="https://github.com/Comfy-Org/workflow_templates/blob/main/templates/api_seedance2_5_r2v.json"><span>Download Seedance 2.5 R2V Workflow</span></a></p><p class="button-wrapper" data-attrs="{&quot;url&quot;:&quot;https://github.com/Comfy-Org/workflow_templates/blob/main/templates/api_seedance2_5_t2v.json&quot;,&quot;text&quot;:&quot;Download Seedance 2.5 T2V Workflow&quot;,&quot;action&quot;:null,&quot;class&quot;:null}" data-component-name="ButtonCreateButton"><a class="button primary" href="https://github.com/Comfy-Org/workflow_templates/blob/main/templates/api_seedance2_5_t2v.json"><span>Download Seedance 2.5 T2V Workflow</span></a></p></li><li><p>Attach your references, write your prompt, and run.</p></li></ol><p>As always, enjoy creating.</p>]]></content:encoded></item><item><title><![CDATA[FLUX 3 is now available via Partner Nodes]]></title><description><![CDATA[One multimodal model across video, audio, image, and action &#8212; with native audio and 20-second clips &#8212; lands in ComfyUI as a Partner Node.]]></description><link>https://blog.comfy.org/p/flux-3-is-now-available-via-partner</link><guid isPermaLink="false">https://blog.comfy.org/p/flux-3-is-now-available-via-partner</guid><dc:creator><![CDATA[Rob]]></dc:creator><pubDate>Wed, 05 Aug 2026 19:31:49 GMT</pubDate><enclosure url="https://substack-post-media.s3.amazonaws.com/public/images/d8720373-c8da-4464-820b-cbf816483ebf_1920x1080.png" length="0" type="image/jpeg"/><content:encoded><![CDATA[<div class="native-video-embed" data-component-name="VideoPlaceholder" data-attrs="{&quot;mediaUploadId&quot;:&quot;d1299ef2-d5df-4152-841c-644cce1b8491&quot;,&quot;duration&quot;:null}"></div><p><br>FLUX 3 Video is now available in ComfyUI through Partner Nodes. Video generation is what ships today. Open weights are coming soon.</p><p>Black Forest Labs&#8217; first unified multimodal model &#8212; one model for video, audio, image, and action-prediction, built on a richer understanding of how the world looks, moves, sounds, and how to interact with it.</p><p>The training is the reason. Rather than separate systems stitched together at inference time, all four modalities are trained jointly in one architecture, and each modality sharpens the others. What comes out is a true general model: creations that are truer to life, stylistically diverse well beyond cinematic, and deeply customizable.</p><h3>Model Highlights</h3><p>FLUX 3 Video generates up to 20 seconds in a single generation, with audio produced natively alongside the frames rather than dubbed on afterward &#8212; dialogue, sound effects, and ambience in the same pass, and optional when you want silent plates to score yourself. Stylistic range is the differentiator. Most video models converge on a cinematic aesthetic regardless of what you ask for; FLUX 3 makes any style possible, from hyper-realistic to animation to cinematic.</p><p>What that covers in practice:</p><ul><li><p><strong>Text to video</strong> &#8212; Simple prompts or complex ones, with real world knowledge behind the details.</p></li><li><p><strong>Image to video</strong> &#8212; Drive from a start frame, an end frame, or a sequence of keyframes in order.</p></li><li><p><strong>Video continuation</strong> &#8212; Extend an existing clip while carrying momentum, framing, and scene logic forward.</p></li><li><p><strong>Multiple scenes</strong> &#8212; Several scenes and camera angles inside a single generation.</p></li><li><p><strong>Multilingual dialogue</strong> &#8212; Accurate speech across languages and accents, with lipsync that holds.</p></li><li><p><strong>Text and typography</strong> &#8212; Type that sits naturally in the scene rather than pasted on top.</p></li><li><p><strong>Agentic chaining</strong> &#8212; Generate and Chain clips together in ComfyUI for a longer, coherent story.</p></li></ul><p>The same architecture reaches past video. Image generation, fast variants, and open weights are on the way.</p><h3>Getting Started</h3><ol><li><p>Update ComfyUI to the latest version, or open <a href="https://cloud.comfy.org/">Comfy Cloud</a>.</p></li><li><p>Download the workflows below, or find them in the template library.<br></p><p class="button-wrapper" data-attrs="{&quot;url&quot;:&quot;https://github.com/Comfy-Org/workflow_templates/blob/main/templates/api_bfl_flux3_i2v.json&quot;,&quot;text&quot;:&quot;Download FLUX 3 I2V Workflow&quot;,&quot;action&quot;:null,&quot;class&quot;:null}" data-component-name="ButtonCreateButton"><a class="button primary" href="https://github.com/Comfy-Org/workflow_templates/blob/main/templates/api_bfl_flux3_i2v.json"><span>Download FLUX 3 I2V Workflow</span></a></p><p class="button-wrapper" data-attrs="{&quot;url&quot;:&quot;https://github.com/Comfy-Org/workflow_templates/blob/main/templates/api_bfl_flux3_t2v.json&quot;,&quot;text&quot;:&quot;Download FLUX 3 T2V Workflow&quot;,&quot;action&quot;:null,&quot;class&quot;:null}" data-component-name="ButtonCreateButton"><a class="button primary" href="https://github.com/Comfy-Org/workflow_templates/blob/main/templates/api_bfl_flux3_t2v.json"><span>Download FLUX 3 T2V Workflow</span></a></p><p class="button-wrapper" data-attrs="{&quot;url&quot;:&quot;https://github.com/Comfy-Org/workflow_templates/blob/main/templates/api_bfl_flux3_storyboard.json&quot;,&quot;text&quot;:&quot;Download FLUX 3 Storyboard Workflow&quot;,&quot;action&quot;:null,&quot;class&quot;:null}" data-component-name="ButtonCreateButton"><a class="button primary" href="https://github.com/Comfy-Org/workflow_templates/blob/main/templates/api_bfl_flux3_storyboard.json"><span>Download FLUX 3 Storyboard Workflow</span></a></p></li><li><p>Write your prompt, upload an image, set duration, and run.</p></li></ol><p>FLUX 3 joins the growing roster of models available through ComfyUI Partner Nodes. <br>As always, enjoy creating!</p>]]></content:encoded></item><item><title><![CDATA[MiniMax H3 Day-0 Support in ComfyUI: Open Weights, Native Audio, and 2K Video]]></title><description><![CDATA[An open-weights omni-modal video model with real stereo sound and 2K output &#8212; this powerful model is greatly optimized in ComfyUI and can run locally on a 3060.]]></description><link>https://blog.comfy.org/p/minimax-h3-day-0-support-in-comfyui</link><guid isPermaLink="false">https://blog.comfy.org/p/minimax-h3-day-0-support-in-comfyui</guid><dc:creator><![CDATA[Rob]]></dc:creator><pubDate>Mon, 03 Aug 2026 02:55:11 GMT</pubDate><enclosure url="https://substack-post-media.s3.amazonaws.com/public/images/67ff80a9-2436-4749-a553-5f6c8c77e23c_1920x1080.png" length="0" type="image/jpeg"/><content:encoded><![CDATA[<div class="native-video-embed" data-component-name="VideoPlaceholder" data-attrs="{&quot;mediaUploadId&quot;:&quot;d7bdd5b8-e88e-4616-a55f-d0bab47ca9c2&quot;,&quot;duration&quot;:null}"></div><p><br>MiniMax H3 dropped today with open weights, and it&#8217;s natively supported in ComfyUI as of this morning. Day zero.</p><p>This is a next-generation open-weights video model. Feed it text, images, video, or audio and it generates video with real stereo sound, up to 2K, up to 15 seconds a clip. It is MiniMax&#8217;s third-generation video model, following Hailuo 01 and Hailuo 02, and the first the company has released with open weights.</p><p class="button-wrapper" data-attrs="{&quot;url&quot;:&quot;https://links.comfy.org/4pTj4QV&quot;,&quot;text&quot;:&quot;Try on Comfy Cloud&quot;,&quot;action&quot;:null,&quot;class&quot;:null}" data-component-name="ButtonCreateButton"><a class="button primary" href="https://links.comfy.org/4pTj4QV"><span>Try on Comfy Cloud</span></a></p><h2>Model Highlights</h2><ul><li><p><strong>Text-to-video</strong> &#8212; prompt only.</p></li><li><p><strong>Image-to-video</strong> &#8212; bring an image to life.</p></li><li><p><strong>First-and-last-frame</strong> &#8212; control the opening frame, the closing frame, or both, and let the model fill in the rest.</p></li><li><p><strong>Reference-to-video</strong> &#8212; supply reference images, video, or audio and carry a subject, a motion, or a voice through the clip.</p></li></ul><p>Output runs to 2K and up to 15 seconds. Audio is generated with the video in the same pass, in stereo, not bolted on afterward.</p><h4>Multimodal context understanding</h4><p>This is the capability MiniMax leads with, and it&#8217;s what collapses five separate tasks into one model. Real work rarely draws on one modality. H3 takes images, audio, and video together and resolves them against a prompt that explains how they relate. Describe the relationship between your inputs and the shot you want, and the model handles the cross-modal work itself.</p><h4>Native stereo audio</h4><p>Audio is a property of the model, not a post-process. Every audio output is native stereo.</p><h4>Editing and motion transfer</h4><p>Motion transfer is the one that matters most for graph work. A reference video can supply movement &#8212; a camera move, a performance, a cutting rhythm &#8212; while the subject and style come from elsewhere. Combined with in-place editing, that means iterating on a shot.</p><h2>Example Outputs</h2><div class="native-video-embed" data-component-name="VideoPlaceholder" data-attrs="{&quot;mediaUploadId&quot;:&quot;b4ae3a87-44ca-45ae-832a-65d16ceffbb4&quot;,&quot;duration&quot;:null}"></div><div class="highlighted_code_block" data-attrs="{&quot;language&quot;:&quot;plaintext&quot;,&quot;nodeId&quot;:null}" data-component-name="HighlightedCodeBlockToDOM"><pre class="shiki"><code class="language-plaintext">Bold comic-book ink style, heavy linework, red and blue-black palette, night city. Use &lt;Picture 2&gt; and &lt;Picture 1&gt; as reference frames and &lt;Audio 1&gt; exactly as it is.
CUT 1: top-down view of the little boy superhero on the rooftop &#8212; red cape fluttering in the wind, hands planted on his hips, freckles and a cocky grin as he looks straight up into the camera. The camera slowly descends toward him as he delivers his line &#8212; as he speaks, comic-book graphic overlay text word by word in sync with his voice: "GET READY TO" - "MEET" &#8212; "YOUR" &#8212; "MAKER" &#8212; huge jagged comic lettering, white with heavy black outlines and red drop shadows, tilted at scrappy angles, until the three words hang stacked in the air above him between his face and the lens.
TRANSITION: a violent WHIP PAN off the rooftop that SMEARS the floating words away with it, motion-streaked &#8212;
CUT 2: low hero angle on the colossal black mech-kaiju towering over the skyline as it rears back and unleashes a GIANT terrifying ROAR &#8212; jaws wide with fangs, red eyes and chest-core flaring blinding bright, blue lightning arcing off its head, the roar's shockwave rippling dust and rattling windows down the buildings, comic-style speed-lines and ink splatter bursting from the impact of the sound. It leans INTO the camera as the roar peaks. Hold on the roar.</code></pre></div><div class="native-video-embed" data-component-name="VideoPlaceholder" data-attrs="{&quot;mediaUploadId&quot;:&quot;e65c80f4-8247-42c2-80c7-d48d420954cb&quot;,&quot;duration&quot;:null}"></div><div class="highlighted_code_block" data-attrs="{&quot;language&quot;:&quot;plaintext&quot;,&quot;nodeId&quot;:null}" data-component-name="HighlightedCodeBlockToDOM"><pre class="shiki"><code class="language-plaintext">Editorial tech product film. The transparent gaming mouse from &lt;Picture 1&gt; in its original scene: a pitch-black studio void with a dark, subtle reflective surface, lit by dramatic duotone vibrant blue and warm neon orange rim lighting, deep soft shadow falloff into pure black. Monochromatic dark palette with electric blue and amber accents. Material motif: glowing internal metallic micro-components and glossy acrylic refractions. The environment is constant throughout.
SHOT 1: The scene opens exactly on image 1, the mouse resting confidently on the dark surface; the blue and orange lights slowly pulse brighter, refracting deeply through the transparent acrylic shell as the camera executes a slow, deliberate push-in to reveal the intricate circuitry.
SHOT 2: Cut to an extreme macro profile of the ridged scroll wheel and layered internal micro-components; the camera glides slowly along the side as a sharp beam of warm orange light sweeps across the metallic textures, contrasting perfectly against the deep blue ambient glow.
SHOT 3: Cut to a low-angle beauty shot: the mouse levitates weightlessly a few centimeters above the dark reflective surface, rotating in a slow, precise orbit; the duotone lighting flares gently along the glassy transparent edges before fading slowly into a sleek silhouette.
Audio: deep pulsing sub-bass room tone, sharp tactile mechanical clicks, a sweeping glassy whoosh on cuts, and a rising electronic swell that resolves to near-silence on the final fade.</code></pre></div><div class="native-video-embed" data-component-name="VideoPlaceholder" data-attrs="{&quot;mediaUploadId&quot;:&quot;02d5aa01-453c-4d42-8136-5a5beb3425d0&quot;,&quot;duration&quot;:null}"></div><div class="highlighted_code_block" data-attrs="{&quot;language&quot;:&quot;plaintext&quot;,&quot;nodeId&quot;:null}" data-component-name="HighlightedCodeBlockToDOM"><pre class="shiki"><code class="language-plaintext">High-fashion editorial film, luxurious slow motion throughout, soft gradient studio sky. 
MUSIC &amp; SFX: a cinematic score fusing deep taiko drums, shimmering koto plucks and modern sub-bass drives the film

SHOT 1: beside her, the mask hangs BROKEN &#8212; shattered into the floating shard formation of &lt;Picture 2&gt;, every kintsugi piece suspended and slowly rotating in place, the gold seams between them dim and waiting. She turns her eyes to it.
SHOT 2: THE ASSEMBLY, with enormous energy &#8212; the gold seams IGNITE, arcs of molten light leaping shard to shard like welding fire, and the pieces snap together one by one, accelerating from slow to rapid-fire, each snap flaring gold, molten droplets spinning off, the surrounding liquid ribbons shuddering with shockwave ripples &#8212; until the final shard slams home and the whole mask fuses, its kintsugi veins blazing.
SHOT 3: the golden dragon of &lt;Picture 3&gt; SWOOPS through the frame in one huge serpentine fly-through &#8212; red glass antlers first, its coils wrapping the space around her and the mask, scales throwing golden light, its wake dragging the crimson liquid into a spiral behind it.
SHOT 4: in the dragon's wake the mask magnetically RIPS across the air onto her face &#8212; a fast, hard, perfectly straight pull &#8212; seating with a deep flare as every gold crack lights, and glowing kintsugi veins spread from the mask's edge down her neck and across the sunset jacket, embroidery igniting thread by thread.
SHOT 5: she descends and lands softly ON the dark liquid wave, snapping into a poised warrior stance and holding it like a lookbook frame &#8212; the dragon coiled behind her shoulder, both liquids spiraling upward around her into a double helix. Held editorial poster frame as the camera settles.
Use &lt;Picture 1&gt;, &lt;Picture 2&gt;, &lt;Picture 3&gt; as reference images. </code></pre></div><div class="native-video-embed" data-component-name="VideoPlaceholder" data-attrs="{&quot;mediaUploadId&quot;:&quot;8c90bad5-3ab8-4832-a55d-6581e557df99&quot;,&quot;duration&quot;:null}"></div><div class="highlighted_code_block" data-attrs="{&quot;language&quot;:&quot;plaintext&quot;,&quot;nodeId&quot;:null}" data-component-name="HighlightedCodeBlockToDOM"><pre class="shiki"><code class="language-plaintext">Vibrant fisheye product commercial, hyper-saturated summer light, the woman from &lt;Picture 1&gt; in a yellow raincoat crouched by a jungle waterfall holding a rainbow-gradient soda can toward the lens, condensation dripping.
MUSIC: an upbeat tropical house track drives the entire film &#8212; punchy kick drum, bright steel-drum plucks, warm bass groove.

CUT 1 : the fisheye hero frame &#8212; as she looks into the lens, GIANT BOLD TYPOGRAPHY stamps across the background behind her, one word per beat: "STAY" then "HYDRATED" &#8212; massive clean white block letters spanning the whole scene, curving with the fisheye distortion, sitting behind her but in front of the waterfall. She reaches her opposite hand towards the can and hooks a finger under the tab.
TRANSITION: extreme close-up of the tab &#8212; it OPENS with a crisp CLICK-hiss, and exactly on the click the fisheye lens iris shutters closed to black, like a camera blinking.
CUT 2: the iris reopens on a new POV &#8212; the can EXTREMELY distorted in the foreground, huge and warped by the fisheye, she smiles and dumps the liquid out of the can onto the floor, droplets scattering weightlessly, sunlight refracting rainbow through the stream, the waterfall soft behind her.
TRANSITION: she lowers the can and one fat droplet falls toward the lens, filling the frame &#8212;
CUT 3: through the droplet into the final wide: the rainbow can floating upright and serene in the turquoise waterfall pool, label facing camera, bobbing gently in the mist, the waterfall thundering softly behind &#8212; and "STAY COMFY" shimmering as a reflection on the water's surface beside it. Hold the product hero frame.
Crisp, joyful, premium product-ad energy. Fisheye distortion in every shot.</code></pre></div><h2>Optimized for local inference in ComfyUI</h2><p>Getting H3 to run well on consumer hardware took significant machine learning engineering. We found that the model's modulation weights (~40% of the total parameters) could be pruned and replaced with a functionally equivalent lookup table, dramatically shrinking the memory footprint with no loss in output quality.</p><p>On top of that, the weights ship with an accurate and efficient int8 convrot quantization, and custom kernels reduce the peak VRAM use during inference.</p><div class="captioned-image-container"><figure><a class="image-link image2 is-viewable-img" target="_blank" href="https://substackcdn.com/image/fetch/$s_!59Bc!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F98d2552b-d84c-4385-9602-bf344dca2ebe_1000x727.png" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!59Bc!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F98d2552b-d84c-4385-9602-bf344dca2ebe_1000x727.png 424w, https://substackcdn.com/image/fetch/$s_!59Bc!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F98d2552b-d84c-4385-9602-bf344dca2ebe_1000x727.png 848w, https://substackcdn.com/image/fetch/$s_!59Bc!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F98d2552b-d84c-4385-9602-bf344dca2ebe_1000x727.png 1272w, https://substackcdn.com/image/fetch/$s_!59Bc!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F98d2552b-d84c-4385-9602-bf344dca2ebe_1000x727.png 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!59Bc!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F98d2552b-d84c-4385-9602-bf344dca2ebe_1000x727.png" width="1000" height="727" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/98d2552b-d84c-4385-9602-bf344dca2ebe_1000x727.png&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:727,&quot;width&quot;:1000,&quot;resizeWidth&quot;:null,&quot;bytes&quot;:29619,&quot;alt&quot;:null,&quot;title&quot;:null,&quot;type&quot;:&quot;image/png&quot;,&quot;href&quot;:null,&quot;belowTheFold&quot;:true,&quot;topImage&quot;:false,&quot;internalRedirect&quot;:&quot;https://blog.comfy.org/i/209313677?img=https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F98d2552b-d84c-4385-9602-bf344dca2ebe_1000x727.png&quot;,&quot;isProcessing&quot;:false,&quot;align&quot;:null,&quot;offset&quot;:false}" class="sizing-normal" alt="" srcset="https://substackcdn.com/image/fetch/$s_!59Bc!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F98d2552b-d84c-4385-9602-bf344dca2ebe_1000x727.png 424w, https://substackcdn.com/image/fetch/$s_!59Bc!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F98d2552b-d84c-4385-9602-bf344dca2ebe_1000x727.png 848w, https://substackcdn.com/image/fetch/$s_!59Bc!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F98d2552b-d84c-4385-9602-bf344dca2ebe_1000x727.png 1272w, https://substackcdn.com/image/fetch/$s_!59Bc!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F98d2552b-d84c-4385-9602-bf344dca2ebe_1000x727.png 1456w" sizes="100vw" loading="lazy"></picture><div class="image-link-expand"><div class="pencraft pc-display-flex pc-gap-8 pc-reset"><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container restack-image"><svg aria-hidden="true" width="20" height="20" viewBox="0 0 20 20" fill="none" stroke-width="1.5" stroke="var(--color-fg-primary)" stroke-linecap="round" stroke-linejoin="round" xmlns="http://www.w3.org/2000/svg"><g><path d="M2.53001 7.81595C3.49179 4.73911 6.43281 2.5 9.91173 2.5C13.1684 2.5 15.9537 4.46214 17.0852 7.23684L17.6179 8.67647M17.6179 8.67647L18.5002 4.26471M17.6179 8.67647L13.6473 6.91176M17.4995 12.1841C16.5378 15.2609 13.5967 17.5 10.1178 17.5C6.86118 17.5 4.07589 15.5379 2.94432 12.7632L2.41165 11.3235M2.41165 11.3235L1.5293 15.7353M2.41165 11.3235L6.38224 13.0882"></path></g></svg></button><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container view-image"><svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-maximize2 lucide-maximize-2"><polyline points="15 3 21 3 21 9"></polyline><polyline points="9 21 3 21 3 15"></polyline><line x1="21" x2="14" y1="3" y2="10"></line><line x1="3" x2="10" y1="21" y2="14"></line></svg></button></div></div></div></a></figure></div><p>The result gives a total memory footprint <strong>reduced by 66%, from 123.6 GB in full precision to 42.5 GB</strong> with the smallest models variants. Combining this with our dynamic VRAM offloading enables a next-generation 2K video model to run locally on a GPU like the RTX 3060.</p><h2>Getting started</h2><ol><li><p>Update ComfyUI to the latest version <strong>0.30.0 or go to <a href="https://links.comfy.org/4pTj4QV">Comfy Cloud</a></strong></p></li><li><p>Download the workflows below, or find them in the template library.</p><p class="button-wrapper" data-attrs="{&quot;url&quot;:&quot;https://github.com/Comfy-Org/workflow_templates/blob/main/templates/video_minimax_h3_i2v.json&quot;,&quot;text&quot;:&quot;Download MiniMax H3 I2V Workflow&quot;,&quot;action&quot;:null,&quot;class&quot;:null}" data-component-name="ButtonCreateButton"><a class="button primary" href="https://github.com/Comfy-Org/workflow_templates/blob/main/templates/video_minimax_h3_i2v.json"><span>Download MiniMax H3 I2V Workflow</span></a></p><p class="button-wrapper" data-attrs="{&quot;url&quot;:&quot;https://github.com/Comfy-Org/workflow_templates/blob/main/templates/video_minimax_h3_r2v.json&quot;,&quot;text&quot;:&quot;Download MiniMax H3 R2V Workflow&quot;,&quot;action&quot;:null,&quot;class&quot;:null}" data-component-name="ButtonCreateButton"><a class="button primary" href="https://github.com/Comfy-Org/workflow_templates/blob/main/templates/video_minimax_h3_r2v.json"><span>Download MiniMax H3 R2V Workflow</span></a></p><p class="button-wrapper" data-attrs="{&quot;url&quot;:&quot;https://github.com/Comfy-Org/workflow_templates/blob/main/templates/video_minimax_h3_t2v.json&quot;,&quot;text&quot;:&quot;Download MiniMax H3 T2V Workflow&quot;,&quot;action&quot;:null,&quot;class&quot;:null}" data-component-name="ButtonCreateButton"><a class="button primary" href="https://github.com/Comfy-Org/workflow_templates/blob/main/templates/video_minimax_h3_t2v.json"><span>Download MiniMax H3 T2V Workflow</span></a></p></li><li><p>Follow the note in the workflow to download the models and save them in the correct model directory.</p></li><li><p>Write your prompt, connect any frame or reference inputs, and run.</p></li></ol><p>Model weights: &#129303; <a href="https://huggingface.co/Comfy-Org/MiniMax-H3">Comfy-Org/MiniMax-H3</a></p><p>As always, enjoy creating!</p>]]></content:encoded></item><item><title><![CDATA[Comfy For Teams Is Here]]></title><description><![CDATA[Everyone on your team, on the same stack.]]></description><link>https://blog.comfy.org/p/comfy-for-teams-is-here</link><guid isPermaLink="false">https://blog.comfy.org/p/comfy-for-teams-is-here</guid><dc:creator><![CDATA[Josiah Villegas]]></dc:creator><pubDate>Thu, 23 Jul 2026 18:11:43 GMT</pubDate><enclosure url="https://substackcdn.com/image/fetch/$s_!VPUv!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F681064db-a79c-4714-b697-7d385eb0e1ef_860x480.png" length="0" type="image/jpeg"/><content:encoded><![CDATA[<div class="captioned-image-container"><figure><a class="image-link image2 is-viewable-img" target="_blank" href="https://substackcdn.com/image/fetch/$s_!VPUv!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F681064db-a79c-4714-b697-7d385eb0e1ef_860x480.png" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!VPUv!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F681064db-a79c-4714-b697-7d385eb0e1ef_860x480.png 424w, https://substackcdn.com/image/fetch/$s_!VPUv!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F681064db-a79c-4714-b697-7d385eb0e1ef_860x480.png 848w, https://substackcdn.com/image/fetch/$s_!VPUv!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F681064db-a79c-4714-b697-7d385eb0e1ef_860x480.png 1272w, https://substackcdn.com/image/fetch/$s_!VPUv!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F681064db-a79c-4714-b697-7d385eb0e1ef_860x480.png 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!VPUv!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F681064db-a79c-4714-b697-7d385eb0e1ef_860x480.png" width="860" height="480" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/681064db-a79c-4714-b697-7d385eb0e1ef_860x480.png&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:480,&quot;width&quot;:860,&quot;resizeWidth&quot;:null,&quot;bytes&quot;:940874,&quot;alt&quot;:null,&quot;title&quot;:null,&quot;type&quot;:&quot;image/png&quot;,&quot;href&quot;:null,&quot;belowTheFold&quot;:false,&quot;topImage&quot;:true,&quot;internalRedirect&quot;:&quot;https://blog.comfy.org/i/208229488?img=https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F681064db-a79c-4714-b697-7d385eb0e1ef_860x480.png&quot;,&quot;isProcessing&quot;:false,&quot;align&quot;:null,&quot;offset&quot;:false}" class="sizing-normal" alt="" srcset="https://substackcdn.com/image/fetch/$s_!VPUv!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F681064db-a79c-4714-b697-7d385eb0e1ef_860x480.png 424w, https://substackcdn.com/image/fetch/$s_!VPUv!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F681064db-a79c-4714-b697-7d385eb0e1ef_860x480.png 848w, https://substackcdn.com/image/fetch/$s_!VPUv!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F681064db-a79c-4714-b697-7d385eb0e1ef_860x480.png 1272w, https://substackcdn.com/image/fetch/$s_!VPUv!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F681064db-a79c-4714-b697-7d385eb0e1ef_860x480.png 1456w" sizes="100vw" fetchpriority="high"></picture><div class="image-link-expand"><div class="pencraft pc-display-flex pc-gap-8 pc-reset"><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container restack-image"><svg aria-hidden="true" width="20" height="20" viewBox="0 0 20 20" fill="none" stroke-width="1.5" stroke="var(--color-fg-primary)" stroke-linecap="round" stroke-linejoin="round" xmlns="http://www.w3.org/2000/svg"><g><path d="M2.53001 7.81595C3.49179 4.73911 6.43281 2.5 9.91173 2.5C13.1684 2.5 15.9537 4.46214 17.0852 7.23684L17.6179 8.67647M17.6179 8.67647L18.5002 4.26471M17.6179 8.67647L13.6473 6.91176M17.4995 12.1841C16.5378 15.2609 13.5967 17.5 10.1178 17.5C6.86118 17.5 4.07589 15.5379 2.94432 12.7632L2.41165 11.3235M2.41165 11.3235L1.5293 15.7353M2.41165 11.3235L6.38224 13.0882"></path></g></svg></button><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container view-image"><svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-maximize2 lucide-maximize-2"><polyline points="15 3 21 3 21 9"></polyline><polyline points="9 21 3 21 3 15"></polyline><line x1="21" x2="14" y1="3" y2="10"></line><line x1="3" x2="10" y1="21" y2="14"></line></svg></button></div></div></div></a></figure></div><p class="button-wrapper" data-attrs="{&quot;url&quot;:&quot;https://blog.comfy.org/subscribe?&quot;,&quot;text&quot;:&quot;Subscribe now&quot;,&quot;action&quot;:null,&quot;class&quot;:null}" data-component-name="ButtonCreateButton"><a class="button primary" href="https://blog.comfy.org/subscribe?"><span>Subscribe now</span></a></p><p><span>Until now, running Comfy as a team meant wrangling separate subscriptions, scattered credits, and someone chasing down receipts at the end of the month. Today that changes. The Comfy Team plan puts your whole team in one shared workspace, on one credit pool, with one bill. Less admin, more building.</span></p><h2><span>What you get</span></h2><p><strong><span>One shared workspace.</span></strong><span> Everyone works in the same place. The same projects, the same runs, the same assets, all in front of the whole team.</span></p><p><strong><span>One shared credit pool.</span></strong><span> Every seat draws from the same balance. No more per-person top-ups, no more guessing who has credits left. You buy credits once, and the team spends them where the work is.</span></p><p><strong><span>Admin controls built in.</span></strong><span> Owners manage billing and top-ups, invite teammates by email, and remove access the moment a project wraps. Bring a freelancer in for a single job and take them off when it ships. And when you move an existing workspace to a Team plan, everything comes with you: workflows, models, run history, all still attached.</span></p><h2><span>Pricing that scales with you</span></h2><p><span>Team plans aren&#8217;t priced per seat. You pick a monthly credit commitment that fits how your team works, and your whole team draws from it.</span></p><p><span>The bigger your commitment, the more you save. Plans run across five tiers from $200 to $2,500 a month, and the volume discount grows as you scale up: </span><strong><span>up to 20% off on annual plans, up to 10% off monthly.</span></strong><span> Commit to the work you&#8217;re already doing and pay less for it.</span></p><h2><span>What&#8217;s coming next</span></h2><p><span>This is the starting line. We&#8217;re already building the next wave of team features: shared workflow and asset libraries so collaboration lives natively inside the workspace, plus finer spend controls, including budgets at the user, project, and workspace level, per-project chargebacks, and auto-recharge so your team never stalls mid-run.</span></p><p><span>Team is live today, and it only gets better from here.</span></p><h2><span>Start your team today</span></h2><p><span>Get your team on one workspace, one pool, one bill, and lock in your volume discount now.</span></p><p><strong><a href="https://comfy.org/cloud/pricing"><span>Start your team</span></a></strong><span> &#183; </span><a href="https://comfy.org/cloud/pricing"><span>See pricing</span></a></p><p><span>Questions as you set up? Reply to any of our emails. We read everything.</span></p><p></p><div class="subscription-widget-wrap-editor" data-attrs="{&quot;url&quot;:&quot;https://blog.comfy.org/subscribe?&quot;,&quot;text&quot;:&quot;Subscribe&quot;,&quot;language&quot;:&quot;en&quot;}" data-component-name="SubscribeWidgetToDOM"><div class="subscription-widget show-subscribe"><div class="preamble"><p class="cta-caption">Thanks for reading ComfyUI Newsletter! Subscribe for free to receive new posts and support my work.</p></div><form class="subscription-widget-subscribe"><input type="email" class="email-input" name="email" placeholder="Type your email&#8230;" tabindex="-1"><input type="submit" class="button primary" value="Subscribe"><div class="fake-input-wrapper"><div class="fake-input"></div><div class="fake-button"></div></div></form></div></div><p></p>]]></content:encoded></item><item><title><![CDATA[Comfy and UAL's Creative Computing Institute Announce Creative Campus Partnership]]></title><description><![CDATA[Comfy Education Initiative &#8212; Comfy announces Creative Campus Partnership to support teaching and research across CCI's masters, PhD, and industry programmes]]></description><link>https://blog.comfy.org/p/comfy-and-uals-creative-computing</link><guid isPermaLink="false">https://blog.comfy.org/p/comfy-and-uals-creative-computing</guid><dc:creator><![CDATA[Tiger Fu]]></dc:creator><pubDate>Thu, 16 Jul 2026 13:01:24 GMT</pubDate><enclosure url="https://substackcdn.com/image/fetch/$s_!Lj0t!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Faab3ae5e-89ad-4ac8-a731-ea24a5ca6f96_2520x1323.png" length="0" type="image/jpeg"/><content:encoded><![CDATA[<div class="captioned-image-container"><figure><a class="image-link image2 is-viewable-img" target="_blank" href="https://substackcdn.com/image/fetch/$s_!Lj0t!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Faab3ae5e-89ad-4ac8-a731-ea24a5ca6f96_2520x1323.png" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!Lj0t!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Faab3ae5e-89ad-4ac8-a731-ea24a5ca6f96_2520x1323.png 424w, https://substackcdn.com/image/fetch/$s_!Lj0t!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Faab3ae5e-89ad-4ac8-a731-ea24a5ca6f96_2520x1323.png 848w, https://substackcdn.com/image/fetch/$s_!Lj0t!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Faab3ae5e-89ad-4ac8-a731-ea24a5ca6f96_2520x1323.png 1272w, https://substackcdn.com/image/fetch/$s_!Lj0t!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Faab3ae5e-89ad-4ac8-a731-ea24a5ca6f96_2520x1323.png 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!Lj0t!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Faab3ae5e-89ad-4ac8-a731-ea24a5ca6f96_2520x1323.png" width="1456" height="764" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/aab3ae5e-89ad-4ac8-a731-ea24a5ca6f96_2520x1323.png&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:764,&quot;width&quot;:1456,&quot;resizeWidth&quot;:null,&quot;bytes&quot;:495199,&quot;alt&quot;:null,&quot;title&quot;:null,&quot;type&quot;:&quot;image/png&quot;,&quot;href&quot;:null,&quot;belowTheFold&quot;:false,&quot;topImage&quot;:true,&quot;internalRedirect&quot;:&quot;https://blog.comfy.org/i/203750497?img=https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Faab3ae5e-89ad-4ac8-a731-ea24a5ca6f96_2520x1323.png&quot;,&quot;isProcessing&quot;:false,&quot;align&quot;:null,&quot;offset&quot;:false}" class="sizing-normal" alt="" srcset="https://substackcdn.com/image/fetch/$s_!Lj0t!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Faab3ae5e-89ad-4ac8-a731-ea24a5ca6f96_2520x1323.png 424w, https://substackcdn.com/image/fetch/$s_!Lj0t!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Faab3ae5e-89ad-4ac8-a731-ea24a5ca6f96_2520x1323.png 848w, https://substackcdn.com/image/fetch/$s_!Lj0t!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Faab3ae5e-89ad-4ac8-a731-ea24a5ca6f96_2520x1323.png 1272w, https://substackcdn.com/image/fetch/$s_!Lj0t!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Faab3ae5e-89ad-4ac8-a731-ea24a5ca6f96_2520x1323.png 1456w" sizes="100vw" fetchpriority="high"></picture><div class="image-link-expand"><div class="pencraft pc-display-flex pc-gap-8 pc-reset"><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container restack-image"><svg aria-hidden="true" width="20" height="20" viewBox="0 0 20 20" fill="none" stroke-width="1.5" stroke="var(--color-fg-primary)" stroke-linecap="round" stroke-linejoin="round" xmlns="http://www.w3.org/2000/svg"><g><path d="M2.53001 7.81595C3.49179 4.73911 6.43281 2.5 9.91173 2.5C13.1684 2.5 15.9537 4.46214 17.0852 7.23684L17.6179 8.67647M17.6179 8.67647L18.5002 4.26471M17.6179 8.67647L13.6473 6.91176M17.4995 12.1841C16.5378 15.2609 13.5967 17.5 10.1178 17.5C6.86118 17.5 4.07589 15.5379 2.94432 12.7632L2.41165 11.3235M2.41165 11.3235L1.5293 15.7353M2.41165 11.3235L6.38224 13.0882"></path></g></svg></button><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container view-image"><svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-maximize2 lucide-maximize-2"><polyline points="15 3 21 3 21 9"></polyline><polyline points="9 21 3 21 3 15"></polyline><line x1="21" x2="14" y1="3" y2="10"></line><line x1="3" x2="10" y1="21" y2="14"></line></svg></button></div></div></div></a></figure></div><p>Comfy Org, the team behind ComfyUI, the open-source node-based interface for generative AI, and the Creative Computing Institute (CCI) at University of the Arts London today announced a Creative Campus partnership, making CCI a founding partner of the <em>upcoming</em> Comfy Education Initiative.</p><p>CCI already runs ComfyUI at every level of the institute. On the Applied Machine Learning for Creatives masters course, students build image, video, audio, and text workflows, train their own models, and construct interactive pipelines. PhD researchers use Comfy for fine-tuning, custom datasets, and custom node development. The institute also uses ComfyUI in industry training, where its node-based interface gives non-technical collaborators a way into generative AI that code alone does not.</p><div class="pullquote"><p>&#8220;ComfyUI has become part of how we teach, research, and work with industry. It is one of the few generative AI environments where the workflows our students build are portable, inspectable, and forkable, and that open-source foundation is exactly what a university should be teaching on.&#8221; &#8212; Prof Mick Grierson, Research Leader, UAL Creative Computing Institute</p></div><p>Through the partnership, CCI educators and students gain access to classroom licenses with central billing &amp; administration, educational discounts, early access to upcoming team features, a dedicated educator community with direct support from the Comfy team, and a voice in shaping the future of the education program.<br><br>Creative Campus partnerships are the deepest tier of the program: a direct, ongoing collaboration in which an institution works hand in hand with the Comfy team to roll out ComfyUI across teaching, research, and industry training. </p><div class="pullquote"><p>&#8220;CCI is the model we hope every Creative Campus Partnership follows: ComfyUI in the masters classroom, in PhD research, and in industry collaboration, all at once. As our first Creative Campus Partner, they are helping us design an education program that works the way universities actually work.&#8221; &#8212; The Comfy Team</p></div><div class="captioned-image-container"><figure><a class="image-link image2 is-viewable-img" target="_blank" href="https://substackcdn.com/image/fetch/$s_!Ggd-!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F80b5ca86-2f25-4556-b338-a7cf156db568_3500x2333.jpeg" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!Ggd-!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F80b5ca86-2f25-4556-b338-a7cf156db568_3500x2333.jpeg 424w, https://substackcdn.com/image/fetch/$s_!Ggd-!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F80b5ca86-2f25-4556-b338-a7cf156db568_3500x2333.jpeg 848w, https://substackcdn.com/image/fetch/$s_!Ggd-!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F80b5ca86-2f25-4556-b338-a7cf156db568_3500x2333.jpeg 1272w, https://substackcdn.com/image/fetch/$s_!Ggd-!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F80b5ca86-2f25-4556-b338-a7cf156db568_3500x2333.jpeg 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!Ggd-!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F80b5ca86-2f25-4556-b338-a7cf156db568_3500x2333.jpeg" width="1456" height="971" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/80b5ca86-2f25-4556-b338-a7cf156db568_3500x2333.jpeg&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:971,&quot;width&quot;:1456,&quot;resizeWidth&quot;:null,&quot;bytes&quot;:2324776,&quot;alt&quot;:null,&quot;title&quot;:null,&quot;type&quot;:&quot;image/jpeg&quot;,&quot;href&quot;:null,&quot;belowTheFold&quot;:false,&quot;topImage&quot;:false,&quot;internalRedirect&quot;:&quot;https://blog.comfy.org/i/203750497?img=https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F80b5ca86-2f25-4556-b338-a7cf156db568_3500x2333.jpeg&quot;,&quot;isProcessing&quot;:false,&quot;align&quot;:null,&quot;offset&quot;:false}" class="sizing-normal" alt="" srcset="https://substackcdn.com/image/fetch/$s_!Ggd-!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F80b5ca86-2f25-4556-b338-a7cf156db568_3500x2333.jpeg 424w, https://substackcdn.com/image/fetch/$s_!Ggd-!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F80b5ca86-2f25-4556-b338-a7cf156db568_3500x2333.jpeg 848w, https://substackcdn.com/image/fetch/$s_!Ggd-!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F80b5ca86-2f25-4556-b338-a7cf156db568_3500x2333.jpeg 1272w, https://substackcdn.com/image/fetch/$s_!Ggd-!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F80b5ca86-2f25-4556-b338-a7cf156db568_3500x2333.jpeg 1456w" sizes="100vw"></picture><div class="image-link-expand"><div class="pencraft pc-display-flex pc-gap-8 pc-reset"><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container restack-image"><svg aria-hidden="true" width="20" height="20" viewBox="0 0 20 20" fill="none" stroke-width="1.5" stroke="var(--color-fg-primary)" stroke-linecap="round" stroke-linejoin="round" xmlns="http://www.w3.org/2000/svg"><g><path d="M2.53001 7.81595C3.49179 4.73911 6.43281 2.5 9.91173 2.5C13.1684 2.5 15.9537 4.46214 17.0852 7.23684L17.6179 8.67647M17.6179 8.67647L18.5002 4.26471M17.6179 8.67647L13.6473 6.91176M17.4995 12.1841C16.5378 15.2609 13.5967 17.5 10.1178 17.5C6.86118 17.5 4.07589 15.5379 2.94432 12.7632L2.41165 11.3235M2.41165 11.3235L1.5293 15.7353M2.41165 11.3235L6.38224 13.0882"></path></g></svg></button><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container view-image"><svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-maximize2 lucide-maximize-2"><polyline points="15 3 21 3 21 9"></polyline><polyline points="9 21 3 21 3 15"></polyline><line x1="21" x2="14" y1="3" y2="10"></line><line x1="3" x2="10" y1="21" y2="14"></line></svg></button></div></div></div></a></figure></div><p><em><sup>Creative Computing Institute Campus. Photo: Ana Escobar, courtesy UAL</sup></em></p><p>The institute is leading a major &#163;1.5 million publicly funded research programme developing copyright-compliant audiovisual foundation models for the UK&#8217;s creative industries. Bringing together expertise in sound, image, and artificial intelligence, the project is building open tools and responsible AI national infrastructure designed to support UK creative production, research, and experimentation across the sector.</p><p>The outputs of the research will explore wider dissemination and adoption through open, node-based tools such as ComfyUI to support experimentation, workflows, and collaboration around emerging multimodal AI systems.</p><p>UAL CCI joins a founding cohort of educators and institutions featured at the launch of the Comfy Education Initiative, alongside researchers such as CCI co-founder Dr. Phoenix Perry, whose Antigravity Machine project Comfy supports as an industry partner.</p><div><hr></div><p><strong>About the Creative Computing Institute at UAL</strong></p><p>The Creative Computing Institute at University of the Arts London applies computing to creativity and social impact, operating at the intersection of computational technologies and creative practice, teaching undergraduate, postgraduate, and PhD students alongside research and industry collaboration.</p><div><hr></div><p>The Comfy Education Initiative is coming soon! <br><br><strong><span>Register your interest </span><a href="https://forms.gle/fVXA8oMeKexHS49CA"><span>here</span></a><span> to get early access to educational discounts, education exclusive slack / discord communities, and be notified as soon as the program is released.</span></strong></p><p></p>]]></content:encoded></item><item><title><![CDATA[Batch Generation in Comfy MCP: Use Cases in Production]]></title><description><![CDATA[The recent updates and popular use cases people are actually scaling today.]]></description><link>https://blog.comfy.org/p/batch-generation-in-comfy-mcp-use</link><guid isPermaLink="false">https://blog.comfy.org/p/batch-generation-in-comfy-mcp-use</guid><dc:creator><![CDATA[Jo Zhang]]></dc:creator><pubDate>Wed, 15 Jul 2026 18:50:56 GMT</pubDate><enclosure url="https://substack-post-media.s3.amazonaws.com/public/images/2a75a49d-c250-4740-883e-5865c8240eb4_3456x1942.png" length="0" type="image/jpeg"/><content:encoded><![CDATA[<div class="native-video-embed" data-component-name="VideoPlaceholder" data-attrs="{&quot;mediaUploadId&quot;:&quot;4e6982a4-78b9-4e96-95b5-be870c716f21&quot;,&quot;duration&quot;:null}"></div><p>When we started building the agentic experience, we believed one thing firmly: agents are going to 100x the scale of creative pipelines. We did not expect the proof to arrive this fast:</p><p>Within a week of the Comfy MCP beta post, people were running thousands of workflows a day through it. This is the real proof that workflows are fully adopted in production. </p><p>We learned that agents batch by nature &#8212; You don't ask an agent for one image. You ask for a set. And here are the improvements we made over the past week to enable scalable workflows.</p><h2>Improvements for Batch Generation</h2><p>New tools built for running many workflows at once. Submit, monitor, and collect a whole set &#8212; each step saving significant time and tokens.</p><ul><li><p><code>submit_batch</code> &#8212; up to 50 jobs in one call. Mix partner models and your own workflows in the same batch. One <code>batch_id</code> comes back.</p></li><li><p><code>get_batch_status</code> &#8212; The state of every job in one call. <code>ready</code> means the file is genuinely fetchable, not just that the job claims it&#8217;s done.</p></li><li><p><code>get_batch_output</code> &#8212; Collect every ready output in one call, with a single download command for the whole set.</p></li></ul><p><strong><span>The </span></strong><code>batch_id</code><strong><span> is durable.</span></strong> Submit now, close the laptop, collect tomorrow in a fresh session.</p><h2>Everything else since launch</h2><p><strong>Comfy is live on OpenClaw: </strong><a href="https://clawhub.ai/comfy-org/skills/comfy"><span>clawhub.ai/comfy-org/skills/comfy</span></a><span>.</span>  Official skill published under the <code>@comfy-org</code> publisher org.</p><p>One command for any OpenClaw user:</p><pre><code>openclaw skills install @comfy-org/comfy</code></pre><p><strong>More models:</strong> Seedance 2.0 Mini and Seedream 5.0, plus additional audio and 3D modes. Your agent is always up to date on the latest models and related template workflows. Seedance 2.5 is dropping in MCP on day 1 as well, just like all the other Comfy products.</p><p><strong>App Mode, properly:</strong> Turn a saved workflow into an app: choose the inputs, choose the outputs, hide the graph, share the URL. Your teammate runs it without ever seeing a node. It now handles subgraph widgets and video loaders &#8212; and the link actually opens.</p><h2>Use Cases in Real Production</h2><p>We gathered some real use cases after talking to users and regenerated the assets ourselves for the showcases.</p><p><strong>Persona shoots &#8212; one face &#215; N scenes.</strong> The biggest cluster by far. An identity-locked character, shot across dozens of 9:16 phone-style scenes. Virtual influencers and UGC pipelines are one of the most common things being built on the MCP today.</p><div class="native-video-embed" data-component-name="VideoPlaceholder" data-attrs="{&quot;mediaUploadId&quot;:&quot;97307e89-68c4-420f-a450-3a7a5a3be8e9&quot;,&quot;duration&quot;:null}"></div><p><strong>Asset matrices &#8212; characters &#215; states.</strong> The cleanest batch story we&#8217;ve seen. A game developer ran four fish &#8212; koi, clownfish, angelfish, reef &#8212; across five animation states each: swim, hover, celebrate, dizzy, peck. White background, side view. Twenty sprites, one batch.</p><div class="captioned-image-container"><figure><a class="image-link image2 is-viewable-img" target="_blank" href="https://substackcdn.com/image/fetch/$s_!bJWj!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fdaa4ac05-a6ff-48e8-a76d-cc568dd5f01f_640x360.webp" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!bJWj!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fdaa4ac05-a6ff-48e8-a76d-cc568dd5f01f_640x360.webp 424w, https://substackcdn.com/image/fetch/$s_!bJWj!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fdaa4ac05-a6ff-48e8-a76d-cc568dd5f01f_640x360.webp 848w, https://substackcdn.com/image/fetch/$s_!bJWj!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fdaa4ac05-a6ff-48e8-a76d-cc568dd5f01f_640x360.webp 1272w, https://substackcdn.com/image/fetch/$s_!bJWj!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fdaa4ac05-a6ff-48e8-a76d-cc568dd5f01f_640x360.webp 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!bJWj!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fdaa4ac05-a6ff-48e8-a76d-cc568dd5f01f_640x360.webp" width="640" height="360" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/daa4ac05-a6ff-48e8-a76d-cc568dd5f01f_640x360.webp&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:360,&quot;width&quot;:640,&quot;resizeWidth&quot;:null,&quot;bytes&quot;:799158,&quot;alt&quot;:null,&quot;title&quot;:null,&quot;type&quot;:&quot;image/webp&quot;,&quot;href&quot;:null,&quot;belowTheFold&quot;:true,&quot;topImage&quot;:false,&quot;internalRedirect&quot;:&quot;https://blog.comfy.org/i/206958221?img=https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fdaa4ac05-a6ff-48e8-a76d-cc568dd5f01f_640x360.webp&quot;,&quot;isProcessing&quot;:false,&quot;align&quot;:null,&quot;offset&quot;:false}" class="sizing-normal" alt="" srcset="https://substackcdn.com/image/fetch/$s_!bJWj!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fdaa4ac05-a6ff-48e8-a76d-cc568dd5f01f_640x360.webp 424w, https://substackcdn.com/image/fetch/$s_!bJWj!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fdaa4ac05-a6ff-48e8-a76d-cc568dd5f01f_640x360.webp 848w, https://substackcdn.com/image/fetch/$s_!bJWj!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fdaa4ac05-a6ff-48e8-a76d-cc568dd5f01f_640x360.webp 1272w, https://substackcdn.com/image/fetch/$s_!bJWj!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fdaa4ac05-a6ff-48e8-a76d-cc568dd5f01f_640x360.webp 1456w" sizes="100vw" loading="lazy"></picture><div class="image-link-expand"><div class="pencraft pc-display-flex pc-gap-8 pc-reset"><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container restack-image"><svg aria-hidden="true" width="20" height="20" viewBox="0 0 20 20" fill="none" stroke-width="1.5" stroke="var(--color-fg-primary)" stroke-linecap="round" stroke-linejoin="round" xmlns="http://www.w3.org/2000/svg"><g><path d="M2.53001 7.81595C3.49179 4.73911 6.43281 2.5 9.91173 2.5C13.1684 2.5 15.9537 4.46214 17.0852 7.23684L17.6179 8.67647M17.6179 8.67647L18.5002 4.26471M17.6179 8.67647L13.6473 6.91176M17.4995 12.1841C16.5378 15.2609 13.5967 17.5 10.1178 17.5C6.86118 17.5 4.07589 15.5379 2.94432 12.7632L2.41165 11.3235M2.41165 11.3235L1.5293 15.7353M2.41165 11.3235L6.38224 13.0882"></path></g></svg></button><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container view-image"><svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-maximize2 lucide-maximize-2"><polyline points="15 3 21 3 21 9"></polyline><polyline points="9 21 3 21 3 15"></polyline><line x1="21" x2="14" y1="3" y2="10"></line><line x1="3" x2="10" y1="21" y2="14"></line></svg></button></div></div></div></a></figure></div><p><strong>Prompt fans &#8212; one scene &#215; N variants.</strong> Ad and commercial production. Fintech tap-to-pay POV shots, EV charging at golden hour, home-care nurse scenes. Same scene, ten takes, pick one.</p><div class="native-video-embed" data-component-name="VideoPlaceholder" data-attrs="{&quot;mediaUploadId&quot;:&quot;38340001-8746-4642-9048-d6d19eb12c00&quot;,&quot;duration&quot;:null}"></div><h2>Get Started in 5 minutes</h2><ol><li><p>Create a Comfy account at <a href="http://cloud.comfy.org">cloud.comfy.org</a> or in the desktop app.</p></li><li><p>For Claude Desktop, add Comfy as a Custom Connector.</p></li><li><p>For any other agent, send it the docs: &#8220;Agent, please help me install Comfy MCP: <a href="https://docs.comfy.org/agent-tools/mcp">https://docs.comfy.org/agent-tools/mcp</a>&#8220;</p></li></ol><div class="captioned-image-container"><figure><a class="image-link image2 is-viewable-img" target="_blank" href="https://substackcdn.com/image/fetch/$s_!r0xX!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F2fcacdc3-39b9-4ca3-a3cd-589670bb48af_1080x716.gif" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!r0xX!,w_424,c_limit,f_webp,q_auto:good,fl_lossy/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F2fcacdc3-39b9-4ca3-a3cd-589670bb48af_1080x716.gif 424w, https://substackcdn.com/image/fetch/$s_!r0xX!,w_848,c_limit,f_webp,q_auto:good,fl_lossy/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F2fcacdc3-39b9-4ca3-a3cd-589670bb48af_1080x716.gif 848w, https://substackcdn.com/image/fetch/$s_!r0xX!,w_1272,c_limit,f_webp,q_auto:good,fl_lossy/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F2fcacdc3-39b9-4ca3-a3cd-589670bb48af_1080x716.gif 1272w, https://substackcdn.com/image/fetch/$s_!r0xX!,w_1456,c_limit,f_webp,q_auto:good,fl_lossy/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F2fcacdc3-39b9-4ca3-a3cd-589670bb48af_1080x716.gif 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!r0xX!,w_1456,c_limit,f_auto,q_auto:good,fl_lossy/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F2fcacdc3-39b9-4ca3-a3cd-589670bb48af_1080x716.gif" width="1080" height="716" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/2fcacdc3-39b9-4ca3-a3cd-589670bb48af_1080x716.gif&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:716,&quot;width&quot;:1080,&quot;resizeWidth&quot;:null,&quot;bytes&quot;:6357013,&quot;alt&quot;:null,&quot;title&quot;:null,&quot;type&quot;:&quot;image/gif&quot;,&quot;href&quot;:null,&quot;belowTheFold&quot;:true,&quot;topImage&quot;:false,&quot;internalRedirect&quot;:&quot;https://blog.comfy.org/i/206958221?img=https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F2fcacdc3-39b9-4ca3-a3cd-589670bb48af_1080x716.gif&quot;,&quot;isProcessing&quot;:false,&quot;align&quot;:null,&quot;offset&quot;:false}" class="sizing-normal" alt="" srcset="https://substackcdn.com/image/fetch/$s_!r0xX!,w_424,c_limit,f_auto,q_auto:good,fl_lossy/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F2fcacdc3-39b9-4ca3-a3cd-589670bb48af_1080x716.gif 424w, https://substackcdn.com/image/fetch/$s_!r0xX!,w_848,c_limit,f_auto,q_auto:good,fl_lossy/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F2fcacdc3-39b9-4ca3-a3cd-589670bb48af_1080x716.gif 848w, https://substackcdn.com/image/fetch/$s_!r0xX!,w_1272,c_limit,f_auto,q_auto:good,fl_lossy/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F2fcacdc3-39b9-4ca3-a3cd-589670bb48af_1080x716.gif 1272w, https://substackcdn.com/image/fetch/$s_!r0xX!,w_1456,c_limit,f_auto,q_auto:good,fl_lossy/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F2fcacdc3-39b9-4ca3-a3cd-589670bb48af_1080x716.gif 1456w" sizes="100vw" loading="lazy"></picture><div class="image-link-expand"><div class="pencraft pc-display-flex pc-gap-8 pc-reset"><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container restack-image"><svg aria-hidden="true" width="20" height="20" viewBox="0 0 20 20" fill="none" stroke-width="1.5" stroke="var(--color-fg-primary)" stroke-linecap="round" stroke-linejoin="round" xmlns="http://www.w3.org/2000/svg"><g><path d="M2.53001 7.81595C3.49179 4.73911 6.43281 2.5 9.91173 2.5C13.1684 2.5 15.9537 4.46214 17.0852 7.23684L17.6179 8.67647M17.6179 8.67647L18.5002 4.26471M17.6179 8.67647L13.6473 6.91176M17.4995 12.1841C16.5378 15.2609 13.5967 17.5 10.1178 17.5C6.86118 17.5 4.07589 15.5379 2.94432 12.7632L2.41165 11.3235M2.41165 11.3235L1.5293 15.7353M2.41165 11.3235L6.38224 13.0882"></path></g></svg></button><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container view-image"><svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-maximize2 lucide-maximize-2"><polyline points="15 3 21 3 21 9"></polyline><polyline points="9 21 3 21 3 15"></polyline><line x1="21" x2="14" y1="3" y2="10"></line><line x1="3" x2="10" y1="21" y2="14"></line></svg></button></div></div></div></a></figure></div><p></p><h2>Tips from Beta Users</h2><ol><li><p>Most of the creative work involves asset uploading and downloading. When choosing an agent, we would recommend one with greater access to local directories and file systems. For example, we recommend Claude Code over Claude Chat to better handle these. </p></li><li><p>If you want to see the workflow for all generations, you can try going to cloud.comfy.org and dragging the generated images or videos directly back into the canvas; it should show the workflow.</p></li><li><p>When you don&#8217;t know how to refer to a workflow for your agent, try to share it as a URL.</p></li></ol><h2>Feedback</h2><ul><li><p>Feedback survey: <a href="https://links.comfy.org/cloudmcpbeta">https://links.comfy.org/cloudmcpbeta</a></p></li><li><p>Discord: the #comfy-mcp-and-cli channel &#8212; <a href="https://discord.gg/xWJn6nhE3R">https://discord.gg/xWJn6nhE3R</a></p></li></ul><p>As always, enjoy creating! Plus, local MCP is coming soon. </p>]]></content:encoded></item><item><title><![CDATA[Seedream 5.0 Pro Now Available in ComfyUI]]></title><description><![CDATA[ByteDance's latest image model is now available in ComfyUI via Partner Nodes, with stronger editing, character consistency, and multilingual layout support.]]></description><link>https://blog.comfy.org/p/seedream-50-pro</link><guid isPermaLink="false">https://blog.comfy.org/p/seedream-50-pro</guid><dc:creator><![CDATA[Daxiong (Lin)]]></dc:creator><pubDate>Thu, 09 Jul 2026 02:05:44 GMT</pubDate><enclosure url="https://substack-post-media.s3.amazonaws.com/public/images/632163fc-979f-4295-acb8-14fe5f466b3d_1920x1080.png" length="0" type="image/jpeg"/><content:encoded><![CDATA[<p></p><div class="native-video-embed" data-component-name="VideoPlaceholder" data-attrs="{&quot;mediaUploadId&quot;:&quot;8fa08aa9-47ef-4f03-80fb-c43deb4e09ba&quot;,&quot;duration&quot;:null}"></div><p>We&#8217;re excited to announce that <strong>Seedream 5.0 Pro</strong>, ByteDance&#8217;s latest image-generation model, is now available in ComfyUI via <strong>Partner Nodes</strong>. It brings stronger editing precision, improved character and product consistency, better small-text rendering, and stronger support for posters, infographics, and multilingual layouts.</p><p class="button-wrapper" data-attrs="{&quot;url&quot;:&quot;https://links.comfy.org/4yjN9x9&quot;,&quot;text&quot;:&quot;Try on Comfy Cloud&quot;,&quot;action&quot;:null,&quot;class&quot;:null}" data-component-name="ButtonCreateButton"><a class="button primary" href="https://links.comfy.org/4yjN9x9"><span>Try on Comfy Cloud</span></a></p><h2><strong>Model Highlights</strong></h2><ul><li><p><strong>Multi-modal</strong>: Text-to-image, image editing, and multi-image inputs in one model.</p></li><li><p><strong>Character consistency</strong>: Preserve portrait identity, lighting, and realism across style changes and edits.</p></li><li><p><strong>Product consistency</strong>: Keep product features and colors stable across scene changes and variations.</p></li><li><p><strong>Precision editing</strong>: Target specific regions for edits while leaving lighting, depth, and texture elsewhere untouched.</p></li><li><p><strong>Structured layouts</strong>: Generate infographics, flowcharts, and mixed text-and-image compositions with legible small text.</p></li><li><p><strong>Multilingual text</strong>: Render accurate in-image text across 14 languages, including Arabic, English, Japanese, Korean, Russian, and Thai.</p></li></ul><h2><strong>Examples</strong></h2><div class="captioned-image-container"><figure><a class="image-link image2 is-viewable-img" target="_blank" href="https://substackcdn.com/image/fetch/$s_!IYVe!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F49768d00-9351-43be-ad49-0052bde0382c_1024x1024.jpeg" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!IYVe!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F49768d00-9351-43be-ad49-0052bde0382c_1024x1024.jpeg 424w, https://substackcdn.com/image/fetch/$s_!IYVe!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F49768d00-9351-43be-ad49-0052bde0382c_1024x1024.jpeg 848w, https://substackcdn.com/image/fetch/$s_!IYVe!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F49768d00-9351-43be-ad49-0052bde0382c_1024x1024.jpeg 1272w, https://substackcdn.com/image/fetch/$s_!IYVe!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F49768d00-9351-43be-ad49-0052bde0382c_1024x1024.jpeg 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!IYVe!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F49768d00-9351-43be-ad49-0052bde0382c_1024x1024.jpeg" width="1024" height="1024" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/49768d00-9351-43be-ad49-0052bde0382c_1024x1024.jpeg&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:1024,&quot;width&quot;:1024,&quot;resizeWidth&quot;:null,&quot;bytes&quot;:483071,&quot;alt&quot;:null,&quot;title&quot;:null,&quot;type&quot;:&quot;image/jpeg&quot;,&quot;href&quot;:null,&quot;belowTheFold&quot;:false,&quot;topImage&quot;:true,&quot;internalRedirect&quot;:&quot;https://blog.comfy.org/i/206041133?img=https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F49768d00-9351-43be-ad49-0052bde0382c_1024x1024.jpeg&quot;,&quot;isProcessing&quot;:false,&quot;align&quot;:null,&quot;offset&quot;:false}" class="sizing-normal" alt="" srcset="https://substackcdn.com/image/fetch/$s_!IYVe!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F49768d00-9351-43be-ad49-0052bde0382c_1024x1024.jpeg 424w, https://substackcdn.com/image/fetch/$s_!IYVe!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F49768d00-9351-43be-ad49-0052bde0382c_1024x1024.jpeg 848w, https://substackcdn.com/image/fetch/$s_!IYVe!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F49768d00-9351-43be-ad49-0052bde0382c_1024x1024.jpeg 1272w, https://substackcdn.com/image/fetch/$s_!IYVe!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F49768d00-9351-43be-ad49-0052bde0382c_1024x1024.jpeg 1456w" sizes="100vw" fetchpriority="high"></picture><div class="image-link-expand"><div class="pencraft pc-display-flex pc-gap-8 pc-reset"><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container restack-image"><svg aria-hidden="true" width="20" height="20" viewBox="0 0 20 20" fill="none" stroke-width="1.5" stroke="var(--color-fg-primary)" stroke-linecap="round" stroke-linejoin="round" xmlns="http://www.w3.org/2000/svg"><g><path d="M2.53001 7.81595C3.49179 4.73911 6.43281 2.5 9.91173 2.5C13.1684 2.5 15.9537 4.46214 17.0852 7.23684L17.6179 8.67647M17.6179 8.67647L18.5002 4.26471M17.6179 8.67647L13.6473 6.91176M17.4995 12.1841C16.5378 15.2609 13.5967 17.5 10.1178 17.5C6.86118 17.5 4.07589 15.5379 2.94432 12.7632L2.41165 11.3235M2.41165 11.3235L1.5293 15.7353M2.41165 11.3235L6.38224 13.0882"></path></g></svg></button><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container view-image"><svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-maximize2 lucide-maximize-2"><polyline points="15 3 21 3 21 9"></polyline><polyline points="9 21 3 21 3 15"></polyline><line x1="21" x2="14" y1="3" y2="10"></line><line x1="3" x2="10" y1="21" y2="14"></line></svg></button></div></div></div></a></figure></div><div class="highlighted_code_block" data-attrs="{&quot;language&quot;:&quot;plaintext&quot;,&quot;nodeId&quot;:null}" data-component-name="HighlightedCodeBlockToDOM"><pre class="shiki"><code class="language-plaintext">A sci-fi cyberpunk graphic design poster. In the center, a striking portrait of a female android with glossy, liquid chrome skin. A vivid swirling streak of neon orange, yellow, and pink liquid paint brush stroke horizontally covers her eyes, soft smudged color overlay with smooth flowing pigment texture, no cracks or broken facial surfaces. The background is a dark, textured charcoal gray. Behind the central figure, large bold white futuristic typography reads "Seedream 5.0 Pro" with a subtle digital glitch and halftone texture. The composition is decorated with technical HUD elements, thin white lines, geometric wireframe diagrams, barcodes, and small sci-fi text boxes. Semi-transparent glassy spheres with grid textures overlap the foreground, creating depth. The overall mood is high-tech, dystopian, and avant-garde.</code></pre></div><div class="captioned-image-container"><figure><a class="image-link image2 is-viewable-img" target="_blank" href="https://substackcdn.com/image/fetch/$s_!xhEr!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Ff2a68dd5-9522-4036-a693-d64f86fd7065_1024x1024.png" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!xhEr!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Ff2a68dd5-9522-4036-a693-d64f86fd7065_1024x1024.png 424w, https://substackcdn.com/image/fetch/$s_!xhEr!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Ff2a68dd5-9522-4036-a693-d64f86fd7065_1024x1024.png 848w, https://substackcdn.com/image/fetch/$s_!xhEr!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Ff2a68dd5-9522-4036-a693-d64f86fd7065_1024x1024.png 1272w, https://substackcdn.com/image/fetch/$s_!xhEr!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Ff2a68dd5-9522-4036-a693-d64f86fd7065_1024x1024.png 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!xhEr!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Ff2a68dd5-9522-4036-a693-d64f86fd7065_1024x1024.png" width="1024" height="1024" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/f2a68dd5-9522-4036-a693-d64f86fd7065_1024x1024.png&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:1024,&quot;width&quot;:1024,&quot;resizeWidth&quot;:null,&quot;bytes&quot;:1318772,&quot;alt&quot;:null,&quot;title&quot;:null,&quot;type&quot;:&quot;image/png&quot;,&quot;href&quot;:null,&quot;belowTheFold&quot;:true,&quot;topImage&quot;:false,&quot;internalRedirect&quot;:&quot;https://blog.comfy.org/i/206041133?img=https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Ff2a68dd5-9522-4036-a693-d64f86fd7065_1024x1024.png&quot;,&quot;isProcessing&quot;:false,&quot;align&quot;:null,&quot;offset&quot;:false}" class="sizing-normal" alt="" srcset="https://substackcdn.com/image/fetch/$s_!xhEr!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Ff2a68dd5-9522-4036-a693-d64f86fd7065_1024x1024.png 424w, https://substackcdn.com/image/fetch/$s_!xhEr!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Ff2a68dd5-9522-4036-a693-d64f86fd7065_1024x1024.png 848w, https://substackcdn.com/image/fetch/$s_!xhEr!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Ff2a68dd5-9522-4036-a693-d64f86fd7065_1024x1024.png 1272w, https://substackcdn.com/image/fetch/$s_!xhEr!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Ff2a68dd5-9522-4036-a693-d64f86fd7065_1024x1024.png 1456w" sizes="100vw" loading="lazy"></picture><div class="image-link-expand"><div class="pencraft pc-display-flex pc-gap-8 pc-reset"><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container restack-image"><svg aria-hidden="true" width="20" height="20" viewBox="0 0 20 20" fill="none" stroke-width="1.5" stroke="var(--color-fg-primary)" stroke-linecap="round" stroke-linejoin="round" xmlns="http://www.w3.org/2000/svg"><g><path d="M2.53001 7.81595C3.49179 4.73911 6.43281 2.5 9.91173 2.5C13.1684 2.5 15.9537 4.46214 17.0852 7.23684L17.6179 8.67647M17.6179 8.67647L18.5002 4.26471M17.6179 8.67647L13.6473 6.91176M17.4995 12.1841C16.5378 15.2609 13.5967 17.5 10.1178 17.5C6.86118 17.5 4.07589 15.5379 2.94432 12.7632L2.41165 11.3235M2.41165 11.3235L1.5293 15.7353M2.41165 11.3235L6.38224 13.0882"></path></g></svg></button><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container view-image"><svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-maximize2 lucide-maximize-2"><polyline points="15 3 21 3 21 9"></polyline><polyline points="9 21 3 21 3 15"></polyline><line x1="21" x2="14" y1="3" y2="10"></line><line x1="3" x2="10" y1="21" y2="14"></line></svg></button></div></div></div></a></figure></div><div class="highlighted_code_block" data-attrs="{&quot;language&quot;:&quot;plaintext&quot;,&quot;nodeId&quot;:null}" data-component-name="HighlightedCodeBlockToDOM"><pre class="shiki"><code class="language-plaintext">An editorial graphic design poster on a solid black background. The central elements are exquisite, translucent 3D glass flowers with iridescent, holographic petals in shades of electric blue, violet, and soft purple. In the background, large, bold white sans-serif typography reads "Seedream 5.0 Pro", elegantly layered behind and interwoven with the glass petals. The layout is filled with clean blocks of small white placeholder body text and delicate thin white vector lines, creating a futuristic, tech-organic informational poster. High-contrast, sharp details, refractive glass textures, glossy finish, professional UI/UX design aesthetic.</code></pre></div><div class="captioned-image-container"><figure><a class="image-link image2 is-viewable-img" target="_blank" href="https://substackcdn.com/image/fetch/$s_!C_pN!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F773cf456-15db-43b7-8b9a-81411945c4f6_2048x1088.png" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!C_pN!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F773cf456-15db-43b7-8b9a-81411945c4f6_2048x1088.png 424w, https://substackcdn.com/image/fetch/$s_!C_pN!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F773cf456-15db-43b7-8b9a-81411945c4f6_2048x1088.png 848w, https://substackcdn.com/image/fetch/$s_!C_pN!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F773cf456-15db-43b7-8b9a-81411945c4f6_2048x1088.png 1272w, https://substackcdn.com/image/fetch/$s_!C_pN!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F773cf456-15db-43b7-8b9a-81411945c4f6_2048x1088.png 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!C_pN!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F773cf456-15db-43b7-8b9a-81411945c4f6_2048x1088.png" width="1456" height="773" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/773cf456-15db-43b7-8b9a-81411945c4f6_2048x1088.png&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:773,&quot;width&quot;:1456,&quot;resizeWidth&quot;:null,&quot;bytes&quot;:2117863,&quot;alt&quot;:null,&quot;title&quot;:null,&quot;type&quot;:&quot;image/png&quot;,&quot;href&quot;:null,&quot;belowTheFold&quot;:true,&quot;topImage&quot;:false,&quot;internalRedirect&quot;:&quot;https://blog.comfy.org/i/206041133?img=https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F773cf456-15db-43b7-8b9a-81411945c4f6_2048x1088.png&quot;,&quot;isProcessing&quot;:false,&quot;align&quot;:null,&quot;offset&quot;:false}" class="sizing-normal" alt="" srcset="https://substackcdn.com/image/fetch/$s_!C_pN!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F773cf456-15db-43b7-8b9a-81411945c4f6_2048x1088.png 424w, https://substackcdn.com/image/fetch/$s_!C_pN!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F773cf456-15db-43b7-8b9a-81411945c4f6_2048x1088.png 848w, https://substackcdn.com/image/fetch/$s_!C_pN!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F773cf456-15db-43b7-8b9a-81411945c4f6_2048x1088.png 1272w, https://substackcdn.com/image/fetch/$s_!C_pN!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F773cf456-15db-43b7-8b9a-81411945c4f6_2048x1088.png 1456w" sizes="100vw" loading="lazy"></picture><div class="image-link-expand"><div class="pencraft pc-display-flex pc-gap-8 pc-reset"><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container restack-image"><svg aria-hidden="true" width="20" height="20" viewBox="0 0 20 20" fill="none" stroke-width="1.5" stroke="var(--color-fg-primary)" stroke-linecap="round" stroke-linejoin="round" xmlns="http://www.w3.org/2000/svg"><g><path d="M2.53001 7.81595C3.49179 4.73911 6.43281 2.5 9.91173 2.5C13.1684 2.5 15.9537 4.46214 17.0852 7.23684L17.6179 8.67647M17.6179 8.67647L18.5002 4.26471M17.6179 8.67647L13.6473 6.91176M17.4995 12.1841C16.5378 15.2609 13.5967 17.5 10.1178 17.5C6.86118 17.5 4.07589 15.5379 2.94432 12.7632L2.41165 11.3235M2.41165 11.3235L1.5293 15.7353M2.41165 11.3235L6.38224 13.0882"></path></g></svg></button><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container view-image"><svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-maximize2 lucide-maximize-2"><polyline points="15 3 21 3 21 9"></polyline><polyline points="9 21 3 21 3 15"></polyline><line x1="21" x2="14" y1="3" y2="10"></line><line x1="3" x2="10" y1="21" y2="14"></line></svg></button></div></div></div></a></figure></div><div class="highlighted_code_block" data-attrs="{&quot;language&quot;:&quot;plaintext&quot;,&quot;nodeId&quot;:null}" data-component-name="HighlightedCodeBlockToDOM"><pre class="shiki"><code class="language-plaintext">Change the indoor lighting to nighttime, with the indoor environment illuminated by indoor lights.</code></pre></div><div class="captioned-image-container"><figure><a class="image-link image2 is-viewable-img" target="_blank" href="https://substackcdn.com/image/fetch/$s_!bmjg!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F3188b771-4ef9-441a-9078-a88f9b9f3245_2048x1088.png" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!bmjg!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F3188b771-4ef9-441a-9078-a88f9b9f3245_2048x1088.png 424w, https://substackcdn.com/image/fetch/$s_!bmjg!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F3188b771-4ef9-441a-9078-a88f9b9f3245_2048x1088.png 848w, https://substackcdn.com/image/fetch/$s_!bmjg!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F3188b771-4ef9-441a-9078-a88f9b9f3245_2048x1088.png 1272w, https://substackcdn.com/image/fetch/$s_!bmjg!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F3188b771-4ef9-441a-9078-a88f9b9f3245_2048x1088.png 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!bmjg!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F3188b771-4ef9-441a-9078-a88f9b9f3245_2048x1088.png" width="1456" height="773" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/3188b771-4ef9-441a-9078-a88f9b9f3245_2048x1088.png&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:773,&quot;width&quot;:1456,&quot;resizeWidth&quot;:null,&quot;bytes&quot;:3851237,&quot;alt&quot;:null,&quot;title&quot;:null,&quot;type&quot;:&quot;image/png&quot;,&quot;href&quot;:null,&quot;belowTheFold&quot;:true,&quot;topImage&quot;:false,&quot;internalRedirect&quot;:&quot;https://blog.comfy.org/i/206041133?img=https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F3188b771-4ef9-441a-9078-a88f9b9f3245_2048x1088.png&quot;,&quot;isProcessing&quot;:false,&quot;align&quot;:null,&quot;offset&quot;:false}" class="sizing-normal" alt="" srcset="https://substackcdn.com/image/fetch/$s_!bmjg!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F3188b771-4ef9-441a-9078-a88f9b9f3245_2048x1088.png 424w, https://substackcdn.com/image/fetch/$s_!bmjg!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F3188b771-4ef9-441a-9078-a88f9b9f3245_2048x1088.png 848w, https://substackcdn.com/image/fetch/$s_!bmjg!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F3188b771-4ef9-441a-9078-a88f9b9f3245_2048x1088.png 1272w, https://substackcdn.com/image/fetch/$s_!bmjg!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F3188b771-4ef9-441a-9078-a88f9b9f3245_2048x1088.png 1456w" sizes="100vw" loading="lazy"></picture><div class="image-link-expand"><div class="pencraft pc-display-flex pc-gap-8 pc-reset"><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container restack-image"><svg aria-hidden="true" width="20" height="20" viewBox="0 0 20 20" fill="none" stroke-width="1.5" stroke="var(--color-fg-primary)" stroke-linecap="round" stroke-linejoin="round" xmlns="http://www.w3.org/2000/svg"><g><path d="M2.53001 7.81595C3.49179 4.73911 6.43281 2.5 9.91173 2.5C13.1684 2.5 15.9537 4.46214 17.0852 7.23684L17.6179 8.67647M17.6179 8.67647L18.5002 4.26471M17.6179 8.67647L13.6473 6.91176M17.4995 12.1841C16.5378 15.2609 13.5967 17.5 10.1178 17.5C6.86118 17.5 4.07589 15.5379 2.94432 12.7632L2.41165 11.3235M2.41165 11.3235L1.5293 15.7353M2.41165 11.3235L6.38224 13.0882"></path></g></svg></button><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container view-image"><svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-maximize2 lucide-maximize-2"><polyline points="15 3 21 3 21 9"></polyline><polyline points="9 21 3 21 3 15"></polyline><line x1="21" x2="14" y1="3" y2="10"></line><line x1="3" x2="10" y1="21" y2="14"></line></svg></button></div></div></div></a></figure></div><div class="highlighted_code_block" data-attrs="{&quot;language&quot;:&quot;plaintext&quot;,&quot;nodeId&quot;:null}" data-component-name="HighlightedCodeBlockToDOM"><pre class="shiki"><code class="language-plaintext">Convert the entire collage into a cohesive, realistic interior design photo of a cozy living room. Render the sketched bay window area on the left into a real window filled with potted plants, including Swiss cheese plants and a fiddle-leaf fig, with a lush forest view outside. Transform the sketched snake plant in the bottom-left into a real potted snake plant. Blend the elements seamlessly under warm, natural afternoon sunlight.</code></pre></div><h2><strong><br>Get Started in ComfyUI</strong></h2><ol><li><p><strong>Update ComfyUI</strong> to 0.27.1 (Comfy Cloud will be ready soon)</p></li><li><p>Open the <strong>Template Library</strong> and search for <strong>Seedream 5.0 Pro</strong>, or add the <strong>Seedream</strong> Partner Node to your workflow.</p></li><li><p>Connect your prompt, optional reference image, and aspect ratio settings, then run.</p></li></ol><p class="button-wrapper" data-attrs="{&quot;url&quot;:&quot;https://github.com/Comfy-Org/workflow_templates/blob/main/templates/api_bytedance_seedream_5_0_pro_image_edit.json&quot;,&quot;text&quot;:&quot;Seedream 5.0 Pro Image Edit Workflow&quot;,&quot;action&quot;:null,&quot;class&quot;:null}" data-component-name="ButtonCreateButton"><a class="button primary" href="https://github.com/Comfy-Org/workflow_templates/blob/main/templates/api_bytedance_seedream_5_0_pro_image_edit.json"><span>Seedream 5.0 Pro Image Edit Workflow</span></a></p><p class="button-wrapper" data-attrs="{&quot;url&quot;:&quot;https://github.com/Comfy-Org/workflow_templates/blob/main/templates/api_bytedance_seedream_5_0_pro_t2i.json&quot;,&quot;text&quot;:&quot;Seedream 5.0 Pro Text to Image Workflow&quot;,&quot;action&quot;:null,&quot;class&quot;:null}" data-component-name="ButtonCreateButton"><a class="button primary" href="https://github.com/Comfy-Org/workflow_templates/blob/main/templates/api_bytedance_seedream_5_0_pro_t2i.json"><span>Seedream 5.0 Pro Text to Image Workflow</span></a></p><p>As always, enjoy creating!</p><p>&#8203;</p>]]></content:encoded></item><item><title><![CDATA[Comfy MCP: Turn your agent into a creative technologist]]></title><description><![CDATA[Connect Claude, CodeX, Hermes, and Cursor to the entire ComfyUI ecosystem]]></description><link>https://blog.comfy.org/p/comfy-mcp-turn-your-agent-into-a</link><guid isPermaLink="false">https://blog.comfy.org/p/comfy-mcp-turn-your-agent-into-a</guid><dc:creator><![CDATA[Jo Zhang]]></dc:creator><pubDate>Mon, 29 Jun 2026 15:56:45 GMT</pubDate><enclosure url="https://substack-post-media.s3.amazonaws.com/public/images/7a874c0b-1013-458f-bd5b-b48c470e4590_1920x1080.png" length="0" type="image/jpeg"/><content:encoded><![CDATA[<div class="native-video-embed" data-component-name="VideoPlaceholder" data-attrs="{&quot;mediaUploadId&quot;:&quot;f22a1aa0-1605-4104-9599-02b32ea0ab88&quot;,&quot;duration&quot;:null}"></div><p>Today, we are introducing Comfy MCP in public beta: Connect your existing workflows with the power of the Comfy Ecosystem across Claude, Codex, Hermes, Cursor, and all the other agents. This is the first MCP built fo<strong>r production pipelines.</strong></p><h2>Turn your Claude into a creative artist.</h2><p>The MCP provides your agent with access to all the latest image, video, 3D, and audio models, as well as hundreds of popular ComfyUI workflows. We auto-update the best-practice workflows, so your agent always knows what is up to date. </p><p>Want to try 20 product-placement images for your brand ads? Character design for your game art? Script-to-shot ideation at scale? Do it with your agent today!</p><div class="native-video-embed" data-component-name="VideoPlaceholder" data-attrs="{&quot;mediaUploadId&quot;:&quot;6460983b-a141-43b6-b850-364f3d5fd84b&quot;,&quot;duration&quot;:null}"></div><h2>Today, everyone gets their ComfyUI expert.</h2><p>If you heard about ComfyUI but never tried it because it&#8217;s complicated, that&#8217;s not the case anymore. Today, your agent learns all these for you:</p><ul><li><p>Build, edit, and run workflows</p></li><li><p>Search models, nodes, and template workflows</p></li><li><p>Save and re-run workflows</p></li><li><p>Read and execute shared workflow URLs</p></li><li><p>Retrieve the workflows of all MCP generations in the app</p></li></ul><p>Everything is now in natural language. No nodes, no download, no GPU, no node graphs if you don&#8217;t want them. </p><h2>Built for reproducibility and teamwork</h2><p>Share a workflow URL with anyone, including the agents.</p><p>If your team members don&#8217;t want to learn the workflow you built, now their agents can run it too.</p><p>Edit the same pipeline with your agent. Every generation is 100% reproducible, made for long-term projects, not one-off generations. </p><div class="captioned-image-container"><figure><a class="image-link image2 is-viewable-img" target="_blank" href="https://substackcdn.com/image/fetch/$s_!cPCS!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fa5ed1ddf-75fa-4989-892f-27afd63e7a95_1300x720.gif" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!cPCS!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fa5ed1ddf-75fa-4989-892f-27afd63e7a95_1300x720.gif 424w, https://substackcdn.com/image/fetch/$s_!cPCS!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fa5ed1ddf-75fa-4989-892f-27afd63e7a95_1300x720.gif 848w, https://substackcdn.com/image/fetch/$s_!cPCS!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fa5ed1ddf-75fa-4989-892f-27afd63e7a95_1300x720.gif 1272w, https://substackcdn.com/image/fetch/$s_!cPCS!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fa5ed1ddf-75fa-4989-892f-27afd63e7a95_1300x720.gif 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!cPCS!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fa5ed1ddf-75fa-4989-892f-27afd63e7a95_1300x720.gif" width="1300" height="720" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/a5ed1ddf-75fa-4989-892f-27afd63e7a95_1300x720.gif&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:720,&quot;width&quot;:1300,&quot;resizeWidth&quot;:null,&quot;bytes&quot;:4059322,&quot;alt&quot;:null,&quot;title&quot;:null,&quot;type&quot;:&quot;image/gif&quot;,&quot;href&quot;:null,&quot;belowTheFold&quot;:true,&quot;topImage&quot;:false,&quot;internalRedirect&quot;:&quot;https://blog.comfy.org/i/203749947?img=https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fa5ed1ddf-75fa-4989-892f-27afd63e7a95_1300x720.gif&quot;,&quot;isProcessing&quot;:false,&quot;align&quot;:null,&quot;offset&quot;:false}" class="sizing-normal" alt="" srcset="https://substackcdn.com/image/fetch/$s_!cPCS!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fa5ed1ddf-75fa-4989-892f-27afd63e7a95_1300x720.gif 424w, https://substackcdn.com/image/fetch/$s_!cPCS!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fa5ed1ddf-75fa-4989-892f-27afd63e7a95_1300x720.gif 848w, https://substackcdn.com/image/fetch/$s_!cPCS!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fa5ed1ddf-75fa-4989-892f-27afd63e7a95_1300x720.gif 1272w, https://substackcdn.com/image/fetch/$s_!cPCS!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fa5ed1ddf-75fa-4989-892f-27afd63e7a95_1300x720.gif 1456w" sizes="100vw" loading="lazy"></picture><div class="image-link-expand"><div class="pencraft pc-display-flex pc-gap-8 pc-reset"><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container restack-image"><svg aria-hidden="true" width="20" height="20" viewBox="0 0 20 20" fill="none" stroke-width="1.5" stroke="var(--color-fg-primary)" stroke-linecap="round" stroke-linejoin="round" xmlns="http://www.w3.org/2000/svg"><g><path d="M2.53001 7.81595C3.49179 4.73911 6.43281 2.5 9.91173 2.5C13.1684 2.5 15.9537 4.46214 17.0852 7.23684L17.6179 8.67647M17.6179 8.67647L18.5002 4.26471M17.6179 8.67647L13.6473 6.91176M17.4995 12.1841C16.5378 15.2609 13.5967 17.5 10.1178 17.5C6.86118 17.5 4.07589 15.5379 2.94432 12.7632L2.41165 11.3235M2.41165 11.3235L1.5293 15.7353M2.41165 11.3235L6.38224 13.0882"></path></g></svg></button><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container view-image"><svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-maximize2 lucide-maximize-2"><polyline points="15 3 21 3 21 9"></polyline><polyline points="9 21 3 21 3 15"></polyline><line x1="21" x2="14" y1="3" y2="10"></line><line x1="3" x2="10" y1="21" y2="14"></line></svg></button></div></div></div></a></figure></div><h2>Example use cases for production work</h2><ul><li><p>&#8220;Take one hero sneaker shot and generate 20 ad variants in 4 aspect ratios for Meta Advantage+.&#8221;</p></li><li><p>&#8220;Read my saved product-shot workflow and re-run it on these 5 new images.&#8221;</p></li><li><p>&#8220;Turn three storyboard frames into a cinematic clip &#8212; then explain the workflow so my teammate can reuse it.&#8221;</p></li><li><p>&#8220;Generate a consistent character across 12 card-art poses.&#8221;</p></li></ul><h2>Get started in 5 minutes</h2><p>Comfy MCP connects your Comfy  account to your agents, so you need a Comfy account to get started.</p><ol><li><p>Create a Comfy account at <a href="http://cloud.comfy.org">cloud.comfy.org</a> or in the desktop app.</p></li><li><p>For Claude Desktop, please add a Custom Connector as shown below.</p></li><li><p>For other agent clients, please send the docs to your agent:</p><p>&#8220;Agent, please help me install Comfy MCP: https://docs.comfy.org/agent-tools/cloud&#8221;</p></li></ol><div class="captioned-image-container"><figure><a class="image-link image2 is-viewable-img" target="_blank" href="https://substackcdn.com/image/fetch/$s_!txhU!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F5b0bf1b9-c5f8-4096-938e-135388b10274_1080x716.gif" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!txhU!,w_424,c_limit,f_webp,q_auto:good,fl_lossy/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F5b0bf1b9-c5f8-4096-938e-135388b10274_1080x716.gif 424w, https://substackcdn.com/image/fetch/$s_!txhU!,w_848,c_limit,f_webp,q_auto:good,fl_lossy/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F5b0bf1b9-c5f8-4096-938e-135388b10274_1080x716.gif 848w, https://substackcdn.com/image/fetch/$s_!txhU!,w_1272,c_limit,f_webp,q_auto:good,fl_lossy/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F5b0bf1b9-c5f8-4096-938e-135388b10274_1080x716.gif 1272w, https://substackcdn.com/image/fetch/$s_!txhU!,w_1456,c_limit,f_webp,q_auto:good,fl_lossy/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F5b0bf1b9-c5f8-4096-938e-135388b10274_1080x716.gif 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!txhU!,w_1456,c_limit,f_auto,q_auto:good,fl_lossy/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F5b0bf1b9-c5f8-4096-938e-135388b10274_1080x716.gif" width="1080" height="716" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/5b0bf1b9-c5f8-4096-938e-135388b10274_1080x716.gif&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:716,&quot;width&quot;:1080,&quot;resizeWidth&quot;:null,&quot;bytes&quot;:6357013,&quot;alt&quot;:null,&quot;title&quot;:null,&quot;type&quot;:&quot;image/gif&quot;,&quot;href&quot;:null,&quot;belowTheFold&quot;:true,&quot;topImage&quot;:false,&quot;internalRedirect&quot;:&quot;https://blog.comfy.org/i/203749947?img=https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F5b0bf1b9-c5f8-4096-938e-135388b10274_1080x716.gif&quot;,&quot;isProcessing&quot;:false,&quot;align&quot;:null,&quot;offset&quot;:false}" class="sizing-normal" alt="" srcset="https://substackcdn.com/image/fetch/$s_!txhU!,w_424,c_limit,f_auto,q_auto:good,fl_lossy/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F5b0bf1b9-c5f8-4096-938e-135388b10274_1080x716.gif 424w, https://substackcdn.com/image/fetch/$s_!txhU!,w_848,c_limit,f_auto,q_auto:good,fl_lossy/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F5b0bf1b9-c5f8-4096-938e-135388b10274_1080x716.gif 848w, https://substackcdn.com/image/fetch/$s_!txhU!,w_1272,c_limit,f_auto,q_auto:good,fl_lossy/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F5b0bf1b9-c5f8-4096-938e-135388b10274_1080x716.gif 1272w, https://substackcdn.com/image/fetch/$s_!txhU!,w_1456,c_limit,f_auto,q_auto:good,fl_lossy/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F5b0bf1b9-c5f8-4096-938e-135388b10274_1080x716.gif 1456w" sizes="100vw" loading="lazy"></picture><div class="image-link-expand"><div class="pencraft pc-display-flex pc-gap-8 pc-reset"><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container restack-image"><svg aria-hidden="true" width="20" height="20" viewBox="0 0 20 20" fill="none" stroke-width="1.5" stroke="var(--color-fg-primary)" stroke-linecap="round" stroke-linejoin="round" xmlns="http://www.w3.org/2000/svg"><g><path d="M2.53001 7.81595C3.49179 4.73911 6.43281 2.5 9.91173 2.5C13.1684 2.5 15.9537 4.46214 17.0852 7.23684L17.6179 8.67647M17.6179 8.67647L18.5002 4.26471M17.6179 8.67647L13.6473 6.91176M17.4995 12.1841C16.5378 15.2609 13.5967 17.5 10.1178 17.5C6.86118 17.5 4.07589 15.5379 2.94432 12.7632L2.41165 11.3235M2.41165 11.3235L1.5293 15.7353M2.41165 11.3235L6.38224 13.0882"></path></g></svg></button><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container view-image"><svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-maximize2 lucide-maximize-2"><polyline points="15 3 21 3 21 9"></polyline><polyline points="9 21 3 21 3 15"></polyline><line x1="21" x2="14" y1="3" y2="10"></line><line x1="3" x2="10" y1="21" y2="14"></line></svg></button></div></div></div></a><figcaption class="image-caption">How to connect in Claude Desktop</figcaption></figure></div><h2>More resources: CLI and Skills</h2><p>For more information about the MCP, please refer to our documentation on installation, the list of tools, and multiple auth methods: <a href="https://docs.comfy.org/agent-tools/cloud">https://docs.comfy.org/agent-tools/cloud</a></p><p>To expand your agentic experience, we are also enabling <a href="https://docs.comfy.org/comfy-cli/getting-started">Comfy CLI</a> in Beta. You can also find more details in the docs.</p><p>We are also <span>starting a&nbsp;</span><a href="https://github.com/Comfy-Org/comfy-skills/"><span>Comfy Skill repository</span></a><span>&nbsp;for our creative technologist team and community members to share</span> their Comfy skills. You are always welcome to contribute and comment! <a href="https://github.com/Comfy-Org/comfy-skills/">https://github.com/Comfy-Org/comfy-skills/</a></p><h2>Feedback</h2><p>The MCP is still in beta. Please try it out, stress test it, and tell us what works and what doesn't. We are genuinely grateful for all kinds of feedback.</p><ul><li><p>Feedback Survey: <a href="https://links.comfy.org/cloudmcpbeta">https://links.comfy.org/cloudmcpbeta</a></p></li><li><p>Discord channel: Join the <strong><span>#comfy-mcp-and-cli</span></strong> channel in our Discord  <a href="https://discord.gg/xWJn6nhE3R">https://discord.gg/xWJn6nhE3R</a></p></li></ul><p>As always, enjoy creating!</p>]]></content:encoded></item><item><title><![CDATA[Seedance 2.0 Mini and 4K is now available in ComfyUI ]]></title><description><![CDATA[Seedance 2.0 Mini is here. Full Seedance 2.0 just got 4K.]]></description><link>https://blog.comfy.org/p/seedance-20-mini-and-4k-is-now-available</link><guid isPermaLink="false">https://blog.comfy.org/p/seedance-20-mini-and-4k-is-now-available</guid><dc:creator><![CDATA[Rob]]></dc:creator><pubDate>Thu, 25 Jun 2026 15:57:10 GMT</pubDate><enclosure url="https://substack-post-media.s3.amazonaws.com/public/images/09e18ad3-90b7-4be9-b9a0-13b27226607d_1920x1080.png" length="0" type="image/jpeg"/><content:encoded><![CDATA[<p></p><div class="native-video-embed" data-component-name="VideoPlaceholder" data-attrs="{&quot;mediaUploadId&quot;:&quot;46b79828-5fc7-4162-b89e-665d6c12644d&quot;,&quot;duration&quot;:null}"></div><p>Seedance 2.0 Mini runs as a selectable model on the existing ByteDance Seedance 2.0 video nodes &#8212; Text to Video, First-Last-Frame to Video, and Reference-to-Video &#8212; and ships with dedicated templates.</p><div class="subscription-widget-wrap-editor" data-attrs="{&quot;url&quot;:&quot;https://blog.comfy.org/subscribe?&quot;,&quot;text&quot;:&quot;Subscribe&quot;,&quot;language&quot;:&quot;en&quot;}" data-component-name="SubscribeWidgetToDOM"><div class="subscription-widget show-subscribe"><div class="preamble"><p class="cta-caption">Thanks for reading ComfyUI Newsletter! Subscribe for free to receive new posts and support my work.</p></div><form class="subscription-widget-subscribe"><input type="email" class="email-input" name="email" placeholder="Type your email&#8230;" tabindex="-1"><input type="submit" class="button primary" value="Subscribe"><div class="fake-input-wrapper"><div class="fake-input"></div><div class="fake-button"></div></div></form></div></div><p class="button-wrapper" data-attrs="{&quot;url&quot;:&quot;https://github.com/Comfy-Org/workflow_templates/blob/main/templates/api_seedance2_0_mini_r2v.json&quot;,&quot;text&quot;:&quot;Seedance 2.0 Mini Reference-to-Video&quot;,&quot;action&quot;:null,&quot;class&quot;:null}" data-component-name="ButtonCreateButton"><a class="button primary" href="https://github.com/Comfy-Org/workflow_templates/blob/main/templates/api_seedance2_0_mini_r2v.json"><span>Seedance 2.0 Mini Reference-to-Video</span></a></p><p class="button-wrapper" data-attrs="{&quot;url&quot;:&quot;https://github.com/Comfy-Org/workflow_templates/blob/main/templates/api_seedance2_0_mini_t2v.json&quot;,&quot;text&quot;:&quot;Seedance 2.0 Mini Text-to-Video&quot;,&quot;action&quot;:null,&quot;class&quot;:null}" data-component-name="ButtonCreateButton"><a class="button primary" href="https://github.com/Comfy-Org/workflow_templates/blob/main/templates/api_seedance2_0_mini_t2v.json"><span>Seedance 2.0 Mini Text-to-Video</span></a></p><h3>Where Mini fits</h3><p>Mini gives you the Seedance 2.0 cinematic toolkit at a lower cost per run. It runs on the same Seedance 2.0 video nodes and takes the same prompts. The one tradeoff is resolution: Mini outputs 480p and 720p, while native 1080p and 4K stay on full Seedance 2.0 and 2.0 Fast. For drafting, iterating, and generating at volume, Mini gets you the same look for less.</p><h3>What Mini does</h3><p>Mini reads a prompt as a full visual narrative rather than a single isolated clip, generating structured multi-shot sequences with coherent pacing across shots. Character identity stays stable across those shots, so a character remains visually aligned through an entire sequence &#8212; perfect for storytelling and branded content. It maps natural language directly to scene composition and visual style, producing multi-scene output from plain text.</p><h3>Native 4K output</h3><p>Native 4K is a full Seedance 2.0 feature &#8212; not Mini, which tops out at 720p. Full Seedance 2.0 generates native 4K with 10-bit color. Fine detail resolves cleanly at 4K &#8212; hair strands, fabric textures, architectural lines, and material surfaces &#8212; and holds through complex motion, not just on static frames. The 10-bit color is native rather than upconverted or wrapped at export, which means real grading headroom, smoother gradients, and cleaner output to work from downstream. This is the tier to finish on when a shot needs to ship at high resolution.</p><div class="native-video-embed" data-component-name="VideoPlaceholder" data-attrs="{&quot;mediaUploadId&quot;:&quot;9c1ea44a-99e6-4a90-8c32-cb28a3a15c25&quot;,&quot;duration&quot;:null}"></div><h3>Getting Started with Mini</h3><ol><li><p>Update ComfyUI to the latest version, or open Comfy Cloud.</p></li><li><p>Load a Seedance 2.0 Mini template from the Templates panel, or add a <strong>ByteDance Seedance 2.0 </strong>node and select <strong>Seedance 2.0 Mini</strong> as the model.</p></li><li><p>Set resolution to 480p or 720p, drop in your prompt and run.</p></li></ol><div class="subscription-widget-wrap-editor" data-attrs="{&quot;url&quot;:&quot;https://blog.comfy.org/subscribe?&quot;,&quot;text&quot;:&quot;Subscribe&quot;,&quot;language&quot;:&quot;en&quot;}" data-component-name="SubscribeWidgetToDOM"><div class="subscription-widget show-subscribe"><div class="preamble"><p class="cta-caption">Thanks for reading ComfyUI Newsletter! Subscribe for free to receive new posts and support my work.</p></div><form class="subscription-widget-subscribe"><input type="email" class="email-input" name="email" placeholder="Type your email&#8230;" tabindex="-1"><input type="submit" class="button primary" value="Subscribe"><div class="fake-input-wrapper"><div class="fake-input"></div><div class="fake-button"></div></div></form></div></div>]]></content:encoded></item><item><title><![CDATA[HappyHorse 1.1 is now available in ComfyUI]]></title><description><![CDATA[Audio-native video generation with dialogue, sound effects, and multi-character consistency &#8212; built right into your workflows.]]></description><link>https://blog.comfy.org/p/happyhorse-11-is-now-available-in</link><guid isPermaLink="false">https://blog.comfy.org/p/happyhorse-11-is-now-available-in</guid><dc:creator><![CDATA[Eric Solorio]]></dc:creator><pubDate>Wed, 24 Jun 2026 20:49:34 GMT</pubDate><enclosure url="https://substack-post-media.s3.amazonaws.com/public/images/44c3ab6d-1225-42e3-84e3-fde366748428_1920x1080.png" length="0" type="image/jpeg"/><content:encoded><![CDATA[<p></p><div class="native-video-embed" data-component-name="VideoPlaceholder" data-attrs="{&quot;mediaUploadId&quot;:&quot;1ba82149-8d6c-41bc-8944-97efe28e1e30&quot;,&quot;duration&quot;:null}"></div><p><span>HappyHorse 1.1 is now available in ComfyUI as a Partner Node. This video model is engineered for real-world production use cases, including short episodic series, e-commerce commercials, brand marketing content, and game cutscenes.<br>A standout feature of the model is native synchronized audio generation. It produces dialogue, sound effects, and background music in one single render pass without extra steps.<br>Version 1.1 targets five core production-critical capabilities: dynamic, expressive motion; consistent character rendering; reliable prompt adherence; stable text rendering; and authentic cinematic framing.</span></p><div class="subscription-widget-wrap-editor" data-attrs="{&quot;url&quot;:&quot;https://blog.comfy.org/subscribe?&quot;,&quot;text&quot;:&quot;Subscribe&quot;,&quot;language&quot;:&quot;en&quot;}" data-component-name="SubscribeWidgetToDOM"><div class="subscription-widget show-subscribe"><div class="preamble"><p class="cta-caption">Thanks for reading ComfyUI Newsletter! Subscribe for free to receive new posts and support my work.</p></div><form class="subscription-widget-subscribe"><input type="email" class="email-input" name="email" placeholder="Type your email&#8230;" tabindex="-1"><input type="submit" class="button primary" value="Subscribe"><div class="fake-input-wrapper"><div class="fake-input"></div><div class="fake-button"></div></div></form></div></div><p class="button-wrapper" data-attrs="{&quot;url&quot;:&quot;https://github.com/Comfy-Org/workflow_templates/blob/main/templates/api_happyhorse1_1_i2v.json&quot;,&quot;text&quot;:&quot;Download Workflow&quot;,&quot;action&quot;:null,&quot;class&quot;:null}" data-component-name="ButtonCreateButton"><a class="button primary" href="https://github.com/Comfy-Org/workflow_templates/blob/main/templates/api_happyhorse1_1_i2v.json"><span>Download Workflow</span></a></p><div class="native-video-embed" data-component-name="VideoPlaceholder" data-attrs="{&quot;mediaUploadId&quot;:&quot;19317c6b-6d8c-4e2d-9d24-ed8ec6f3b8de&quot;,&quot;duration&quot;:null}"></div><h2>What&#8217;s new in 1.1</h2><ul><li><p><strong>Dynamic expressiveness:</strong> Smoother motion and frame consistency eliminate the stiff, sluggish movement from v1.0.</p></li><li><p><strong>Enhanced multi-image reference-to-video (R2V):</strong> Faithfully preserves input details, supporting up to 9 reference images per generation.</p></li><li><p><strong>Multi-character consistency:</strong> Multiple character references keep a distinct look with no visual cross-contamination.</p></li><li><p><strong>Flexible character &#215; scene combinations:</strong> Feed characters and scenes as separate references. Characters stay fully consistent even as the background environment changes.</p></li><li><p><strong>Upgraded instruction following:</strong> Better long-context retention handles prompts beyond 2,500 characters, and a single prompt can describe 6&#8211;8 consecutive scenes with the model autonomously allocating time and switching camera angles.</p></li><li><p><strong>Natural skin and close-up viability:</strong> Fixes shiny skin and over-sharpening issues, with lifelike texture for series and commercials.</p></li><li><p><strong>Cinematic language:</strong> Full support for terms like <em>shot-reverse-shot</em> and <em>tracking shot</em>, with far more cohesive transitions and pacing between shots.</p></li><li><p><strong>Upgraded audio:</strong> More accurate dialogue and sound-effect rendering, with emotional performance layered on top of tight audio-video synchronization.</p></li></ul><div class="native-video-embed" data-component-name="VideoPlaceholder" data-attrs="{&quot;mediaUploadId&quot;:&quot;2ed81bd0-6ffc-46ba-a37c-4631c41e5906&quot;,&quot;duration&quot;:null}"></div><h2>Three nodes, one model</h2><p>HappyHorse 1.1 ships as three nodes, each tuned to a different job:</p><ul><li><p><strong><a href="https://github.com/Comfy-Org/workflow_templates/blob/main/templates/api_happyhorse1_1_t2v.json">Text-to-Video (T2V):</a></strong> Build a complete scene from scratch. You control style, shot size, lighting, action, and audio entirely through the prompt.</p></li><li><p><strong><a href="https://github.com/Comfy-Org/workflow_templates/blob/main/templates/api_happyhorse1_1_i2v.json">Image-to-Video (I2V)</a>:</strong> Animate a static first frame. The image already carries the look, so you just describe the motion and the camera move.</p></li><li><p><strong><a href="https://github.com/Comfy-Org/workflow_templates/blob/main/templates/api_happyhorse1_1_r2v.json">Reference-to-Video (R2V)</a>:</strong> Orchestrate a multi-character stage play. Map characters and scenes to reference images, then direct them through a timestamped storyboard with per-character dialogue.</p></li></ul><p>All three models support 720p and 1080p output, video lengths ranging from 3 to 15 seconds, plus flexible aspect ratios including 16:9, 9:16, 1:1, 4:3, 3:4, 21:9, and more. Every exported video comes with perfectly synced audio.</p><h2>Getting Started</h2><ol><li><p><strong>Update ComfyUI to the latest version</strong></p></li><li><p><strong>Find the HappyHorse nodes</strong> via the Node Library (search &#8220;HappyHorse&#8221;) or load a ready-made template from the Templates Library.</p></li><li><p><strong>Pick your mode</strong>: Text-to-Video, Image-to-Video, or Reference-to-Video, wire in your prompt and any reference images, then run. Output arrives with audio baked in at 720p or 1080p.</p></li></ol><p class="button-wrapper" data-attrs="{&quot;url&quot;:&quot;https://github.com/Comfy-Org/workflow_templates/blob/main/templates/api_happyhorse1_1_i2v.json&quot;,&quot;text&quot;:&quot;Download Workflow (I2V)&quot;,&quot;action&quot;:null,&quot;class&quot;:null}" data-component-name="ButtonCreateButton"><a class="button primary" href="https://github.com/Comfy-Org/workflow_templates/blob/main/templates/api_happyhorse1_1_i2v.json"><span>Download Workflow (I2V)</span></a></p><p class="button-wrapper" data-attrs="{&quot;url&quot;:&quot;https://github.com/Comfy-Org/workflow_templates/blob/main/templates/api_happyhorse1_1_t2v.json&quot;,&quot;text&quot;:&quot;Download Workflow (T2V)&quot;,&quot;action&quot;:null,&quot;class&quot;:null}" data-component-name="ButtonCreateButton"><a class="button primary" href="https://github.com/Comfy-Org/workflow_templates/blob/main/templates/api_happyhorse1_1_t2v.json"><span>Download Workflow (T2V)</span></a></p><p class="button-wrapper" data-attrs="{&quot;url&quot;:&quot;https://github.com/Comfy-Org/workflow_templates/blob/main/templates/api_happyhorse1_1_r2v.json&quot;,&quot;text&quot;:&quot;Download Workflow (R2V)&quot;,&quot;action&quot;:null,&quot;class&quot;:null}" data-component-name="ButtonCreateButton"><a class="button primary" href="https://github.com/Comfy-Org/workflow_templates/blob/main/templates/api_happyhorse1_1_r2v.json"><span>Download Workflow (R2V)</span></a></p><p></p><div class="subscription-widget-wrap-editor" data-attrs="{&quot;url&quot;:&quot;https://blog.comfy.org/subscribe?&quot;,&quot;text&quot;:&quot;Subscribe&quot;,&quot;language&quot;:&quot;en&quot;}" data-component-name="SubscribeWidgetToDOM"><div class="subscription-widget show-subscribe"><div class="preamble"><p class="cta-caption">Thanks for reading ComfyUI Newsletter! Subscribe for free to receive new posts and support my work.</p></div><form class="subscription-widget-subscribe"><input type="email" class="email-input" name="email" placeholder="Type your email&#8230;" tabindex="-1"><input type="submit" class="button primary" value="Subscribe"><div class="fake-input-wrapper"><div class="fake-input"></div><div class="fake-button"></div></div></form></div></div>]]></content:encoded></item><item><title><![CDATA[Krea 2 Open-Source Models are now available in ComfyUI]]></title><description><![CDATA[Krea ships two checkpoints &#8212; Krea 2 RAW and Krea 2 Turbo.]]></description><link>https://blog.comfy.org/p/krea-2-open-source-models-are-now</link><guid isPermaLink="false">https://blog.comfy.org/p/krea-2-open-source-models-are-now</guid><dc:creator><![CDATA[Rob]]></dc:creator><pubDate>Tue, 23 Jun 2026 17:58:57 GMT</pubDate><enclosure url="https://substack-post-media.s3.amazonaws.com/public/images/49858545-e662-4de0-bc2b-0dd6a7980072_1920x1080.png" length="0" type="image/jpeg"/><content:encoded><![CDATA[<p></p><div class="native-video-embed" data-component-name="VideoPlaceholder" data-attrs="{&quot;mediaUploadId&quot;:&quot;58bc51b3-6395-4615-bbd9-d2c8596bea2f&quot;,&quot;duration&quot;:null}"></div><p>Krea 2 OSS runs locally in ComfyUI today. Both open-weight checkpoints &#8212; Krea 2 RAW and Krea 2 Turbo &#8212; load through the standard diffusion model nodes, so you can train and generate locally on your own hardware. Krea 2 OSS excels at generating diverse aesthetic outputs and is definitely an image model we recommend to add to your stack. For information directly from Krea on the new checkpoints, check out the <a href="https://github.com/krea-ai/krea-2">github repository</a> and read the <a href="https://www.krea.ai/blog/krea-2-technical-report">technical report</a>.</p><div class="subscription-widget-wrap-editor" data-attrs="{&quot;url&quot;:&quot;https://blog.comfy.org/subscribe?&quot;,&quot;text&quot;:&quot;Subscribe&quot;,&quot;language&quot;:&quot;en&quot;}" data-component-name="SubscribeWidgetToDOM"><div class="subscription-widget show-subscribe"><div class="preamble"><p class="cta-caption">Thanks for reading ComfyUI Newsletter! Subscribe for free to receive new posts and support my work.</p></div><form class="subscription-widget-subscribe"><input type="email" class="email-input" name="email" placeholder="Type your email&#8230;" tabindex="-1"><input type="submit" class="button primary" value="Subscribe"><div class="fake-input-wrapper"><div class="fake-input"></div><div class="fake-button"></div></div></form></div></div><p></p><p class="button-wrapper" data-attrs="{&quot;url&quot;:&quot;https://github.com/Comfy-Org/workflow_templates/blob/main/templates/image_krea2_turbo_t2i.json&quot;,&quot;text&quot;:&quot;Download Krea 2 Turbo Workflow&quot;,&quot;action&quot;:null,&quot;class&quot;:null}" data-component-name="ButtonCreateButton"><a class="button primary" href="https://github.com/Comfy-Org/workflow_templates/blob/main/templates/image_krea2_turbo_t2i.json"><span>Download Krea 2 Turbo Workflow</span></a></p><p></p><h3>Two models, designed to work together</h3><p><strong>Krea 2 OSS</strong> ships as two checkpoints with distinct jobs.</p><p><strong>Krea 2 RAW</strong> is the base model: a pretrained checkpoint with no distillation and no post-training. It produces diverse, malleable outputs and is the checkpoint to use for fine-tuning, post-training research, and LoRA training. RAW is not tuned for final-quality generation on its own.</p><p><strong>Krea 2 Turbo</strong> is an 8-step distilled checkpoint built for fast, high-quality text-to-image. It&#8217;s distilled from a fully post-trained RL checkpoint, so it produces higher quality than RAW but with lower variation between outputs.</p><p>The two are meant to be paired. Train a LoRA on RAW, then apply it on Turbo. LoRAs trained on RAW express strongly on Turbo, which lets you train on the malleable base and run fast inference on the distilled model.</p><h3>Model Highlights</h3><p><strong>Speed.</strong> Turbo generates in 8 steps. Generation is quick and allows for fast iteration.</p><p><strong>Stylistic range.</strong> Krea 2 OSS covers a wide aesthetic and stylistic range, from photographic portraits to anime to high-contrast editorial macro work.</p><p><strong>Malleability.</strong> RAW is undistilled, which makes it well suited to fine-tuning and research. Diverse output and a tunable base give you room to push the model toward specific styles or subjects.</p><h3>Prompting</h3><p>The model was trained on short, medium, and long natural-language prompts. Detailed, long prompts give the best quality. Our templates ship with a Prompt Enhancer system instruction directly from the Krea team.</p><h3>Architecture</h3><p>Krea 2 OSS is a 12B dense DiT. It uses the Qwen Image VAE and a Qwen3-VL text encoder with multi-layer feature aggregation.</p><h3>Get started</h3><ol><li><p><strong>Update ComfyUI</strong><span> to the latest version 0.26.0.</span></p></li><li><p>Download the <a href="https://github.com/Comfy-Org/workflow_templates/blob/main/templates/image_krea2_turbo_t2i.json">workflow</a> below, or find it in the template library</p></li><li><p>Follow the note in the workflow to download models and save them in the correct model directory</p><p></p></li></ol><div class="subscription-widget-wrap-editor" data-attrs="{&quot;url&quot;:&quot;https://blog.comfy.org/subscribe?&quot;,&quot;text&quot;:&quot;Subscribe&quot;,&quot;language&quot;:&quot;en&quot;}" data-component-name="SubscribeWidgetToDOM"><div class="subscription-widget show-subscribe"><div class="preamble"><p class="cta-caption">Thanks for reading ComfyUI Newsletter! Subscribe for free to receive new posts and support my work.</p></div><form class="subscription-widget-subscribe"><input type="email" class="email-input" name="email" placeholder="Type your email&#8230;" tabindex="-1"><input type="submit" class="button primary" value="Subscribe"><div class="fake-input-wrapper"><div class="fake-input"></div><div class="fake-button"></div></div></form></div></div>]]></content:encoded></item><item><title><![CDATA[The tool that expands my art: Xindi Zhang's Oscar-shortlisted thesis, built in ComfyUI]]></title><description><![CDATA[[Creative Campus Showcase] How a USC masters thesis became a Student Academy Award winner, an Oscar shortlist entry, and helped land a job at Amazon - with the artist's own illustrations at the core.]]></description><link>https://blog.comfy.org/p/the-tool-that-expands-my-art-xindi</link><guid isPermaLink="false">https://blog.comfy.org/p/the-tool-that-expands-my-art-xindi</guid><dc:creator><![CDATA[Tiger Fu]]></dc:creator><pubDate>Tue, 23 Jun 2026 15:59:52 GMT</pubDate><enclosure url="https://substackcdn.com/image/vimeo/w_728,c_limit,d_video_placeholder.png/1131160045" length="0" type="image/jpeg"/><content:encoded><![CDATA[<div id="vimeo-1131160045" class="vimeo-wrap" data-attrs="{&quot;videoId&quot;:&quot;1131160045&quot;,&quot;videoKey&quot;:&quot;&quot;,&quot;belowTheFold&quot;:false}" data-component-name="VimeoToDOM"><div class="vimeo-inner"><iframe src="https://player.vimeo.com/video/1131160045?autoplay=0" frameborder="0" gesture="media" allow="autoplay; fullscreen" allowautoplay="true" allowfullscreen="true"></iframe></div></div><h4><strong>Tell us about The Song of Drifters. What is it about, and where did it start?</strong></h4><p>The Song of Drifters is a documentary animation about people caught between leaving and returning, wanderers who drift through unfamiliar cities, holding onto memories of a homeland out of reach and searching for a sense of belonging. The title is a direct translation from an ancient Chinese poem about a mother&#8217;s love for a child who leaves her hometown. My version takes the opposite point of view, from the child&#8217;s perspective.</p><p>I built the film in ComfyUI. When I started, I was not trying to show what AI could do. I was trying to prove something almost opposite.</p><div class="pullquote"><p>&#8220;It started as a challenge to the stereotype that AI-generated work is generic and cheap. I wanted to prove that AI could be an amplifier for personal vision, not a replacement for it.&#8221;</p></div><h4><strong>You came to this from illustration, not engineering. How did you end up in ComfyUI?</strong></h4><p>I started as an illustrator. I earned my BFA in illustration at the Rhode Island School of Design, then worked as a game concept artist, where I picked up shaders, Unity, and Unreal. That technical side made me a fast learner with new tools. Later I went to USC&#8217;s School of Cinematic Arts for an MFA in Expanded Animation, where I studied with Professor Kathy Smith.</p><p>By my thesis year I had moved from Stable Diffusion&#8217;s standard interfaces to ComfyUI, because I think in node-based structures and I wanted to control every step. Most AI tools are one click: you prompt, you click, you get a result. That is not what I wanted.</p><div class="pullquote"><p>&#8220;I want to control the process, and the process is even more important than the result itself. For artists like me, I don&#8217;t want to automate anything. I want to participate in every single stage of designing the workflow. That&#8217;s the fun part of it.&#8221;</p></div><h4><strong>Walk us through the pipeline. What were you actually feeding the model?</strong></h4><div class="captioned-image-container"><figure><a class="image-link image2 is-viewable-img" target="_blank" href="https://substackcdn.com/image/fetch/$s_!ZMLu!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F16bab441-7e80-4ac3-b99d-4304f2e5af1d_2500x1819.webp" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!ZMLu!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F16bab441-7e80-4ac3-b99d-4304f2e5af1d_2500x1819.webp 424w, https://substackcdn.com/image/fetch/$s_!ZMLu!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F16bab441-7e80-4ac3-b99d-4304f2e5af1d_2500x1819.webp 848w, https://substackcdn.com/image/fetch/$s_!ZMLu!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F16bab441-7e80-4ac3-b99d-4304f2e5af1d_2500x1819.webp 1272w, https://substackcdn.com/image/fetch/$s_!ZMLu!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F16bab441-7e80-4ac3-b99d-4304f2e5af1d_2500x1819.webp 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!ZMLu!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F16bab441-7e80-4ac3-b99d-4304f2e5af1d_2500x1819.webp" width="581" height="422.5817307692308" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/16bab441-7e80-4ac3-b99d-4304f2e5af1d_2500x1819.webp&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:1059,&quot;width&quot;:1456,&quot;resizeWidth&quot;:581,&quot;bytes&quot;:770268,&quot;alt&quot;:null,&quot;title&quot;:null,&quot;type&quot;:&quot;image/webp&quot;,&quot;href&quot;:null,&quot;belowTheFold&quot;:true,&quot;topImage&quot;:false,&quot;internalRedirect&quot;:&quot;https://blog.comfy.org/i/202757311?img=https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F16bab441-7e80-4ac3-b99d-4304f2e5af1d_2500x1819.webp&quot;,&quot;isProcessing&quot;:false,&quot;align&quot;:null,&quot;offset&quot;:false}" class="sizing-normal" alt="" srcset="https://substackcdn.com/image/fetch/$s_!ZMLu!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F16bab441-7e80-4ac3-b99d-4304f2e5af1d_2500x1819.webp 424w, https://substackcdn.com/image/fetch/$s_!ZMLu!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F16bab441-7e80-4ac3-b99d-4304f2e5af1d_2500x1819.webp 848w, https://substackcdn.com/image/fetch/$s_!ZMLu!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F16bab441-7e80-4ac3-b99d-4304f2e5af1d_2500x1819.webp 1272w, https://substackcdn.com/image/fetch/$s_!ZMLu!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F16bab441-7e80-4ac3-b99d-4304f2e5af1d_2500x1819.webp 1456w" sizes="100vw" loading="lazy"></picture><div class="image-link-expand"><div class="pencraft pc-display-flex pc-gap-8 pc-reset"><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container restack-image"><svg aria-hidden="true" width="20" height="20" viewBox="0 0 20 20" fill="none" stroke-width="1.5" stroke="var(--color-fg-primary)" stroke-linecap="round" stroke-linejoin="round" xmlns="http://www.w3.org/2000/svg"><g><path d="M2.53001 7.81595C3.49179 4.73911 6.43281 2.5 9.91173 2.5C13.1684 2.5 15.9537 4.46214 17.0852 7.23684L17.6179 8.67647M17.6179 8.67647L18.5002 4.26471M17.6179 8.67647L13.6473 6.91176M17.4995 12.1841C16.5378 15.2609 13.5967 17.5 10.1178 17.5C6.86118 17.5 4.07589 15.5379 2.94432 12.7632L2.41165 11.3235M2.41165 11.3235L1.5293 15.7353M2.41165 11.3235L6.38224 13.0882"></path></g></svg></button><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container view-image"><svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-maximize2 lucide-maximize-2"><polyline points="15 3 21 3 21 9"></polyline><polyline points="9 21 3 21 3 15"></polyline><line x1="21" x2="14" y1="3" y2="10"></line><line x1="3" x2="10" y1="21" y2="14"></line></svg></button></div></div></div></a></figure></div><p style="text-align: center;"><em><sub>Xindi&#8217;s ComfyUI workflow for the balloon sequence. <span>Source: </span></sub><a href="http://xindizhangart.com/"><sub><span>xindizhangart.com</span></sub></a><sub><span>.</span></sub></em></p><p>My core technique was style transfer in Stable Diffusion 1.5, driven by IP-Adapter and ControlNet. What mattered most was what I fed it: my own work. The base materials were live-action footage I shot on an iPhone 15 Pro and 3D animation I built in Blender. The AI restyled imagery I had already made. It did not invent it.</p><div class="captioned-image-container"><figure><a class="image-link image2 is-viewable-img" target="_blank" href="https://substackcdn.com/image/fetch/$s_!bKrw!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fefed892a-4e06-4d65-acbe-9c1f1bd8b7b6_750x422.webp" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!bKrw!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fefed892a-4e06-4d65-acbe-9c1f1bd8b7b6_750x422.webp 424w, https://substackcdn.com/image/fetch/$s_!bKrw!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fefed892a-4e06-4d65-acbe-9c1f1bd8b7b6_750x422.webp 848w, https://substackcdn.com/image/fetch/$s_!bKrw!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fefed892a-4e06-4d65-acbe-9c1f1bd8b7b6_750x422.webp 1272w, https://substackcdn.com/image/fetch/$s_!bKrw!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fefed892a-4e06-4d65-acbe-9c1f1bd8b7b6_750x422.webp 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!bKrw!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fefed892a-4e06-4d65-acbe-9c1f1bd8b7b6_750x422.webp" width="582" height="327.472" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/efed892a-4e06-4d65-acbe-9c1f1bd8b7b6_750x422.webp&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:422,&quot;width&quot;:750,&quot;resizeWidth&quot;:582,&quot;bytes&quot;:94382,&quot;alt&quot;:null,&quot;title&quot;:null,&quot;type&quot;:&quot;image/webp&quot;,&quot;href&quot;:null,&quot;belowTheFold&quot;:true,&quot;topImage&quot;:false,&quot;internalRedirect&quot;:&quot;https://blog.comfy.org/i/202757311?img=https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fefed892a-4e06-4d65-acbe-9c1f1bd8b7b6_750x422.webp&quot;,&quot;isProcessing&quot;:false,&quot;align&quot;:null,&quot;offset&quot;:false}" class="sizing-normal" alt="" srcset="https://substackcdn.com/image/fetch/$s_!bKrw!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fefed892a-4e06-4d65-acbe-9c1f1bd8b7b6_750x422.webp 424w, https://substackcdn.com/image/fetch/$s_!bKrw!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fefed892a-4e06-4d65-acbe-9c1f1bd8b7b6_750x422.webp 848w, https://substackcdn.com/image/fetch/$s_!bKrw!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fefed892a-4e06-4d65-acbe-9c1f1bd8b7b6_750x422.webp 1272w, https://substackcdn.com/image/fetch/$s_!bKrw!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fefed892a-4e06-4d65-acbe-9c1f1bd8b7b6_750x422.webp 1456w" sizes="100vw" loading="lazy"></picture><div class="image-link-expand"><div class="pencraft pc-display-flex pc-gap-8 pc-reset"><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container restack-image"><svg aria-hidden="true" width="20" height="20" viewBox="0 0 20 20" fill="none" stroke-width="1.5" stroke="var(--color-fg-primary)" stroke-linecap="round" stroke-linejoin="round" xmlns="http://www.w3.org/2000/svg"><g><path d="M2.53001 7.81595C3.49179 4.73911 6.43281 2.5 9.91173 2.5C13.1684 2.5 15.9537 4.46214 17.0852 7.23684L17.6179 8.67647M17.6179 8.67647L18.5002 4.26471M17.6179 8.67647L13.6473 6.91176M17.4995 12.1841C16.5378 15.2609 13.5967 17.5 10.1178 17.5C6.86118 17.5 4.07589 15.5379 2.94432 12.7632L2.41165 11.3235M2.41165 11.3235L1.5293 15.7353M2.41165 11.3235L6.38224 13.0882"></path></g></svg></button><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container view-image"><svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-maximize2 lucide-maximize-2"><polyline points="15 3 21 3 21 9"></polyline><polyline points="9 21 3 21 3 15"></polyline><line x1="21" x2="14" y1="3" y2="10"></line><line x1="3" x2="10" y1="21" y2="14"></line></svg></button></div></div></div></a></figure></div><p style="text-align: center;"><em><sub>Style-guide still from The Song of Drifters. <span>Source: </span></sub><a href="http://xindizhangart.com/"><sub><span>xindizhangart.com</span></sub></a><sub><span>.</span></sub></em></p><div class="pullquote"><p>&#8220;Unlike most AI-generated videos, which use other artists&#8217; works from the model, I use my own illustrations as the style guide.&#8221;</p></div><h5><em><strong><a href="https://github.com/Comfy-Org/creative-campus/blob/main/Xindi-zhang%3ADrifters_styleTransfer.json"><span>Download Xindi&#8217;s style transfer workflow (json) on ComfyUI</span></a></strong></em></h5><p></p><p>I also trained custom LoRAs on my own video, footage of the cities I had lived in. Capturing that footage became a vital part of the documentary process. Wandering through the streets where I once lived let me reconnect with those cities. Most of it never appears in the final cut, but it lives in the visuals as training data. The hybrid pipeline made rendering the final look more efficient and saved more time for ideation.</p><p>For the dream sequences I combined animated 3D with AI morphing, moving from abstract to concrete to mimic the feeling of being half awake.</p><div class="captioned-image-container"><figure><a class="image-link image2" target="_blank" href="https://substackcdn.com/image/fetch/$s_!6DYu!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F2e79f5af-1c31-42a5-add7-8e88d06304b9_320x180.gif" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!6DYu!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F2e79f5af-1c31-42a5-add7-8e88d06304b9_320x180.gif 424w, https://substackcdn.com/image/fetch/$s_!6DYu!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F2e79f5af-1c31-42a5-add7-8e88d06304b9_320x180.gif 848w, https://substackcdn.com/image/fetch/$s_!6DYu!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F2e79f5af-1c31-42a5-add7-8e88d06304b9_320x180.gif 1272w, https://substackcdn.com/image/fetch/$s_!6DYu!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F2e79f5af-1c31-42a5-add7-8e88d06304b9_320x180.gif 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!6DYu!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F2e79f5af-1c31-42a5-add7-8e88d06304b9_320x180.gif" width="320" height="180" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/2e79f5af-1c31-42a5-add7-8e88d06304b9_320x180.gif&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:180,&quot;width&quot;:320,&quot;resizeWidth&quot;:null,&quot;bytes&quot;:2853278,&quot;alt&quot;:null,&quot;title&quot;:null,&quot;type&quot;:&quot;image/gif&quot;,&quot;href&quot;:null,&quot;belowTheFold&quot;:true,&quot;topImage&quot;:false,&quot;internalRedirect&quot;:&quot;https://blog.comfy.org/i/202757311?img=https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F2e79f5af-1c31-42a5-add7-8e88d06304b9_320x180.gif&quot;,&quot;isProcessing&quot;:false,&quot;align&quot;:null,&quot;offset&quot;:false}" class="sizing-normal" alt="" srcset="https://substackcdn.com/image/fetch/$s_!6DYu!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F2e79f5af-1c31-42a5-add7-8e88d06304b9_320x180.gif 424w, https://substackcdn.com/image/fetch/$s_!6DYu!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F2e79f5af-1c31-42a5-add7-8e88d06304b9_320x180.gif 848w, https://substackcdn.com/image/fetch/$s_!6DYu!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F2e79f5af-1c31-42a5-add7-8e88d06304b9_320x180.gif 1272w, https://substackcdn.com/image/fetch/$s_!6DYu!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F2e79f5af-1c31-42a5-add7-8e88d06304b9_320x180.gif 1456w" sizes="100vw" loading="lazy"></picture><div></div></div></a></figure></div><p style="text-align: center;"><sub>BTS clip, AI morphing. </sub><em><sub><span>Source: Xindi Zhang</span></sub></em></p><h5><em><strong><a href="https://github.com/Comfy-Org/creative-campus/blob/main/xindi-zhang%3ADrifters_stylizedMorphing.json"><span>Download Xindi&#8217;s AI morphing workflow (json) on Github</span></a></strong></em></h5><p></p><div><hr></div><h4><strong>The film won gold at the Student Academy Awards and was shortlisted for the Oscars. What&#8217;s next?</strong></h4><p>I made the film for creative reasons, not career ones. I honestly did not expect it to connect to a job at all. Then it won the Golden Award at the 2025 Student Academy Awards and was shortlisted for the Oscars, and the calls started.</p><div class="captioned-image-container"><figure><a class="image-link image2 is-viewable-img" target="_blank" href="https://substackcdn.com/image/fetch/$s_!PNkt!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F1d72bada-f077-426c-936c-6f3d17b7e482_636x954.jpeg" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!PNkt!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F1d72bada-f077-426c-936c-6f3d17b7e482_636x954.jpeg 424w, https://substackcdn.com/image/fetch/$s_!PNkt!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F1d72bada-f077-426c-936c-6f3d17b7e482_636x954.jpeg 848w, https://substackcdn.com/image/fetch/$s_!PNkt!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F1d72bada-f077-426c-936c-6f3d17b7e482_636x954.jpeg 1272w, https://substackcdn.com/image/fetch/$s_!PNkt!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F1d72bada-f077-426c-936c-6f3d17b7e482_636x954.jpeg 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!PNkt!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F1d72bada-f077-426c-936c-6f3d17b7e482_636x954.jpeg" width="310" height="465" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/1d72bada-f077-426c-936c-6f3d17b7e482_636x954.jpeg&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:954,&quot;width&quot;:636,&quot;resizeWidth&quot;:310,&quot;bytes&quot;:102394,&quot;alt&quot;:null,&quot;title&quot;:null,&quot;type&quot;:&quot;image/jpeg&quot;,&quot;href&quot;:null,&quot;belowTheFold&quot;:true,&quot;topImage&quot;:false,&quot;internalRedirect&quot;:&quot;https://blog.comfy.org/i/202757311?img=https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F1d72bada-f077-426c-936c-6f3d17b7e482_636x954.jpeg&quot;,&quot;isProcessing&quot;:false,&quot;align&quot;:null,&quot;offset&quot;:false}" class="sizing-normal" alt="" srcset="https://substackcdn.com/image/fetch/$s_!PNkt!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F1d72bada-f077-426c-936c-6f3d17b7e482_636x954.jpeg 424w, https://substackcdn.com/image/fetch/$s_!PNkt!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F1d72bada-f077-426c-936c-6f3d17b7e482_636x954.jpeg 848w, https://substackcdn.com/image/fetch/$s_!PNkt!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F1d72bada-f077-426c-936c-6f3d17b7e482_636x954.jpeg 1272w, https://substackcdn.com/image/fetch/$s_!PNkt!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F1d72bada-f077-426c-936c-6f3d17b7e482_636x954.jpeg 1456w" sizes="100vw" loading="lazy"></picture><div class="image-link-expand"><div class="pencraft pc-display-flex pc-gap-8 pc-reset"><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container restack-image"><svg aria-hidden="true" width="20" height="20" viewBox="0 0 20 20" fill="none" stroke-width="1.5" stroke="var(--color-fg-primary)" stroke-linecap="round" stroke-linejoin="round" xmlns="http://www.w3.org/2000/svg"><g><path d="M2.53001 7.81595C3.49179 4.73911 6.43281 2.5 9.91173 2.5C13.1684 2.5 15.9537 4.46214 17.0852 7.23684L17.6179 8.67647M17.6179 8.67647L18.5002 4.26471M17.6179 8.67647L13.6473 6.91176M17.4995 12.1841C16.5378 15.2609 13.5967 17.5 10.1178 17.5C6.86118 17.5 4.07589 15.5379 2.94432 12.7632L2.41165 11.3235M2.41165 11.3235L1.5293 15.7353M2.41165 11.3235L6.38224 13.0882"></path></g></svg></button><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container view-image"><svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-maximize2 lucide-maximize-2"><polyline points="15 3 21 3 21 9"></polyline><polyline points="9 21 3 21 3 15"></polyline><line x1="21" x2="14" y1="3" y2="10"></line><line x1="3" x2="10" y1="21" y2="14"></line></svg></button></div></div></div></a></figure></div><p style="text-align: center;"><em><sub>Xindi Zhang at the 2025 Student Academy Awards.<span> Source: Oscars Press Office</span></sub></em></p><p>What people wanted was the combination: someone who understands both traditional craft and AI tools. I now work as an AI Creative at Amazon AI Studio building custom production pipelines. I see that same demand across the industry, with ComfyUI experience starting to show up as a requirement in job postings at major studios and design agencies.</p><blockquote><p>It&#8217;s not the tool that steals my art. It&#8217;s the tool that expands my art.</p></blockquote><p>My advice to other students is not really about software. AI is just another tool to convey ideas, but nothing is more important than the story itself. If you use AI, use it on purpose. The more you understand it, the more freedom you have to make work that is genuinely yours.<br></p><div class="captioned-image-container"><figure><a class="image-link image2 is-viewable-img" target="_blank" href="https://substackcdn.com/image/fetch/$s_!Lypj!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F8e8b226f-bdf4-43e3-9cd0-b9dc50239a36_1080x1620.jpeg" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!Lypj!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F8e8b226f-bdf4-43e3-9cd0-b9dc50239a36_1080x1620.jpeg 424w, https://substackcdn.com/image/fetch/$s_!Lypj!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F8e8b226f-bdf4-43e3-9cd0-b9dc50239a36_1080x1620.jpeg 848w, https://substackcdn.com/image/fetch/$s_!Lypj!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F8e8b226f-bdf4-43e3-9cd0-b9dc50239a36_1080x1620.jpeg 1272w, https://substackcdn.com/image/fetch/$s_!Lypj!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F8e8b226f-bdf4-43e3-9cd0-b9dc50239a36_1080x1620.jpeg 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!Lypj!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F8e8b226f-bdf4-43e3-9cd0-b9dc50239a36_1080x1620.jpeg" width="310" height="465" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/8e8b226f-bdf4-43e3-9cd0-b9dc50239a36_1080x1620.jpeg&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:1620,&quot;width&quot;:1080,&quot;resizeWidth&quot;:310,&quot;bytes&quot;:171569,&quot;alt&quot;:null,&quot;title&quot;:null,&quot;type&quot;:&quot;image/jpeg&quot;,&quot;href&quot;:null,&quot;belowTheFold&quot;:true,&quot;topImage&quot;:false,&quot;internalRedirect&quot;:&quot;https://blog.comfy.org/i/202757311?img=https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F8e8b226f-bdf4-43e3-9cd0-b9dc50239a36_1080x1620.jpeg&quot;,&quot;isProcessing&quot;:false,&quot;align&quot;:null,&quot;offset&quot;:false}" class="sizing-normal" alt="" srcset="https://substackcdn.com/image/fetch/$s_!Lypj!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F8e8b226f-bdf4-43e3-9cd0-b9dc50239a36_1080x1620.jpeg 424w, https://substackcdn.com/image/fetch/$s_!Lypj!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F8e8b226f-bdf4-43e3-9cd0-b9dc50239a36_1080x1620.jpeg 848w, https://substackcdn.com/image/fetch/$s_!Lypj!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F8e8b226f-bdf4-43e3-9cd0-b9dc50239a36_1080x1620.jpeg 1272w, https://substackcdn.com/image/fetch/$s_!Lypj!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F8e8b226f-bdf4-43e3-9cd0-b9dc50239a36_1080x1620.jpeg 1456w" sizes="100vw" loading="lazy"></picture><div class="image-link-expand"><div class="pencraft pc-display-flex pc-gap-8 pc-reset"><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container restack-image"><svg aria-hidden="true" width="20" height="20" viewBox="0 0 20 20" fill="none" stroke-width="1.5" stroke="var(--color-fg-primary)" stroke-linecap="round" stroke-linejoin="round" xmlns="http://www.w3.org/2000/svg"><g><path d="M2.53001 7.81595C3.49179 4.73911 6.43281 2.5 9.91173 2.5C13.1684 2.5 15.9537 4.46214 17.0852 7.23684L17.6179 8.67647M17.6179 8.67647L18.5002 4.26471M17.6179 8.67647L13.6473 6.91176M17.4995 12.1841C16.5378 15.2609 13.5967 17.5 10.1178 17.5C6.86118 17.5 4.07589 15.5379 2.94432 12.7632L2.41165 11.3235M2.41165 11.3235L1.5293 15.7353M2.41165 11.3235L6.38224 13.0882"></path></g></svg></button><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container view-image"><svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-maximize2 lucide-maximize-2"><polyline points="15 3 21 3 21 9"></polyline><polyline points="9 21 3 21 3 15"></polyline><line x1="21" x2="14" y1="3" y2="10"></line><line x1="3" x2="10" y1="21" y2="14"></line></svg></button></div></div></div></a></figure></div><p><em>Xindi Zhang is a Chinese animation director and visual artist (RISD BFA in illustration, 2020; USC MFA in Expanded Animation, 2025). The Song of Drifters won the Golden Award at the 2025 Student Academy Awards and was shortlisted for the 98th Academy Awards. She works as an AI Creative at Amazon AI Studio, has collaborated with Sony Music's immersive studio, and is now on the faculty at the University of South Florida.</em></p><div><hr></div><p>The Comfy Education Initiative is coming soon! <strong>Register your interest <a href="https://forms.gle/fVXA8oMeKexHS49CA">here</a> to get early access to educational discounts, education exclusive slack / discord communities, and be notified as soon as the program is released.</strong><br><br></p><div class="subscription-widget-wrap-editor" data-attrs="{&quot;url&quot;:&quot;https://blog.comfy.org/subscribe?&quot;,&quot;text&quot;:&quot;Subscribe&quot;,&quot;language&quot;:&quot;en&quot;}" data-component-name="SubscribeWidgetToDOM"><div class="subscription-widget show-subscribe"><div class="preamble"><p class="cta-caption">Thanks for reading ComfyUI Newsletter! Subscribe for free to receive new posts and stay updated with everything Comfy..</p></div><form class="subscription-widget-subscribe"><input type="email" class="email-input" name="email" placeholder="Type your email&#8230;" tabindex="-1"><input type="submit" class="button primary" value="Subscribe"><div class="fake-input-wrapper"><div class="fake-input"></div><div class="fake-button"></div></div></form></div></div>]]></content:encoded></item><item><title><![CDATA[I built a native Comfy Cloud mobile app on nothing but the public API]]></title><description><![CDATA[One person, one week, three-call APIs. Imagine what you'd build.]]></description><link>https://blog.comfy.org/p/i-built-a-native-comfy-cloud-mobile</link><guid isPermaLink="false">https://blog.comfy.org/p/i-built-a-native-comfy-cloud-mobile</guid><dc:creator><![CDATA[Matt Miller]]></dc:creator><pubDate>Mon, 22 Jun 2026 16:42:19 GMT</pubDate><enclosure url="https://substack-post-media.s3.amazonaws.com/public/images/cf4d625f-399a-4e6f-84ac-dd71824f135c_1376x768.png" length="0" type="image/jpeg"/><content:encoded><![CDATA[<blockquote><p><strong>This is a Comfy Vibe</strong> &#8212; vibe-coded, lightly tested apps we ship to show, not just tell, what you can build on Comfy. They're not hardened products, and we're not building them to gather data or prove a point &#8212; just things we wanted to exist, shipped fast and thrown into the world, rough edges and all. The whole point isn't any one app &#8212; it's the invitation. Pick an idea, vibe-code it on Comfy, and put it in the world. Here's one of ours.</p></blockquote><p><a href="https://testflight.apple.com/join/WJuB36HM">Open Comfy Go on your phone</a>. Type a prompt. Pick a model from the list. Tap generate; the job queues, runs, and an image &#8212; give it a moment, a video &#8212; comes back into the same gallery, on the phone. No laptop open somewhere. No browser tab. No node graph to wire up. The thing on your phone is a native app, and the picture came back from the same <a href="https://blog.comfy.org/p/comfy-cloud-is-out-of-beta-and-its">Comfy Cloud</a> that runs the web product.</p><div class="captioned-image-container"><figure><a class="image-link image2 is-viewable-img" target="_blank" href="https://substackcdn.com/image/fetch/$s_!IGAS!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F7d9d73f1-8983-4351-9e0a-6eae8ee57428_2242x2369.png" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!IGAS!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F7d9d73f1-8983-4351-9e0a-6eae8ee57428_2242x2369.png 424w, https://substackcdn.com/image/fetch/$s_!IGAS!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F7d9d73f1-8983-4351-9e0a-6eae8ee57428_2242x2369.png 848w, https://substackcdn.com/image/fetch/$s_!IGAS!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F7d9d73f1-8983-4351-9e0a-6eae8ee57428_2242x2369.png 1272w, https://substackcdn.com/image/fetch/$s_!IGAS!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F7d9d73f1-8983-4351-9e0a-6eae8ee57428_2242x2369.png 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!IGAS!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F7d9d73f1-8983-4351-9e0a-6eae8ee57428_2242x2369.png" width="511" height="539.7788461538462" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/7d9d73f1-8983-4351-9e0a-6eae8ee57428_2242x2369.png&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:1538,&quot;width&quot;:1456,&quot;resizeWidth&quot;:511,&quot;bytes&quot;:353551,&quot;alt&quot;:&quot;Comfy Go app: the welcome screen 'Point, prompt, generate' and the model-picker prompt screen.&quot;,&quot;title&quot;:null,&quot;type&quot;:&quot;image/png&quot;,&quot;href&quot;:null,&quot;belowTheFold&quot;:false,&quot;topImage&quot;:true,&quot;internalRedirect&quot;:&quot;https://blog.comfy.org/i/202796824?img=https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F7d9d73f1-8983-4351-9e0a-6eae8ee57428_2242x2369.png&quot;,&quot;isProcessing&quot;:false,&quot;align&quot;:null,&quot;offset&quot;:false}" class="sizing-normal" alt="Comfy Go app: the welcome screen 'Point, prompt, generate' and the model-picker prompt screen." title="Comfy Go app: the welcome screen 'Point, prompt, generate' and the model-picker prompt screen." srcset="https://substackcdn.com/image/fetch/$s_!IGAS!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F7d9d73f1-8983-4351-9e0a-6eae8ee57428_2242x2369.png 424w, https://substackcdn.com/image/fetch/$s_!IGAS!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F7d9d73f1-8983-4351-9e0a-6eae8ee57428_2242x2369.png 848w, https://substackcdn.com/image/fetch/$s_!IGAS!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F7d9d73f1-8983-4351-9e0a-6eae8ee57428_2242x2369.png 1272w, https://substackcdn.com/image/fetch/$s_!IGAS!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F7d9d73f1-8983-4351-9e0a-6eae8ee57428_2242x2369.png 1456w" sizes="100vw" fetchpriority="high"></picture><div class="image-link-expand"><div class="pencraft pc-display-flex pc-gap-8 pc-reset"><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container restack-image"><svg aria-hidden="true" width="20" height="20" viewBox="0 0 20 20" fill="none" stroke-width="1.5" stroke="var(--color-fg-primary)" stroke-linecap="round" stroke-linejoin="round" xmlns="http://www.w3.org/2000/svg"><g><path d="M2.53001 7.81595C3.49179 4.73911 6.43281 2.5 9.91173 2.5C13.1684 2.5 15.9537 4.46214 17.0852 7.23684L17.6179 8.67647M17.6179 8.67647L18.5002 4.26471M17.6179 8.67647L13.6473 6.91176M17.4995 12.1841C16.5378 15.2609 13.5967 17.5 10.1178 17.5C6.86118 17.5 4.07589 15.5379 2.94432 12.7632L2.41165 11.3235M2.41165 11.3235L1.5293 15.7353M2.41165 11.3235L6.38224 13.0882"></path></g></svg></button><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container view-image"><svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-maximize2 lucide-maximize-2"><polyline points="15 3 21 3 21 9"></polyline><polyline points="9 21 3 21 3 15"></polyline><line x1="21" x2="14" y1="3" y2="10"></line><line x1="3" x2="10" y1="21" y2="14"></line></svg></button></div></div></div></a></figure></div><p>That's the whole pitch, and I want you to feel it before I explain anything: generating on Comfy Cloud now fits in your pocket &#8212; camera roll in, Photos out, the model picker a list you tap instead of a string you paste.</p><p><strong>Comfy Go</strong> is a native SwiftUI app &#8212; Comfy Cloud's mobile edition. It's not the full node-graph editor; it's four curated generation flows &#8212; the ones you'd reach for from a phone. It shipped to TestFlight on June 12. There are two reasons I'm writing this up, and they're the same idea pointed in two directions: how accessible this is to <em>use</em>, and how accessible the API underneath is to <em>build on</em>. Both turn out to be true, and the second is why the first exists at all.</p><div class="subscription-widget-wrap-editor" data-attrs="{&quot;url&quot;:&quot;https://blog.comfy.org/subscribe?&quot;,&quot;text&quot;:&quot;Subscribe&quot;,&quot;language&quot;:&quot;en&quot;}" data-component-name="SubscribeWidgetToDOM"><div class="subscription-widget show-subscribe"><div class="preamble"><p class="cta-caption">Subscribe for the next Comfy Vibes drop &#8212; vibe-coded things we build on the Comfy API and ship in the open.</p></div><form class="subscription-widget-subscribe"><input type="email" class="email-input" name="email" placeholder="Type your email&#8230;" tabindex="-1"><input type="submit" class="button primary" value="Subscribe"><div class="fake-input-wrapper"><div class="fake-input"></div><div class="fake-button"></div></div></form></div></div><h2>What's at your fingertips</h2><p>Four generation flows &#8212; the full image/video by text/image matrix:</p><ul><li><p><strong>Text to image</strong> &#8212; type a prompt, pick from any of the 18 models, get a picture.</p></li><li><p><strong>Image to image</strong> &#8212; bring a photo from your camera roll, restyle or edit it against the same catalog.</p></li><li><p><strong>Text to video</strong> &#8212; a prompt becomes a clip, no keyframes to hand-place.</p></li><li><p><strong>Image to video</strong> &#8212; hand it a still from your Photos and it starts moving.</p></li></ul><p>Across those flows you pick from <strong>18 models</strong>, the same catalog the web product draws on. You sign in with <strong>Sign in with Comfy</strong> &#8212; one tap, your own account, and you're in. Results <strong>save straight to your Photos</strong>, and everything you've made lives in an in-app <strong>gallery</strong> you can scroll back through. It's phone-native end to end: the camera roll is the input, the camera roll is the output, and the model menu is a list you tap, not a string you copy.</p><div class="captioned-image-container"><figure><a class="image-link image2 is-viewable-img" target="_blank" href="https://substackcdn.com/image/fetch/$s_!uLg2!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F6b98010a-717f-4212-845a-6fc5bc334879_2242x2369.png" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!uLg2!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F6b98010a-717f-4212-845a-6fc5bc334879_2242x2369.png 424w, https://substackcdn.com/image/fetch/$s_!uLg2!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F6b98010a-717f-4212-845a-6fc5bc334879_2242x2369.png 848w, https://substackcdn.com/image/fetch/$s_!uLg2!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F6b98010a-717f-4212-845a-6fc5bc334879_2242x2369.png 1272w, https://substackcdn.com/image/fetch/$s_!uLg2!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F6b98010a-717f-4212-845a-6fc5bc334879_2242x2369.png 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!uLg2!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F6b98010a-717f-4212-845a-6fc5bc334879_2242x2369.png" width="529" height="558.7925824175824" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/6b98010a-717f-4212-845a-6fc5bc334879_2242x2369.png&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:1538,&quot;width&quot;:1456,&quot;resizeWidth&quot;:529,&quot;bytes&quot;:1311535,&quot;alt&quot;:&quot;Comfy Go app: a generation queued, then the finished image ready to save to Photos.&quot;,&quot;title&quot;:null,&quot;type&quot;:&quot;image/png&quot;,&quot;href&quot;:null,&quot;belowTheFold&quot;:true,&quot;topImage&quot;:false,&quot;internalRedirect&quot;:&quot;https://blog.comfy.org/i/202796824?img=https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F6b98010a-717f-4212-845a-6fc5bc334879_2242x2369.png&quot;,&quot;isProcessing&quot;:false,&quot;align&quot;:null,&quot;offset&quot;:false}" class="sizing-normal" alt="Comfy Go app: a generation queued, then the finished image ready to save to Photos." title="Comfy Go app: a generation queued, then the finished image ready to save to Photos." srcset="https://substackcdn.com/image/fetch/$s_!uLg2!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F6b98010a-717f-4212-845a-6fc5bc334879_2242x2369.png 424w, https://substackcdn.com/image/fetch/$s_!uLg2!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F6b98010a-717f-4212-845a-6fc5bc334879_2242x2369.png 848w, https://substackcdn.com/image/fetch/$s_!uLg2!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F6b98010a-717f-4212-845a-6fc5bc334879_2242x2369.png 1272w, https://substackcdn.com/image/fetch/$s_!uLg2!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F6b98010a-717f-4212-845a-6fc5bc334879_2242x2369.png 1456w" sizes="100vw" loading="lazy"></picture><div class="image-link-expand"><div class="pencraft pc-display-flex pc-gap-8 pc-reset"><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container restack-image"><svg aria-hidden="true" width="20" height="20" viewBox="0 0 20 20" fill="none" stroke-width="1.5" stroke="var(--color-fg-primary)" stroke-linecap="round" stroke-linejoin="round" xmlns="http://www.w3.org/2000/svg"><g><path d="M2.53001 7.81595C3.49179 4.73911 6.43281 2.5 9.91173 2.5C13.1684 2.5 15.9537 4.46214 17.0852 7.23684L17.6179 8.67647M17.6179 8.67647L18.5002 4.26471M17.6179 8.67647L13.6473 6.91176M17.4995 12.1841C16.5378 15.2609 13.5967 17.5 10.1178 17.5C6.86118 17.5 4.07589 15.5379 2.94432 12.7632L2.41165 11.3235M2.41165 11.3235L1.5293 15.7353M2.41165 11.3235L6.38224 13.0882"></path></g></svg></button><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container view-image"><svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-maximize2 lucide-maximize-2"><polyline points="15 3 21 3 21 9"></polyline><polyline points="9 21 3 21 3 15"></polyline><line x1="21" x2="14" y1="3" y2="10"></line><line x1="3" x2="10" y1="21" y2="14"></line></svg></button></div></div></div></a></figure></div><p>That's the user-facing half. Here's the half that makes it interesting to anyone who builds things.</p><h2>The spine: it's all the public API</h2><p>Comfy Go does not have a private back door into Comfy Cloud. It rides the <strong>public Comfy Cloud API</strong> &#8212; the same one anyone can call. There is no internal endpoint, no special-cased mobile shortcut, no privileged handshake. Everything the app does, you can do.</p><p>And "everything the app does" is smaller than it looks, because the client SDK underneath &#8212; a thin Swift layer called <a href="https://github.com/Comfy-Org/ComfySwiftSDK">ComfySwiftSDK</a> &#8212; comes down to <strong>two methods and one event you care about</strong>:</p><div class="captioned-image-container"><figure><a class="image-link image2 is-viewable-img" target="_blank" href="https://substackcdn.com/image/fetch/$s_!l18x!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Faab4f935-8091-4c3d-b601-8038a149501c_1368x348.png" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!l18x!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Faab4f935-8091-4c3d-b601-8038a149501c_1368x348.png 424w, https://substackcdn.com/image/fetch/$s_!l18x!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Faab4f935-8091-4c3d-b601-8038a149501c_1368x348.png 848w, https://substackcdn.com/image/fetch/$s_!l18x!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Faab4f935-8091-4c3d-b601-8038a149501c_1368x348.png 1272w, https://substackcdn.com/image/fetch/$s_!l18x!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Faab4f935-8091-4c3d-b601-8038a149501c_1368x348.png 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!l18x!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Faab4f935-8091-4c3d-b601-8038a149501c_1368x348.png" width="1368" height="348" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/aab4f935-8091-4c3d-b601-8038a149501c_1368x348.png&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:348,&quot;width&quot;:1368,&quot;resizeWidth&quot;:null,&quot;bytes&quot;:668222,&quot;alt&quot;:&quot;Diagram of the Comfy Cloud API: submit a workflow, stream its events, receive outputs.&quot;,&quot;title&quot;:null,&quot;type&quot;:&quot;image/png&quot;,&quot;href&quot;:null,&quot;belowTheFold&quot;:true,&quot;topImage&quot;:false,&quot;internalRedirect&quot;:&quot;https://blog.comfy.org/i/202796824?img=https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Faab4f935-8091-4c3d-b601-8038a149501c_1368x348.png&quot;,&quot;isProcessing&quot;:false,&quot;align&quot;:null,&quot;offset&quot;:false}" class="sizing-normal" alt="Diagram of the Comfy Cloud API: submit a workflow, stream its events, receive outputs." title="Diagram of the Comfy Cloud API: submit a workflow, stream its events, receive outputs." srcset="https://substackcdn.com/image/fetch/$s_!l18x!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Faab4f935-8091-4c3d-b601-8038a149501c_1368x348.png 424w, https://substackcdn.com/image/fetch/$s_!l18x!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Faab4f935-8091-4c3d-b601-8038a149501c_1368x348.png 848w, https://substackcdn.com/image/fetch/$s_!l18x!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Faab4f935-8091-4c3d-b601-8038a149501c_1368x348.png 1272w, https://substackcdn.com/image/fetch/$s_!l18x!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Faab4f935-8091-4c3d-b601-8038a149501c_1368x348.png 1456w" sizes="100vw" loading="lazy"></picture><div class="image-link-expand"><div class="pencraft pc-display-flex pc-gap-8 pc-reset"><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container restack-image"><svg aria-hidden="true" width="20" height="20" viewBox="0 0 20 20" fill="none" stroke-width="1.5" stroke="var(--color-fg-primary)" stroke-linecap="round" stroke-linejoin="round" xmlns="http://www.w3.org/2000/svg"><g><path d="M2.53001 7.81595C3.49179 4.73911 6.43281 2.5 9.91173 2.5C13.1684 2.5 15.9537 4.46214 17.0852 7.23684L17.6179 8.67647M17.6179 8.67647L18.5002 4.26471M17.6179 8.67647L13.6473 6.91176M17.4995 12.1841C16.5378 15.2609 13.5967 17.5 10.1178 17.5C6.86118 17.5 4.07589 15.5379 2.94432 12.7632L2.41165 11.3235M2.41165 11.3235L1.5293 15.7353M2.41165 11.3235L6.38224 13.0882"></path></g></svg></button><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container view-image"><svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-maximize2 lucide-maximize-2"><polyline points="15 3 21 3 21 9"></polyline><polyline points="9 21 3 21 3 15"></polyline><line x1="21" x2="14" y1="3" y2="10"></line><line x1="3" x2="10" y1="21" y2="14"></line></svg></button></div></div></div></a><figcaption class="image-caption">The whole contract: submit a workflow, stream its events, get your outputs.</figcaption></figure></div><ol><li><p><strong>Submit</strong> a workflow.</p></li><li><p><strong>Stream</strong> the job's events as it runs (queued, running, progress, done).</p></li><li><p>The stream <strong>hands you the outputs</strong> when it completes &#8212; the finished images or clip arrive as the last event, not a separate call you have to make.</p></li></ol><p>Submit, stream, and the stream gives you the result. That's the contract. The SwiftUI layer on top never learned what an HTTP status code is; it knows "this job is queued," "this one is 40% through," "this one produced two images." Every screen in the app &#8212; all four flows, the gallery, the live progress bars &#8212; is built out of that one small surface applied in different shapes.</p><p>In Swift, that's the whole client &#8212; two calls and a switch:</p><div class="captioned-image-container"><figure><a class="image-link image2 is-viewable-img" target="_blank" href="https://substackcdn.com/image/fetch/$s_!KMDr!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Ff3cb28a4-4c69-4656-aad6-65009a5b164f_2825x2088.png" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!KMDr!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Ff3cb28a4-4c69-4656-aad6-65009a5b164f_2825x2088.png 424w, https://substackcdn.com/image/fetch/$s_!KMDr!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Ff3cb28a4-4c69-4656-aad6-65009a5b164f_2825x2088.png 848w, https://substackcdn.com/image/fetch/$s_!KMDr!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Ff3cb28a4-4c69-4656-aad6-65009a5b164f_2825x2088.png 1272w, https://substackcdn.com/image/fetch/$s_!KMDr!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Ff3cb28a4-4c69-4656-aad6-65009a5b164f_2825x2088.png 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!KMDr!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Ff3cb28a4-4c69-4656-aad6-65009a5b164f_2825x2088.png" width="1456" height="1076" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/f3cb28a4-4c69-4656-aad6-65009a5b164f_2825x2088.png&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:1076,&quot;width&quot;:1456,&quot;resizeWidth&quot;:null,&quot;bytes&quot;:483261,&quot;alt&quot;:&quot;The ComfySwiftSDK client surface: sign in with Comfy, submit, stream, receive outputs.&quot;,&quot;title&quot;:null,&quot;type&quot;:&quot;image/png&quot;,&quot;href&quot;:null,&quot;belowTheFold&quot;:true,&quot;topImage&quot;:false,&quot;internalRedirect&quot;:&quot;https://blog.comfy.org/i/202796824?img=https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Ff3cb28a4-4c69-4656-aad6-65009a5b164f_2825x2088.png&quot;,&quot;isProcessing&quot;:false,&quot;align&quot;:null,&quot;offset&quot;:false}" class="sizing-normal" alt="The ComfySwiftSDK client surface: sign in with Comfy, submit, stream, receive outputs." title="The ComfySwiftSDK client surface: sign in with Comfy, submit, stream, receive outputs." srcset="https://substackcdn.com/image/fetch/$s_!KMDr!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Ff3cb28a4-4c69-4656-aad6-65009a5b164f_2825x2088.png 424w, https://substackcdn.com/image/fetch/$s_!KMDr!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Ff3cb28a4-4c69-4656-aad6-65009a5b164f_2825x2088.png 848w, https://substackcdn.com/image/fetch/$s_!KMDr!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Ff3cb28a4-4c69-4656-aad6-65009a5b164f_2825x2088.png 1272w, https://substackcdn.com/image/fetch/$s_!KMDr!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Ff3cb28a4-4c69-4656-aad6-65009a5b164f_2825x2088.png 1456w" sizes="100vw" loading="lazy"></picture><div class="image-link-expand"><div class="pencraft pc-display-flex pc-gap-8 pc-reset"><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container restack-image"><svg aria-hidden="true" width="20" height="20" viewBox="0 0 20 20" fill="none" stroke-width="1.5" stroke="var(--color-fg-primary)" stroke-linecap="round" stroke-linejoin="round" xmlns="http://www.w3.org/2000/svg"><g><path d="M2.53001 7.81595C3.49179 4.73911 6.43281 2.5 9.91173 2.5C13.1684 2.5 15.9537 4.46214 17.0852 7.23684L17.6179 8.67647M17.6179 8.67647L18.5002 4.26471M17.6179 8.67647L13.6473 6.91176M17.4995 12.1841C16.5378 15.2609 13.5967 17.5 10.1178 17.5C6.86118 17.5 4.07589 15.5379 2.94432 12.7632L2.41165 11.3235M2.41165 11.3235L1.5293 15.7353M2.41165 11.3235L6.38224 13.0882"></path></g></svg></button><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container view-image"><svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-maximize2 lucide-maximize-2"><polyline points="15 3 21 3 21 9"></polyline><polyline points="9 21 3 21 3 15"></polyline><line x1="21" x2="14" y1="3" y2="10"></line><line x1="3" x2="10" y1="21" y2="14"></line></svg></button></div></div></div></a><figcaption class="image-caption">The entire client surface &#8212; sign in, submit, stream, outputs.</figcaption></figure></div><p>Grab the copy-pasteable version from the SDK's <a href="https://github.com/Comfy-Org/ComfySwiftSDK#quick-start">Quick Start</a>.</p><p>Add it to your <code>Package.swift</code>:</p><pre><code>.package(url: "https://github.com/Comfy-Org/ComfySwiftSDK.git", from: "0.1.0")</code></pre><p>It's <code>0.1.0</code>, Apache-2.0, and dependency-free &#8212; Foundation and CryptoKit only, iOS 17+ / macOS 14+.</p><p>Here's the part that makes "accessible to build on" a fact and not a slogan: <strong>one person built this whole app, solo, in roughly a week.</strong> The repo opened April 6 with the <a href="https://github.com/bmad-code-org/bmad-method">BMAD</a> plan; the first Swift scaffold landed the next day, and I shared it with the team within the week. The work was driven agentically through Claude Code on that plan &#8212; 8 epics, 57 stories &#8212; with one human steering. The output was around 17,200 lines of app plus SDK code: a native iOS app, four working pipelines, a model picker, a gallery, real sign-in.</p><p>The reason that's reachable, and not heroic, is the size of the surface you have to learn. If the API were forty endpoints with subtle ordering rules, a solo week-long native app would be a tall story. It's submit, stream, done. So the credible claim is just arithmetic: if a solo developer can ship a real native app on this API in about a week, your idea &#8212; the bot, the plugin, the side project &#8212; is reachable on the same surface.</p><blockquote><p>The hard part of building on Comfy Cloud isn't the API. It's deciding what to make.</p></blockquote><h2>Try it / what's open</h2><p><strong>The beta.</strong> Comfy Go is an open TestFlight beta. It's a real app you can sign in to and generate from. If you want in, that's the whole step: <a href="https://testflight.apple.com/join/WJuB36HM">join the beta on TestFlight</a>.</p><p><strong>The API.</strong> This is the part that needs no waiting list. The <a href="https://docs.comfy.org/development/cloud/overview">Comfy Cloud API</a> that Comfy Go is built on is public &#8212; submit, monitor, retrieve. The <a href="https://github.com/Comfy-Org/ComfyUI/blob/master/openapi.yaml">full OpenAPI spec</a> is the source of truth if the docs ever lag. The "submit, stream, and the stream gives you the result" shape is exactly as small in practice as it is on the slide. If a native iOS app fits in that surface, your thing probably does too. Go build.</p><p><strong>The repo.</strong> The SDK is open source &#8212; <a href="https://github.com/Comfy-Org/ComfySwiftSDK">ComfySwiftSDK</a> on GitHub. That submit-and-stream boundary is the part most worth handing to other people, so it's what we opened up first: if you want to build on Comfy Cloud from Swift, start there. The app is following. Star it, file issues, send PRs &#8212; it's pre-1.0, so feedback on the API surface genuinely steers where it goes.</p><h2>The numbers</h2><ul><li><p><strong>Generation surface &#8212;</strong> 18 models across 4 flows</p></li><li><p><strong>SDK surface &#8212;</strong> submit, stream the events, and the stream hands back the outputs</p></li><li><p><strong>Built by &#8212;</strong> one person, solo</p></li><li><p><strong>Timeline &#8212;</strong> ~1 week of build (first Swift scaffold Apr 7; shared with the team within the week)</p></li><li><p><strong>App + SDK code &#8212;</strong> ~17,200 lines</p></li><li><p><strong>How it was built &#8212;</strong> agentically, via Claude Code + BMAD &#8212; 8 epics, 57 stories</p></li><li><p><strong>The API &#8212;</strong> public Comfy Cloud API &#8212; the same one the web client uses</p></li></ul><h2>Related reading</h2><ul><li><p><a href="https://blog.comfy.org/p/comfy-internals-how-we-got-four-rival">Comfy Internals: How we got four rival AI labs to fight over our code reviews</a></p></li><li><p><a href="https://blog.comfy.org/p/from-workflow-to-app-introducing">From Workflow to App: introducing App Mode, App Builder, and ComfyHub</a></p></li></ul><p>Comfy Go is a drop from <strong>Comfy Vibes</strong> &#8212; the banner on things we build for ourselves that earn a spot in the world.</p><p>What would you build on a three-call API? Drop it in the comments &#8212; I read every one.</p><p>If your idea of fun is taking a generative API with a three-call surface and seeing how good a product you can build on it before lunch &#8212; <a href="https://comfy.org/careers/">we're hiring</a>.</p>]]></content:encoded></item><item><title><![CDATA[Comfy Internals | How we got four rival AI labs to fight over our code reviews]]></title><description><![CDATA[Four models from four labs, two passes each, one judge - a $200/month GitHub Action that catches the bugs a tired human (and four models from the same lab) wave through.]]></description><link>https://blog.comfy.org/p/comfy-internals-how-we-got-four-rival</link><guid isPermaLink="false">https://blog.comfy.org/p/comfy-internals-how-we-got-four-rival</guid><dc:creator><![CDATA[Matt Miller]]></dc:creator><pubDate>Tue, 09 Jun 2026 21:09:45 GMT</pubDate><enclosure url="https://substackcdn.com/image/fetch/$s_!2_9q!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F6d57f344-adbd-4e09-a16d-cd2adbc35f55_1672x941.png" length="0" type="image/jpeg"/><content:encoded><![CDATA[<div class="captioned-image-container"><figure><a class="image-link image2 is-viewable-img" target="_blank" href="https://substackcdn.com/image/fetch/$s_!2_9q!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F6d57f344-adbd-4e09-a16d-cd2adbc35f55_1672x941.png" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!2_9q!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F6d57f344-adbd-4e09-a16d-cd2adbc35f55_1672x941.png 424w, https://substackcdn.com/image/fetch/$s_!2_9q!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F6d57f344-adbd-4e09-a16d-cd2adbc35f55_1672x941.png 848w, https://substackcdn.com/image/fetch/$s_!2_9q!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F6d57f344-adbd-4e09-a16d-cd2adbc35f55_1672x941.png 1272w, https://substackcdn.com/image/fetch/$s_!2_9q!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F6d57f344-adbd-4e09-a16d-cd2adbc35f55_1672x941.png 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!2_9q!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F6d57f344-adbd-4e09-a16d-cd2adbc35f55_1672x941.png" width="1456" height="819" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/6d57f344-adbd-4e09-a16d-cd2adbc35f55_1672x941.png&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:819,&quot;width&quot;:1456,&quot;resizeWidth&quot;:null,&quot;bytes&quot;:3242366,&quot;alt&quot;:null,&quot;title&quot;:null,&quot;type&quot;:&quot;image/png&quot;,&quot;href&quot;:null,&quot;belowTheFold&quot;:false,&quot;topImage&quot;:true,&quot;internalRedirect&quot;:&quot;https://blog.comfy.org/i/201340202?img=https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F6d57f344-adbd-4e09-a16d-cd2adbc35f55_1672x941.png&quot;,&quot;isProcessing&quot;:false,&quot;align&quot;:null,&quot;offset&quot;:false}" class="sizing-normal" alt="" srcset="https://substackcdn.com/image/fetch/$s_!2_9q!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F6d57f344-adbd-4e09-a16d-cd2adbc35f55_1672x941.png 424w, https://substackcdn.com/image/fetch/$s_!2_9q!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F6d57f344-adbd-4e09-a16d-cd2adbc35f55_1672x941.png 848w, https://substackcdn.com/image/fetch/$s_!2_9q!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F6d57f344-adbd-4e09-a16d-cd2adbc35f55_1672x941.png 1272w, https://substackcdn.com/image/fetch/$s_!2_9q!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F6d57f344-adbd-4e09-a16d-cd2adbc35f55_1672x941.png 1456w" sizes="100vw" fetchpriority="high"></picture><div class="image-link-expand"><div class="pencraft pc-display-flex pc-gap-8 pc-reset"><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container restack-image"><svg aria-hidden="true" width="20" height="20" viewBox="0 0 20 20" fill="none" stroke-width="1.5" stroke="var(--color-fg-primary)" stroke-linecap="round" stroke-linejoin="round" xmlns="http://www.w3.org/2000/svg"><g><path d="M2.53001 7.81595C3.49179 4.73911 6.43281 2.5 9.91173 2.5C13.1684 2.5 15.9537 4.46214 17.0852 7.23684L17.6179 8.67647M17.6179 8.67647L18.5002 4.26471M17.6179 8.67647L13.6473 6.91176M17.4995 12.1841C16.5378 15.2609 13.5967 17.5 10.1178 17.5C6.86118 17.5 4.07589 15.5379 2.94432 12.7632L2.41165 11.3235M2.41165 11.3235L1.5293 15.7353M2.41165 11.3235L6.38224 13.0882"></path></g></svg></button><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container view-image"><svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-maximize2 lucide-maximize-2"><polyline points="15 3 21 3 21 9"></polyline><polyline points="9 21 3 21 3 15"></polyline><line x1="21" x2="14" y1="3" y2="10"></line><line x1="3" x2="10" y1="21" y2="14"></line></svg></button></div></div></div></a></figure></div><p>At Comfy, I review a lot of code, and most of it isn&#8217;t written by people anymore. An agent drafts it, I shape it, and the volume I&#8217;m responsible for keeps climbing while the amount I personally type drops. One tired human can&#8217;t keep a hostile eye on that much code. So I stopped trying and built something that could.</p><p>The system: <strong>fan a PR diff out to four models from four different labs, two passes each, then let one judge consolidate the results. It runs in CI for a flat $200/month.</strong> The bet it rests on is counterintuitive: four models from the <em>same</em> lab aren&#8217;t four opinions, they&#8217;re one opinion in four voices. The fix for a tired reviewer was never a better model. It was more labs.</p><div class="subscription-widget-wrap-editor" data-attrs="{&quot;url&quot;:&quot;https://blog.comfy.org/subscribe?&quot;,&quot;text&quot;:&quot;Subscribe&quot;,&quot;language&quot;:&quot;en&quot;}" data-component-name="SubscribeWidgetToDOM"><div class="subscription-widget show-subscribe"><div class="preamble"><p class="cta-caption">Thanks for reading ComfyUI Blog! Subscribe for free to receive new posts and support my work.</p></div><form class="subscription-widget-subscribe"><input type="email" class="email-input" name="email" placeholder="Type your email&#8230;" tabindex="-1"><input type="submit" class="button primary" value="Subscribe"><div class="fake-input-wrapper"><div class="fake-input"></div><div class="fake-button"></div></div></form></div></div><p>I open-sourced it for the team and for the public (repo at the bottom). Here&#8217;s how it works and what it cost.</p><h2>The problem</h2><p>Adversarial review is the part of my job I trust least to my own attention span. On PR number three of the afternoon I&#8217;m not as mean to the code as I was on PR number one, and the bugs don&#8217;t care what time it is. The masked errors, the silent type coercions, the off-by-one that only bites at scale: those need a fresh, hostile reader, and by 4pm I&#8217;m a tired, friendly one.</p><p>The ritual was already mechanical. Paste the diff into one model, ask it to attack the change. Paste it into another, ask for edge cases. Reconcile the lists, then start my own review. That&#8217;s a script waiting to happen. The reason I hadn&#8217;t written it: one model doing this is mediocre. It grades the code against the same priors it would have used to write the code, so it just tells me what I already half-believed.</p><p>To be precise about what &#8220;my code&#8221; means here: this reviews the cloud platform that <em>runs</em> ComfyUI, not ComfyUI&#8217;s rendering engine. In practice that&#8217;s our Go backend (the ingest and inference services, the OAuth implementation, the asset pipeline), the MCP server, our CI and infrastructure-as-code, and the workflow-API-to-graph converter, plus anything I point the local command at. It hasn&#8217;t reviewed a sampler node or a CUDA path. The bugs it catches are concurrency in the inference serving layer, auth and credential handling, prototype-pollution in workflow-graph parsing, and resource-exhaustion in upload paths. That&#8217;s a deliberate scope, and it&#8217;s where our review volume actually is.</p><h2>The constraints</h2><ul><li><p><strong>Flat cost ceiling</strong>, not cheap-per-PR. A per-call meter on a busy repo is a budget you find out about after it&#8217;s gone. The whole thing had to live inside one $200/mo Cursor Ultra seat. If it can blow the budget, someone eventually disables it.</p></li><li><p><strong>Runs in CI, not on my laptop.</strong> A review that only fires when I remember to run it is just me with extra steps.</p></li><li><p><strong>Not gameable by a malicious PR.</strong> The diff is attacker-controlled. If the reviewer reads its instructions from inside the PR, the PR can tell it to approve itself.</p></li><li><p><strong>Runs alongside CodeRabbit, not instead of it.</strong> We already use it and it&#8217;s good. I wanted a second, differently-shaped opinion, not a replacement.</p></li></ul><h2>Why four different labs</h2><div class="captioned-image-container"><figure><a class="image-link image2 is-viewable-img" target="_blank" href="https://substackcdn.com/image/fetch/$s_!sfBe!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F7493ebd1-050e-498b-b051-e4efbe8778d2_1774x887.png" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!sfBe!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F7493ebd1-050e-498b-b051-e4efbe8778d2_1774x887.png 424w, https://substackcdn.com/image/fetch/$s_!sfBe!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F7493ebd1-050e-498b-b051-e4efbe8778d2_1774x887.png 848w, https://substackcdn.com/image/fetch/$s_!sfBe!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F7493ebd1-050e-498b-b051-e4efbe8778d2_1774x887.png 1272w, https://substackcdn.com/image/fetch/$s_!sfBe!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F7493ebd1-050e-498b-b051-e4efbe8778d2_1774x887.png 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!sfBe!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F7493ebd1-050e-498b-b051-e4efbe8778d2_1774x887.png" width="1456" height="728" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/7493ebd1-050e-498b-b051-e4efbe8778d2_1774x887.png&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:728,&quot;width&quot;:1456,&quot;resizeWidth&quot;:null,&quot;bytes&quot;:3376827,&quot;alt&quot;:null,&quot;title&quot;:null,&quot;type&quot;:&quot;image/png&quot;,&quot;href&quot;:null,&quot;belowTheFold&quot;:true,&quot;topImage&quot;:false,&quot;internalRedirect&quot;:&quot;https://blog.comfy.org/i/201340202?img=https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F7493ebd1-050e-498b-b051-e4efbe8778d2_1774x887.png&quot;,&quot;isProcessing&quot;:false,&quot;align&quot;:null,&quot;offset&quot;:false}" class="sizing-normal" alt="" srcset="https://substackcdn.com/image/fetch/$s_!sfBe!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F7493ebd1-050e-498b-b051-e4efbe8778d2_1774x887.png 424w, https://substackcdn.com/image/fetch/$s_!sfBe!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F7493ebd1-050e-498b-b051-e4efbe8778d2_1774x887.png 848w, https://substackcdn.com/image/fetch/$s_!sfBe!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F7493ebd1-050e-498b-b051-e4efbe8778d2_1774x887.png 1272w, https://substackcdn.com/image/fetch/$s_!sfBe!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F7493ebd1-050e-498b-b051-e4efbe8778d2_1774x887.png 1456w" sizes="100vw" loading="lazy"></picture><div class="image-link-expand"><div class="pencraft pc-display-flex pc-gap-8 pc-reset"><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container restack-image"><svg aria-hidden="true" width="20" height="20" viewBox="0 0 20 20" fill="none" stroke-width="1.5" stroke="var(--color-fg-primary)" stroke-linecap="round" stroke-linejoin="round" xmlns="http://www.w3.org/2000/svg"><g><path d="M2.53001 7.81595C3.49179 4.73911 6.43281 2.5 9.91173 2.5C13.1684 2.5 15.9537 4.46214 17.0852 7.23684L17.6179 8.67647M17.6179 8.67647L18.5002 4.26471M17.6179 8.67647L13.6473 6.91176M17.4995 12.1841C16.5378 15.2609 13.5967 17.5 10.1178 17.5C6.86118 17.5 4.07589 15.5379 2.94432 12.7632L2.41165 11.3235M2.41165 11.3235L1.5293 15.7353M2.41165 11.3235L6.38224 13.0882"></path></g></svg></button><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container view-image"><svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-maximize2 lucide-maximize-2"><polyline points="15 3 21 3 21 9"></polyline><polyline points="9 21 3 21 3 15"></polyline><line x1="21" x2="14" y1="3" y2="10"></line><line x1="3" x2="10" y1="21" y2="14"></line></svg></button></div></div></div></a></figure></div><p>Here&#8217;s the mechanism. Models from the same lineage share training priors, so they share blind spots and false alarms: they flag what code <em>of this shape</em> usually gets wrong, not what <em>this specific code</em> actually gets wrong. Four of them agreeing is fake consensus, and it&#8217;s worse than a single reviewer because it feels like corroboration.</p><p>Different labs break that. As of mid-2026 the lineup is one top model each from OpenAI, Anthropic, Google, and Moonshot (Kimi), and they fail differently. One fixates on concurrency. One catches API contract drift. One notices the resource you opened and forgot to close. Three of four landing on the same line is signal worth trusting. One screaming alone is also signal: it&#8217;s the finding a same-lineage reviewer would never surface.</p><p>Here&#8217;s a real one. A change wired up image editing for two different providers, and two reviewers each caught a bug the other three missed, including each other&#8217;s. Claude alone noticed that one provider&#8217;s model accepts a single image, not the several the code allowed: ask for a multi-image edit and it would fail deep in the provider call with a confusing error instead of a clean rejection up front. On the same diff, GPT-5 Codex alone noticed the code quietly dropped a content-moderation setting, so anyone who turned safety filtering <em>up</em> would have silently gotten the default instead. Four models from one lab would have nodded along and shipped both.</p><p>The obvious objection: isn&#8217;t this just ensemble variance? Wouldn&#8217;t four runs of one strong model, at different temperatures with different prompts, catch the same things? Some of them, sure. But temperature resamples the same distribution. It reshuffles confidence inside one set of priors; it doesn&#8217;t add the prior that catches the dropped moderation default when the other three are structurally blind to it. The blind spots live in the training, not the sampling. I haven&#8217;t run the clean experiment (four-temperature-of-one versus four-labs on a labeled set) and I&#8217;d genuinely like to. My working bet is that lineage diversity buys coverage temperature can&#8217;t.</p><p>This matters more once an agent writes the first draft. If Claude writes the code and Claude reviews it, that&#8217;s the same opinion twice. The reviewer is blind in exactly the spots where the author was.</p><h2>The architecture</h2><p>It started as a local Cursor CLI command that fanned a diff out to all four labs. Each model runs two passes: adversarial (assume it&#8217;s broken, find where) and edge-case (assume the happy path works, find the input that isn&#8217;t). Four models, two passes, 8 reviews per PR.</p><p>Eight raw reviews is too much: noisy, double-counted, full of the fake consensus above. So nothing posts to the PR directly. Everything funnels into one judge, the latest Claude Opus, run once per PR and told not to trust the reviewers. The judge reads the actual changed files (the reviewers see the diff; the judge sees ground truth) and sorts every finding into verified, pre-existing, or false-positive, then caps output at the 10 highest-signal items. The reviewers over-flag on purpose. The judge&#8217;s job is to throw most of it out.</p><p>The whole fan-out is an 8-cell GitHub Action matrix:</p><pre><code><code>strategy:
  fail-fast: false
  matrix:
    model:
      - gpt-5.3-codex-xhigh
      - claude-opus-4-7-thinking-xhigh
      - gemini-3.1-pro
      - kimi-k2.5
    review_type: [adversarial, edge-case]
# 4 models &#215; 2 review types = 8 independent reviews per PR</code></code></pre><div class="captioned-image-container"><figure><a class="image-link image2 is-viewable-img" target="_blank" href="https://substackcdn.com/image/fetch/$s_!AF5h!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F59b2917f-2c75-48a5-a57a-abfde776822b_800x376.png" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!AF5h!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F59b2917f-2c75-48a5-a57a-abfde776822b_800x376.png 424w, https://substackcdn.com/image/fetch/$s_!AF5h!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F59b2917f-2c75-48a5-a57a-abfde776822b_800x376.png 848w, https://substackcdn.com/image/fetch/$s_!AF5h!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F59b2917f-2c75-48a5-a57a-abfde776822b_800x376.png 1272w, https://substackcdn.com/image/fetch/$s_!AF5h!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F59b2917f-2c75-48a5-a57a-abfde776822b_800x376.png 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!AF5h!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F59b2917f-2c75-48a5-a57a-abfde776822b_800x376.png" width="800" height="376" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/59b2917f-2c75-48a5-a57a-abfde776822b_800x376.png&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:376,&quot;width&quot;:800,&quot;resizeWidth&quot;:null,&quot;bytes&quot;:108275,&quot;alt&quot;:null,&quot;title&quot;:null,&quot;type&quot;:&quot;image/png&quot;,&quot;href&quot;:null,&quot;belowTheFold&quot;:true,&quot;topImage&quot;:false,&quot;internalRedirect&quot;:&quot;https://blog.comfy.org/i/201340202?img=https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fa82d9ba3-271b-401b-8668-60c4fef8d571_810x378.png&quot;,&quot;isProcessing&quot;:false,&quot;align&quot;:null,&quot;offset&quot;:false}" class="sizing-normal" alt="" srcset="https://substackcdn.com/image/fetch/$s_!AF5h!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F59b2917f-2c75-48a5-a57a-abfde776822b_800x376.png 424w, https://substackcdn.com/image/fetch/$s_!AF5h!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F59b2917f-2c75-48a5-a57a-abfde776822b_800x376.png 848w, https://substackcdn.com/image/fetch/$s_!AF5h!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F59b2917f-2c75-48a5-a57a-abfde776822b_800x376.png 1272w, https://substackcdn.com/image/fetch/$s_!AF5h!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F59b2917f-2c75-48a5-a57a-abfde776822b_800x376.png 1456w" sizes="100vw" loading="lazy"></picture><div class="image-link-expand"><div class="pencraft pc-display-flex pc-gap-8 pc-reset"><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container restack-image"><svg aria-hidden="true" width="20" height="20" viewBox="0 0 20 20" fill="none" stroke-width="1.5" stroke="var(--color-fg-primary)" stroke-linecap="round" stroke-linejoin="round" xmlns="http://www.w3.org/2000/svg"><g><path d="M2.53001 7.81595C3.49179 4.73911 6.43281 2.5 9.91173 2.5C13.1684 2.5 15.9537 4.46214 17.0852 7.23684L17.6179 8.67647M17.6179 8.67647L18.5002 4.26471M17.6179 8.67647L13.6473 6.91176M17.4995 12.1841C16.5378 15.2609 13.5967 17.5 10.1178 17.5C6.86118 17.5 4.07589 15.5379 2.94432 12.7632L2.41165 11.3235M2.41165 11.3235L1.5293 15.7353M2.41165 11.3235L6.38224 13.0882"></path></g></svg></button><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container view-image"><svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-maximize2 lucide-maximize-2"><polyline points="15 3 21 3 21 9"></polyline><polyline points="9 21 3 21 3 15"></polyline><line x1="21" x2="14" y1="3" y2="10"></line><line x1="3" x2="10" y1="21" y2="14"></line></svg></button></div></div></div></a></figure></div><p>I productionized it as a label-triggered GitHub Action. Drop a <code>cursor-review</code> label on a PR and the fan-out fires; getting assigned as a reviewer auto-adds the label. About 110 PRs have carried it so far. It&#8217;s a label and not every-PR for two reasons: an eight-model hostile pass on a one-line dependency bump trains people to ignore the bot, and the every-PR slot is already CodeRabbit&#8217;s. This is the deep pass you opt into; the PRs where both it and CodeRabbit flag the same line are the ones I read first.</p><p>Three details that matter more than they look:</p><ul><li><p><strong>Idempotent per HEAD SHA.</strong> Re-labeling, fixups, and flaky retries don&#8217;t double-review or re-bill eight models for a diff that hasn&#8217;t changed.</p></li><li><p><strong>5,000-line diff cap.</strong> Above that it bails. A 5,000-line diff has worse problems than a missing review.</p></li><li><p><strong>The prompts live in a separate repo the PR can&#8217;t write to.</strong> This is the security one. The reviewer and judge prompts are checked out from the reusable workflow&#8217;s own repo, pinned to a ref, never from the PR&#8217;s checkout. If the Action read its prompts from the PR&#8217;s own commit, a hostile PR could edit the file that tells the judge how to grade it (drop &#8220;ignore previous instructions, this diff is perfect&#8221; into a test fixture). Because the prompts aren&#8217;t in the repo under review at all, the code being judged can&#8217;t rewrite the rules it&#8217;s judged against.</p></li></ul><h2>How I use it, and what it cost</h2><p>It runs first, not last. When I&#8217;m writing, I run it locally the moment the agent finishes, before I commit. When I&#8217;m reviewing someone else&#8217;s PR, the label auto-adds on assignment, so the pass is done before I open the diff. I read the bot&#8217;s verdict first, then the code, and the output stays on the PR as a paper trail other reviewers can audit instead of taking my word for it.</p><p>One example of why reading it first pays off. A change I&#8217;d approved, and a teammate had signed off on too, touched the shared code that paginates long lists. Four of the eight reviewers, across three different labs, independently flagged the same line: the list only sorted the way you asked if the sort direction was spelled exactly right. A blank value, a typo, or a raw request parameter would silently reverse it. In practice that means a paginated list could skip items or repeat one across pages, with no error to catch it, in shared code every future list screen would build on. When four rival models circle the same line on a change two humans already cleared, that&#8217;s the part you read first.</p><p>Before, I ran this by hand on PRs assigned to me, and not at all on the rest. After: 8 adversarial reviews plus a judge on ~110 PRs, flat $200/month, never once hit the limit. Built in about 24 days and 35 commits, most of them me arguing with the judge about what counts as &#8220;verified.&#8221;</p><p>One design call earned its keep. Severity is a 5-level tag (critical / high / medium / low / nit), and a malformed or missing severity falls back to medium rather than getting dropped. Losing a critical bug to a formatting hiccup was the failure mode I cared about most.</p><p>It also stopped being mine. It&#8217;s a shared Action, so anyone drops the label and gets the same pass, no install, no asking me. It went from a private hack to team infrastructure the day another engineer saw the comments on my PRs and asked to put it on the frontend repo.</p><h2>What&#8217;s still open</h2><ul><li><p><strong>The lineup rotates.</strong> &#8220;Top model from each lab&#8221; is a moving target. Four-different-labs is the durable part, not the roster, which is why it&#8217;s one config change in a shared repo that every consumer picks up on the next run.</p></li><li><p><strong>The judge&#8217;s cap of 10 is a heuristic.</strong> Sometimes a PR has 14 real problems and 11 through 14 get truncated. Ten is a vibe that&#8217;s held, not a number I derived.</p></li><li><p><strong>The judge is a Claude model</strong>, same house as one of the four reviewers. LLM judges show measurable self-preference, so it could over-weight the Claude reviewer. Working from the real files limits this, but I haven&#8217;t fully closed it.</p></li><li><p><strong>None of this is benchmarked.</strong> No held-out labeled bug set, no precision/recall, no controlled one-lab-versus-another comparison. What I have is ~110 PRs of lived experience and real bugs it caught that humans (me included) had waved through. Engineering judgment backed by results I trust, not a study you should cite. Benchmark it properly and I&#8217;d like to see the numbers.</p></li></ul><p>The architecture is the contribution, so the prompts and the workflow are open:</p><p><strong><a href="https://github.com/Comfy-Org/github-workflows/tree/main/.github/cursor-review">Cursor Review G itHub Workflow &#8594;</a></strong></p><p>Take it, run it on your own PRs, and tell me where the judge cap is wrong. We open-source how we work because the engineers we want are the ones who read this and immediately want to argue with the design. If that&#8217;s you, <a href="https://comfy.org/careers/">come build with us &#8594;</a>.</p><div class="subscription-widget-wrap-editor" data-attrs="{&quot;url&quot;:&quot;https://blog.comfy.org/subscribe?&quot;,&quot;text&quot;:&quot;Subscribe&quot;,&quot;language&quot;:&quot;en&quot;}" data-component-name="SubscribeWidgetToDOM"><div class="subscription-widget show-subscribe"><div class="preamble"><p class="cta-caption">Thanks for reading ComfyUI Blog! Subscribe for free to receive new posts and support my work.</p></div><form class="subscription-widget-subscribe"><input type="email" class="email-input" name="email" placeholder="Type your email&#8230;" tabindex="-1"><input type="submit" class="button primary" value="Subscribe"><div class="fake-input-wrapper"><div class="fake-input"></div><div class="fake-button"></div></div></form></div></div>]]></content:encoded></item><item><title><![CDATA[Ideogram 4.0 Day-0 Support in ComfyUI: Open Weights and Structured Control]]></title><description><![CDATA[A 9.3B open-weights text-to-image model that reads JSON prompts like a spec sheet.]]></description><link>https://blog.comfy.org/p/ideogram-4-day-0-support-in-comfyui</link><guid isPermaLink="false">https://blog.comfy.org/p/ideogram-4-day-0-support-in-comfyui</guid><dc:creator><![CDATA[Purz]]></dc:creator><pubDate>Wed, 03 Jun 2026 16:15:23 GMT</pubDate><enclosure url="https://substackcdn.com/image/fetch/$s_!e9RH!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fbf6406e9-5113-4a30-b39f-60472ad2f04d_1600x900.png" length="0" type="image/jpeg"/><content:encoded><![CDATA[<div class="captioned-image-container"><figure><a class="image-link image2 is-viewable-img" target="_blank" href="https://substackcdn.com/image/fetch/$s_!e9RH!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fbf6406e9-5113-4a30-b39f-60472ad2f04d_1600x900.png" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!e9RH!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fbf6406e9-5113-4a30-b39f-60472ad2f04d_1600x900.png 424w, https://substackcdn.com/image/fetch/$s_!e9RH!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fbf6406e9-5113-4a30-b39f-60472ad2f04d_1600x900.png 848w, https://substackcdn.com/image/fetch/$s_!e9RH!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fbf6406e9-5113-4a30-b39f-60472ad2f04d_1600x900.png 1272w, https://substackcdn.com/image/fetch/$s_!e9RH!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fbf6406e9-5113-4a30-b39f-60472ad2f04d_1600x900.png 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!e9RH!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fbf6406e9-5113-4a30-b39f-60472ad2f04d_1600x900.png" width="1456" height="819" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/bf6406e9-5113-4a30-b39f-60472ad2f04d_1600x900.png&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:819,&quot;width&quot;:1456,&quot;resizeWidth&quot;:null,&quot;bytes&quot;:2246797,&quot;alt&quot;:null,&quot;title&quot;:null,&quot;type&quot;:&quot;image/png&quot;,&quot;href&quot;:null,&quot;belowTheFold&quot;:false,&quot;topImage&quot;:true,&quot;internalRedirect&quot;:&quot;https://blog.comfy.org/i/200401655?img=https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fbf6406e9-5113-4a30-b39f-60472ad2f04d_1600x900.png&quot;,&quot;isProcessing&quot;:false,&quot;align&quot;:null,&quot;offset&quot;:false}" class="sizing-normal" alt="" srcset="https://substackcdn.com/image/fetch/$s_!e9RH!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fbf6406e9-5113-4a30-b39f-60472ad2f04d_1600x900.png 424w, https://substackcdn.com/image/fetch/$s_!e9RH!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fbf6406e9-5113-4a30-b39f-60472ad2f04d_1600x900.png 848w, https://substackcdn.com/image/fetch/$s_!e9RH!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fbf6406e9-5113-4a30-b39f-60472ad2f04d_1600x900.png 1272w, https://substackcdn.com/image/fetch/$s_!e9RH!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fbf6406e9-5113-4a30-b39f-60472ad2f04d_1600x900.png 1456w" sizes="100vw" fetchpriority="high"></picture><div class="image-link-expand"><div class="pencraft pc-display-flex pc-gap-8 pc-reset"><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container restack-image"><svg aria-hidden="true" width="20" height="20" viewBox="0 0 20 20" fill="none" stroke-width="1.5" stroke="var(--color-fg-primary)" stroke-linecap="round" stroke-linejoin="round" xmlns="http://www.w3.org/2000/svg"><g><path d="M2.53001 7.81595C3.49179 4.73911 6.43281 2.5 9.91173 2.5C13.1684 2.5 15.9537 4.46214 17.0852 7.23684L17.6179 8.67647M17.6179 8.67647L18.5002 4.26471M17.6179 8.67647L13.6473 6.91176M17.4995 12.1841C16.5378 15.2609 13.5967 17.5 10.1178 17.5C6.86118 17.5 4.07589 15.5379 2.94432 12.7632L2.41165 11.3235M2.41165 11.3235L1.5293 15.7353M2.41165 11.3235L6.38224 13.0882"></path></g></svg></button><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container view-image"><svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-maximize2 lucide-maximize-2"><polyline points="15 3 21 3 21 9"></polyline><polyline points="9 21 3 21 3 15"></polyline><line x1="21" x2="14" y1="3" y2="10"></line><line x1="3" x2="10" y1="21" y2="14"></line></svg></button></div></div></div></a></figure></div><p>Big day for the open-source community! Ideogram just dropped their first open-weights foundation model, <strong>Ideogram 4.0</strong>, and it&#8217;s natively supported in ComfyUI on day zero. </p><p>It is a 9.3B parameter text-to-image model trained from scratch. If you have been waiting for an open model that can handle posters, layouts, and readable copy without sending prompts to a closed API, this is the one to try.</p><p class="button-wrapper" data-attrs="{&quot;url&quot;:&quot;https://links.comfy.org/4v91QBf&quot;,&quot;text&quot;:&quot;Try on Comfy Cloud&quot;,&quot;action&quot;:null,&quot;class&quot;:null}" data-component-name="ButtonCreateButton"><a class="button primary" href="https://links.comfy.org/4v91QBf"><span>Try on Comfy Cloud</span></a></p><p class="button-wrapper" data-attrs="{&quot;url&quot;:&quot;https://github.com/Comfy-Org/workflow_templates/blob/main/templates/image_ideogram4_t2i.json&quot;,&quot;text&quot;:&quot;Download Workflow&quot;,&quot;action&quot;:null,&quot;class&quot;:null}" data-component-name="ButtonCreateButton"><a class="button primary" href="https://github.com/Comfy-Org/workflow_templates/blob/main/templates/image_ideogram4_t2i.json"><span>Download Workflow</span></a></p><div><hr></div><h2>Precise control with structured JSON prompting</h2><p>This is where Ideogram 4.0 earns its keep. A plain-text prompt gets you an image; the JSON surface gives you <em>control</em>. Three things you can do that a flat prompt can&#8217;t:</p><ul><li><p><strong>Color palettes</strong>: Up to 16 hex colors per image (5 per element).</p></li><li><p><strong>Bounding-box layout</strong>: <code>[y_min, x_min, y_max, x_max]</code> in 0&#8211;1000 normalized coordinates.</p></li><li><p><strong>Typed text elements</strong>: Literal string to render, plus a separate styling description.</p></li></ul><p><strong>Pro tip:</strong> the more relationships you pin down in the caption (positions, colors, per-element styling) the more grounded the result. The model was trained on exhaustively described scenes, so it rewards specificity.</p><p><strong>JSON Prompt Structure Template:</strong></p><div class="highlighted_code_block" data-attrs="{&quot;language&quot;:&quot;json&quot;,&quot;nodeId&quot;:null}" data-component-name="HighlightedCodeBlockToDOM"><pre class="shiki"><code class="language-json">{
  "high_level_description": "",
  "style_description": {
    "aesthetics": "",
    "lighting": "",
    "photo": "",
    "medium": "",
    "color_palette": []  # hexadecimal values
  },
  "compositional_deconstruction": {
    "background": "",
    "elements": [
      {
        "type": "obj",  # for object
        "bbox": [],  # y_min, x_min, y_max, x_max
        "desc": "",
        "color_palette": []  # hexadecimal values
      },
      {
        "type": "text",  # for text
        "text": "",  # the text to render
        "bbox": [],  # y_min, x_min, y_max, x_max
        "desc": "",
        "color_palette": []  # hexadecimal values
      }
    ]
  }
}</code></pre></div><div><hr></div><h2>Examples</h2><div class="captioned-image-container"><figure><a class="image-link image2 is-viewable-img" target="_blank" href="https://substackcdn.com/image/fetch/$s_!tDCB!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fbf4aefcb-482f-40e6-92f3-4820ef98644d_768x1376.png" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!tDCB!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fbf4aefcb-482f-40e6-92f3-4820ef98644d_768x1376.png 424w, https://substackcdn.com/image/fetch/$s_!tDCB!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fbf4aefcb-482f-40e6-92f3-4820ef98644d_768x1376.png 848w, https://substackcdn.com/image/fetch/$s_!tDCB!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fbf4aefcb-482f-40e6-92f3-4820ef98644d_768x1376.png 1272w, https://substackcdn.com/image/fetch/$s_!tDCB!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fbf4aefcb-482f-40e6-92f3-4820ef98644d_768x1376.png 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!tDCB!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fbf4aefcb-482f-40e6-92f3-4820ef98644d_768x1376.png" width="768" height="1376" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/bf4aefcb-482f-40e6-92f3-4820ef98644d_768x1376.png&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:1376,&quot;width&quot;:768,&quot;resizeWidth&quot;:null,&quot;bytes&quot;:2383391,&quot;alt&quot;:null,&quot;title&quot;:null,&quot;type&quot;:&quot;image/png&quot;,&quot;href&quot;:null,&quot;belowTheFold&quot;:true,&quot;topImage&quot;:false,&quot;internalRedirect&quot;:&quot;https://blog.comfy.org/i/200401655?img=https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fbf4aefcb-482f-40e6-92f3-4820ef98644d_768x1376.png&quot;,&quot;isProcessing&quot;:false,&quot;align&quot;:null,&quot;offset&quot;:false}" class="sizing-normal" alt="" srcset="https://substackcdn.com/image/fetch/$s_!tDCB!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fbf4aefcb-482f-40e6-92f3-4820ef98644d_768x1376.png 424w, https://substackcdn.com/image/fetch/$s_!tDCB!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fbf4aefcb-482f-40e6-92f3-4820ef98644d_768x1376.png 848w, https://substackcdn.com/image/fetch/$s_!tDCB!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fbf4aefcb-482f-40e6-92f3-4820ef98644d_768x1376.png 1272w, https://substackcdn.com/image/fetch/$s_!tDCB!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fbf4aefcb-482f-40e6-92f3-4820ef98644d_768x1376.png 1456w" sizes="100vw" loading="lazy"></picture><div class="image-link-expand"><div class="pencraft pc-display-flex pc-gap-8 pc-reset"><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container restack-image"><svg aria-hidden="true" width="20" height="20" viewBox="0 0 20 20" fill="none" stroke-width="1.5" stroke="var(--color-fg-primary)" stroke-linecap="round" stroke-linejoin="round" xmlns="http://www.w3.org/2000/svg"><g><path d="M2.53001 7.81595C3.49179 4.73911 6.43281 2.5 9.91173 2.5C13.1684 2.5 15.9537 4.46214 17.0852 7.23684L17.6179 8.67647M17.6179 8.67647L18.5002 4.26471M17.6179 8.67647L13.6473 6.91176M17.4995 12.1841C16.5378 15.2609 13.5967 17.5 10.1178 17.5C6.86118 17.5 4.07589 15.5379 2.94432 12.7632L2.41165 11.3235M2.41165 11.3235L1.5293 15.7353M2.41165 11.3235L6.38224 13.0882"></path></g></svg></button><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container view-image"><svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-maximize2 lucide-maximize-2"><polyline points="15 3 21 3 21 9"></polyline><polyline points="9 21 3 21 3 15"></polyline><line x1="21" x2="14" y1="3" y2="10"></line><line x1="3" x2="10" y1="21" y2="14"></line></svg></button></div></div></div></a></figure></div><div class="captioned-image-container"><figure><a class="image-link image2 is-viewable-img" target="_blank" href="https://substackcdn.com/image/fetch/$s_!d61-!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fdcf82ffe-0e0b-4248-8e83-50e0195cbbf2_1456x1456.png" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!d61-!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fdcf82ffe-0e0b-4248-8e83-50e0195cbbf2_1456x1456.png 424w, https://substackcdn.com/image/fetch/$s_!d61-!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fdcf82ffe-0e0b-4248-8e83-50e0195cbbf2_1456x1456.png 848w, https://substackcdn.com/image/fetch/$s_!d61-!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fdcf82ffe-0e0b-4248-8e83-50e0195cbbf2_1456x1456.png 1272w, https://substackcdn.com/image/fetch/$s_!d61-!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fdcf82ffe-0e0b-4248-8e83-50e0195cbbf2_1456x1456.png 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!d61-!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fdcf82ffe-0e0b-4248-8e83-50e0195cbbf2_1456x1456.png" width="1456" height="1456" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/dcf82ffe-0e0b-4248-8e83-50e0195cbbf2_1456x1456.png&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:1456,&quot;width&quot;:1456,&quot;resizeWidth&quot;:null,&quot;bytes&quot;:4568447,&quot;alt&quot;:null,&quot;title&quot;:null,&quot;type&quot;:&quot;image/png&quot;,&quot;href&quot;:null,&quot;belowTheFold&quot;:true,&quot;topImage&quot;:false,&quot;internalRedirect&quot;:&quot;https://blog.comfy.org/i/200401655?img=https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fdcf82ffe-0e0b-4248-8e83-50e0195cbbf2_1456x1456.png&quot;,&quot;isProcessing&quot;:false,&quot;align&quot;:null,&quot;offset&quot;:false}" class="sizing-normal" alt="" srcset="https://substackcdn.com/image/fetch/$s_!d61-!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fdcf82ffe-0e0b-4248-8e83-50e0195cbbf2_1456x1456.png 424w, https://substackcdn.com/image/fetch/$s_!d61-!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fdcf82ffe-0e0b-4248-8e83-50e0195cbbf2_1456x1456.png 848w, https://substackcdn.com/image/fetch/$s_!d61-!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fdcf82ffe-0e0b-4248-8e83-50e0195cbbf2_1456x1456.png 1272w, https://substackcdn.com/image/fetch/$s_!d61-!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fdcf82ffe-0e0b-4248-8e83-50e0195cbbf2_1456x1456.png 1456w" sizes="100vw" loading="lazy"></picture><div class="image-link-expand"><div class="pencraft pc-display-flex pc-gap-8 pc-reset"><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container restack-image"><svg aria-hidden="true" width="20" height="20" viewBox="0 0 20 20" fill="none" stroke-width="1.5" stroke="var(--color-fg-primary)" stroke-linecap="round" stroke-linejoin="round" xmlns="http://www.w3.org/2000/svg"><g><path d="M2.53001 7.81595C3.49179 4.73911 6.43281 2.5 9.91173 2.5C13.1684 2.5 15.9537 4.46214 17.0852 7.23684L17.6179 8.67647M17.6179 8.67647L18.5002 4.26471M17.6179 8.67647L13.6473 6.91176M17.4995 12.1841C16.5378 15.2609 13.5967 17.5 10.1178 17.5C6.86118 17.5 4.07589 15.5379 2.94432 12.7632L2.41165 11.3235M2.41165 11.3235L1.5293 15.7353M2.41165 11.3235L6.38224 13.0882"></path></g></svg></button><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container view-image"><svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-maximize2 lucide-maximize-2"><polyline points="15 3 21 3 21 9"></polyline><polyline points="9 21 3 21 3 15"></polyline><line x1="21" x2="14" y1="3" y2="10"></line><line x1="3" x2="10" y1="21" y2="14"></line></svg></button></div></div></div></a></figure></div><div class="captioned-image-container"><figure><a class="image-link image2 is-viewable-img" target="_blank" href="https://substackcdn.com/image/fetch/$s_!M7nL!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fbbacefc9-1315-43e9-9b6a-903bd76b5230_768x1376.png" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!M7nL!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fbbacefc9-1315-43e9-9b6a-903bd76b5230_768x1376.png 424w, https://substackcdn.com/image/fetch/$s_!M7nL!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fbbacefc9-1315-43e9-9b6a-903bd76b5230_768x1376.png 848w, https://substackcdn.com/image/fetch/$s_!M7nL!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fbbacefc9-1315-43e9-9b6a-903bd76b5230_768x1376.png 1272w, https://substackcdn.com/image/fetch/$s_!M7nL!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fbbacefc9-1315-43e9-9b6a-903bd76b5230_768x1376.png 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!M7nL!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fbbacefc9-1315-43e9-9b6a-903bd76b5230_768x1376.png" width="768" height="1376" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/bbacefc9-1315-43e9-9b6a-903bd76b5230_768x1376.png&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:1376,&quot;width&quot;:768,&quot;resizeWidth&quot;:null,&quot;bytes&quot;:2125318,&quot;alt&quot;:null,&quot;title&quot;:null,&quot;type&quot;:&quot;image/png&quot;,&quot;href&quot;:null,&quot;belowTheFold&quot;:true,&quot;topImage&quot;:false,&quot;internalRedirect&quot;:&quot;https://blog.comfy.org/i/200401655?img=https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fbbacefc9-1315-43e9-9b6a-903bd76b5230_768x1376.png&quot;,&quot;isProcessing&quot;:false,&quot;align&quot;:null,&quot;offset&quot;:false}" class="sizing-normal" alt="" srcset="https://substackcdn.com/image/fetch/$s_!M7nL!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fbbacefc9-1315-43e9-9b6a-903bd76b5230_768x1376.png 424w, https://substackcdn.com/image/fetch/$s_!M7nL!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fbbacefc9-1315-43e9-9b6a-903bd76b5230_768x1376.png 848w, https://substackcdn.com/image/fetch/$s_!M7nL!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fbbacefc9-1315-43e9-9b6a-903bd76b5230_768x1376.png 1272w, https://substackcdn.com/image/fetch/$s_!M7nL!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fbbacefc9-1315-43e9-9b6a-903bd76b5230_768x1376.png 1456w" sizes="100vw" loading="lazy"></picture><div class="image-link-expand"><div class="pencraft pc-display-flex pc-gap-8 pc-reset"><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container restack-image"><svg aria-hidden="true" width="20" height="20" viewBox="0 0 20 20" fill="none" stroke-width="1.5" stroke="var(--color-fg-primary)" stroke-linecap="round" stroke-linejoin="round" xmlns="http://www.w3.org/2000/svg"><g><path d="M2.53001 7.81595C3.49179 4.73911 6.43281 2.5 9.91173 2.5C13.1684 2.5 15.9537 4.46214 17.0852 7.23684L17.6179 8.67647M17.6179 8.67647L18.5002 4.26471M17.6179 8.67647L13.6473 6.91176M17.4995 12.1841C16.5378 15.2609 13.5967 17.5 10.1178 17.5C6.86118 17.5 4.07589 15.5379 2.94432 12.7632L2.41165 11.3235M2.41165 11.3235L1.5293 15.7353M2.41165 11.3235L6.38224 13.0882"></path></g></svg></button><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container view-image"><svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-maximize2 lucide-maximize-2"><polyline points="15 3 21 3 21 9"></polyline><polyline points="9 21 3 21 3 15"></polyline><line x1="21" x2="14" y1="3" y2="10"></line><line x1="3" x2="10" y1="21" y2="14"></line></svg></button></div></div></div></a></figure></div><div class="captioned-image-container"><figure><a class="image-link image2 is-viewable-img" target="_blank" href="https://substackcdn.com/image/fetch/$s_!R31q!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fcb9aec96-25c6-46dd-ad68-a4d204c52d19_1088x1936.png" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!R31q!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fcb9aec96-25c6-46dd-ad68-a4d204c52d19_1088x1936.png 424w, https://substackcdn.com/image/fetch/$s_!R31q!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fcb9aec96-25c6-46dd-ad68-a4d204c52d19_1088x1936.png 848w, https://substackcdn.com/image/fetch/$s_!R31q!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fcb9aec96-25c6-46dd-ad68-a4d204c52d19_1088x1936.png 1272w, https://substackcdn.com/image/fetch/$s_!R31q!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fcb9aec96-25c6-46dd-ad68-a4d204c52d19_1088x1936.png 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!R31q!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fcb9aec96-25c6-46dd-ad68-a4d204c52d19_1088x1936.png" width="1088" height="1936" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/cb9aec96-25c6-46dd-ad68-a4d204c52d19_1088x1936.png&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:1936,&quot;width&quot;:1088,&quot;resizeWidth&quot;:null,&quot;bytes&quot;:3961548,&quot;alt&quot;:null,&quot;title&quot;:null,&quot;type&quot;:&quot;image/png&quot;,&quot;href&quot;:null,&quot;belowTheFold&quot;:true,&quot;topImage&quot;:false,&quot;internalRedirect&quot;:&quot;https://blog.comfy.org/i/200401655?img=https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fcb9aec96-25c6-46dd-ad68-a4d204c52d19_1088x1936.png&quot;,&quot;isProcessing&quot;:false,&quot;align&quot;:null,&quot;offset&quot;:false}" class="sizing-normal" alt="" srcset="https://substackcdn.com/image/fetch/$s_!R31q!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fcb9aec96-25c6-46dd-ad68-a4d204c52d19_1088x1936.png 424w, https://substackcdn.com/image/fetch/$s_!R31q!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fcb9aec96-25c6-46dd-ad68-a4d204c52d19_1088x1936.png 848w, https://substackcdn.com/image/fetch/$s_!R31q!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fcb9aec96-25c6-46dd-ad68-a4d204c52d19_1088x1936.png 1272w, https://substackcdn.com/image/fetch/$s_!R31q!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fcb9aec96-25c6-46dd-ad68-a4d204c52d19_1088x1936.png 1456w" sizes="100vw" loading="lazy"></picture><div class="image-link-expand"><div class="pencraft pc-display-flex pc-gap-8 pc-reset"><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container restack-image"><svg aria-hidden="true" width="20" height="20" viewBox="0 0 20 20" fill="none" stroke-width="1.5" stroke="var(--color-fg-primary)" stroke-linecap="round" stroke-linejoin="round" xmlns="http://www.w3.org/2000/svg"><g><path d="M2.53001 7.81595C3.49179 4.73911 6.43281 2.5 9.91173 2.5C13.1684 2.5 15.9537 4.46214 17.0852 7.23684L17.6179 8.67647M17.6179 8.67647L18.5002 4.26471M17.6179 8.67647L13.6473 6.91176M17.4995 12.1841C16.5378 15.2609 13.5967 17.5 10.1178 17.5C6.86118 17.5 4.07589 15.5379 2.94432 12.7632L2.41165 11.3235M2.41165 11.3235L1.5293 15.7353M2.41165 11.3235L6.38224 13.0882"></path></g></svg></button><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container view-image"><svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-maximize2 lucide-maximize-2"><polyline points="15 3 21 3 21 9"></polyline><polyline points="9 21 3 21 3 15"></polyline><line x1="21" x2="14" y1="3" y2="10"></line><line x1="3" x2="10" y1="21" y2="14"></line></svg></button></div></div></div></a></figure></div><div class="captioned-image-container"><figure><a class="image-link image2 is-viewable-img" target="_blank" href="https://substackcdn.com/image/fetch/$s_!TBeW!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fb0c5bdea-eb05-40e4-b91d-e4d5d43940e3_1936x1088.png" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!TBeW!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fb0c5bdea-eb05-40e4-b91d-e4d5d43940e3_1936x1088.png 424w, https://substackcdn.com/image/fetch/$s_!TBeW!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fb0c5bdea-eb05-40e4-b91d-e4d5d43940e3_1936x1088.png 848w, https://substackcdn.com/image/fetch/$s_!TBeW!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fb0c5bdea-eb05-40e4-b91d-e4d5d43940e3_1936x1088.png 1272w, https://substackcdn.com/image/fetch/$s_!TBeW!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fb0c5bdea-eb05-40e4-b91d-e4d5d43940e3_1936x1088.png 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!TBeW!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fb0c5bdea-eb05-40e4-b91d-e4d5d43940e3_1936x1088.png" width="1456" height="818" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/b0c5bdea-eb05-40e4-b91d-e4d5d43940e3_1936x1088.png&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:818,&quot;width&quot;:1456,&quot;resizeWidth&quot;:null,&quot;bytes&quot;:3727435,&quot;alt&quot;:null,&quot;title&quot;:null,&quot;type&quot;:&quot;image/png&quot;,&quot;href&quot;:null,&quot;belowTheFold&quot;:true,&quot;topImage&quot;:false,&quot;internalRedirect&quot;:&quot;https://blog.comfy.org/i/200401655?img=https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fb0c5bdea-eb05-40e4-b91d-e4d5d43940e3_1936x1088.png&quot;,&quot;isProcessing&quot;:false,&quot;align&quot;:null,&quot;offset&quot;:false}" class="sizing-normal" alt="" srcset="https://substackcdn.com/image/fetch/$s_!TBeW!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fb0c5bdea-eb05-40e4-b91d-e4d5d43940e3_1936x1088.png 424w, https://substackcdn.com/image/fetch/$s_!TBeW!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fb0c5bdea-eb05-40e4-b91d-e4d5d43940e3_1936x1088.png 848w, https://substackcdn.com/image/fetch/$s_!TBeW!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fb0c5bdea-eb05-40e4-b91d-e4d5d43940e3_1936x1088.png 1272w, https://substackcdn.com/image/fetch/$s_!TBeW!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fb0c5bdea-eb05-40e4-b91d-e4d5d43940e3_1936x1088.png 1456w" sizes="100vw" loading="lazy"></picture><div class="image-link-expand"><div class="pencraft pc-display-flex pc-gap-8 pc-reset"><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container restack-image"><svg aria-hidden="true" width="20" height="20" viewBox="0 0 20 20" fill="none" stroke-width="1.5" stroke="var(--color-fg-primary)" stroke-linecap="round" stroke-linejoin="round" xmlns="http://www.w3.org/2000/svg"><g><path d="M2.53001 7.81595C3.49179 4.73911 6.43281 2.5 9.91173 2.5C13.1684 2.5 15.9537 4.46214 17.0852 7.23684L17.6179 8.67647M17.6179 8.67647L18.5002 4.26471M17.6179 8.67647L13.6473 6.91176M17.4995 12.1841C16.5378 15.2609 13.5967 17.5 10.1178 17.5C6.86118 17.5 4.07589 15.5379 2.94432 12.7632L2.41165 11.3235M2.41165 11.3235L1.5293 15.7353M2.41165 11.3235L6.38224 13.0882"></path></g></svg></button><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container view-image"><svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-maximize2 lucide-maximize-2"><polyline points="15 3 21 3 21 9"></polyline><polyline points="9 21 3 21 3 15"></polyline><line x1="21" x2="14" y1="3" y2="10"></line><line x1="3" x2="10" y1="21" y2="14"></line></svg></button></div></div></div></a></figure></div><div class="captioned-image-container"><figure><a class="image-link image2 is-viewable-img" target="_blank" href="https://substackcdn.com/image/fetch/$s_!Vryl!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F77cd7955-8c0c-4dfd-bad2-df7059c41dca_1936x1088.png" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!Vryl!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F77cd7955-8c0c-4dfd-bad2-df7059c41dca_1936x1088.png 424w, https://substackcdn.com/image/fetch/$s_!Vryl!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F77cd7955-8c0c-4dfd-bad2-df7059c41dca_1936x1088.png 848w, https://substackcdn.com/image/fetch/$s_!Vryl!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F77cd7955-8c0c-4dfd-bad2-df7059c41dca_1936x1088.png 1272w, https://substackcdn.com/image/fetch/$s_!Vryl!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F77cd7955-8c0c-4dfd-bad2-df7059c41dca_1936x1088.png 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!Vryl!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F77cd7955-8c0c-4dfd-bad2-df7059c41dca_1936x1088.png" width="1456" height="818" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/77cd7955-8c0c-4dfd-bad2-df7059c41dca_1936x1088.png&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:818,&quot;width&quot;:1456,&quot;resizeWidth&quot;:null,&quot;bytes&quot;:3600490,&quot;alt&quot;:null,&quot;title&quot;:null,&quot;type&quot;:&quot;image/png&quot;,&quot;href&quot;:null,&quot;belowTheFold&quot;:true,&quot;topImage&quot;:false,&quot;internalRedirect&quot;:&quot;https://blog.comfy.org/i/200401655?img=https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F77cd7955-8c0c-4dfd-bad2-df7059c41dca_1936x1088.png&quot;,&quot;isProcessing&quot;:false,&quot;align&quot;:null,&quot;offset&quot;:false}" class="sizing-normal" alt="" srcset="https://substackcdn.com/image/fetch/$s_!Vryl!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F77cd7955-8c0c-4dfd-bad2-df7059c41dca_1936x1088.png 424w, https://substackcdn.com/image/fetch/$s_!Vryl!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F77cd7955-8c0c-4dfd-bad2-df7059c41dca_1936x1088.png 848w, https://substackcdn.com/image/fetch/$s_!Vryl!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F77cd7955-8c0c-4dfd-bad2-df7059c41dca_1936x1088.png 1272w, https://substackcdn.com/image/fetch/$s_!Vryl!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F77cd7955-8c0c-4dfd-bad2-df7059c41dca_1936x1088.png 1456w" sizes="100vw" loading="lazy"></picture><div class="image-link-expand"><div class="pencraft pc-display-flex pc-gap-8 pc-reset"><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container restack-image"><svg aria-hidden="true" width="20" height="20" viewBox="0 0 20 20" fill="none" stroke-width="1.5" stroke="var(--color-fg-primary)" stroke-linecap="round" stroke-linejoin="round" xmlns="http://www.w3.org/2000/svg"><g><path d="M2.53001 7.81595C3.49179 4.73911 6.43281 2.5 9.91173 2.5C13.1684 2.5 15.9537 4.46214 17.0852 7.23684L17.6179 8.67647M17.6179 8.67647L18.5002 4.26471M17.6179 8.67647L13.6473 6.91176M17.4995 12.1841C16.5378 15.2609 13.5967 17.5 10.1178 17.5C6.86118 17.5 4.07589 15.5379 2.94432 12.7632L2.41165 11.3235M2.41165 11.3235L1.5293 15.7353M2.41165 11.3235L6.38224 13.0882"></path></g></svg></button><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container view-image"><svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-maximize2 lucide-maximize-2"><polyline points="15 3 21 3 21 9"></polyline><polyline points="9 21 3 21 3 15"></polyline><line x1="21" x2="14" y1="3" y2="10"></line><line x1="3" x2="10" y1="21" y2="14"></line></svg></button></div></div></div></a></figure></div><div><hr></div><h2>Safety Filtering</h2><p>Ideogram 4.0 ships with its own built-in safety filter that lives inside the model itself, this is <em>not</em> a ComfyUI filter. If a generation gets blocked or returns a blank/refused result, that&#8217;s the model&#8217;s own filter engaging, not anything ComfyUI is adding or controlling. We can&#8217;t tune, disable, or override it from our side, since it&#8217;s baked into the model&#8217;s weights as released by Ideogram. If you hit a block you didn&#8217;t expect, try rephrasing your prompt or adjusting the offending element rather than filing it as a ComfyUI bug.</p><div><hr></div><h2>Getting Started</h2><ol><li><p><strong>Update ComfyUI</strong> to the latest version 0.24.0 (Cloud and Desktop will follow soon)</p></li><li><p>Download the workflow below, or find it in the template library</p></li><li><p>Follow the note in the workflow to download models and save them in the correct model directory</p></li><li><p><strong>Use a natural language prompt or write your prompt in JSON format, then run the workflow</strong></p></li></ol><p class="button-wrapper" data-attrs="{&quot;url&quot;:&quot;https://links.comfy.org/4v91QBf&quot;,&quot;text&quot;:&quot;Try on Comfy Cloud&quot;,&quot;action&quot;:null,&quot;class&quot;:null}" data-component-name="ButtonCreateButton"><a class="button primary" href="https://links.comfy.org/4v91QBf"><span>Try on Comfy Cloud</span></a></p><p class="button-wrapper" data-attrs="{&quot;url&quot;:&quot;https://github.com/Comfy-Org/workflow_templates/blob/main/templates/image_ideogram4_t2i.json&quot;,&quot;text&quot;:&quot;Download Workflow&quot;,&quot;action&quot;:null,&quot;class&quot;:null}" data-component-name="ButtonCreateButton"><a class="button primary" href="https://github.com/Comfy-Org/workflow_templates/blob/main/templates/image_ideogram4_t2i.json"><span>Download Workflow</span></a></p><p>Model weights: &#129303; <a href="https://huggingface.co/Comfy-Org/Ideogram-4">Comfy-Org/Ideogram-4</a><br>GitHub repository: <a href="https://github.com/ideogram-oss/ideogram4">ideogram-oss/ideogram4</a></p><p>As always, enjoy creating!</p><div class="subscription-widget-wrap-editor" data-attrs="{&quot;url&quot;:&quot;https://blog.comfy.org/subscribe?&quot;,&quot;text&quot;:&quot;Subscribe&quot;,&quot;language&quot;:&quot;en&quot;}" data-component-name="SubscribeWidgetToDOM"><div class="subscription-widget show-subscribe"><div class="preamble"><p class="cta-caption">Thanks for reading ComfyUI Blog! Subscribe for free to receive new posts and support my work.</p></div><form class="subscription-widget-subscribe"><input type="email" class="email-input" name="email" placeholder="Type your email&#8230;" tabindex="-1"><input type="submit" class="button primary" value="Subscribe"><div class="fake-input-wrapper"><div class="fake-input"></div><div class="fake-button"></div></div></form></div></div>]]></content:encoded></item><item><title><![CDATA[May Wrapped ]]></title><description><![CDATA[ComfyUI May Wrapped: Everything we Integrated]]></description><link>https://blog.comfy.org/p/may-wrapped</link><guid isPermaLink="false">https://blog.comfy.org/p/may-wrapped</guid><dc:creator><![CDATA[Josiah Villegas]]></dc:creator><pubDate>Mon, 01 Jun 2026 22:18:40 GMT</pubDate><enclosure url="https://substack-post-media.s3.amazonaws.com/public/images/3e6b8b5d-6fa7-40dd-9bd5-20f74fcfa734_1920x1080.png" length="0" type="image/jpeg"/><content:encoded><![CDATA[<p></p><div class="native-video-embed" data-component-name="VideoPlaceholder" data-attrs="{&quot;mediaUploadId&quot;:&quot;aefe84ec-9408-4b0b-ba5a-c96e636aee50&quot;,&quot;duration&quot;:null}"></div><div class="subscription-widget-wrap-editor" data-attrs="{&quot;url&quot;:&quot;https://blog.comfy.org/subscribe?&quot;,&quot;text&quot;:&quot;Subscribe&quot;,&quot;language&quot;:&quot;en&quot;}" data-component-name="SubscribeWidgetToDOM"><div class="subscription-widget show-subscribe"><div class="preamble"><p class="cta-caption">Thanks for reading ComfyUI Blog! Subscribe for free to receive new posts and support my work.</p></div><form class="subscription-widget-subscribe"><input type="email" class="email-input" name="email" placeholder="Type your email&#8230;" tabindex="-1"><input type="submit" class="button primary" value="Subscribe"><div class="fake-input-wrapper"><div class="fake-input"></div><div class="fake-button"></div></div></form></div></div><h3>If you blinked, here&#8217;s the catch-up.</h3><p>In May we integrated 11 new models spanning video, image, 3D, audio, and multimodal.</p><p>Here&#8217;s what&#8217;s new.</p><h3><a href="https://blog.comfy.org/p/krea-2-image-is-now-available-via">Krea 2</a> &#8212; Krea AI &#183; Image &amp; Style Transfer</h3><ul><li><p>Krea&#8217;s first foundation model, live as a ComfyUI Partner Node on day one. Most image models compete on <em>what&#8217;s</em> in the frame. Krea 2 competes on <em>how</em> it looks &#8212; style references, moodboards, and aesthetic range across illustration, anime, photorealism, and beyond.</p></li></ul><h3><a href="https://blog.comfy.org/p/new-open-source-models-now-in-comfyui">Void</a> &#8212; Netflix &#183; Video Object Removal</h3><ul><li><p>Netflix open-sourced VOID (Video Object and Interaction Deletion). Most inpainting tools erase pixels. VOID removes the subject <em>and</em> everything it caused &#8212; shadows, reflections, physical interactions. Apache 2.0, natively supported.</p></li></ul><h3><a href="https://blog.comfy.org/p/new-open-source-models-now-in-comfyui">Tripo 3.1</a> &#8212; Tripo AI &#183; 3D Generation</h3><ul><li><p>Text-to-model, image-to-model, and multiview-to-model in one node. Pair it with TripoSplat and you have a full image-to-3D-Gaussian pipeline, end to end.</p></li></ul><h3><a href="https://blog.comfy.org/p/luma-uni-1-is-now-available-via-partner">Luma UNI-1</a> &#8212; Luma AI &#183; Image Editing</h3><ul><li><p>Not a diffusion model. Luma&#8217;s Uni-1 is a decoder-only autoregressive transformer &#8212; it reasons through your prompt before generating. Stronger reference handling, more precise editing. Create and Modify modes, up to 9 reference images. One of the most architecturally interesting image models of the year</p></li></ul><h3>Claude &#8212; Anthropic &#183; Multimodal</h3><ul><li><p>Claude is now accessible inside ComfyUI. Prompt writing, workflow reasoning, multimodal understanding &#8212; language intelligence anywhere in your pipeline.</p></li></ul><h3>OpenRouter &#183; Text</h3><ul><li><p>Access to 20+ LLM models through a single node. Route to the right model for the right task without leaving your workflow.</p></li></ul><h3><a href="https://blog.comfy.org/p/new-open-source-models-now-in-comfyui">Gemma 4</a> &#8212; Google DeepMind &#183; Multimodal</h3><ul><li><p>Google&#8217;s best open model family yet. Text, image, audio, and video &#8212; runs on a phone or a single GPU. The 31B model sits at #3 on the open Arena leaderboard. Apache 2.0, 256K context window.</p></li></ul><h3><a href="https://blog.comfy.org/p/new-open-source-models-now-in-comfyui">HidDream-O1-Image</a> &#8212; Hidream.ai &#183; Image</h3><ul><li><p>Reasoning-guided image generation. Open source model built on a Pixel-level Unified Transformer (UiT) without external VAEs or disjoint text encoders. Strong on complex compositional prompts where most models fall apart.</p></li></ul><h3><a href="https://blog.comfy.org/p/new-open-source-models-now-in-comfyui">Stable Audio 3</a> &#8212; Stability AI &#183; Audio &amp; SFX</h3><ul><li><p>Text-to-audio covering music, sound effects, and production-ready audio. Your sound design toolkit, now in ComfyUI.</p></li></ul><h3><a href="https://blog.comfy.org/p/new-open-source-models-now-in-comfyui">BiRefNet</a> &#8212; CAAI AIR &#183; Background Removal</h3><p>High-resolution background segmentation. Pairs naturally with VOID &#8212; BiRefNet handles stills, VOID handles motion.</p><h3><a href="https://blog.comfy.org/p/new-open-source-models-now-in-comfyui">MoGe</a> &#8212; Microsoft &#183; 3D Geometry &amp; Depth </h3><ul><li><p>Full 3D geometry from a single image &#8212; point maps, depth, normals, and camera FOV in one forward pass. A CVPR &#8216;25 Oral, now in your toolkit.<br></p></li></ul><h3>ComfyHub is gaining momentum </h3><ul><li><p>Crossed 500+ workflows on the Hub</p></li><li><p>If you haven&#8217;t browsed lately, there&#8217;s a good chance someone already built the workflow you were about to make.</p></li></ul><p></p><p>Stay tuned for June! </p><p></p><div class="subscription-widget-wrap-editor" data-attrs="{&quot;url&quot;:&quot;https://blog.comfy.org/subscribe?&quot;,&quot;text&quot;:&quot;Subscribe&quot;,&quot;language&quot;:&quot;en&quot;}" data-component-name="SubscribeWidgetToDOM"><div class="subscription-widget show-subscribe"><div class="preamble"><p class="cta-caption">Thanks for reading ComfyUI Blog! Subscribe for free to receive new posts and support my work.</p></div><form class="subscription-widget-subscribe"><input type="email" class="email-input" name="email" placeholder="Type your email&#8230;" tabindex="-1"><input type="submit" class="button primary" value="Subscribe"><div class="fake-input-wrapper"><div class="fake-input"></div><div class="fake-button"></div></div></form></div></div><p></p>]]></content:encoded></item><item><title><![CDATA[Bringing Native Support for 3D Gaussian Splats into ComfyUI with TripoSplat]]></title><description><![CDATA[Turn one image into 3D Gaussians in ComfyUI.]]></description><link>https://blog.comfy.org/p/bringing-native-support-for-3d-gaussian</link><guid isPermaLink="false">https://blog.comfy.org/p/bringing-native-support-for-3d-gaussian</guid><dc:creator><![CDATA[Daxiong (Lin)]]></dc:creator><pubDate>Mon, 01 Jun 2026 18:03:51 GMT</pubDate><enclosure url="https://substack-post-media.s3.amazonaws.com/public/images/e21172a6-348a-4064-923b-592e2370b461_900x506.png" length="0" type="image/jpeg"/><content:encoded><![CDATA[<p>We're excited to announce that <strong>TripoSplat</strong>, an open-source model from <a href="https://www.tripo3d.ai">Tripo</a>, is supported on day 0 in ComfyUI. Upload a single image and get a 3D Gaussian asset you can view and use in modern 3D pipelines. </p><p>TripoSplat is especially good at stylized subjects such as characters, props, and creative designs where look and detail matter. Unlike many 3D generators that produce the same amount of detail everywhere, TripoSplat leverages a novel approach for adaptive density control, to put more detail where your image needs it and stay lighter on simple areas, so you get optimal results without wasting file size or rendering cost.</p><p class="button-wrapper" data-attrs="{&quot;url&quot;:&quot;https://github.com/Comfy-Org/workflow_templates/blob/main/templates/3d_triposplat_image_to_gaussian_splat.json&quot;,&quot;text&quot;:&quot;Download Workflow&quot;,&quot;action&quot;:null,&quot;class&quot;:&quot;button-wrapper&quot;}" data-component-name="ButtonCreateButton"><a class="button primary button-wrapper" href="https://github.com/Comfy-Org/workflow_templates/blob/main/templates/3d_triposplat_image_to_gaussian_splat.json"><span>Download Workflow</span></a></p><h2>Highlights</h2><ul><li><p><strong>Open source (MIT):</strong> weights and inference code are available for local runs, customization, and community workflows.</p></li><li><p><strong>One image in, 3D splat out:</strong> no multi-angle photo shoot required.</p></li><li><p><strong>Smarter detail placement:</strong> richer geometry where it counts, simpler where it does not.</p></li><li><p><strong>You choose the detail level:</strong> use fewer Gaussians for background props, more for hero assets, or export several versions for different devices (like level-of-detail in games).</p></li></ul><h2>Where It Fits</h2><ul><li><p><strong>Modern 3D pipelines:</strong> 3D previews for stylized characters, environments, props, and creative designs.</p></li><li><p><strong>3D-to-2D guidance:</strong> block out a 3D concept, product, or scene and render it to guide image or video generation.</p></li><li><p><strong>AR/VR &amp; interactive:</strong> turn a concept image into something you can explore in 3D.</p></li></ul><h2>Examples</h2><div class="native-video-embed" data-component-name="VideoPlaceholder" data-attrs="{&quot;mediaUploadId&quot;:&quot;a29f70fd-88dc-4a5b-8948-f42bcead4383&quot;,&quot;duration&quot;:null}"></div><div class="native-video-embed" data-component-name="VideoPlaceholder" data-attrs="{&quot;mediaUploadId&quot;:&quot;a5363a41-adbf-4f49-a4a4-f2b2e324edc6&quot;,&quot;duration&quot;:null}"></div><div class="native-video-embed" data-component-name="VideoPlaceholder" data-attrs="{&quot;mediaUploadId&quot;:&quot;7c7d0c98-41e1-40a0-8595-454962587671&quot;,&quot;duration&quot;:null}"></div><div class="native-video-embed" data-component-name="VideoPlaceholder" data-attrs="{&quot;mediaUploadId&quot;:&quot;6f385bfa-6532-4f52-9b4a-56fa76b9b67c&quot;,&quot;duration&quot;:null}"></div><h2>Get Started in ComfyUI</h2><ol><li><p>Update ComfyUI to the latest version v0.23.0 (Cloud and Desktop will follow soon)</p></li><li><p>Open the <strong>Template Library</strong> and search for <strong>TripoSplat</strong>.</p></li><li><p>Choose the <strong>TripoSplat</strong> workflow template.</p></li><li><p>Follow the instructions in the template to download the models</p></li><li><p>Upload an image, then run the workflow</p></li></ol><p class="button-wrapper" data-attrs="{&quot;url&quot;:&quot;https://github.com/Comfy-Org/workflow_templates/blob/main/templates/3d_triposplat_image_to_gaussian_splat.json&quot;,&quot;text&quot;:&quot;Download Workflow&quot;,&quot;action&quot;:null,&quot;class&quot;:null}" data-component-name="ButtonCreateButton"><a class="button primary" href="https://github.com/Comfy-Org/workflow_templates/blob/main/templates/3d_triposplat_image_to_gaussian_splat.json"><span>Download Workflow</span></a></p><p>Model weights: &#129303; <a href="https://huggingface.co/VAST-AI/TripoSplat">VAST-AI/TripoSplat</a><br>Inference code:  <a href="https://github.com/VAST-AI-Research/TripoSplat">VAST-AI-Research/TripoSplat</a><br></p><p>We look forward to seeing what you build with TripoSplat.<br>As always, enjoy creating!</p><p>&#8203;</p><div class="subscription-widget-wrap-editor" data-attrs="{&quot;url&quot;:&quot;https://blog.comfy.org/subscribe?&quot;,&quot;text&quot;:&quot;Subscribe&quot;,&quot;language&quot;:&quot;en&quot;}" data-component-name="SubscribeWidgetToDOM"><div class="subscription-widget show-subscribe"><div class="preamble"><p class="cta-caption">Thanks for reading ComfyUI Blog! Subscribe for free to receive new posts and support my work.</p></div><form class="subscription-widget-subscribe"><input type="email" class="email-input" name="email" placeholder="Type your email&#8230;" tabindex="-1"><input type="submit" class="button primary" value="Subscribe"><div class="fake-input-wrapper"><div class="fake-input"></div><div class="fake-button"></div></div></form></div></div>]]></content:encoded></item></channel></rss>