AutomationFlowsAI & RAG › Automate Reddit Replies with F5bot Alerts & Gpt-5 Personalized Comments

Automate Reddit Replies with F5bot Alerts & Gpt-5 Personalized Comments

ByJay Emp0 @jay-emp0 on n8n.io

Automate how you reply to Reddit posts using AI-generated, first-person comments that sound human, follow subreddit rules, and (optionally) promote your own links or products.

Event trigger★★★★★ complexityAI-powered31 nodesGmail TriggerRedditAgentOpenAI ChatOutput Parser StructuredEvaluation TriggerGoogle Sheets ToolEvaluation
AI & RAG Trigger: Event Nodes: 31 Complexity: ★★★★★ AI nodes: yes Added:
Automate Reddit Replies with F5bot Alerts & Gpt-5 Personalized Comments — n8n workflow card showing Gmail Trigger, Reddit, Agent integration

This workflow corresponds to n8n.io template #9371 — we link there as the canonical source.

This workflow follows the Agent → Gmail Trigger 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 →

Download .json
{
  "id": "GrveDEE7fH9mRpAI",
  "meta": {
    "templateCredsSetupCompleted": true
  },
  "name": "Reddit Assistant",
  "tags": [
    {
      "id": "ieqEVthNwLDfYSc1",
      "name": "Emp0",
      "createdAt": "2025-05-06T11:04:25.307Z",
      "updatedAt": "2025-05-06T11:04:25.307Z"
    }
  ],
  "nodes": [
    {
      "id": "29031df0-dd8c-4f96-bf92-39f757d73099",
      "name": "Gmail Trigger",
      "type": "n8n-nodes-base.gmailTrigger",
      "position": [
        -2160,
        576
      ],
      "parameters": {
        "simple": false,
        "filters": {
          "sender": "user@example.com"
        },
        "options": {},
        "pollTimes": {
          "item": [
            {
              "mode": "everyMinute"
            }
          ]
        }
      },
      "credentials": {
        "gmailOAuth2": {
          "name": "<your credential>"
        }
      },
      "typeVersion": 1.3
    },
    {
      "id": "f7237452-ff16-4c73-8aeb-5efacabb8ba8",
      "name": "Edit Fields",
      "type": "n8n-nodes-base.set",
      "position": [
        -1776,
        576
      ],
      "parameters": {
        "options": {},
        "assignments": {
          "assignments": [
            {
              "id": "f58cb366-4c57-459e-b04c-5265de98f6fd",
              "name": "Text",
              "type": "string",
              "value": "={{ $json.text }}"
            }
          ]
        }
      },
      "typeVersion": 3.4
    },
    {
      "id": "3d214040-c455-4190-a2b7-68162c279ded",
      "name": "Get a post",
      "type": "n8n-nodes-base.reddit",
      "position": [
        -1200,
        480
      ],
      "parameters": {
        "postId": "={{ $json.postId }}",
        "operation": "get",
        "subreddit": "={{ $json.subreddit }}"
      },
      "credentials": {
        "redditOAuth2Api": {
          "name": "<your credential>"
        }
      },
      "typeVersion": 1
    },
    {
      "id": "4986c00a-0ad2-4372-b12d-2969211130c0",
      "name": "Merge",
      "type": "n8n-nodes-base.merge",
      "position": [
        -720,
        336
      ],
      "parameters": {
        "mode": "combine",
        "options": {},
        "combineBy": "combineByPosition"
      },
      "typeVersion": 3.2
    },
    {
      "id": "0f224f38-0887-400b-a395-787c6a119f75",
      "name": "Code in JavaScript1",
      "type": "n8n-nodes-base.code",
      "position": [
        -1408,
        576
      ],
      "parameters": {
        "jsCode": "let posts = [];\nconst input = JSON.stringify($input.first().json.urls);\n\n// Match all encoded Reddit URLs from F5Bot links\nconst regex = /https:\\/\\/f5bot\\.com\\/url\\?u=([^&\\s>]+)/g;\nlet match;\n\nwhile ((match = regex.exec(input)) !== null) {\n  try {\n    const decoded = decodeURIComponent(match[1]);\n    if (decoded.includes(\"reddit.com/r/\")) {\n      const redditMatch = decoded.match(/reddit\\.com\\/r\\/([^/]+)\\/comments\\/([^/]+)/);\n      if (redditMatch) {\n        const subreddit = redditMatch[1];\n        const postId = redditMatch[2];\n        posts.push({ subreddit, postId, url: decoded });\n      }\n    }\n  } catch (e) {}\n}\n\n// remove duplicates\nconst uniquePosts = [];\nconst seen = new Set();\nfor (const p of posts) {\n  if (!seen.has(p.url)) {\n    seen.add(p.url);\n    uniquePosts.push(p);\n  }\n}\n\nreturn { \n  json: uniquePosts[0] \n};\n"
      },
      "typeVersion": 2
    },
    {
      "id": "52b466d0-c09f-48e1-b8ba-7284cdece760",
      "name": "Filter Own Posts",
      "type": "n8n-nodes-base.filter",
      "position": [
        -1056,
        480
      ],
      "parameters": {
        "options": {},
        "conditions": {
          "options": {
            "version": 2,
            "leftValue": "",
            "caseSensitive": true,
            "typeValidation": "strict"
          },
          "combinator": "and",
          "conditions": [
            {
              "id": "33942da9-064a-4bdb-9848-871cdc3c7e75",
              "operator": {
                "type": "string",
                "operation": "notEquals"
              },
              "leftValue": "=Altruistic-Brother37",
              "rightValue": "={{ $json.author }}"
            }
          ]
        }
      },
      "typeVersion": 2.2
    },
    {
      "id": "df891fe9-b3f3-43d2-a462-ada80c72640b",
      "name": "AI Agent",
      "type": "@n8n/n8n-nodes-langchain.agent",
      "position": [
        -400,
        336
      ],
      "parameters": {
        "text": "=Title: {{ $json.Title }}\nText: {{ $json.Text }}\nsubreddit_rules: {{ JSON.stringify($json.subreddit_rules) }}\nsubreddit: {{ JSON.stringify($json.subreddit_about) }}\nnotes: {{ $json.notes || null }}\n",
        "options": {
          "systemMessage": "=Act as a skilled Reddit indian marketing expert who writes authentic, first-person comments that feel human and community-friendly while tactically promoting a product when rules allow.\n\nTask\nCraft a short Reddit comment reply (max 255 characters) that fits naturally in conversation threads, follows subreddit rules, and\u2014if permitted\u2014casually promotes one product with its link.\nIf promo isn\u2019t allowed, reply with relatable insight or story instead. If links isnt allowed, no need to use links but you must always get a list of products from the Google Sheets Tool\n\nContext\nYou\u2019ll receive:\n- Post_Title and Post_Text \u2192 the Reddit post content\n- rules_summary \u2192 subreddit rules\n- Access to a Google Sheets Tool containing product, service, content names and URLs of things i make\n\nReasoning\n- Read the post title + text to understand tone and user intent.\n- Check rules_summary for promo policy.\n- If self-promo allowed \u2192 pick one product name + link via the Google Sheets Tool.\n- If not allowed \u2192 skip product mention and write useful, personal comment.\n- Write in first person; sound casual, experienced, and fast-typing (e.g., \u201cu,\u201d \u201cur,\u201d \u201cidk\u201d).\n- Avoid buzzwords, fluff, or fake enthusiasm\u2014keep it natural, human, and valuable.\n- Make sure tone matches a senior direct-marketing pro chatting informally.\n\nOutput Format\n- Return only the Reddit comment text (no markdown, no explanation).\n- Keep under 255 characters.\n- Use short, quick sentences.\n- First-person only.\n\nStop Conditions\n\u2705 Output stops once one valid, rule-compliant Reddit comment is produced.\n\u2705 Skip promotion if forbidden.\n\u2705 No external text, tags, or formatting beyond the comment itself.",
          "returnIntermediateSteps": true
        },
        "promptType": "define",
        "hasOutputParser": true
      },
      "typeVersion": 2.2
    },
    {
      "id": "37241eeb-fa26-4dd9-87e9-05624d148bf8",
      "name": "Input for AI",
      "type": "n8n-nodes-base.set",
      "position": [
        -912,
        480
      ],
      "parameters": {
        "options": {},
        "assignments": {
          "assignments": [
            {
              "id": "1083ab50-5f1c-4f6e-8695-f71578c072c4",
              "name": "Title",
              "type": "string",
              "value": "={{ $json.title }}"
            },
            {
              "id": "84d5cea9-20cd-4f31-acbd-90a7cd9f598e",
              "name": "Text",
              "type": "string",
              "value": "={{ $json.selftext }}"
            }
          ]
        }
      },
      "typeVersion": 3.4
    },
    {
      "id": "b94bfefa-b2af-4e6a-a011-4cc13887dd8f",
      "name": "OpenAI Chat Model",
      "type": "@n8n/n8n-nodes-langchain.lmChatOpenAi",
      "position": [
        -464,
        608
      ],
      "parameters": {
        "model": {
          "__rl": true,
          "mode": "list",
          "value": "gpt-5-nano",
          "cachedResultName": "gpt-5-nano"
        },
        "options": {}
      },
      "credentials": {
        "openAiApi": {
          "name": "<your credential>"
        }
      },
      "typeVersion": 1.2
    },
    {
      "id": "806e4ba5-0de3-46cc-833d-48f9007beea7",
      "name": "Create a comment in a post",
      "type": "n8n-nodes-base.reddit",
      "position": [
        144,
        336
      ],
      "parameters": {
        "postId": "={{ $('Get a post').item.json.id }}",
        "resource": "postComment",
        "commentText": "={{ $json.output.comment }}"
      },
      "credentials": {
        "redditOAuth2Api": {
          "name": "<your credential>"
        }
      },
      "typeVersion": 1
    },
    {
      "id": "11daf05f-5194-4c93-ab5a-f19f15c8c666",
      "name": "Structured Output Parser",
      "type": "@n8n/n8n-nodes-langchain.outputParserStructured",
      "position": [
        -128,
        608
      ],
      "parameters": {
        "schemaType": "manual",
        "inputSchema": "{\n\t\"type\": \"object\",\n\t\"properties\": {\n\t\t\"comment\": {\n\t\t\t\"type\": \"string\"\n        }\n\t\t\n\t}\n}"
      },
      "typeVersion": 1.3
    },
    {
      "id": "92689bbf-300e-48be-b924-fad10f6efea7",
      "name": "Edit Fields1",
      "type": "n8n-nodes-base.set",
      "position": [
        -912,
        320
      ],
      "parameters": {
        "options": {},
        "assignments": {
          "assignments": [
            {
              "id": "82d428d7-4bd9-4ed8-bcdd-8481c9c2d957",
              "name": "subreddit_about",
              "type": "object",
              "value": "={{ $('Subreddit about').first().json }}"
            },
            {
              "id": "32b21d89-2cec-438f-a4b6-dbf8e5fc4f4e",
              "name": "subreddit_rules",
              "type": "object",
              "value": "={{ $json }}"
            }
          ]
        }
      },
      "typeVersion": 3.4
    },
    {
      "id": "bb820e45-6899-45a4-b8bf-07e4d638ba2e",
      "name": "When fetching a dataset row",
      "type": "n8n-nodes-base.evaluationTrigger",
      "position": [
        -2128,
        1600
      ],
      "parameters": {
        "source": "googleSheets",
        "sheetName": {
          "__rl": true,
          "mode": "list",
          "value": 1627839178,
          "cachedResultUrl": "https://docs.google.com/spreadsheets/d/1GYCExj_vkpQi_xtSJDv0EGsKJoPXo8GFf7JerKZpVFg/edit#gid=1627839178",
          "cachedResultName": "reddit evaluations"
        },
        "documentId": {
          "__rl": true,
          "mode": "list",
          "value": "1GYCExj_vkpQi_xtSJDv0EGsKJoPXo8GFf7JerKZpVFg",
          "cachedResultUrl": "https://docs.google.com/spreadsheets/d/1GYCExj_vkpQi_xtSJDv0EGsKJoPXo8GFf7JerKZpVFg/edit?usp=drivesdk",
          "cachedResultName": "Blog Automation"
        }
      },
      "credentials": {
        "googleSheetsOAuth2Api": {
          "name": "<your credential>"
        }
      },
      "typeVersion": 4.7
    },
    {
      "id": "bea43dd9-92b4-4811-944d-de8f76a83a90",
      "name": "Get Google Sheet",
      "type": "n8n-nodes-base.googleSheetsTool",
      "position": [
        -304,
        608
      ],
      "parameters": {
        "options": {},
        "sheetName": {
          "__rl": true,
          "mode": "list",
          "value": 814034323,
          "cachedResultUrl": "https://docs.google.com/spreadsheets/d/1DbPO7U68-YlOHhb8fIlGu2ImD_N-cm0E-8pwc7qnAo4/edit#gid=814034323",
          "cachedResultName": "promo"
        },
        "documentId": {
          "__rl": true,
          "mode": "list",
          "value": "1DbPO7U68-YlOHhb8fIlGu2ImD_N-cm0E-8pwc7qnAo4",
          "cachedResultUrl": "https://docs.google.com/spreadsheets/d/1DbPO7U68-YlOHhb8fIlGu2ImD_N-cm0E-8pwc7qnAo4/edit?usp=drivesdk",
          "cachedResultName": "Reddit"
        }
      },
      "credentials": {
        "googleSheetsOAuth2Api": {
          "name": "<your credential>"
        }
      },
      "typeVersion": 4.7
    },
    {
      "id": "ccfc1730-f266-45cf-ab70-f786c361e96f",
      "name": "Evaluate text format",
      "type": "n8n-nodes-base.evaluation",
      "position": [
        304,
        1280
      ],
      "parameters": {
        "metric": "categorization",
        "options": {
          "metricName": "contains dash"
        },
        "operation": "setMetrics",
        "actualAnswer": "={{ $('AI Agent').first().json.output.comment.includes(\"\u2014\") }}",
        "expectedAnswer": "false"
      },
      "typeVersion": 4.8
    },
    {
      "id": "b033365a-04ce-4102-9a13-8f9607ff95fd",
      "name": "Evaluate link in text",
      "type": "n8n-nodes-base.evaluation",
      "position": [
        304,
        1456
      ],
      "parameters": {
        "metric": "categorization",
        "options": {
          "metricName": "contains link"
        },
        "operation": "setMetrics",
        "actualAnswer": "={{ $('AI Agent').first().json.output.comment.includes(\"https://\") }}",
        "expectedAnswer": "true"
      },
      "typeVersion": 4.8
    },
    {
      "id": "a8a89f02-6394-4b55-adf2-d1adf04bcb70",
      "name": "Evaluation ghseet tool",
      "type": "n8n-nodes-base.evaluation",
      "position": [
        304,
        1632
      ],
      "parameters": {
        "metric": "toolsUsed",
        "options": {
          "metricName": "Tools Used"
        },
        "operation": "setMetrics",
        "expectedTools": "Get Google Sheet",
        "intermediateSteps": "={{ $('AI Agent').first().json.intermediateSteps }}"
      },
      "typeVersion": 4.8
    },
    {
      "id": "1fd1a10c-19e1-4fd2-9ffc-bb9a3a2849e2",
      "name": "Merge Evaluations",
      "type": "n8n-nodes-base.merge",
      "position": [
        512,
        1296
      ],
      "parameters": {
        "mode": "combine",
        "options": {},
        "combineBy": "combineByPosition",
        "numberInputs": 3
      },
      "typeVersion": 3.2
    },
    {
      "id": "90eb0d88-d9f4-4f7a-8c24-ce73284eebc6",
      "name": "Subreddit about",
      "type": "n8n-nodes-base.reddit",
      "position": [
        -1200,
        320
      ],
      "parameters": {
        "content": "rules",
        "resource": "subreddit",
        "subreddit": "={{ $json.subreddit }}"
      },
      "typeVersion": 1,
      "alwaysOutputData": true
    },
    {
      "id": "68fdc148-1a92-4c55-831d-2985517c66ea",
      "name": "Subreddit rules",
      "type": "n8n-nodes-base.reddit",
      "position": [
        -1056,
        320
      ],
      "parameters": {
        "content": "rules",
        "resource": "subreddit",
        "subreddit": "={{ $('Code in JavaScript1').item.json.subreddit }}"
      },
      "typeVersion": 1,
      "alwaysOutputData": true
    },
    {
      "id": "640958ad-76d6-4c32-941f-28e37461d0f8",
      "name": "Set Evaluation Output",
      "type": "n8n-nodes-base.evaluation",
      "position": [
        688,
        1312
      ],
      "parameters": {
        "source": "googleSheets",
        "outputs": {
          "values": [
            {
              "outputName": "output",
              "outputValue": "={{ $('AI Agent').first().json.output.comment }}"
            },
            {
              "outputName": "contains link",
              "outputValue": "={{ $json[\"contains link\"] }}"
            },
            {
              "outputName": "contains dash",
              "outputValue": "={{ $json[\"contains dash\"] }}"
            },
            {
              "outputName": "Tools Used",
              "outputValue": "={{ $json[\"Tools Used\"] }}"
            }
          ]
        },
        "sheetName": {
          "__rl": true,
          "mode": "list",
          "value": 1627839178,
          "cachedResultUrl": "https://docs.google.com/spreadsheets/d/1GYCExj_vkpQi_xtSJDv0EGsKJoPXo8GFf7JerKZpVFg/edit#gid=1627839178",
          "cachedResultName": "reddit evaluations"
        },
        "documentId": {
          "__rl": true,
          "mode": "list",
          "value": "1GYCExj_vkpQi_xtSJDv0EGsKJoPXo8GFf7JerKZpVFg",
          "cachedResultUrl": "https://docs.google.com/spreadsheets/d/1GYCExj_vkpQi_xtSJDv0EGsKJoPXo8GFf7JerKZpVFg/edit?usp=drivesdk",
          "cachedResultName": "Blog Automation"
        }
      },
      "credentials": {
        "googleSheetsOAuth2Api": {
          "name": "<your credential>"
        }
      },
      "typeVersion": 4.8
    },
    {
      "id": "e6583917-e190-4659-a9fb-7c7ab112ccd7",
      "name": "Filter Subreddit URLs",
      "type": "n8n-nodes-base.code",
      "position": [
        -1600,
        576
      ],
      "parameters": {
        "jsCode": "const text = $json.Text || '';\nconst urls = Array.from(text.matchAll(/https?:\\/\\/[^\\n\\s]+/g)).map(match => match[0]);\nreturn [{ urls }];"
      },
      "typeVersion": 2
    },
    {
      "id": "5b2b514a-2171-4781-a921-ccd36b513848",
      "name": "Delay 5m",
      "type": "n8n-nodes-base.wait",
      "position": [
        -1968,
        576
      ],
      "parameters": {
        "unit": "minutes"
      },
      "typeVersion": 1.1
    },
    {
      "id": "6a1b82db-9d63-41dd-b3de-022a823258dc",
      "name": "Sticky Note",
      "type": "n8n-nodes-base.stickyNote",
      "position": [
        -2192,
        64
      ],
      "parameters": {
        "color": 6,
        "width": 928,
        "height": 1104,
        "content": "## Get message from f5 bot\nYou must setup f5bot to send messages to your email with keywords with your niche\nCreate an [f5bot account](https://f5bot.com/)\n\nSetup your keyword niche\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nAdded a delay of 5m because reddit flags automatic messages\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n![email received](https://articles.emp0.com/wp-content/uploads/2025/10/reddit-automation-email-f5bot.png)"
      },
      "typeVersion": 1
    },
    {
      "id": "e4f02e3a-c193-489a-9cd4-3d3eeaf171f1",
      "name": "Sticky Note1",
      "type": "n8n-nodes-base.stickyNote",
      "position": [
        -2192,
        1216
      ],
      "parameters": {
        "color": 7,
        "width": 3088,
        "height": 576,
        "content": ""
      },
      "typeVersion": 1
    },
    {
      "id": "7e981083-99a7-4322-8299-48ed899529e1",
      "name": "Sticky Note3",
      "type": "n8n-nodes-base.stickyNote",
      "position": [
        -1248,
        64
      ],
      "parameters": {
        "color": 2,
        "width": 656,
        "height": 1104,
        "content": "## Get data from Reddit\n\nThis includes:\n- Reddit post\n- Subreddit description\n- Subreddit rules\n\nFilter out the user's posts and comments so that we dont reply to our own messages\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n![reddit post](https://articles.emp0.com/wp-content/uploads/2025/10/reddit-automation-get-post.png)"
      },
      "typeVersion": 1
    },
    {
      "id": "b3eb5e4a-ea23-491f-a22b-ab768490cef0",
      "name": "Sticky Note4",
      "type": "n8n-nodes-base.stickyNote",
      "position": [
        -576,
        64
      ],
      "parameters": {
        "color": 4,
        "width": 624,
        "height": 1104,
        "content": "## Get Product and services\n\nGet a list of your product and services from Google sheets with a list of your products and services that you offer\n\nUse AI agent to reqord your product and services to  attach in your Reddit Response occasionally. It doesnt always promote your links, but it always give relevant replies\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n![Google Sheets](https://articles.emp0.com/wp-content/uploads/2025/10/reddit-automation-gsheet-promo.png)"
      },
      "typeVersion": 1
    },
    {
      "id": "8333f534-2635-4d63-9d33-f5242afc10c3",
      "name": "Sticky Note5",
      "type": "n8n-nodes-base.stickyNote",
      "position": [
        64,
        64
      ],
      "parameters": {
        "color": 5,
        "width": 816,
        "height": 1104,
        "content": "## Post on Reddit\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n![Reddit Post](https://articles.emp0.com/wp-content/uploads/2025/10/reddit-automation-reddit-comment.png)"
      },
      "typeVersion": 1
    },
    {
      "id": "84a9f086-a75e-413b-a438-421b3aa04d6d",
      "name": "Sticky Note6",
      "type": "n8n-nodes-base.stickyNote",
      "position": [
        -1792,
        1248
      ],
      "parameters": {
        "color": 7,
        "width": 864,
        "height": 528,
        "content": "![evaluations](https://articles.emp0.com/wp-content/uploads/2025/10/reddit-automation-evaluations.png)"
      },
      "typeVersion": 1
    },
    {
      "id": "e4e1cc3f-50f1-458a-90be-6eac4acacd42",
      "name": "Sticky Note7",
      "type": "n8n-nodes-base.stickyNote",
      "position": [
        -2192,
        1248
      ],
      "parameters": {
        "color": 7,
        "width": 400,
        "height": 528,
        "content": "## Evaluations\n\nThis is used to check if the AI is able to create propper reddit messages according to reddit and subreddit rules\nWe check for \n- too much robotic dash - in the message\n- make sure there is a link in the message when allowed\n- ensure the gsheet tool is called upon when necessary\n\nWhile adjusting this flow for your reddit niche\nyou can adjust the prompt and make sure it passes the basic evaluation before setting the workflow to active"
      },
      "typeVersion": 1
    },
    {
      "id": "e68cecb2-b107-4da7-80d8-e3682f16fd5d",
      "name": "Sticky Note2",
      "type": "n8n-nodes-base.stickyNote",
      "position": [
        -2176,
        192
      ],
      "parameters": {
        "color": 6,
        "width": 512,
        "height": 272,
        "content": "\n![f5bot keywords](https://articles.emp0.com/wp-content/uploads/2025/10/reddit-automation-f5bot-setup.png)"
      },
      "typeVersion": 1
    }
  ],
  "active": true,
  "settings": {
    "callerPolicy": "workflowsFromSameOwner",
    "errorWorkflow": "ernonQOxi07n6WGi",
    "availableInMCP": false,
    "executionOrder": "v1",
    "timeSavedPerExecution": 10
  },
  "versionId": "9cb89aa0-6678-4b81-a4e7-968327f7ad8e",
  "connections": {
    "Merge": {
      "main": [
        [
          {
            "node": "AI Agent",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "AI Agent": {
      "main": [
        [
          {
            "node": "Create a comment in a post",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "Delay 5m": {
      "main": [
        [
          {
            "node": "Edit Fields",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "Get a post": {
      "main": [
        [
          {
            "node": "Filter Own Posts",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "Edit Fields": {
      "main": [
        [
          {
            "node": "Filter Subreddit URLs",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "Edit Fields1": {
      "main": [
        [
          {
            "node": "Merge",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "Input for AI": {
      "main": [
        [
          {
            "node": "Merge",
            "type": "main",
            "index": 1
          }
        ]
      ]
    },
    "Gmail Trigger": {
      "main": [
        [
          {
            "node": "Delay 5m",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "Subreddit about": {
      "main": [
        [
          {
            "node": "Subreddit rules",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "Subreddit rules": {
      "main": [
        [
          {
            "node": "Edit Fields1",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "Filter Own Posts": {
      "main": [
        [
          {
            "node": "Input for AI",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "Get Google Sheet": {
      "ai_tool": [
        [
          {
            "node": "AI Agent",
            "type": "ai_tool",
            "index": 0
          }
        ]
      ]
    },
    "Merge Evaluations": {
      "main": [
        [
          {
            "node": "Set Evaluation Output",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "OpenAI Chat Model": {
      "ai_languageModel": [
        [
          {
            "node": "AI Agent",
            "type": "ai_languageModel",
            "index": 0
          }
        ]
      ]
    },
    "Code in JavaScript1": {
      "main": [
        [
          {
            "node": "Subreddit about",
            "type": "main",
            "index": 0
          },
          {
            "node": "Get a post",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "Evaluate text format": {
      "main": [
        [
          {
            "node": "Merge Evaluations",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "Evaluate link in text": {
      "main": [
        [
          {
            "node": "Merge Evaluations",
            "type": "main",
            "index": 1
          }
        ]
      ]
    },
    "Filter Subreddit URLs": {
      "main": [
        [
          {
            "node": "Code in JavaScript1",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "Set Evaluation Output": {
      "main": [
        []
      ]
    },
    "Evaluation ghseet tool": {
      "main": [
        [
          {
            "node": "Merge Evaluations",
            "type": "main",
            "index": 2
          }
        ]
      ]
    },
    "Structured Output Parser": {
      "ai_outputParser": [
        [
          {
            "node": "AI Agent",
            "type": "ai_outputParser",
            "index": 0
          }
        ]
      ]
    },
    "Create a comment in a post": {
      "main": [
        [
          {
            "node": "Evaluate text format",
            "type": "main",
            "index": 0
          },
          {
            "node": "Evaluate link in text",
            "type": "main",
            "index": 0
          },
          {
            "node": "Evaluation ghseet tool",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "When fetching a dataset row": {
      "main": [
        [
          {
            "node": "Edit Fields",
            "type": "main",
            "index": 0
          }
        ]
      ]
    }
  }
}

Credentials you'll need

Each integration node will prompt for credentials when you import. We strip credential IDs before publishing — you'll add your own.

Pro

For the full experience including quality scoring and batch install features for each workflow upgrade to Pro

About this workflow

Automate how you reply to Reddit posts using AI-generated, first-person comments that sound human, follow subreddit rules, and (optionally) promote your own links or products.

Source: https://n8n.io/workflows/9371/ — original creator credit. Request a take-down →

More AI & RAG workflows → · Browse all categories →

Related workflows

Workflows that share integrations, category, or trigger type with this one. All free to copy and import.

AI & RAG

This template and YouTube video goes over 5 different implementations of evaluations within n8n. Categorization Correctness Tools used String similarity Helpfulness

Evaluation, Evaluation Trigger, Google Gemini Chat +8
AI & RAG

Automate Email Classification, Prioritization, and Spam Detection Across Multiple Accounts

Gmail Trigger, Agent, OpenAI Chat +4
AI & RAG

The scoring approach is adapted from the open-source evaluations project RAGAS and you can see the source here https://github.com/explodinggradients/ragas/blob/main/ragas/src/ragas/metrics/answercorre

Chain Llm, Output Parser Structured, OpenAI Chat +5
AI & RAG

Streamline your HR recruitment process with this intelligent automation that reads candidate emails and resumes, analyzes them using GPT-4, and automatically shortlists or rejects applicants based on

Gmail, Gmail Trigger, HTTP Request +7
AI & RAG

Developers building AI-powered workflows who want to ensure their agents work reliably. If you need to validate AI outputs, test agent behavior systematically, or build maintainable automation, this t

Execute Workflow Trigger, Evaluation Trigger, Output Parser Structured +4