ComfyUI Extension: Overtli Studio Suite
Run ComfyUI workflows without the setup
No installs, no CUDA version roulette, no GPU sitting idle on your bill. Bring a workflow and run it in the browser.
Windows-first advanced suite for Pollinations, LM Studio, Copilot CLI, and OpenAI-compatible multi-engine workflows.
Looking for a different extension?
Custom Nodes (0)
README
OVERTLI STUDIO LLM Suite
Windows-first ComfyUI custom nodes for local and cloud AI generation, featuring a unified advanced router for seamless multi-engine workflows.
<br> <a href="https://pollinations.ai"> <img src="https://img.shields.io/badge/Powered%20by-Pollinations.ai-ff1493?style=for-the-badge&logoColor=white" alt="Powered by Pollinations.ai" /> </a> <a href="https://lmstudio.ai"> <img src="https://img.shields.io/badge/Local%20AI-LM%20Studio-5A5A5A?style=for-the-badge&logoColor=white" alt="LM Studio" /> </a> <a href="https://github.com/features/copilot"> <img src="https://img.shields.io/badge/CLI%20Integration-GitHub%20Copilot-181717?style=for-the-badge&logo=github&logoColor=white" alt="GitHub Copilot" /> </a> </div>🚀 Installation & Quick Start
Installation
-
Navigate to your ComfyUI custom nodes directory and clone this repository:
cd ComfyUI/custom_nodes/ git clone https://github.com/OvertliDS/overtli-studio-suite.git -
Navigate into the cloned folder and install the required dependencies using your ComfyUI Python environment:
cd overtli-studio-suite pip install -r requirements.txt -
Restart ComfyUI.
Quick Start Workflow
You can find the nodes by simply searching for "Overtli".
- Add the
GZ_ProviderSettingsnode and save your keys or URLs once. - Add the
GZ_AdvancedTextEnhancerorGZ_LLMTextEnhancernode. - Choose your
providerandactive_engine. - Connect optional
IMAGEorAUDIOinputs when needed. - Execute and use the native output directly in your workflow.
Use With Existing ComfyUI Workflows (CLIP Text Encode)
You can use OVERTLI as a drop-in prompt enhancer without rebuilding your graph.
- Add any text-capable OVERTLI node (for example
GZ_TextEnhancer,GZ_LLMTextEnhancer, orGZ_AdvancedTextEnhancerwithactive_engine = text). - Connect the node's
STRINGoutput to your existing CLIP Text Encode nodetextinput. - Keep the rest of your workflow unchanged (sampler, model, VAE, etc.).
This lets you enhance or rewrite any prompt while still using your current ComfyUI pipeline.
Example Workflow
For users who want a sample workflow with Flux2Klein 9B GGUF, use workflows/OvertliStudioSuite_x_Flux2Klein9B-GGUF.json from this repo.
✨ Core Capabilities
- Unified Advanced Routing: Manage multi-engine workflows through a single, powerful provider node.
- Native Media Contracts: Full support for standard ComfyUI output types.
AUDIOfor text-to-speech and text-to-music generation.VIDEOfor video generation capabilities.- The Advanced Router dynamically returns
STRING + IMAGE + VIDEO + AUDIO.
- Native Previews: Fully integrated with ComfyUI’s native image and text preview rendering.
🧩 Registered Nodes
| Node | Purpose | Supports |
| :--- | :--- | :--- |
| ⚡ GZ_AdvancedTextEnhancer | (Recommended) Unified provider/engine router. | Provider-aware engine routing: text, image, video, text_to_speech, speech_to_text, text_to_music with validation. |
| 🔌 GZ_OpenAICompatibleTextEnhancer | Dedicated OpenAI-compatible all-engines node. | text, image_gen, video_gen, text_to_speech_gen, speech_to_text_gen, text_to_music_gen through OpenAI-compatible APIs. |
| 📝 GZ_TextEnhancer | Pollinations text and optional vision enhancement. | Pollinations text generation, optional vision image context, grouped mode presets. |
| 🎨 GZ_ImageGen | Pollinations image generation. | Pollinations image generation models. |
| 🎬 GZ_VideoGen | Pollinations video generation. | Pollinations video generation models (VIDEO output). |
| 🗣️ GZ_TextToSpeech | Pollinations speech generation. | Pollinations text-to-speech models (AUDIO output). |
| 🎧 GZ_SpeechToText | Pollinations speech transcription. | Pollinations speech-to-text models (STRING transcript output). |
| 🎵 GZ_TextToAudio | Pollinations text-to-music generation. | Pollinations text-to-music generation (AUDIO output). |
| 🖥️ GZ_LLMTextEnhancer| (Recommended for local) Local/OpenAI-compatible text+vision route (LM Studio, Ollama, similar endpoints). | Text generation with optional image context over local/OpenAI-compatible chat endpoints. |
| 🤖 GZ_CopilotAgent | GitHub Copilot CLI route. | Copilot CLI text generation with optional image attachment context. |
| ⚙️ GZ_ProviderSettings | Persisted provider settings helper. | Save/load provider model, endpoint, and API key settings for this suite. |
| 📚 GZ_PromptLibraryNode | Prompt library CRUD/refresh utility. | Prompt management and reusable preset selection. |
| 🥞 GZ_StyleStackNode | Reusable style stack utility. | Composable style bundles for prompt layering across nodes. |
🌐 Provider Coverage
✨ Pollinations.ai
Full support for text, image, video, text-to-speech, speech-to-text, and text-to-music.
🖥️ LM Studio
Local text generation with optional image context for vision-capable local models.
🤖 GitHub Copilot CLI
Local CLI-based text enhancement with optional image context.
🔌 OpenAI-Compatible APIs
Available through both:
GZ_OpenAICompatibleTextEnhancer(dedicated node)GZ_AdvancedTextEnhancerwithprovider = openai_compatible
Supported engines:
textimagevideotext_to_speechspeech_to_texttext_to_music
Note: exact modality availability still depends on the target OpenAI-compatible provider and selected model. The suite now exposes these engines with explicit runtime validation and terminal-visible errors when a provider/model endpoint cannot satisfy a request.
🔑 Provider Setup & Authentication
The Overtli Studio Suite is designed to be as "zero-config" as possible, supporting cloud, local, and standard API protocols.
✨ Pollinations.ai (Cloud)
API Key: Visit enter.pollinations.ai to generate your key.
Setup: Enter your key into the GZ_ProviderSettings node or set the GZ_POLLINATIONS_API_KEY environment variable, as well as support in Pollinations nodes to enter api key directly.
Pricing: Free tagged models allow free generations, but pollen usage is determined based on your free plan tier within enter.pollinations.ai so aim to reach higher tiers for more free generations or top up using gems while waiting for your pollen to reset. Paid models are supported as well if gems have been purchased.
🤖 GitHub Copilot CLI (Cloud/Local Hybrid)
Auto-Detection: If you are already signed in via the GitHub CLI (gh auth login), Overtli will automatically detect your session and "just work."
Prerequisites: Requires an active Copilot subscription and the GitHub CLI installed (It will open a copilot-cli terminal silently by default for communication).
Vision/Image context: OVERTLI writes Comfy IMAGE inputs to temporary local files and references them with Copilot CLI @path attachment syntax so vision-capable models receive the actual image bytes.
Background behavior: Copilot auth recovery and vision-cache retry handling are managed automatically in the background so the node surface stays simple. With vision_enabled on, prior runtime vision-cache entries do not silently block new image attempts by default.
🖥️ LM Studio (Local)
Host: Defaults to http://localhost:1234.
Setup: Ensure LM Studio is running and the "Local Server" is started. No API key is required by default.
Vision: Support for vision-capable local models is integrated directly into the GZ_LLMTextEnhancer.
🔌 OpenAI-Compatible APIs (Custom)
Flexibility: Use any provider that supports the OpenAI standard (e.g., Groq, Together AI, LocalAI).
Setup: Requires a Base URL and API Key configured in the GZ_ProviderSettings node (or just use the GZ_AdvancedTextEnhancer or GZ_LLMTextEnhancer node).
🧠 Prompting & Output Contracts
The Composition Model
All primary routes follow the same strict sequence:
- Custom Instructions
- Selected Mode Preset
- Raw Prompt (User Prompt)
- Style Layers (
style_preset_1..3+additional_styles)
💡 Tip: The
additional_stylesinput is socket-first (forceInput) and is designed to chain seamlessly from theGZ_StyleStackNode.
Quick Instruction Modes Overview
Instruction presets are grouped by task family and can be toggled on/off per route.
At-a-glance preset counts (current build):
-
Total instruction presets: 63 (excluding
Offoptions) -
Text: 14
-
Image: 24 (4 vision + 10 generation + 6 editing + 4 narrative)
-
Video: 11 (8 generation + 3 analysis)
-
TTS: 8
-
Text-to-Audio: 3
-
Speech-to-Text: 3
-
Text modes: examples include
Enhance(expand a short idea into a richer prompt),Refine(tighten wording while preserving intent), andTranslation Prompt(convert to generation-ready English). -
Image modes: examples include
Tags(comma-separated visual tags),Simple Description(single concise visual description),Concept Art(design-forward scene direction), andUpscale Image Prompt(detail-preserving enhancement guidance). -
Video modes: examples include
Cinematic Video Prompt(film-style motion direction),Loop Video Prompt(seamless repeating motion guidance), andVideo Summary(chronological visual recap of footage). -
TTS modes: examples include
Voiceover Script(clean narration pacing for speech synthesis),Character Voice(expressive dialogue delivery), andSSML Enhancement(markup-driven timing and emphasis control). -
Text-to-Audio modes: examples include
Audio Prompt Enhance(clarify generation intent),Music Direction(genre/instrument/energy guidance), andAmbience and Foley(layered environmental sound design). -
Speech-to-Text modes: examples include
Clean Transcript(readability cleanup while preserving meaning),Punctuation and Casing(restore sentence structure), andStructured Notes(concise key points and actions).
If a mode is set to Off, the route relies on custom instructions + raw prompt + style layers.
Only enable ONE instruction group
Quick Style Layering Overview
-
Built-in style library: 656 presets (+
Offoption) -
Built-in style slots: up to 3 per primary node (
style_preset_1..3). -
Extended style stack: connect
additional_stylesfromGZ_StyleStackNodefor up to 7 extra styles. -
Total style layers available: up to 10 (3 built-in + 7 stacked).
Style examples (brief):
- Photograph (Real Life): grounded, natural realism with real lens/lighting behavior.
- Cinematic Still: film-like framing, layered depth, and motivated key/fill/rim lighting.
- Anime Illustration: expressive line work, controlled cel-shading, and clean silhouette readability.
- Line Art (Clean): minimal contour-focused visuals with crisp outlines and low noise.
- Concept Art: production-style world/design visualization with clear value hierarchy.
Output Contracts
| Route Type | Native ComfyUI Output |
| :--- | :--- |
| Text | STRING |
| Image | IMAGE |
| Video | VIDEO |
| Audio-producing | AUDIO |
| Advanced Router | STRING, IMAGE, VIDEO, AUDIO |
⚙️ Settings and Precedence
Persistent settings are stored locally in:
ComfyUI/user/overtli_studio_settings.json
Resolution Precedence:
- Runtime node input (Highest priority)
- Environment variable
- Persisted settings
- Suite default (Lowest priority)
GZ_POLLINATIONS_API_KEYGZ_POLLINATIONS_CHAT_TIMEOUTGZ_POLLINATIONS_IMAGE_TIMEOUTGZ_POLLINATIONS_VIDEO_TIMEOUTGZ_POLLINATIONS_TTS_TIMEOUTGZ_POLLINATIONS_STT_TIMEOUTGZ_POLLINATIONS_AUDIO_TIMEOUTGZ_LMSTUDIO_HOSTGZ_LMSTUDIO_PORTGZ_LMSTUDIO_API_KEYGZ_COPILOT_EXECUTABLEGZ_COPILOT_MODELGZ_COPILOT_TIMEOUTGZ_OPENAI_COMPAT_BASE_URLGZ_OPENAI_COMPAT_API_KEYGZ_OPENAI_COMPAT_MODELGZ_LOG_LEVELGZ_TEMP_DIR
🧯 Troubleshooting
OpenAI-compatible route does not appear in the node list You should see both:
GZ_OpenAICompatibleTextEnhancer(dedicated node), andGZ_AdvancedTextEnhancerwithprovider = openai_compatible.
If they are missing, restart ComfyUI and confirm this custom node folder is loaded without import errors.
STT fails with missing input
GZ_SpeechToText requires an AUDIO input connection to function.
Video generation blocks the UI That is expected for synchronous provider-side video generation. The UI will resume once rendering is complete.
LM Studio/Ollama does not return models Make sure LM Studio/Ollama is running and exposing its API endpoint correctly.
Copilot route fails unexpectedly Check that:
- GitHub Copilot CLI is installed and reachable.
- The configured executable path is correct if adjusted manually.
- Your authentication session is valid.
- Environment token overrides are not conflicting.
🤝 Support & Funding
If this suite accelerates your workflow, consider supporting the continued development of Overtli tools and other projects using the GitHub Sponsor link on the repository sidebar.
📄 License
MIT. See LICENSE.
Run ComfyUI workflows without the setup
No installs, no CUDA version roulette, no GPU sitting idle on your bill. Bring a workflow and run it in the browser.