OpenRouter AIとGoogle Sheetsを使ってブラウジング履歴を分析し、自動化された提案を生成する
中級
これはPersonal Productivity, AI Summarization分野の自動化ワークフローで、12個のノードを含みます。主にCode, Filter, GoogleSheets, ManualTrigger, SplitInBatchesなどのノードを使用。 OpenRouter AIとGoogle Sheetsを使用して閲覧履歴を分析し、自動化された提案を生成
前提条件
- •Google Sheets API認証情報
- •ターゲットAPIの認証情報が必要な場合あり
使用ノード (12)
ワークフロープレビュー
ノード接続関係を可視化、ズームとパンをサポート
ワークフローをエクスポート
以下のJSON設定をn8nにインポートして、このワークフローを使用できます
{
"meta": {
"instanceId": "9e2be6ba5ff8dd7a908d0b8006c046764e7b3f15c79d121bf914d51a0b406e85",
"templateCredsSetupCompleted": true
},
"nodes": [
{
"id": "0b829d80-6090-460d-bc0e-5d0ff925251b",
"name": "ワークフロー実行時('Execute workflow'クリック時)",
"type": "n8n-nodes-base.manualTrigger",
"position": [
-380,
-20
],
"parameters": {},
"typeVersion": 1
},
{
"id": "b2114f33-6fab-4e0b-9c03-63b54faf166f",
"name": "シート内の行を取得",
"type": "n8n-nodes-base.googleSheets",
"position": [
-160,
-20
],
"parameters": {
"options": {},
"sheetName": {
"__rl": true,
"mode": "list",
"value": 1592379591,
"cachedResultUrl": "https://docs.google.com/spreadsheets/d/1V26KDJLBZno6e_VxaBqhsK_JOOOn_5N6uww2apcAeoc/edit#gid=1592379591",
"cachedResultName": "history"
},
"documentId": {
"__rl": true,
"mode": "list",
"value": "1V26KDJLBZno6e_VxaBqhsK_JOOOn_5N6uww2apcAeoc",
"cachedResultUrl": "https://docs.google.com/spreadsheets/d/1V26KDJLBZno6e_VxaBqhsK_JOOOn_5N6uww2apcAeoc/edit?usp=drivesdk",
"cachedResultName": "Untitled spreadsheet"
}
},
"credentials": {
"googleSheetsOAuth2Api": {
"id": "c7TYv7ZcF6y7LGEQ",
"name": "Google Sheets account"
}
},
"typeVersion": 4.6
},
{
"id": "a81bbc84-5d25-42fa-b8d5-0ef4d97517b2",
"name": "不要なドメインを除外",
"type": "n8n-nodes-base.filter",
"position": [
280,
-20
],
"parameters": {
"options": {},
"conditions": {
"options": {
"version": 2,
"leftValue": "",
"caseSensitive": true,
"typeValidation": "strict"
},
"combinator": "and",
"conditions": [
{
"id": "5d9d468c-cdc3-40c8-94ac-05260397ff1e",
"operator": {
"type": "string",
"operation": "notRegex"
},
"leftValue": "={{ $json.group[0].domain }}",
"rightValue": "=/(?:youtube\\.com|google\\.(com|[a-z]{2})|chatgpt\\.com|openai\\.com|chromewebstore.google.com)/i"
}
]
}
},
"typeVersion": 2.2
},
{
"id": "323337f3-3aec-4b25-9777-e50ce77d088f",
"name": "ドメインごとに履歴をグループ化",
"type": "n8n-nodes-base.code",
"position": [
60,
-20
],
"parameters": {
"jsCode": "const items = $input.all();\nconst grouped = {};\n\n// Group items by domain\nfor (const item of items) {\n const url = item.json.url;\n const domain = url.split(\"/\")[2]; // Extract domain\n item.json.domain = domain;\n\n if (!grouped[domain]) {\n grouped[domain] = [];\n }\n\n grouped[domain].push(item.json); // Store just the data part\n}\n\n// Convert grouped object to n8n-friendly format\nconst result = [];\n\nfor (const group of Object.values(grouped)) {\n result.push({\n \n group: group, // Now `group` is the array under an object\n \n });\n}\n\nreturn result;\n"
},
"typeVersion": 2
},
{
"id": "dfa4698f-ced5-48ff-89db-c8f15705aeda",
"name": "AIエージェント",
"type": "@n8n/n8n-nodes-langchain.agent",
"position": [
1000,
0
],
"parameters": {
"text": "=Here is a grouped browsing history from one domain. Analyze whether it's automatable and why.\n\nHistory:{{ $json.prompt }}\n\n\nPlease analyze and tell me:\n- Is this automatable?\n- What should be automated?\n- What is the automation rating?\n-save result on google sheet",
"options": {
"systemMessage": "You are an expert automation analyst AI that uses tools to analyze web browsing history and determine if tasks can be automated.\n\nYou have access to tools such as:\n- Google Sheets (to save recommendations)\n- Web automation platforms (e.g., browser scripts, Apify, Puppeteer, n8n)\n- APIs and schedulers (to trigger tasks periodically)\n-search n8n templates\n\nYour responsibilities:\n1. Analyze the user's browsing history grouped by domain.\n2. Identify repetitive, frequent, or structured browsing behavior.\n3. Determine whether automation is possible.\n4. If yes, describe the specific action(s) to automate using available tools.\n5. Record your output in a structured format for use with Google Sheets.\n\nUse your tools wisely:\n- Save automation suggestions into a structured row (domain, automatable, what to automate, reason, automation rating).\n- Suggest appropriate tools (e.g., \"Use Apify to scrape dashboard\", \"Use n8n to schedule login\").\n\nOutput format:\n```json\n{\n \"domain\": \"<example.com>\",\n \"automatable\": true,\n \"what_to_automate\": \"<Brief, tool-aware suggestion>\",\n \"reason\": \"<Why it's suitable or not>\",\n \"tool\": \"<Suggested tool: n8n, Apify, Google Apps Script, etc.>\",\n \"automation_rating\": \"High\" // Or Medium, Low, Not Automatable,\nn8n_template:templates urls\n}\n"
},
"promptType": "define"
},
"typeVersion": 2
},
{
"id": "01bc75db-8254-4165-96f5-06a0c4bd682f",
"name": "アイテムをループ処理",
"type": "n8n-nodes-base.splitInBatches",
"position": [
500,
-20
],
"parameters": {
"options": {},
"batchSize": "={{ $input.all().length }}"
},
"typeVersion": 3
},
{
"id": "b9d674fe-6c2e-4359-a415-98233caaa342",
"name": "OpenRouterチャットモデル",
"type": "@n8n/n8n-nodes-langchain.lmChatOpenRouter",
"position": [
1000,
340
],
"parameters": {
"options": {}
},
"credentials": {
"openRouterApi": {
"id": "tC9q2VizRVbSvlww",
"name": "OpenRouter account"
}
},
"typeVersion": 1
},
{
"id": "8833b3b4-36c6-4ab9-a72a-5955b7d4427d",
"name": "コード",
"type": "n8n-nodes-base.code",
"position": [
760,
0
],
"parameters": {
"mode": "runOnceForEachItem",
"jsCode": "// Loop over input items and add a new field called 'myNewField' to the JSON of each one\nreturn {\n prompt:JSON.stringify($json)}"
},
"typeVersion": 2
},
{
"id": "1ea2312d-5b13-4d7c-971c-81ac6598f1de",
"name": "シンプルメモリ",
"type": "@n8n/n8n-nodes-langchain.memoryBufferWindow",
"position": [
1280,
240
],
"parameters": {
"sessionKey": "={{ $('Loop Over Items').item.json.group[0].domain }}",
"sessionIdType": "customKey"
},
"typeVersion": 1.3
},
{
"id": "ca69ff37-653a-4d40-b030-3439735e9289",
"name": "Google シートに行を追加",
"type": "n8n-nodes-base.googleSheetsTool",
"position": [
1160,
480
],
"parameters": {
"columns": {
"value": {
"domain": "={{ /*n8n-auto-generated-fromAI-override*/ $fromAI('domain__using_to_match_', ``, 'string') }}",
"reason": "={{ /*n8n-auto-generated-fromAI-override*/ $fromAI('reason', ``, 'string') }}",
"automatable": "={{ /*n8n-auto-generated-fromAI-override*/ $fromAI('automatable', ``, 'string') }}",
"n8n_template": "={{ /*n8n-auto-generated-fromAI-override*/ $fromAI('n8n_template', ``, 'string') }}",
"what_to_automate": "={{ /*n8n-auto-generated-fromAI-override*/ $fromAI('what_to_automate', ``, 'string') }}",
"automation_rating": "={{ /*n8n-auto-generated-fromAI-override*/ $fromAI('automation_rating', ``, 'string') }}"
},
"schema": [
{
"id": "domain",
"type": "string",
"display": true,
"removed": false,
"required": false,
"displayName": "domain",
"defaultMatch": false,
"canBeUsedToMatch": true
},
{
"id": "automatable",
"type": "string",
"display": true,
"removed": false,
"required": false,
"displayName": "automatable",
"defaultMatch": false,
"canBeUsedToMatch": true
},
{
"id": "what_to_automate",
"type": "string",
"display": true,
"removed": false,
"required": false,
"displayName": "what_to_automate",
"defaultMatch": false,
"canBeUsedToMatch": true
},
{
"id": "reason",
"type": "string",
"display": true,
"removed": false,
"required": false,
"displayName": "reason",
"defaultMatch": false,
"canBeUsedToMatch": true
},
{
"id": "automation_rating",
"type": "string",
"display": true,
"removed": false,
"required": false,
"displayName": "automation_rating",
"defaultMatch": false,
"canBeUsedToMatch": true
},
{
"id": "n8n_template",
"type": "string",
"display": true,
"removed": false,
"required": false,
"displayName": "n8n_template",
"defaultMatch": false,
"canBeUsedToMatch": true
}
],
"mappingMode": "defineBelow",
"matchingColumns": [
"domain"
],
"attemptToConvertTypes": false,
"convertFieldsToString": false
},
"options": {},
"operation": "append",
"sheetName": {
"__rl": true,
"mode": "list",
"value": 1970061780,
"cachedResultUrl": "https://docs.google.com/spreadsheets/d/1V26KDJLBZno6e_VxaBqhsK_JOOOn_5N6uww2apcAeoc/edit#gid=1970061780",
"cachedResultName": "automations"
},
"documentId": {
"__rl": true,
"mode": "list",
"value": "1V26KDJLBZno6e_VxaBqhsK_JOOOn_5N6uww2apcAeoc",
"cachedResultUrl": "https://docs.google.com/spreadsheets/d/1V26KDJLBZno6e_VxaBqhsK_JOOOn_5N6uww2apcAeoc/edit?usp=drivesdk",
"cachedResultName": "history"
},
"descriptionType": "manual",
"toolDescription": "use this to save analyse result to google sheet "
},
"credentials": {
"googleSheetsOAuth2Api": {
"id": "c7TYv7ZcF6y7LGEQ",
"name": "Google Sheets account"
}
},
"typeVersion": 4.6
},
{
"id": "0e2fceb0-4498-4ee3-8a72-0611d7ba5afd",
"name": "HTTP リクエスト",
"type": "n8n-nodes-base.httpRequestTool",
"position": [
1300,
440
],
"parameters": {
"url": "https://n8n.io/workflows/?sort=views:desc",
"options": {},
"sendQuery": true,
"queryParameters": {
"parameters": [
{
"name": "q",
"value": "={{ /*n8n-auto-generated-fromAI-override*/ $fromAI('parameters0_Value', ``, 'string') }}"
}
]
},
"toolDescription": "get n8n template list from search page"
},
"typeVersion": 4.2
},
{
"id": "93f68db2-7ba5-4ade-941d-d5309a70fb78",
"name": "付箋メモ",
"type": "n8n-nodes-base.stickyNote",
"position": [
-460,
180
],
"parameters": {
"width": 740,
"height": 2440,
"content": "# 🧠 Browsing History Automation Analyzer – Automation Toolkit (Google Sheets + AI)\n\nThis **n8n workflow** analyzes your browsing history to identify opportunities for automation. It reads history from a Google Sheet, groups visits by domain, filters out irrelevant entries, and uses AI to recommend what can be automated — including how and why.\n\n---\n\n## 📌 What It Does\n\n- 📄 **Reads** your browsing history from Google Sheets\n- 🌐 **Groups** history by domain\n- 🚫 **Filters out** common non-actionable domains (e.g., YouTube, Google)\n- 🤖 **Uses AI** to analyze whether your activity on each site is automatable\n- 💡 **Provides suggestions** including what to automate, how to do it, and which tools to use\n- 📝 **Saves results** into a new tab in the same Google Sheet\n- 🔍 **Searches for n8n workflow templates** related to the suggested automation\n\n---\n\n## 📊 Demo Sheet\n\nInput + output are handled via the following Google Sheet:\n\n**📎 Spreadsheet**: \n[View on Google Sheets](https://docs.google.com/spreadsheets/d/1V26KDJLBZno6e_VxaBqhsK_JOOOn_5N6uww2apcAeoc/edit?usp=drivesdk)\n\n- **Sheet: `history`** → Input browsing history\n- **Sheet: `automations`** → Output AI automation suggestions\n\n---\n\n## 🧠 AI Analysis Logic\n\nThe AI agent receives each domain's browsing history and responds with:\n- `domain`: The website domain\n- `automatable`: true/false\n- `what_to_automate`: Specific actions that can be automated\n- `reason`: Why it's suitable (or not) for automation\n- `tool`: Suggested automation tool (e.g., n8n, Apify)\n- `automation_rating`: High, Medium, Low, or Not Automatable\n- `n8n_template`: Relevant automation template (if found)\n\n---\n\n## 🔧 Technologies Used\n\n| Tool | Purpose |\n|--------------------------|-------------------------------------|\n| **n8n** | Workflow automation |\n| **LangChain AI Agent** | AI-based analysis |\n| **Google Sheets Node** | Input/output data handling |\n| **OpenRouter (LLM)** | Language model for intelligent reasoning |\n| **JavaScript Code Node** | Grouping and formatting logic |\n| **Filter Node** | Remove unwanted domains |\n| **HTTP Request Node** | Search n8n.io templates |\n\n---\n\n## 💻 Chrome History Export\n\nYou can use this Chrome extension to export your browsing history in a format compatible with the workflow:\n\n🔗 [Export Chrome History Extension](https://chromewebstore.google.com/detail/export-chrome-history/dihloblpkeiddiaojbagoecedbfpifdj?pli=1)\n\n---\n\n## 📧 Want Personalized Automation Advice?\n\nIf you'd like **personalized automation recommendations** based on your browsing history—just like what this workflow provides—feel free to contact me directly:\n\n> 📩 **msaidwolfltd@gmail.com**\n\nI'll help you discover what tasks you can automate to save time and boost productivity.\n\n---\n\n## 🚀 Example Use Cases\n\n- Automate daily logins to dashboards\n- Auto-fill forms on repetitive websites\n- Schedule data exports from web portals\n- Trigger reminders based on recurring visits\n- Discover opportunities for scraping and integration\n\n---\n\n## 📜 License\n\nThis workflow is provided as-is for educational and personal use. For commercial or customized use, contact the author.\n\n---\n\n"
},
"typeVersion": 1
}
],
"pinData": {},
"connections": {
"8833b3b4-36c6-4ab9-a72a-5955b7d4427d": {
"main": [
[
{
"node": "dfa4698f-ced5-48ff-89db-c8f15705aeda",
"type": "main",
"index": 0
}
]
]
},
"dfa4698f-ced5-48ff-89db-c8f15705aeda": {
"main": [
[
{
"node": "01bc75db-8254-4165-96f5-06a0c4bd682f",
"type": "main",
"index": 0
}
]
]
},
"0e2fceb0-4498-4ee3-8a72-0611d7ba5afd": {
"ai_tool": [
[
{
"node": "dfa4698f-ced5-48ff-89db-c8f15705aeda",
"type": "ai_tool",
"index": 0
}
]
]
},
"1ea2312d-5b13-4d7c-971c-81ac6598f1de": {
"ai_memory": [
[
{
"node": "dfa4698f-ced5-48ff-89db-c8f15705aeda",
"type": "ai_memory",
"index": 0
}
]
]
},
"01bc75db-8254-4165-96f5-06a0c4bd682f": {
"main": [
[],
[
{
"node": "8833b3b4-36c6-4ab9-a72a-5955b7d4427d",
"type": "main",
"index": 0
}
]
]
},
"b2114f33-6fab-4e0b-9c03-63b54faf166f": {
"main": [
[
{
"node": "323337f3-3aec-4b25-9777-e50ce77d088f",
"type": "main",
"index": 0
}
]
]
},
"b9d674fe-6c2e-4359-a415-98233caaa342": {
"ai_languageModel": [
[
{
"node": "dfa4698f-ced5-48ff-89db-c8f15705aeda",
"type": "ai_languageModel",
"index": 0
}
]
]
},
"a81bbc84-5d25-42fa-b8d5-0ef4d97517b2": {
"main": [
[
{
"node": "01bc75db-8254-4165-96f5-06a0c4bd682f",
"type": "main",
"index": 0
}
]
]
},
"323337f3-3aec-4b25-9777-e50ce77d088f": {
"main": [
[
{
"node": "a81bbc84-5d25-42fa-b8d5-0ef4d97517b2",
"type": "main",
"index": 0
}
]
]
},
"ca69ff37-653a-4d40-b030-3439735e9289": {
"ai_tool": [
[
{
"node": "dfa4698f-ced5-48ff-89db-c8f15705aeda",
"type": "ai_tool",
"index": 0
}
]
]
},
"0b829d80-6090-460d-bc0e-5d0ff925251b": {
"main": [
[
{
"node": "b2114f33-6fab-4e0b-9c03-63b54faf166f",
"type": "main",
"index": 0
}
]
]
}
}
}よくある質問
このワークフローの使い方は?
上記のJSON設定コードをコピーし、n8nインスタンスで新しいワークフローを作成して「JSONからインポート」を選択、設定を貼り付けて認証情報を必要に応じて変更してください。
このワークフローはどんな場面に適していますか?
中級 - 個人の生産性, AI要約
有料ですか?
このワークフローは完全無料です。ただし、ワークフローで使用するサードパーティサービス(OpenAI APIなど)は別途料金が発生する場合があります。
関連ワークフロー
AI駆動のGoogle Mapsビジネスデータスクレイピングとスプレッドシート出力
AIを基盤としたGoogle Mapsビジネスデータの収集、データの充実化、スプレッドシートへのエクスポートをサポート
If
Code
Wait
+
If
Code
Wait
25 ノードMsaid Mohamed el hadi
リード獲得
Facebookページコメント管理ボット:返信、削除、利用制限、通知
AI駆動のFacebookコメント管理:自動返信、削除、利用制限、通知
If
Set
Code
+
If
Set
Code
59 ノードSpaGreen Creative
ソーシャルメディア
n8nノードの探索(可視化リファレンスライブラリ内)
n8nノードを可視化リファレンスライブラリで探索
If
Ftp
Set
+
If
Ftp
Set
113 ノードI versus AI
その他
複数の採用サイトからの求人情報の自動化
5 つの求人プラットフォームと AI リジュームジェネレーターを使った就職・応募の自動化
If
Set
Code
+
If
Set
Code
34 ノードGerald Denor
個人の生産性
Google Sheets、SerpAPI、Apify、GPT-4o を使ってローカル企業の連絡先を抽出
Google Sheets、SerpAPI、Apify、GPT-4oを使ってローカルの企業連絡先を取得する
Code
Filter
Summarize
+
Code
Filter
Summarize
18 ノードRobert Breen
リード獲得
PDFのテンプレートを抽出
Google Sheets追跡用Llama AIモデル
Set
Code
Html
+
Set
Code
Html
24 ノードCristian Baño Belchí
文書抽出
ワークフロー情報
難易度
中級
ノード数12
カテゴリー2
ノードタイプ11
作成者
Msaid Mohamed el hadi
@mohamedgb00714Hi! I’m Mohamed El Hadi, a passionate developer and automation expert from Algeria. I specialize in building smart, scalable workflows using n8n to streamline business operations, save time, and drive innovation. 🌍 Open to collaborations | 🤖 Automation lover | 💼 Founder of EcoPetDZ & AADL Auto Reload
外部リンク
n8n.ioで表示 →
このワークフローを共有