Adds a sample graph users can load to see how the custom nodes connect to core nodes and an embedded canvas preview for discovery. Made-with: Cursor
767 lines
14 KiB
JSON
767 lines
14 KiB
JSON
{
|
||
"id": "7e411212-0e3b-4f06-86f6-044d2c5cc028",
|
||
"revision": 0,
|
||
"last_node_id": 42,
|
||
"last_link_id": 55,
|
||
"nodes": [
|
||
{
|
||
"id": 29,
|
||
"type": "LoadImage",
|
||
"pos": [
|
||
2200,
|
||
450
|
||
],
|
||
"size": [
|
||
300,
|
||
375
|
||
],
|
||
"flags": {},
|
||
"order": 0,
|
||
"mode": 0,
|
||
"inputs": [],
|
||
"outputs": [
|
||
{
|
||
"name": "IMAGE",
|
||
"type": "IMAGE",
|
||
"links": [
|
||
34
|
||
]
|
||
},
|
||
{
|
||
"name": "MASK",
|
||
"type": "MASK",
|
||
"links": null
|
||
}
|
||
],
|
||
"properties": {
|
||
"cnr_id": "comfy-core",
|
||
"ver": "0.18.1",
|
||
"Node name for S&R": "LoadImage"
|
||
},
|
||
"widgets_values": [
|
||
"fox.png",
|
||
"image"
|
||
]
|
||
},
|
||
{
|
||
"id": 24,
|
||
"type": "SimpleOllamaConnectionNode",
|
||
"pos": [
|
||
2600,
|
||
475
|
||
],
|
||
"size": [
|
||
400,
|
||
100
|
||
],
|
||
"flags": {},
|
||
"order": 1,
|
||
"mode": 0,
|
||
"inputs": [],
|
||
"outputs": [
|
||
{
|
||
"name": "ollama_url",
|
||
"type": "STRING",
|
||
"links": [
|
||
27,
|
||
42
|
||
]
|
||
}
|
||
],
|
||
"properties": {
|
||
"cnr_id": "comfyui-simple-ollama",
|
||
"ver": "ce6ee6b98f94d466e91f387fbd44b95ae28dd777",
|
||
"Node name for S&R": "SimpleOllamaConnectionNode"
|
||
},
|
||
"widgets_values": [
|
||
"http://localhost:1337",
|
||
null
|
||
],
|
||
"color": "#233",
|
||
"bgcolor": "#355"
|
||
},
|
||
{
|
||
"id": 37,
|
||
"type": "PreviewAny",
|
||
"pos": [
|
||
4600,
|
||
625
|
||
],
|
||
"size": [
|
||
400,
|
||
625
|
||
],
|
||
"flags": {},
|
||
"order": 13,
|
||
"mode": 0,
|
||
"inputs": [
|
||
{
|
||
"name": "source",
|
||
"type": "*",
|
||
"link": 44
|
||
}
|
||
],
|
||
"outputs": [],
|
||
"title": "response preview",
|
||
"properties": {
|
||
"cnr_id": "comfy-core",
|
||
"ver": "0.18.1",
|
||
"Node name for S&R": "PreviewAny"
|
||
},
|
||
"widgets_values": [
|
||
null,
|
||
null,
|
||
null
|
||
]
|
||
},
|
||
{
|
||
"id": 36,
|
||
"type": "Reroute",
|
||
"pos": [
|
||
3925,
|
||
475
|
||
],
|
||
"size": [
|
||
75,
|
||
26
|
||
],
|
||
"flags": {},
|
||
"order": 3,
|
||
"mode": 0,
|
||
"inputs": [
|
||
{
|
||
"name": "",
|
||
"type": "*",
|
||
"link": 42
|
||
}
|
||
],
|
||
"outputs": [
|
||
{
|
||
"name": "",
|
||
"type": "STRING",
|
||
"links": [
|
||
43
|
||
]
|
||
}
|
||
],
|
||
"properties": {
|
||
"showOutputText": false,
|
||
"horizontal": false
|
||
}
|
||
},
|
||
{
|
||
"id": 33,
|
||
"type": "Reroute",
|
||
"pos": [
|
||
3100,
|
||
525
|
||
],
|
||
"size": [
|
||
75,
|
||
26
|
||
],
|
||
"flags": {},
|
||
"order": 8,
|
||
"mode": 0,
|
||
"inputs": [
|
||
{
|
||
"name": "",
|
||
"type": "*",
|
||
"widget": {
|
||
"name": "value"
|
||
},
|
||
"link": 38
|
||
}
|
||
],
|
||
"outputs": [
|
||
{
|
||
"name": "",
|
||
"type": "STRING",
|
||
"links": [
|
||
55
|
||
]
|
||
}
|
||
],
|
||
"properties": {
|
||
"showOutputText": false,
|
||
"horizontal": false
|
||
}
|
||
},
|
||
{
|
||
"id": 23,
|
||
"type": "SimpleOllamaNode",
|
||
"pos": [
|
||
2600,
|
||
625
|
||
],
|
||
"size": [
|
||
400,
|
||
625
|
||
],
|
||
"flags": {},
|
||
"order": 5,
|
||
"mode": 0,
|
||
"inputs": [
|
||
{
|
||
"name": "ollama_url_override",
|
||
"shape": 7,
|
||
"type": "STRING",
|
||
"link": 27
|
||
},
|
||
{
|
||
"name": "image",
|
||
"shape": 7,
|
||
"type": "IMAGE",
|
||
"link": 36
|
||
}
|
||
],
|
||
"outputs": [
|
||
{
|
||
"name": "response",
|
||
"type": "STRING",
|
||
"links": [
|
||
31,
|
||
38
|
||
]
|
||
},
|
||
{
|
||
"name": "thinking",
|
||
"type": "STRING",
|
||
"links": [
|
||
32
|
||
]
|
||
},
|
||
{
|
||
"name": "prompt_text",
|
||
"type": "STRING",
|
||
"links": []
|
||
}
|
||
],
|
||
"properties": {
|
||
"cnr_id": "comfyui-simple-ollama",
|
||
"ver": "ce6ee6b98f94d466e91f387fbd44b95ae28dd777",
|
||
"Node name for S&R": "SimpleOllamaNode"
|
||
},
|
||
"widgets_values": [
|
||
"http://localhost:1337",
|
||
"huihui_ai/gemma-4-abliterated:e2b",
|
||
null,
|
||
null,
|
||
"Make the fox chase the owl. Keep the style.",
|
||
42,
|
||
"fixed",
|
||
1024,
|
||
0.7,
|
||
5,
|
||
true,
|
||
"You are an expert prompt engineer for Google's Nano Banana image model. Create a single, detailed text‑to‑image prompt that seamlessly combines two subjects or concepts into one unified scene, not a collage. Use this structure and fill it with specific, visual details:\n\nFusion concept: Clearly describe how Subject A and Subject B are merged or interact as one coherent idea or object.\n\nSubject & details: Physical appearance, key attributes from both subjects, and how they visually blend.\n\nAction: What is happening in the scene.\n\nSetting & environment: Place, time of day, background elements that support the fusion.\n\nComposition & camera: Shot type (close‑up, medium, wide), angle (eye‑level, low, high), lens feel (e.g., 35mm, 85mm), aspect ratio if important.\n\nLighting & mood: Type of light, color temperature, atmosphere, emotional tone.\n\nStyle & quality: Photo/3D/illustration/anime, level of realism, level of detail, any style references.\n\nConstraints (optional): What to avoid (e.g., “no text”, “no extra characters”).\nOutput only the final Nano Banana prompt text, no explanations.\nInsert the two user‑provided concepts wherever appropriate as [SUBJECT A] and [SUBJECT B], and make sure the result reads like a natural prompt without brackets. Aim for 3–6 descriptive sentences, not a keyword list.\n\n"
|
||
],
|
||
"color": "#233",
|
||
"bgcolor": "#355"
|
||
},
|
||
{
|
||
"id": 32,
|
||
"type": "ImageBatch",
|
||
"pos": [
|
||
2350,
|
||
400
|
||
],
|
||
"size": [
|
||
200,
|
||
75
|
||
],
|
||
"flags": {
|
||
"collapsed": true
|
||
},
|
||
"order": 4,
|
||
"mode": 0,
|
||
"inputs": [
|
||
{
|
||
"name": "image1",
|
||
"type": "IMAGE",
|
||
"link": 34
|
||
},
|
||
{
|
||
"name": "image2",
|
||
"type": "IMAGE",
|
||
"link": 35
|
||
}
|
||
],
|
||
"outputs": [
|
||
{
|
||
"name": "IMAGE",
|
||
"type": "IMAGE",
|
||
"links": [
|
||
36,
|
||
54
|
||
]
|
||
}
|
||
],
|
||
"properties": {
|
||
"cnr_id": "comfy-core",
|
||
"ver": "0.3.52",
|
||
"Node name for S&R": "ImageBatch",
|
||
"ue_properties": {
|
||
"widget_ue_connectable": {},
|
||
"version": "7.1",
|
||
"input_ue_unconnectable": {}
|
||
}
|
||
},
|
||
"widgets_values": []
|
||
},
|
||
{
|
||
"id": 30,
|
||
"type": "LoadImage",
|
||
"pos": [
|
||
2200,
|
||
875
|
||
],
|
||
"size": [
|
||
300,
|
||
375
|
||
],
|
||
"flags": {},
|
||
"order": 2,
|
||
"mode": 0,
|
||
"inputs": [],
|
||
"outputs": [
|
||
{
|
||
"name": "IMAGE",
|
||
"type": "IMAGE",
|
||
"links": [
|
||
35
|
||
]
|
||
},
|
||
{
|
||
"name": "MASK",
|
||
"type": "MASK",
|
||
"links": null
|
||
}
|
||
],
|
||
"properties": {
|
||
"cnr_id": "comfy-core",
|
||
"ver": "0.18.1",
|
||
"Node name for S&R": "LoadImage"
|
||
},
|
||
"widgets_values": [
|
||
"owl.png",
|
||
"image"
|
||
]
|
||
},
|
||
{
|
||
"id": 38,
|
||
"type": "SaveImage",
|
||
"pos": [
|
||
3600,
|
||
625
|
||
],
|
||
"size": [
|
||
400,
|
||
625
|
||
],
|
||
"flags": {},
|
||
"order": 11,
|
||
"mode": 0,
|
||
"inputs": [
|
||
{
|
||
"name": "images",
|
||
"type": "IMAGE",
|
||
"link": 45
|
||
}
|
||
],
|
||
"outputs": [],
|
||
"properties": {
|
||
"cnr_id": "comfy-core",
|
||
"ver": "0.18.5"
|
||
},
|
||
"widgets_values": [
|
||
"ComfyUI"
|
||
]
|
||
},
|
||
{
|
||
"id": 25,
|
||
"type": "SimpleOllamaNode",
|
||
"pos": [
|
||
4100,
|
||
625
|
||
],
|
||
"size": [
|
||
400,
|
||
625
|
||
],
|
||
"flags": {},
|
||
"order": 12,
|
||
"mode": 0,
|
||
"inputs": [
|
||
{
|
||
"name": "ollama_url_override",
|
||
"shape": 7,
|
||
"type": "STRING",
|
||
"link": 43
|
||
},
|
||
{
|
||
"name": "image",
|
||
"shape": 7,
|
||
"type": "IMAGE",
|
||
"link": 53
|
||
}
|
||
],
|
||
"outputs": [
|
||
{
|
||
"name": "response",
|
||
"type": "STRING",
|
||
"links": [
|
||
44
|
||
]
|
||
},
|
||
{
|
||
"name": "thinking",
|
||
"type": "STRING",
|
||
"links": null
|
||
},
|
||
{
|
||
"name": "prompt_text",
|
||
"type": "STRING",
|
||
"links": null
|
||
}
|
||
],
|
||
"properties": {
|
||
"cnr_id": "comfyui-simple-ollama",
|
||
"ver": "ce6ee6b98f94d466e91f387fbd44b95ae28dd777",
|
||
"Node name for S&R": "SimpleOllamaNode"
|
||
},
|
||
"widgets_values": [
|
||
"http://localhost:1337",
|
||
"huihui_ai/gemma-4-abliterated:e2b",
|
||
null,
|
||
null,
|
||
"Look at the image and write a poem about it.",
|
||
42,
|
||
"fixed",
|
||
1024,
|
||
0.7,
|
||
5,
|
||
true,
|
||
""
|
||
],
|
||
"color": "#233",
|
||
"bgcolor": "#355"
|
||
},
|
||
{
|
||
"id": 22,
|
||
"type": "GeminiImage2Node",
|
||
"pos": [
|
||
3700,
|
||
550
|
||
],
|
||
"size": [
|
||
400,
|
||
625
|
||
],
|
||
"flags": {
|
||
"collapsed": true
|
||
},
|
||
"order": 10,
|
||
"mode": 0,
|
||
"inputs": [
|
||
{
|
||
"name": "images",
|
||
"shape": 7,
|
||
"type": "IMAGE",
|
||
"link": 51
|
||
},
|
||
{
|
||
"name": "files",
|
||
"shape": 7,
|
||
"type": "GEMINI_INPUT_FILES",
|
||
"link": null
|
||
},
|
||
{
|
||
"name": "prompt",
|
||
"type": "STRING",
|
||
"widget": {
|
||
"name": "prompt"
|
||
},
|
||
"link": 55
|
||
}
|
||
],
|
||
"outputs": [
|
||
{
|
||
"name": "IMAGE",
|
||
"type": "IMAGE",
|
||
"links": [
|
||
45,
|
||
53
|
||
]
|
||
},
|
||
{
|
||
"name": "STRING",
|
||
"type": "STRING",
|
||
"links": null
|
||
}
|
||
],
|
||
"properties": {
|
||
"cnr_id": "comfy-core",
|
||
"ver": "0.5.1",
|
||
"Node name for S&R": "GeminiImage2Node"
|
||
},
|
||
"widgets_values": [
|
||
"",
|
||
"Nano Banana 2 (Gemini 3.1 Flash Image)",
|
||
42,
|
||
"fixed",
|
||
"9:16",
|
||
"1K",
|
||
"IMAGE+TEXT",
|
||
"You are an expert image-generation engine. You must ALWAYS produce an image.\nInterpret all user input—regardless of format, intent, or abstraction—as literal visual directives for image composition.\nIf a prompt is conversational or lacks specific visual details, you must creatively invent a concrete visual scenario that depicts the concept.\nPrioritize generating the visual representation above any text, formatting, or conversational requests."
|
||
],
|
||
"color": "#432",
|
||
"bgcolor": "#653"
|
||
},
|
||
{
|
||
"id": 42,
|
||
"type": "Reroute",
|
||
"pos": [
|
||
3525,
|
||
375
|
||
],
|
||
"size": [
|
||
75,
|
||
26
|
||
],
|
||
"flags": {},
|
||
"order": 6,
|
||
"mode": 0,
|
||
"inputs": [
|
||
{
|
||
"name": "",
|
||
"type": "*",
|
||
"link": 54
|
||
}
|
||
],
|
||
"outputs": [
|
||
{
|
||
"name": "",
|
||
"type": "IMAGE",
|
||
"links": [
|
||
51
|
||
]
|
||
}
|
||
],
|
||
"properties": {
|
||
"showOutputText": false,
|
||
"horizontal": false
|
||
}
|
||
},
|
||
{
|
||
"id": 26,
|
||
"type": "PreviewAny",
|
||
"pos": [
|
||
3100,
|
||
625
|
||
],
|
||
"size": [
|
||
400,
|
||
200
|
||
],
|
||
"flags": {},
|
||
"order": 7,
|
||
"mode": 0,
|
||
"inputs": [
|
||
{
|
||
"name": "source",
|
||
"type": "*",
|
||
"link": 31
|
||
}
|
||
],
|
||
"outputs": [],
|
||
"title": "response preview",
|
||
"properties": {
|
||
"cnr_id": "comfy-core",
|
||
"ver": "0.18.1",
|
||
"Node name for S&R": "PreviewAny"
|
||
},
|
||
"widgets_values": [
|
||
null,
|
||
null,
|
||
null
|
||
],
|
||
"shape": 1
|
||
},
|
||
{
|
||
"id": 27,
|
||
"type": "PreviewAny",
|
||
"pos": [
|
||
3100,
|
||
875
|
||
],
|
||
"size": [
|
||
400,
|
||
375
|
||
],
|
||
"flags": {},
|
||
"order": 9,
|
||
"mode": 0,
|
||
"inputs": [
|
||
{
|
||
"name": "source",
|
||
"type": "*",
|
||
"link": 32
|
||
}
|
||
],
|
||
"outputs": [],
|
||
"title": "thinking preview",
|
||
"properties": {
|
||
"cnr_id": "comfy-core",
|
||
"ver": "0.18.1",
|
||
"Node name for S&R": "PreviewAny"
|
||
},
|
||
"widgets_values": [
|
||
null,
|
||
null,
|
||
null
|
||
],
|
||
"shape": 1
|
||
}
|
||
],
|
||
"links": [
|
||
[
|
||
27,
|
||
24,
|
||
0,
|
||
23,
|
||
0,
|
||
"STRING"
|
||
],
|
||
[
|
||
31,
|
||
23,
|
||
0,
|
||
26,
|
||
0,
|
||
"STRING"
|
||
],
|
||
[
|
||
32,
|
||
23,
|
||
1,
|
||
27,
|
||
0,
|
||
"STRING"
|
||
],
|
||
[
|
||
34,
|
||
29,
|
||
0,
|
||
32,
|
||
0,
|
||
"IMAGE"
|
||
],
|
||
[
|
||
35,
|
||
30,
|
||
0,
|
||
32,
|
||
1,
|
||
"IMAGE"
|
||
],
|
||
[
|
||
36,
|
||
32,
|
||
0,
|
||
23,
|
||
1,
|
||
"IMAGE"
|
||
],
|
||
[
|
||
38,
|
||
23,
|
||
0,
|
||
33,
|
||
0,
|
||
"STRING"
|
||
],
|
||
[
|
||
42,
|
||
24,
|
||
0,
|
||
36,
|
||
0,
|
||
"STRING"
|
||
],
|
||
[
|
||
43,
|
||
36,
|
||
0,
|
||
25,
|
||
0,
|
||
"STRING"
|
||
],
|
||
[
|
||
44,
|
||
25,
|
||
0,
|
||
37,
|
||
0,
|
||
"STRING"
|
||
],
|
||
[
|
||
45,
|
||
22,
|
||
0,
|
||
38,
|
||
0,
|
||
"IMAGE"
|
||
],
|
||
[
|
||
51,
|
||
42,
|
||
0,
|
||
22,
|
||
0,
|
||
"IMAGE"
|
||
],
|
||
[
|
||
53,
|
||
22,
|
||
0,
|
||
25,
|
||
1,
|
||
"IMAGE"
|
||
],
|
||
[
|
||
54,
|
||
32,
|
||
0,
|
||
42,
|
||
0,
|
||
"IMAGE"
|
||
],
|
||
[
|
||
55,
|
||
33,
|
||
0,
|
||
22,
|
||
2,
|
||
"STRING"
|
||
]
|
||
],
|
||
"groups": [],
|
||
"config": {},
|
||
"extra": {
|
||
"ds": {
|
||
"scale": 0.886261093448746,
|
||
"offset": [
|
||
-1666.7056006411558,
|
||
-0.12143723234395665
|
||
]
|
||
},
|
||
"frontendVersion": "1.41.21",
|
||
"VHS_latentpreview": false,
|
||
"VHS_latentpreviewrate": 0,
|
||
"VHS_MetadataImage": true,
|
||
"VHS_KeepIntermediate": true,
|
||
"workflowRendererVersion": "LG"
|
||
},
|
||
"version": 0.4
|
||
} |