This workflow corresponds to n8n.io template #9079 — we link there as the canonical source.
This workflow follows the Agent → Googlegemini recipe pattern — see all workflows that pair these two integrations.
The workflow JSON
Copy or download the full n8n JSON below. Paste it into a new n8n workflow, add your credentials, activate. Full import guide →
{
"nodes": [
{
"id": "5fd2f145-ebbf-41cb-b9a0-b18c2b4f52d3",
"name": "Schedule Trigger",
"type": "n8n-nodes-base.scheduleTrigger",
"position": [
-3632,
128
],
"parameters": {},
"typeVersion": 1.2
},
{
"id": "bf5d3d2c-5ca8-43a2-a511-551838664ad7",
"name": "AI Agent",
"type": "@n8n/n8n-nodes-langchain.agent",
"maxTries": 2,
"position": [
-1728,
144
],
"parameters": {},
"retryOnFail": true,
"typeVersion": 2.2,
"alwaysOutputData": true,
"waitBetweenTries": 5000
},
{
"id": "4dc7ae88-0acf-4196-92be-f550ac1bdca2",
"name": "Structured Output Parser",
"type": "@n8n/n8n-nodes-langchain.outputParserStructured",
"position": [
-1440,
384
],
"parameters": {},
"typeVersion": 1.3
},
{
"id": "3d654105-be79-4358-bf60-c14e816ce733",
"name": "Groq Chat Model",
"type": "@n8n/n8n-nodes-langchain.lmChatGroq",
"position": [
-1680,
544
],
"parameters": {},
"typeVersion": 1
},
{
"id": "7483a0a5-451f-4246-b04d-f466c79e5ebf",
"name": "Google Gemini Chat Model",
"type": "@n8n/n8n-nodes-langchain.lmChatGoogleGemini",
"position": [
-1808,
560
],
"parameters": {},
"typeVersion": 1
},
{
"id": "d1bc72c3-2f07-416c-a111-a70352e6853c",
"name": "RSS Read",
"type": "n8n-nodes-base.rssFeedReadTool",
"position": [
-1472,
608
],
"parameters": {},
"typeVersion": 1.2
},
{
"id": "c028f0b6-0481-4780-9846-406a4e61ec9f",
"name": "Create a row",
"type": "n8n-nodes-base.supabase",
"position": [
960,
48
],
"parameters": {},
"typeVersion": 1
},
{
"id": "242ec5e8-8b9e-410c-878f-51d9a1f96e9b",
"name": "AI Agent1",
"type": "@n8n/n8n-nodes-langchain.agent",
"maxTries": 2,
"position": [
-2480,
128
],
"parameters": {},
"retryOnFail": true,
"typeVersion": 2.2,
"alwaysOutputData": true,
"waitBetweenTries": 5000
},
{
"id": "553cf89c-d9ff-47f1-bda1-e1741ede320b",
"name": "Groq Chat Model1",
"type": "@n8n/n8n-nodes-langchain.lmChatGroq",
"position": [
-2768,
544
],
"parameters": {},
"typeVersion": 1
},
{
"id": "7553f0f0-c6dc-4655-9247-0bb4688d79c7",
"name": "RSS Read1",
"type": "n8n-nodes-base.rssFeedReadTool",
"position": [
-2160,
480
],
"parameters": {},
"typeVersion": 1.2
},
{
"id": "e0859e59-0eb5-43c3-822d-c3e38f0b67df",
"name": "Google Gemini Chat Model1",
"type": "@n8n/n8n-nodes-langchain.lmChatGoogleGemini",
"position": [
-2512,
464
],
"parameters": {},
"typeVersion": 1
},
{
"id": "8742f8a0-6509-47ef-88e5-efaa7918050b",
"name": "If",
"type": "n8n-nodes-base.if",
"position": [
-2208,
128
],
"parameters": {},
"typeVersion": 2.2
},
{
"id": "8ad60b61-2c5a-40e9-bec1-5277ba2ddb3e",
"name": "Wait",
"type": "n8n-nodes-base.wait",
"position": [
-2112,
-96
],
"parameters": {},
"typeVersion": 1.1
},
{
"id": "b5ad482e-779e-4cf5-8e44-7828a0ad8701",
"name": "Google Gemini Chat Model2",
"type": "@n8n/n8n-nodes-langchain.lmChatGoogleGemini",
"position": [
-1296,
656
],
"parameters": {},
"typeVersion": 1
},
{
"id": "988a02a2-a245-41a1-a7ba-dcb26ab92d31",
"name": "Information Extractor",
"type": "@n8n/n8n-nodes-langchain.informationExtractor",
"position": [
-1040,
160
],
"parameters": {},
"typeVersion": 1.2
},
{
"id": "23180200-7219-45ba-bceb-7200fa8417b9",
"name": "Google Gemini Chat Model4",
"type": "@n8n/n8n-nodes-langchain.lmChatGoogleGemini",
"position": [
-1024,
336
],
"parameters": {},
"typeVersion": 1
},
{
"id": "aa7b53e8-147b-4c66-8319-7e14f0340346",
"name": "Loop Over Items",
"type": "n8n-nodes-base.splitInBatches",
"position": [
-352,
160
],
"parameters": {},
"typeVersion": 3
},
{
"id": "3e34181e-92a7-495d-8488-bf23d57c4a75",
"name": "Wait1",
"type": "n8n-nodes-base.wait",
"position": [
1744,
560
],
"parameters": {},
"typeVersion": 1.1
},
{
"id": "dc9d2978-0169-49ae-81db-c9d17c24a85c",
"name": "Code",
"type": "n8n-nodes-base.code",
"position": [
-736,
160
],
"parameters": {},
"typeVersion": 2
},
{
"id": "b8f3f1be-2158-4d1e-920e-bec06bfb80e3",
"name": "Generate an image",
"type": "@n8n/n8n-nodes-langchain.googleGemini",
"position": [
704,
-464
],
"parameters": {},
"typeVersion": 1
},
{
"id": "da2085f7-fc32-4aa2-80b1-386f0499186c",
"name": "Upload object",
"type": "n8n-nodes-base.httpRequest",
"position": [
976,
464
],
"parameters": {},
"typeVersion": 4.1
},
{
"id": "36ff690e-0333-4bdb-926a-0518a7d1f913",
"name": "Generate presigned URL",
"type": "n8n-nodes-base.httpRequest",
"position": [
1200,
464
],
"parameters": {},
"typeVersion": 4.1
},
{
"id": "2a1dab10-7b73-46ce-b9b2-bed435bcb5e8",
"name": "all_images",
"type": "n8n-nodes-base.code",
"position": [
64,
48
],
"parameters": {},
"typeVersion": 2
},
{
"id": "74085f1e-ceff-4817-ab3e-2e4098eed7d9",
"name": "html_content",
"type": "n8n-nodes-base.set",
"position": [
368,
48
],
"parameters": {},
"typeVersion": 3.4
},
{
"id": "d77a832d-b19b-4012-a230-9bde2559b3a4",
"name": "If1",
"type": "n8n-nodes-base.if",
"position": [
-1328,
144
],
"parameters": {},
"typeVersion": 2.2
},
{
"id": "463c42eb-15b7-4696-aae1-e9605328dd83",
"name": "Wait2",
"type": "n8n-nodes-base.wait",
"position": [
-1216,
-96
],
"parameters": {},
"typeVersion": 1.1
},
{
"id": "3cf81151-c51b-4f89-b02e-157180109ee6",
"name": "RSS Read2",
"type": "n8n-nodes-base.rssFeedReadTool",
"position": [
-2352,
624
],
"parameters": {},
"typeVersion": 1.2
},
{
"id": "b4e75dfd-ed9c-4c8a-9aec-8c8d26a0aa51",
"name": "Get many rows",
"type": "n8n-nodes-base.supabase",
"position": [
-2992,
128
],
"parameters": {},
"typeVersion": 1
},
{
"id": "fecf73e1-8314-42e9-b721-e3c95fcc4d7d",
"name": "Code2",
"type": "n8n-nodes-base.code",
"position": [
-2848,
128
],
"parameters": {},
"typeVersion": 2
},
{
"id": "d049be27-d21e-44d4-860f-db01e273d02d",
"name": "imagen4",
"type": "n8n-nodes-base.httpRequest",
"position": [
960,
-464
],
"parameters": {},
"typeVersion": 4.2
},
{
"id": "40a66714-4cc0-4396-a0fe-271e5d9baf3e",
"name": "gemini2.5flash",
"type": "n8n-nodes-base.httpRequest",
"position": [
464,
-448
],
"parameters": {},
"typeVersion": 4.2
},
{
"id": "889382e2-16a4-45c3-adc0-996fc8a0f03c",
"name": "Sticky Note",
"type": "n8n-nodes-base.stickyNote",
"position": [
-3040,
48
],
"parameters": {
"content": ""
},
"typeVersion": 1
},
{
"id": "183888e0-82bb-4249-845d-44a95f1ce347",
"name": "Sticky Note1",
"type": "n8n-nodes-base.stickyNote",
"position": [
-3888,
48
],
"parameters": {
"content": ""
},
"typeVersion": 1
},
{
"id": "d234c989-ede8-442e-b29a-ef78ed902792",
"name": "Sticky Note2",
"type": "n8n-nodes-base.stickyNote",
"position": [
-2576,
-192
],
"parameters": {
"content": ""
},
"typeVersion": 1
},
{
"id": "852adc40-31ef-4930-a967-3dfd2d638277",
"name": "Sticky Note3",
"type": "n8n-nodes-base.stickyNote",
"position": [
-1840,
-192
],
"parameters": {
"content": ""
},
"typeVersion": 1
},
{
"id": "74aca049-e4d7-426f-a2c1-4a285a22a68c",
"name": "Sticky Note4",
"type": "n8n-nodes-base.stickyNote",
"position": [
-1088,
-192
],
"parameters": {
"content": ""
},
"typeVersion": 1
},
{
"id": "e8f01eca-09a9-48d5-8d45-fa6658310a34",
"name": "Google search",
"type": "n8n-nodes-base.httpRequestTool",
"position": [
-1584,
1392
],
"parameters": {},
"typeVersion": 4.2
},
{
"id": "548ed4e1-2aaf-4f8b-88c2-71f6a963fe87",
"name": "URL Scraper",
"type": "n8n-nodes-base.httpRequestTool",
"position": [
-1360,
1392
],
"parameters": {},
"typeVersion": 4.2
},
{
"id": "969f4f07-9da6-4929-bab4-bd722f5cdaca",
"name": "Sticky Note5",
"type": "n8n-nodes-base.stickyNote",
"position": [
-1776,
1168
],
"parameters": {
"content": ""
},
"typeVersion": 1
},
{
"id": "73bbf094-0001-43d7-942b-3a65e2bd97f2",
"name": "Message a model in Perplexity",
"type": "n8n-nodes-base.perplexityTool",
"position": [
-1600,
1632
],
"parameters": {},
"typeVersion": 1
},
{
"id": "033a4999-740a-4a14-923f-d80bb784cbbe",
"name": "Sticky Note6",
"type": "n8n-nodes-base.stickyNote",
"position": [
-528,
32
],
"parameters": {
"content": ""
},
"typeVersion": 1
},
{
"id": "0db639b1-d9fe-4bcf-9973-757a9e5255d6",
"name": "Sticky Note7",
"type": "n8n-nodes-base.stickyNote",
"position": [
-160,
224
],
"parameters": {
"content": ""
},
"typeVersion": 1
},
{
"id": "0980dacd-0597-4a07-af6e-ddf9dcb59818",
"name": "download image",
"type": "n8n-nodes-base.httpRequest",
"position": [
528,
464
],
"parameters": {},
"typeVersion": 4.2
},
{
"id": "be09de5d-350b-4f7f-a052-f0f313058484",
"name": "Edit Image (only for changing to png)",
"type": "n8n-nodes-base.editImage",
"position": [
736,
464
],
"parameters": {},
"typeVersion": 1
},
{
"id": "1392acd6-911c-459a-8a62-dc2c9a0e0e11",
"name": "Message a model (image name writer)",
"type": "@n8n/n8n-nodes-langchain.googleGemini",
"position": [
-144,
464
],
"parameters": {},
"typeVersion": 1
},
{
"id": "0d3641e4-ba3f-46eb-bccc-d81dc81ca82c",
"name": "nano banana",
"type": "n8n-nodes-base.httpRequest",
"position": [
336,
464
],
"parameters": {},
"typeVersion": 4.2
},
{
"id": "43c5e7f2-daf5-4bdf-b1f9-7482f543b53a",
"name": "Edit Fields (set image prompt and name)",
"type": "n8n-nodes-base.set",
"position": [
128,
464
],
"parameters": {},
"typeVersion": 3.4
},
{
"id": "5c0b8657-d31b-4650-bf21-cd6b91a8729a",
"name": "final image url",
"type": "n8n-nodes-base.set",
"position": [
1520,
464
],
"parameters": {},
"typeVersion": 3.4
},
{
"id": "5be8c1f6-93f9-4f54-9816-93ae0bb46c56",
"name": "imbed images in html",
"type": "n8n-nodes-base.code",
"position": [
688,
48
],
"parameters": {},
"typeVersion": 2
},
{
"id": "f2da0db4-a78b-4e03-a6f7-1ca23fd9ec3c",
"name": "API Keys",
"type": "n8n-nodes-base.set",
"position": [
-3376,
128
],
"parameters": {},
"typeVersion": 3.4
},
{
"id": "fddee7bc-ffe5-439b-b4f3-91456666180f",
"name": "Sticky Note8",
"type": "n8n-nodes-base.stickyNote",
"position": [
-3472,
48
],
"parameters": {
"content": ""
},
"typeVersion": 1
}
],
"connections": {
"If": {
"main": [
[
{
"node": "Wait",
"type": "main",
"index": 0
}
],
[
{
"node": "AI Agent",
"type": "main",
"index": 0
}
]
]
},
"If1": {
"main": [
[
{
"node": "Wait2",
"type": "main",
"index": 0
}
],
[
{
"node": "Information Extractor",
"type": "main",
"index": 0
}
]
]
},
"Code": {
"main": [
[
{
"node": "Loop Over Items",
"type": "main",
"index": 0
}
]
]
},
"Wait": {
"main": [
[
{
"node": "AI Agent1",
"type": "main",
"index": 0
}
]
]
},
"Code2": {
"main": [
[
{
"node": "AI Agent1",
"type": "main",
"index": 0
}
]
]
},
"Wait1": {
"main": [
[
{
"node": "Loop Over Items",
"type": "main",
"index": 0
}
]
]
},
"Wait2": {
"main": [
[
{
"node": "AI Agent",
"type": "main",
"index": 0
}
]
]
},
"AI Agent": {
"main": [
[
{
"node": "If1",
"type": "main",
"index": 0
}
]
]
},
"API Keys": {
"main": [
[
{
"node": "Get many rows",
"type": "main",
"index": 0
}
]
]
},
"RSS Read": {
"ai_tool": [
[
{
"node": "AI Agent",
"type": "ai_tool",
"index": 0
}
]
]
},
"AI Agent1": {
"main": [
[
{
"node": "If",
"type": "main",
"index": 0
}
]
]
},
"RSS Read1": {
"ai_tool": [
[
{
"node": "AI Agent1",
"type": "ai_tool",
"index": 0
}
]
]
},
"RSS Read2": {
"ai_tool": [
[
{
"node": "AI Agent1",
"type": "ai_tool",
"index": 0
}
]
]
},
"all_images": {
"main": [
[
{
"node": "html_content",
"type": "main",
"index": 0
}
]
]
},
"URL Scraper": {
"ai_tool": [
[
{
"node": "AI Agent1",
"type": "ai_tool",
"index": 0
},
{
"node": "AI Agent",
"type": "ai_tool",
"index": 0
}
]
]
},
"nano banana": {
"main": [
[
{
"node": "download image",
"type": "main",
"index": 0
}
]
]
},
"html_content": {
"main": [
[
{
"node": "imbed images in html",
"type": "main",
"index": 0
}
]
]
},
"Get many rows": {
"main": [
[
{
"node": "Code2",
"type": "main",
"index": 0
}
]
]
},
"Google search": {
"ai_tool": [
[
{
"node": "AI Agent1",
"type": "ai_tool",
"index": 0
},
{
"node": "AI Agent",
"type": "ai_tool",
"index": 0
}
]
]
},
"Upload object": {
"main": [
[
{
"node": "Generate presigned URL",
"type": "main",
"index": 0
}
]
]
},
"download image": {
"main": [
[
{
"node": "Edit Image (only for changing to png)",
"type": "main",
"index": 0
}
]
]
},
"Groq Chat Model": {
"ai_languageModel": [
[
{
"node": "AI Agent",
"type": "ai_languageModel",
"index": 1
}
]
]
},
"Loop Over Items": {
"main": [
[
{
"node": "all_images",
"type": "main",
"index": 0
}
],
[
{
"node": "Message a model (image name writer)",
"type": "main",
"index": 0
}
]
]
},
"final image url": {
"main": [
[
{
"node": "Wait1",
"type": "main",
"index": 0
}
]
]
},
"Schedule Trigger": {
"main": [
[
{
"node": "API Keys",
"type": "main",
"index": 0
}
]
]
},
"imbed images in html": {
"main": [
[
{
"node": "Create a row",
"type": "main",
"index": 0
}
]
]
},
"Information Extractor": {
"main": [
[
{
"node": "Code",
"type": "main",
"index": 0
}
]
]
},
"Generate presigned URL": {
"main": [
[
{
"node": "final image url",
"type": "main",
"index": 0
}
]
]
},
"Google Gemini Chat Model": {
"ai_languageModel": [
[
{
"node": "AI Agent",
"type": "ai_languageModel",
"index": 0
}
]
]
},
"Structured Output Parser": {
"ai_outputParser": [
[
{
"node": "AI Agent",
"type": "ai_outputParser",
"index": 0
}
]
]
},
"Google Gemini Chat Model1": {
"ai_languageModel": [
[
{
"node": "AI Agent1",
"type": "ai_languageModel",
"index": 0
}
]
]
},
"Google Gemini Chat Model2": {
"ai_languageModel": [
[
{
"node": "Structured Output Parser",
"type": "ai_languageModel",
"index": 0
}
]
]
},
"Google Gemini Chat Model4": {
"ai_languageModel": [
[
{
"node": "Information Extractor",
"type": "ai_languageModel",
"index": 0
}
]
]
},
"Message a model (image name writer)": {
"main": [
[
{
"node": "Edit Fields (set image prompt and name)",
"type": "main",
"index": 0
}
]
]
},
"Edit Image (only for changing to png)": {
"main": [
[
{
"node": "Upload object",
"type": "main",
"index": 0
}
]
]
},
"Edit Fields (set image prompt and name)": {
"main": [
[
{
"node": "nano banana",
"type": "main",
"index": 0
}
]
]
}
}
}
For the full experience including quality scoring and batch install features for each workflow upgrade to Pro
About this workflow
Fully automated blog creation system using n8n + AI Agents + Image Generation
Source: https://n8n.io/workflows/9079/ — original creator credit. Request a take-down →
Related workflows
Workflows that share integrations, category, or trigger type with this one. All free to copy and import.
kisisel asistan. Uses toolWorkflow, toolHttpRequest, toolCalculator, toolThink. Scheduled trigger; 43 nodes.
LinkedIn_Job_Hunt_and_Cover_Letter. Uses outputParserStructured, outputParserAutofixing, googleDrive, agent. Scheduled trigger; 85 nodes.
Author: Nguyen Thieu Toan Category: Community & Knowledge Automation Tags: Telegram, Reddit, n8n Forum, AI Summarization, Gemini, Groq
This is an automated blog post generation system that: Researches topics using AI agents and web search tools Writes complete blog posts with proper SEO structure Generates custom images for each post
Most blogs publish words. This system publishes experiences.