VRGDG ChatGPT Images Browser
ChatGPT image generation inside ComfyUI — no API key, just a real browser
- image1
- image2
- image3
- image4
- image5
- image6
- image7
- image8
- image9
- image10
- image11
- image12
- image13
- image14
- image15
- image16
- image17
- image18
- image19
- image20
- image21
- image22
- image23
- image24
- image25
- image26
- image27
- image28
- image29
- image30
- image31
- image32
- image33
- image34
- image35
- image36
- image37
- image38
- image39
- image40
- image41
- image42
- image43
- image44
- image45
- image46
- image47
- image48
- image49
- image50
- image
Let's get the obvious thing out of the way first: this node does not call an OpenAI API and you don't need a key. VRGDG ChatGPT Images Browser is browser automation. It opens a real Chrome window, signs into chatgpt.com, pastes your prompt into ChatGPT's image tool, and downloads the result back into ComfyUI as a normal IMAGE tensor. It's part of VRGameDevGirl's bigger video-production pack (the one whose flagship is the LTX 2.3 AI Video Builder), and it exists so you can feed OpenAI-quality generated or edited images into a ComfyUI graph without ever leaving the canvas.
Why bother? Because for certain jobs - strong prompt adherence, editing a reference into something specific, a quick style pass on a character shot - ChatGPT's image model is genuinely good, and none of that is available locally. This node hands the image straight to your workflow, which is exactly what you want when you're assembling scene images for a video project and don't want to tab out, generate, download, and drag the file back in.
How it works
The mechanism is a small Node.js/Playwright script (same machinery as the Flow browser nodes) talking to a Chrome instance launched with remote debugging enabled. It uses a separate port, 9223, so it never collides with the Flow node's 9222. It also uses its own Chrome profile, chrome-chatgpt-profile, which is why you sign into ChatGPT once and stay signed in.
prompt- the text pasted into ChatGPT Images. Multiline.image_count- how many of theimage1–image50sockets this run reads, starting at image1. 0 means text-only generation. If you connect images, raise this to match.debug_port- the remote-debugging port. Leave 9223 unless something else took it.timeout_seconds- how long ComfyUI waits before giving up. Default 600; raise it for slow generations or big uploads.reuse_open_project- on by default, so automation reuses the current ChatGPT tab instead of navigating back to the images start page for every image.
The optional image1–image50 inputs attach reference images through ChatGPT's paperclip before the prompt is submitted. The single output is the downloaded image as an IMAGE, which plugs straight into whatever comes next.
Installing it
This is a two-step setup, and the second step catches people out. First install the pack itself - Manager, search vrgamedev, or:
cd ComfyUI/custom_nodes
git clone https://github.com/vrgamegirl19/comfyui-vrgamedevgirl.git
Restart ComfyUI and hard refresh the browser. The pack's requirements.txt is heavy (transformers, opencv, and the notorious voxcpm/llama-cpp-python builds); on the Windows portable build, run the pip tooling commands from the README first. Python 3.12 is the safer environment.
Then the part people forget: run the VRGDG Flow Browser Setup node once (or npm install in the flow_automation folder manually). That node installs Node.js and the Playwright dependency this automation needs. Chrome must also be installed - automation drives a real browser, it can't conjure one.
Common issues
- It does nothing / errors on launch. Almost always the setup node hasn't been run, so Playwright isn't installed. Run it once and let it finish.
- "Not signed in." The automation drives its own
chrome-chatgpt-profile. You have to sign into chatgpt.com in that profile - the launcher.batfiles inflow_automation/open it for you (Windows). - Socket inputs ignored.
image_countcontrols how many image sockets exist. If you connect an image but leave it at 0, it's not read. - Slow generations timing out. Bump
timeout_seconds; 600 is plenty for a normal gen, not for a multi-image edit on a bad day.
One honest caveat: this is a nice-to-have utility, not a daily driver for most people. It's fragile in the way all browser automation is - ChatGPT changes its UI and the script has to catch up. Use it for the occasional image you want in your graph, and don't build your whole pipeline on it.
Inputs (55)
| Name | Type | Default | Description |
|---|---|---|---|
| prompt | STRING | create a cinematic image | Prompt to paste into ChatGPT Images. Connected images are attached first, then this prompt is submitted. |
| image_count | INT | 00–50 | How many image sockets this run should attach, starting at image1. Use 0 for text-only generation. |
| debug_port | INT | 92231–65535 | Local Chrome remote-debugging port for ChatGPT Images automation. Default 9223 keeps it separate from the Flow node's 9222 port. |
| timeout_seconds | INT | 60060–2400 | Maximum time to let ChatGPT create and download the image. Increase for slow generations. |
| image1opt | IMAGE | Optional image attachment #1. Set image_count high enough to include this socket. Images are attached to ChatGPT through the paperclip before the prompt is submitted. | |
| image2opt | IMAGE | Optional image attachment #2. Set image_count high enough to include this socket. Images are attached to ChatGPT through the paperclip before the prompt is submitted. | |
| image3opt | IMAGE | Optional image attachment #3. Set image_count high enough to include this socket. Images are attached to ChatGPT through the paperclip before the prompt is submitted. | |
| image4opt | IMAGE | Optional image attachment #4. Set image_count high enough to include this socket. Images are attached to ChatGPT through the paperclip before the prompt is submitted. | |
| image5opt | IMAGE | Optional image attachment #5. Set image_count high enough to include this socket. Images are attached to ChatGPT through the paperclip before the prompt is submitted. | |
| image6opt | IMAGE | Optional image attachment #6. Set image_count high enough to include this socket. Images are attached to ChatGPT through the paperclip before the prompt is submitted. | |
| image7opt | IMAGE | Optional image attachment #7. Set image_count high enough to include this socket. Images are attached to ChatGPT through the paperclip before the prompt is submitted. | |
| image8opt | IMAGE | Optional image attachment #8. Set image_count high enough to include this socket. Images are attached to ChatGPT through the paperclip before the prompt is submitted. | |
| image9opt | IMAGE | Optional image attachment #9. Set image_count high enough to include this socket. Images are attached to ChatGPT through the paperclip before the prompt is submitted. | |
| image10opt | IMAGE | Optional image attachment #10. Set image_count high enough to include this socket. Images are attached to ChatGPT through the paperclip before the prompt is submitted. | |
| image11opt | IMAGE | Optional image attachment #11. Set image_count high enough to include this socket. Images are attached to ChatGPT through the paperclip before the prompt is submitted. | |
| image12opt | IMAGE | Optional image attachment #12. Set image_count high enough to include this socket. Images are attached to ChatGPT through the paperclip before the prompt is submitted. | |
| image13opt | IMAGE | Optional image attachment #13. Set image_count high enough to include this socket. Images are attached to ChatGPT through the paperclip before the prompt is submitted. | |
| image14opt | IMAGE | Optional image attachment #14. Set image_count high enough to include this socket. Images are attached to ChatGPT through the paperclip before the prompt is submitted. | |
| image15opt | IMAGE | Optional image attachment #15. Set image_count high enough to include this socket. Images are attached to ChatGPT through the paperclip before the prompt is submitted. | |
| image16opt | IMAGE | Optional image attachment #16. Set image_count high enough to include this socket. Images are attached to ChatGPT through the paperclip before the prompt is submitted. | |
| image17opt | IMAGE | Optional image attachment #17. Set image_count high enough to include this socket. Images are attached to ChatGPT through the paperclip before the prompt is submitted. | |
| image18opt | IMAGE | Optional image attachment #18. Set image_count high enough to include this socket. Images are attached to ChatGPT through the paperclip before the prompt is submitted. | |
| image19opt | IMAGE | Optional image attachment #19. Set image_count high enough to include this socket. Images are attached to ChatGPT through the paperclip before the prompt is submitted. | |
| image20opt | IMAGE | Optional image attachment #20. Set image_count high enough to include this socket. Images are attached to ChatGPT through the paperclip before the prompt is submitted. | |
| image21opt | IMAGE | Optional image attachment #21. Set image_count high enough to include this socket. Images are attached to ChatGPT through the paperclip before the prompt is submitted. | |
| image22opt | IMAGE | Optional image attachment #22. Set image_count high enough to include this socket. Images are attached to ChatGPT through the paperclip before the prompt is submitted. | |
| image23opt | IMAGE | Optional image attachment #23. Set image_count high enough to include this socket. Images are attached to ChatGPT through the paperclip before the prompt is submitted. | |
| image24opt | IMAGE | Optional image attachment #24. Set image_count high enough to include this socket. Images are attached to ChatGPT through the paperclip before the prompt is submitted. | |
| image25opt | IMAGE | Optional image attachment #25. Set image_count high enough to include this socket. Images are attached to ChatGPT through the paperclip before the prompt is submitted. | |
| image26opt | IMAGE | Optional image attachment #26. Set image_count high enough to include this socket. Images are attached to ChatGPT through the paperclip before the prompt is submitted. | |
| image27opt | IMAGE | Optional image attachment #27. Set image_count high enough to include this socket. Images are attached to ChatGPT through the paperclip before the prompt is submitted. | |
| image28opt | IMAGE | Optional image attachment #28. Set image_count high enough to include this socket. Images are attached to ChatGPT through the paperclip before the prompt is submitted. | |
| image29opt | IMAGE | Optional image attachment #29. Set image_count high enough to include this socket. Images are attached to ChatGPT through the paperclip before the prompt is submitted. | |
| image30opt | IMAGE | Optional image attachment #30. Set image_count high enough to include this socket. Images are attached to ChatGPT through the paperclip before the prompt is submitted. | |
| image31opt | IMAGE | Optional image attachment #31. Set image_count high enough to include this socket. Images are attached to ChatGPT through the paperclip before the prompt is submitted. | |
| image32opt | IMAGE | Optional image attachment #32. Set image_count high enough to include this socket. Images are attached to ChatGPT through the paperclip before the prompt is submitted. | |
| image33opt | IMAGE | Optional image attachment #33. Set image_count high enough to include this socket. Images are attached to ChatGPT through the paperclip before the prompt is submitted. | |
| image34opt | IMAGE | Optional image attachment #34. Set image_count high enough to include this socket. Images are attached to ChatGPT through the paperclip before the prompt is submitted. | |
| image35opt | IMAGE | Optional image attachment #35. Set image_count high enough to include this socket. Images are attached to ChatGPT through the paperclip before the prompt is submitted. | |
| image36opt | IMAGE | Optional image attachment #36. Set image_count high enough to include this socket. Images are attached to ChatGPT through the paperclip before the prompt is submitted. | |
| image37opt | IMAGE | Optional image attachment #37. Set image_count high enough to include this socket. Images are attached to ChatGPT through the paperclip before the prompt is submitted. | |
| image38opt | IMAGE | Optional image attachment #38. Set image_count high enough to include this socket. Images are attached to ChatGPT through the paperclip before the prompt is submitted. | |
| image39opt | IMAGE | Optional image attachment #39. Set image_count high enough to include this socket. Images are attached to ChatGPT through the paperclip before the prompt is submitted. | |
| image40opt | IMAGE | Optional image attachment #40. Set image_count high enough to include this socket. Images are attached to ChatGPT through the paperclip before the prompt is submitted. | |
| image41opt | IMAGE | Optional image attachment #41. Set image_count high enough to include this socket. Images are attached to ChatGPT through the paperclip before the prompt is submitted. | |
| image42opt | IMAGE | Optional image attachment #42. Set image_count high enough to include this socket. Images are attached to ChatGPT through the paperclip before the prompt is submitted. | |
| image43opt | IMAGE | Optional image attachment #43. Set image_count high enough to include this socket. Images are attached to ChatGPT through the paperclip before the prompt is submitted. | |
| image44opt | IMAGE | Optional image attachment #44. Set image_count high enough to include this socket. Images are attached to ChatGPT through the paperclip before the prompt is submitted. | |
| image45opt | IMAGE | Optional image attachment #45. Set image_count high enough to include this socket. Images are attached to ChatGPT through the paperclip before the prompt is submitted. | |
| image46opt | IMAGE | Optional image attachment #46. Set image_count high enough to include this socket. Images are attached to ChatGPT through the paperclip before the prompt is submitted. | |
| image47opt | IMAGE | Optional image attachment #47. Set image_count high enough to include this socket. Images are attached to ChatGPT through the paperclip before the prompt is submitted. | |
| image48opt | IMAGE | Optional image attachment #48. Set image_count high enough to include this socket. Images are attached to ChatGPT through the paperclip before the prompt is submitted. | |
| image49opt | IMAGE | Optional image attachment #49. Set image_count high enough to include this socket. Images are attached to ChatGPT through the paperclip before the prompt is submitted. | |
| image50opt | IMAGE | Optional image attachment #50. Set image_count high enough to include this socket. Images are attached to ChatGPT through the paperclip before the prompt is submitted. | |
| reuse_open_projectopt | BOOLEAN | true | When enabled, non-manual automation reuses the current ChatGPT Images tab/conversation instead of navigating back to the images start page for every image. |
Outputs (1)
| Name | Type | Description |
|---|---|---|
| image | IMAGE | — |