This workflow corresponds to n8n.io template #13271 — we link there as the canonical source.
This workflow follows the Agent → Chat 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 →
{
"meta": {
"templateCredsSetupCompleted": true
},
"nodes": [
{
"id": "4adb1e88-535b-4b6b-8f97-cee2e40770a0",
"name": "AI Agent",
"type": "@n8n/n8n-nodes-langchain.agent",
"position": [
544,
0
],
"parameters": {
"text": "={{ $('When chat message received in Chat Hub').item.json.chatInput }}",
"options": {
"maxIterations": 50,
"systemMessage": "You are a general-purpose search assistant in n8n Chat Hub. You process information, help think through problems, and return accurate results.\n\n## Chat Hub Output\nYou are responding in n8n Chat Hub. Standard markdown works: **bold**, *italic*, `code`, lists, headers.\n\n### Links\nUse standard markdown links:\n`[domain.com](https://full-url-here)`\n\n### Images\nChat Hub does not auto-render images. Use full URLs with markdown:\n``\n\n## Search Rules\n\n### Search-before-answering\nFor any factual/verifiable question, do not answer from memory. Use the Search tool first. This includes:\n- prices, specs, availability\n- benchmarks or performance claims\n- dates, policies, anything that changes\n- anything you could reasonably source\n\n### Citations (mandatory)\nEvery factual claim needs an inline citation immediately after it, using this exact format:\n`... [_[domain.com](https://full-url)_]`\n\nRules:\n- Link to the real source URL (not a search wrapper).\n- Prefer primary sources (official docs, .gov, vendor pages).\n- If no source exists, do not claim it. Say: \u201cI could not find a source for X.\u201d\n\n### What doesn\u2019t need citations\nPurely conceptual reasoning, frameworks, and clearly-labeled opinions. Anything that looks like a fact still needs a citation.\n\n## Tool Usage (one tool)\n\n### Search\nUse the Search tool for all factual/verifiable questions. Use it to:\n- find primary sources\n- verify numbers, specs, prices, dates, and \u201ccurrent\u201d claims\n- pull multiple viewpoints for comparisons or \u201cwhat do people think\u201d\n\n### Process\n- Plan what you need to verify, then run required searches in parallel (batch queries).\n- Synthesize only what you can cite. If you cannot source a claim, do not make it.\n- Ask a clarifying question only if you are blocked:\n - \u201cYour question could mean X or Y \u2014 which are you asking about?\u201d\n - \u201cTo answer this I need: [specific missing detail]\u201d"
},
"promptType": "define"
},
"executeOnce": false,
"typeVersion": 3.1
},
{
"id": "89e7a80a-cf16-4e62-90c6-0f65be69f5e3",
"name": "Sticky Note2",
"type": "n8n-nodes-base.stickyNote",
"position": [
768,
288
],
"parameters": {
"color": 7,
"width": 192,
"height": 240,
"content": "Quickly returns results with Tavily Search"
},
"typeVersion": 1
},
{
"id": "b3b49fc8-feb6-4f2a-8f7b-db4eb60d7c38",
"name": "Simple Memory",
"type": "@n8n/n8n-nodes-langchain.memoryBufferWindow",
"position": [
640,
384
],
"parameters": {},
"typeVersion": 1.3
},
{
"id": "b0c8c61d-c3db-41d2-9381-1c49d70c2c95",
"name": "Chat Model",
"type": "@n8n/n8n-nodes-langchain.lmChatOpenRouter",
"position": [
432,
384
],
"parameters": {
"model": "google/gemini-3-flash-preview",
"options": {
"temperature": 0.1
}
},
"credentials": {
"openRouterApi": {
"name": "<your credential>"
}
},
"typeVersion": 1
},
{
"id": "d82a8196-4f7f-417f-b5ef-e0b697476847",
"name": "Sticky Note",
"type": "n8n-nodes-base.stickyNote",
"position": [
128,
-128
],
"parameters": {
"color": 7,
"height": 288,
"content": "## Chat in Chat Hub\nGo to `{your-n8n-url}/home/chat` to use this agent!"
},
"typeVersion": 1
},
{
"id": "4130e490-b5d5-485e-a586-d04e09dcb9af",
"name": "Sticky Note4",
"type": "n8n-nodes-base.stickyNote",
"position": [
480,
-128
],
"parameters": {
"color": 7,
"width": 384,
"height": 288,
"content": "## Just a Regular Ol Agent\nYou can build up from here! Add any other tool you want or add to the system prompt to fit your needs!"
},
"typeVersion": 1
},
{
"id": "96984713-4a82-4a0a-9999-06b65298c0e5",
"name": "Sticky Note7",
"type": "n8n-nodes-base.stickyNote",
"position": [
368,
192
],
"parameters": {
"width": 224,
"height": 320,
"content": "## Replace Me\nIf you want, replace me with the provider and model you prefer!\n\nMaybe pick one out on our [AI Benchmark](https://n8n.io/ai-benchmark)"
},
"typeVersion": 1
},
{
"id": "98d198d3-9c34-4a7b-8647-f559fdc83897",
"name": "When chat message received in Chat Hub",
"type": "@n8n/n8n-nodes-langchain.chatTrigger",
"position": [
192,
0
],
"parameters": {
"options": {
"responseMode": "streaming"
},
"agentIcon": {
"type": "emoji",
"value": "\ud83c\udf0e"
},
"agentName": "Search Agent",
"availableInChat": true,
"agentDescription": "An agent that can search quickly for fast answers as well as do deep research"
},
"typeVersion": 1.4
},
{
"id": "b8482b2a-7169-4abe-b260-0630db5b447a",
"name": "Search",
"type": "@tavily/n8n-nodes-tavily.tavilyTool",
"position": [
816,
384
],
"parameters": {
"query": "={{ /*n8n-auto-generated-fromAI-override*/ $fromAI('Query', ``, 'string') }}",
"options": {
"search_depth": "advanced"
}
},
"credentials": {
"tavilyApi": {
"name": "<your credential>"
}
},
"typeVersion": 1
}
],
"connections": {
"Search": {
"ai_tool": [
[
{
"node": "AI Agent",
"type": "ai_tool",
"index": 0
}
]
]
},
"Chat Model": {
"ai_languageModel": [
[
{
"node": "AI Agent",
"type": "ai_languageModel",
"index": 0
}
]
]
},
"Simple Memory": {
"ai_memory": [
[
{
"node": "AI Agent",
"type": "ai_memory",
"index": 0
}
]
]
},
"When chat message received in Chat Hub": {
"main": [
[
{
"node": "AI Agent",
"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.
openRouterApitavilyApi
For the full experience including quality scoring and batch install features for each workflow upgrade to Pro
About this workflow
A blazing fast research agent that works nativly in n8n's Chat Hub.
Source: https://n8n.io/workflows/13271/ — 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.
Send an AI a few details about your "Dream Customer" in normal english, then have it search the web and give you a "Dream 100" - 100 ideal prospects to connect with in your industry.
Turn any YouTube channel into a searchable knowledge base. The AI agent understands relationships between videos, topics, tools, and concepts - enabling powerful queries like "Which videos talk about
Overview Meet Maria, a sophisticated AI Booking Agent designed for Veterinary Clinics (but easily adaptable to any service business). This workflow transforms a simple chat interface into a full-scale
Easily Compare LLMs Using OpenAI and Google Sheets. Uses chatTrigger, splitInBatches, memoryBufferWindow, memoryManager. Chat trigger; 21 nodes.
This template gives you a framework to use skills in any n8n agent. You can use this as a starting point and add any other tools or patterns needed for your use case.