{
  "name": "Search Slack for n8n templates with OpenAI tips, Google Sheets cache and weekly analytics",
  "nodes": [
    {
      "id": "66e219b9-b9c9-4c0f-8f1c-673cdfd73025",
      "name": "Sticky Note - Overview",
      "type": "n8n-nodes-base.stickyNote",
      "position": [
        1488,
        480
      ],
      "parameters": {
        "width": 560,
        "height": 796,
        "content": "# n8n Template Search Bot for Slack (Enhanced)\n\nA smart Slack bot that searches the official n8n template library, provides **AI-powered tips & suggestions**, caches results, and logs analytics.\n\n### "
      }
    },
    {
      "id": "b4a600aa-8a7d-4408-894f-f0b73ba13cbf",
      "name": "Sticky Note - Trigger",
      "type": "n8n-nodes-base.stickyNote",
      "position": [
        2080,
        480
      ],
      "parameters": {
        "width": null,
        "height": 576,
        "content": "## Trigger\nListens for `@bot` mentions in the configured Slack channel."
      }
    },
    {
      "id": "6e44adf0-7969-4716-8f43-31f282cc00f4",
      "name": "Sticky Note - Normalize",
      "type": "n8n-nodes-base.stickyNote",
      "position": [
        2352,
        480
      ],
      "parameters": {
        "width": 480,
        "height": 576,
        "content": "## Normalize, Extract & Detect Intent\nDetects 200+ tool/service names, translates 150+ Japanese terms, and classifies intent (search / help / categories)."
      }
    },
    {
      "id": "c4895ce6-e687-49b9-ad38-bded625e1685",
      "name": "Sticky Note - Intent Router",
      "type": "n8n-nodes-base.stickyNote",
      "position": [
        2864,
        480
      ],
      "parameters": {
        "width": 300,
        "height": 576,
        "content": "## Intent Router\nRoutes the message based on detected intent:\n- **search** > Cache check > API > AI Tips\n- **help** > Direct help response\n- **categories** > Show popular categories"
      }
    },
    {
      "id": "04a0c158-4d41-4801-860f-a6badc71f7af",
      "name": "Sticky Note - Cache",
      "type": "n8n-nodes-base.stickyNote",
      "position": [
        3216,
        480
      ],
      "parameters": {
        "width": 300,
        "height": 560,
        "content": "## Cache Layer\nChecks Google Sheets for recent identical searches to avoid redundant API calls."
      }
    },
    {
      "id": "e9b33ce0-54b7-421e-9bd3-4d089a6d9fbc",
      "name": "Sticky Note - Search & AI",
      "type": "n8n-nodes-base.stickyNote",
      "position": [
        3552,
        480
      ],
      "parameters": {
        "width": 540,
        "height": 560,
        "content": "## Search + AI Tips\nQueries the n8n Templates API, then uses OpenAI to generate contextual tips and improvement ideas based on what the user is trying to build."
      }
    },
    {
      "id": "458babca-4a03-47e4-ac71-2a3cab9fcbc4",
      "name": "Sticky Note - Reply & Log",
      "type": "n8n-nodes-base.stickyNote",
      "position": [
        4128,
        480
      ],
      "parameters": {
        "width": 480,
        "height": 560,
        "content": "## Format, Reply & Log\nFormats results with tips into Slack message, replies in thread, and logs the search to Google Sheets for analytics."
      }
    },
    {
      "id": "589b04f2-b4d6-4c57-9959-d62117fc351a",
      "name": "Sticky Note - Error Handling",
      "type": "n8n-nodes-base.stickyNote",
      "position": [
        3552,
        1104
      ],
      "parameters": {
        "width": 400,
        "height": 260,
        "content": "## Error Handling\nCatches any errors in the workflow and sends a friendly error message to the Slack thread so the user isn't left hanging."
      }
    },
    {
      "id": "f37da460-ffa2-40c3-979c-0cd583e0d437",
      "name": "Slack Trigger - Bot Mention",
      "type": "n8n-nodes-base.slackTrigger",
      "position": [
        2128,
        672
      ]
    },
    {
      "id": "b9a1fd51-7589-44fc-86af-eb3c3cfb5237",
      "name": "Extract Keywords & Detect Intent",
      "type": "n8n-nodes-base.code",
      "position": [
        2384,
        672
      ]
    },
    {
      "id": "d7a74f99-86e7-4b59-a579-b68fdd810b5c",
      "name": "Route by Intent",
      "type": "n8n-nodes-base.switch",
      "position": [
        2896,
        672
      ]
    },
    {
      "id": "2121a1a9-a862-4e75-a8bd-7a0bc148b4cd",
      "name": "Generate Help Response",
      "type": "n8n-nodes-base.code",
      "position": [
        3248,
        848
      ]
    },
    {
      "id": "b0c77ce9-3c51-4bb1-82df-81a1b210c405",
      "name": "Generate Categories Response",
      "type": "n8n-nodes-base.code",
      "position": [
        3248,
        1008
      ]
    },
    {
      "id": "7e923edf-ee41-47f0-9d28-bde14673a861",
      "name": "Check Cache - Google Sheets",
      "type": "n8n-nodes-base.googleSheets",
      "position": [
        3248,
        672
      ]
    },
    {
      "id": "0d725409-069e-4112-9cfd-97bf96e0e7e4",
      "name": "Cache Hit?",
      "type": "n8n-nodes-base.if",
      "position": [
        3488,
        672
      ]
    },
    {
      "id": "33fecaff-7c24-4258-9080-492bf4c38555",
      "name": "Use Cached Result",
      "type": "n8n-nodes-base.code",
      "position": [
        3728,
        576
      ]
    },
    {
      "id": "8ac341d7-5e1d-4c38-8eab-ed45ffced95b",
      "name": "Search n8n Templates API",
      "type": "n8n-nodes-base.httpRequest",
      "position": [
        3728,
        752
      ]
    },
    {
      "id": "d4a54b06-bf4b-4863-a101-f69434634c47",
      "name": "Has Results?",
      "type": "n8n-nodes-base.if",
      "position": [
        3952,
        752
      ]
    },
    {
      "id": "b4fd11b9-39a0-4743-852c-0f2244ef6bae",
      "name": "AI Generate Tips & Suggestions",
      "type": "n8n-nodes-base.httpRequest",
      "position": [
        4176,
        672
      ]
    },
    {
      "id": "9cad6de8-9fe4-46cd-aba0-01b3c5cb55ca",
      "name": "AI Suggest Alternatives",
      "type": "n8n-nodes-base.httpRequest",
      "position": [
        4176,
        864
      ]
    },
    {
      "id": "595a3450-f9ce-416a-b6a0-d4e6540097e9",
      "name": "Format Results + Tips",
      "type": "n8n-nodes-base.code",
      "position": [
        4384,
        672
      ]
    },
    {
      "id": "11e60ed3-5aca-4b33-ae0d-50c61318b0a0",
      "name": "Format No Results + Suggestions",
      "type": "n8n-nodes-base.code",
      "position": [
        4384,
        864
      ]
    },
    {
      "id": "9a82d5d2-8249-4410-a8d1-50045659e358",
      "name": "Reply in Slack Thread",
      "type": "n8n-nodes-base.slack",
      "position": [
        4656,
        752
      ]
    },
    {
      "id": "2918f595-8684-4dd0-b80a-fb046037eb7a",
      "name": "Log to Analytics Sheet",
      "type": "n8n-nodes-base.googleSheets",
      "position": [
        4896,
        688
      ]
    },
    {
      "id": "da32f4a8-3d9e-4606-a1a7-868dde8e4e53",
      "name": "Save to Cache Sheet",
      "type": "n8n-nodes-base.googleSheets",
      "position": [
        4896,
        848
      ]
    },
    {
      "id": "25eeb69f-5954-4fc3-bef0-ce8e73513421",
      "name": "Error Trigger",
      "type": "n8n-nodes-base.errorTrigger",
      "position": [
        3584,
        1184
      ]
    },
    {
      "id": "a3f5b0ea-c026-46eb-8686-ab4a7c92837f",
      "name": "Error Reply in Slack",
      "type": "n8n-nodes-base.slack",
      "position": [
        3856,
        1184
      ]
    },
    {
      "id": "344ee196-083a-4dda-bd29-c79d8ce9c190",
      "name": "Weekly Analytics Cron",
      "type": "n8n-nodes-base.scheduleTrigger",
      "position": [
        4128,
        1184
      ]
    },
    {
      "id": "51d09a31-82a2-4b97-8459-2178fe659c82",
      "name": "Read Analytics Data",
      "type": "n8n-nodes-base.googleSheets",
      "position": [
        4352,
        1184
      ]
    },
    {
      "id": "26b22a54-20a3-4cb0-b7c9-cfb5692b8f0a",
      "name": "Generate Weekly Summary",
      "type": "n8n-nodes-base.code",
      "position": [
        4576,
        1184
      ]
    },
    {
      "id": "8e775a45-f38c-45ff-b5df-bfb60da40d52",
      "name": "Post Weekly Summary to Slack",
      "type": "n8n-nodes-base.slack",
      "position": [
        4784,
        1184
      ]
    }
  ],
  "connections": {
    "Cache Hit?": {
      "main": [
        [
          {
            "node": "Use Cached Result",
            "type": "main",
            "index": 0
          }
        ],
        [
          {
            "node": "Search n8n Templates API",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "Has Results?": {
      "main": [
        [
          {
            "node": "AI Generate Tips & Suggestions",
            "type": "main",
            "index": 0
          }
        ],
        [
          {
            "node": "AI Suggest Alternatives",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "Error Trigger": {
      "main": [
        [
          {
            "node": "Error Reply in Slack",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "Route by Intent": {
      "main": [
        [
          {
            "node": "Check Cache - Google Sheets",
            "type": "main",
            "index": 0
          }
        ],
        [
          {
            "node": "Generate Help Response",
            "type": "main",
            "index": 0
          }
        ],
        [
          {
            "node": "Generate Categories Response",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "Use Cached Result": {
      "main": [
        [
          {
            "node": "Reply in Slack Thread",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "Read Analytics Data": {
      "main": [
        [
          {
            "node": "Generate Weekly Summary",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "Format Results + Tips": {
      "main": [
        [
          {
            "node": "Reply in Slack Thread",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "Reply in Slack Thread": {
      "main": [
        [
          {
            "node": "Log to Analytics Sheet",
            "type": "main",
            "index": 0
          },
          {
            "node": "Save to Cache Sheet",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "Weekly Analytics Cron": {
      "main": [
        [
          {
            "node": "Read Analytics Data",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "Generate Help Response": {
      "main": [
        [
          {
            "node": "Reply in Slack Thread",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "AI Suggest Alternatives": {
      "main": [
        [
          {
            "node": "Format No Results + Suggestions",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "Generate Weekly Summary": {
      "main": [
        [
          {
            "node": "Post Weekly Summary to Slack",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "Search n8n Templates API": {
      "main": [
        [
          {
            "node": "Has Results?",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "Check Cache - Google Sheets": {
      "main": [
        [
          {
            "node": "Cache Hit?",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "Slack Trigger - Bot Mention": {
      "main": [
        [
          {
            "node": "Extract Keywords & Detect Intent",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "Generate Categories Response": {
      "main": [
        [
          {
            "node": "Reply in Slack Thread",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "AI Generate Tips & Suggestions": {
      "main": [
        [
          {
            "node": "Format Results + Tips",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "Format No Results + Suggestions": {
      "main": [
        [
          {
            "node": "Reply in Slack Thread",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "Extract Keywords & Detect Intent": {
      "main": [
        [
          {
            "node": "Route by Intent",
            "type": "main",
            "index": 0
          }
        ]
      ]
    }
  }
}