TimePilotエージェント
中級
これはPersonal Productivity, AI Chatbot分野の自動化ワークフローで、14個のノードを含みます。主にSet, WhatsApp, Agent, WhatsAppTrigger, GoogleCalendarToolなどのノードを使用。 WhatsAppとGPT-4仮想アシスタントでGoogleカレンダーを管理する
前提条件
- •OpenAI API Key
ワークフロープレビュー
ノード接続関係を可視化、ズームとパンをサポート
ワークフローをエクスポート
以下のJSON設定をn8nにインポートして、このワークフローを使用できます
{
"id": "fHwbWAf8GLSPdLMe",
"meta": {
"instanceId": "0113e6e8f0b87d10de7bde5508e446a6ee60d5da9eac8c7eea34b85efc06e886",
"templateCredsSetupCompleted": true
},
"name": "TimePilot Agent",
"tags": [],
"nodes": [
{
"id": "62514198-2f29-4a99-8747-7e88054649bb",
"name": "OpenAI チャットモデル",
"type": "@n8n/n8n-nodes-langchain.lmChatOpenAi",
"position": [
-740,
560
],
"parameters": {
"model": "gpt-4-turbo-preview",
"options": {}
},
"credentials": {
"openAiApi": {
"id": "0drnlAHYRUGeZtLD",
"name": "OpenAi Emails Key"
}
},
"typeVersion": 1
},
{
"id": "0a57b879-0e26-4221-a637-5496dc2e879f",
"name": "Success",
"type": "n8n-nodes-base.set",
"position": [
60,
340
],
"parameters": {
"options": {},
"assignments": {
"assignments": [
{
"id": "39c2f302-03be-4464-a17a-d7cc481d6d44",
"name": "=response",
"type": "string",
"value": "={{$json.output}}"
}
]
}
},
"typeVersion": 3.4
},
{
"id": "be536969-ceb6-479a-9090-f2af61e51788",
"name": "Create Event",
"type": "n8n-nodes-base.googleCalendarTool",
"position": [
-500,
560
],
"parameters": {
"end": "={{ /*n8n-auto-generated-fromAI-override*/ $fromAI('End', ``, 'string') }}",
"start": "={{ /*n8n-auto-generated-fromAI-override*/ $fromAI('Start', ``, 'string') }}",
"calendar": {
"__rl": true,
"mode": "list",
"value": "floyd.mahou@blockachainintegration.com",
"cachedResultName": "floyd.mahou@blockachainintegration.com"
},
"descriptionType": "manual",
"toolDescription": "=Consume Google Calendar API",
"additionalFields": {
"summary": "={{ /*n8n-auto-generated-fromAI-override*/ $fromAI('Summary', ``, 'string') }}",
"attendees": []
}
},
"credentials": {
"googleCalendarOAuth2Api": {
"id": "t9wYhPm1k7dsXYfU",
"name": "Google Calendar account"
}
},
"typeVersion": 1.3
},
{
"id": "79bb24fa-7432-4099-8b4e-a4245b0994b7",
"name": "Delete Event",
"type": "n8n-nodes-base.googleCalendarTool",
"position": [
-380,
560
],
"parameters": {
"eventId": "={{ $fromAI(\"eventID\") }}",
"options": {
"sendUpdates": "all"
},
"calendar": {
"__rl": true,
"mode": "list",
"value": "floyd.mahou@blockachainintegration.com",
"cachedResultName": "floyd.mahou@blockachainintegration.com"
},
"operation": "delete",
"descriptionType": "manual"
},
"credentials": {
"googleCalendarOAuth2Api": {
"id": "t9wYhPm1k7dsXYfU",
"name": "Google Calendar account"
}
},
"typeVersion": 1.3
},
{
"id": "b48b62cd-0664-4be9-97ad-0894076b222b",
"name": "Update Event",
"type": "n8n-nodes-base.googleCalendarTool",
"position": [
-260,
560
],
"parameters": {
"eventId": "={{ $fromAI(\"eventID\") }}",
"calendar": {
"__rl": true,
"mode": "list",
"value": "floyd.mahou@blockachainintegration.com",
"cachedResultName": "floyd.mahou@blockachainintegration.com"
},
"operation": "update",
"updateFields": {
"end": "={{ $fromAI(\"endTime\") }}",
"start": "={{ $fromAI(\"startTime\") }}"
},
"descriptionType": "manual"
},
"credentials": {
"googleCalendarOAuth2Api": {
"id": "t9wYhPm1k7dsXYfU",
"name": "Google Calendar account"
}
},
"typeVersion": 1.3
},
{
"id": "2503b217-d803-48e4-bcab-35326ad6fbcd",
"name": "WhatsApp Trigger",
"type": "n8n-nodes-base.whatsAppTrigger",
"position": [
-960,
340
],
"webhookId": "d214a512-4e47-4795-94e7-8fe22d728e53",
"parameters": {
"updates": [
"messages"
]
},
"credentials": {
"whatsAppTriggerApi": {
"id": "alfTM3LXYS7LSYrX",
"name": "WhatsApp OAuth "
}
},
"typeVersion": 1
},
{
"id": "75ca98bd-87cd-4d33-ae93-0ce24fee9128",
"name": "WhatsApp Business Cloud",
"type": "n8n-nodes-base.whatsApp",
"position": [
280,
340
],
"webhookId": "313cb932-f2a1-413c-82be-9992dd6f7fb2",
"parameters": {
"textBody": "={{ $json.response }}",
"operation": "send",
"phoneNumberId": "={{ $('WhatsApp Trigger').item.json.metadata.phone_number_id }}",
"additionalFields": {},
"recipientPhoneNumber": "ENTER YOUR PHONE NUMBER HERE"
},
"credentials": {
"whatsAppApi": {
"id": "aABgdezjiM28thx9",
"name": "WhatsApp account"
}
},
"typeVersion": 1
},
{
"id": "a07c2c51-ceed-4243-85c4-5f027dc01692",
"name": "Search Event",
"type": "n8n-nodes-base.googleCalendarTool",
"position": [
-140,
560
],
"parameters": {
"limit": "={{ $fromAI('Limit', ``, 'number') }}",
"options": {},
"timeMax": "={{ /*n8n-auto-generated-fromAI-override*/ $fromAI('Before', ``, 'string') }}",
"timeMin": "={{ /*n8n-auto-generated-fromAI-override*/ $fromAI('After', ``, 'string') }}",
"calendar": {
"__rl": true,
"mode": "list",
"value": "floyd.mahou@blockachainintegration.com",
"cachedResultName": "floyd.mahou@blockachainintegration.com"
},
"operation": "getAll",
"descriptionType": "manual"
},
"credentials": {
"googleCalendarOAuth2Api": {
"id": "t9wYhPm1k7dsXYfU",
"name": "Google Calendar account"
}
},
"typeVersion": 1.3
},
{
"id": "c38e2b8f-eb9f-49c7-87db-81dc322ab90b",
"name": "シンプルメモリ",
"type": "@n8n/n8n-nodes-langchain.memoryBufferWindow",
"position": [
-620,
560
],
"parameters": {
"sessionKey": "={{ $('WhatsApp Trigger').item.json.messages[0].type }}",
"sessionIdType": "customKey"
},
"typeVersion": 1.3
},
{
"id": "43bfc3ce-e5b0-407d-b556-e1bbdc78a178",
"name": "TimePilot",
"type": "@n8n/n8n-nodes-langchain.agent",
"position": [
-528,
340
],
"parameters": {
"text": "={{ $json.messages[0].text.body }}",
"options": {
"systemMessage": "=# Overview \nYou are a personal AI assistant that manages *your own calendar* through WhatsApp messages. You must always trigger the correct module corresponding to the requested action (create, update, search, delete). No assumptions or shortcuts—only execute via the designated modules.\n\n## Context \n- You are the only user of this system. \n- All requests come from WhatsApp and responses must be sent via WhatsApp. \n- You use Google Calendar modules to perform every action and confirm completion. \n- You understand both French and English. \n- Your tone is neutral, fast, and action-focused. \n\n## Instructions \n1. Always check if the input contains a clear calendar-related request. \n2. If the message is a greeting or polite phrase (e.g., \"Hi\", \"Thanks\", \"Hello\"), reply briefly and kindly. \n3. Always route tasks through the correct module:\n - Always Use **Search Event** to:\n - List all upcoming meetings.\n - Show availability.\n - Retrieve a specific event before updating or deleting it.\n -Always Use **Create Event with Attendee** to create any new event (even without participants).\n - Always Use **Update Event** only after retrieving the target event with **Search Event**.\n - Always Use **Delete Event** only after retrieving the event with **Search Event**.\n4. Never perform any action without using the appropriate module. \n5. If information is missing (like time or participants), ask one short, targeted follow-up question. \n6. Always confirm the completed action with a short message via WhatsApp. \n7. If the input is unclear, ask for clarification. Never guess. \n8. Never explain your steps or how you operate. Just act. \n\n## Tools \n- Search Event (availability/meeting schedule:calendar) \n- Create Event with Attendee (create:event) \n- Update Event (update:event) \n- Delete Event (delete:event) \n\n## Examples \n- Input: \"Yo\" \n - Output: \"Hi! What would you like to do with your calendar?\" \n- Input: \"Add a call tomorrow at 9am with Julien\" \n - Modules: Create Event with Attendee \n - Output: \"Call with Julien added tomorrow at 9am.\" \n- Input: \"What meetings do I have Friday?\" \n - Modules: Search Event \n - Output: \"On Friday you have: 10am 'Budget Review' with Claire, 3pm 'Product Sync' with Marc.\" \n- Input: \"List my meetings this week\" \n - Modules: Search Event \n - Output: \"Here are your meetings this week: Monday 10am with Hugo, Wednesday 2pm with Ana...\" \n- Input: \"Delete the HR sync tomorrow\" \n - Modules: Search Event → Delete Event \n - Output: \"Done. The HR sync for tomorrow has been deleted.\" \n- Input: \"Thanks\" \n - Output: \"You're welcome!\" \n- Input: \"Move the 2pm meeting to 4pm\" \n - Modules: Search Event → Update Event \n - Output: \"The meeting has been moved to 4pm.\" \n- Input: \"Create a ‘Sprint Review’ meeting tomorrow at 11am with Lisa and Karim\" \n - Modules: Create Event with Attendee \n - Output: \"‘Sprint Review’ meeting created tomorrow at 11am with Lisa and Karim.\" \n\n## SOP (Standard Operating Procedure) \n1. Read the WhatsApp message. \n2. Identify the intent:\n - View meetings: use \"Search Event\"\n - Create meeting: use \"Create Event with Attendee\"\n - Update meeting: use \"Search Event\" → \"Update Event\"\n - Delete meeting: use \"Search Event\" → \"Delete Event\"\n3. Always use the correct module—no exceptions. \n4. Send a short confirmation message via WhatsApp. \n5. If data is missing, ask a concise follow-up question. \n\n## Final Notes \n- You are the only user. \n- Never handle any action without triggering the corresponding module. \n- All confirmations are sent in real-time via WhatsApp. \n- Default meeting duration is one hour. \n\nCurrent time is {{ $now.format('yyyy-MM-dd') }} \nTime zone: Paris/Europe "
},
"promptType": "define"
},
"typeVersion": 1.8
},
{
"id": "c9ff64ad-d3ec-40f8-af60-9ae1f739148d",
"name": "付箋",
"type": "n8n-nodes-base.stickyNote",
"position": [
-1020,
20
],
"parameters": {
"color": 4,
"width": 220,
"height": 700,
"content": "## 🟩 Block 1 – WhatsApp Trigger\n\nPurpose: Entry point of the workflow.\nIt triggers the automation when a message is received via WhatsApp.\n📥 User Input = A WhatsApp message (e.g. “What’s my schedule today?”)\n"
},
"typeVersion": 1
},
{
"id": "c4a4972c-bf6f-4c7e-b4c3-ef44479989de",
"name": "付箋1",
"type": "n8n-nodes-base.stickyNote",
"position": [
-780,
20
],
"parameters": {
"color": 5,
"width": 800,
"height": 700,
"content": "## 🟦 Block 2 – TimePilot (Tools Agent)\nPurpose: The brain of the system.\nThis is the main AI agent that receives the message, interprets it using GPT, and decides what calendar action to trigger.\n\n🔁 It connects with:\nOpenAI Chat Model → to understand natural language\nSimple Memory → to retain conversation context\nCalendar Modules → to take the proper action (create, delete, update…)"
},
"typeVersion": 1
},
{
"id": "34cc21ed-6dbb-4625-b5df-126def225d18",
"name": "付箋2",
"type": "n8n-nodes-base.stickyNote",
"position": [
40,
20
],
"parameters": {
"color": 6,
"width": 440,
"height": 700,
"content": "## 🟪 Part 3 – Output & Confirmation\n✅ Success (manual)\nPurpose: Triggered when everything runs smoothly.\nPrepares a success message based on the operation performed.\n\n💬 WhatsApp Business Cloud – message:send\nPurpose: Sends the final response to the user directly on WhatsApp.\n\n\n"
},
"typeVersion": 1
},
{
"id": "d725e087-45d0-48eb-bbbe-3d7bed5bd9a3",
"name": "付箋3",
"type": "n8n-nodes-base.stickyNote",
"position": [
520,
20
],
"parameters": {
"width": 540,
"height": 1360,
"content": "## 🛠️ How to use TimePilot Agent (WhatsApp Calendar Assistant)\n\n✅ Prerequisites\n-WhatsApp Business Cloud account\n-Google Calendar connected in n8n\n-OpenAI API Key (GPT-4 or GPT-3.5)\n-A verified phone number in Meta Developer Portal\n-Meta App created and approved (for messages access)\n-n8n running with a webhook accessible from Meta\n-TimePilot Workflow imported into n8n\n\n🧩 STEP 1 – Create a Meta App\nGo to https://developers.facebook.com/apps\n\nClick Create App → Type: Business\nAdd WhatsApp Product\nAdd your verified phone number\nSave your Phone Number ID and WhatsApp Business Account ID\n\n🔑 STEP 2 – Add WhatsApp Product\nIn your Meta App → Add product → Select WhatsApp\n\nGenerate a test token or configure permanent access token\nNote your Access Token, and Business Account ID\n\n🔁 STEP 3 – Configure Webhook (n8n)\nCopy your n8n webhook URL (e.g. https://yourn8n.com/webhook/timepilot)\n\nIn Meta Dashboard → WhatsApp → Webhooks\nAdd webhook → Paste your n8n webhook URL\nSubscribe to the following fields:\n\n-management\n-messaging\n\n🔐 STEP 4 – Setup Token in n8n Credentials\nGo to n8n → Credentials → HTTP Basic Auth / OAuth2 / Bearer Token\n\nAdd Meta API Token for WhatsApp module\nAdd Google Calendar OAuth2 credential\n\n🧠 STEP 5 – Add OpenAI API Key\nGo to n8n → Credentials → OpenAI\n\nPaste your API key\nChoose GPT-3.5 or GPT-4\n\n🧱 STEP 6 – Modules connected in the TimePilot Agent\n📅 Create Event → Handles creation of new Google Calendar events\n\n✏️ Update Event → Changes existing events (title, time, etc.)\n\n🗑 Delete Event → Removes an event\n\n🔍 Search Event → Checks availability or lists upcoming events\n\n💬 WhatsApp Cloud → Sends reply with confirmation or schedule\n\n🤖 OpenAI Chat Model → Interprets the user’s message\n\n🧠 Memory (optional) → Maintains past request context\n\n🧪 STEP 7 – Test It!\nSend a message via WhatsApp to your connected number:\n\n“Create a meeting with Anna at 4pm tomorrow”\n\nn8n will process the request and return:\n\n“✅ Your event has been created.”"
},
"typeVersion": 1
}
],
"active": false,
"pinData": {},
"settings": {
"executionOrder": "v1"
},
"versionId": "bcfa59a6-adca-467a-b6db-0e522f36e2b1",
"connections": {
"0a57b879-0e26-4221-a637-5496dc2e879f": {
"main": [
[
{
"node": "75ca98bd-87cd-4d33-ae93-0ce24fee9128",
"type": "main",
"index": 0
}
]
]
},
"43bfc3ce-e5b0-407d-b556-e1bbdc78a178": {
"main": [
[
{
"node": "0a57b879-0e26-4221-a637-5496dc2e879f",
"type": "main",
"index": 0
}
]
]
},
"be536969-ceb6-479a-9090-f2af61e51788": {
"ai_tool": [
[
{
"node": "43bfc3ce-e5b0-407d-b556-e1bbdc78a178",
"type": "ai_tool",
"index": 0
}
]
]
},
"79bb24fa-7432-4099-8b4e-a4245b0994b7": {
"ai_tool": [
[
{
"node": "43bfc3ce-e5b0-407d-b556-e1bbdc78a178",
"type": "ai_tool",
"index": 0
}
]
]
},
"a07c2c51-ceed-4243-85c4-5f027dc01692": {
"ai_tool": [
[
{
"node": "43bfc3ce-e5b0-407d-b556-e1bbdc78a178",
"type": "ai_tool",
"index": 0
}
]
]
},
"b48b62cd-0664-4be9-97ad-0894076b222b": {
"ai_tool": [
[
{
"node": "43bfc3ce-e5b0-407d-b556-e1bbdc78a178",
"type": "ai_tool",
"index": 0
}
]
]
},
"Simple Memory": {
"ai_memory": [
[
{
"node": "43bfc3ce-e5b0-407d-b556-e1bbdc78a178",
"type": "ai_memory",
"index": 0
}
]
]
},
"2503b217-d803-48e4-bcab-35326ad6fbcd": {
"main": [
[
{
"node": "43bfc3ce-e5b0-407d-b556-e1bbdc78a178",
"type": "main",
"index": 0
}
]
]
},
"OpenAI Chat Model": {
"ai_languageModel": [
[
{
"node": "43bfc3ce-e5b0-407d-b556-e1bbdc78a178",
"type": "ai_languageModel",
"index": 0
}
]
]
}
}
}よくある質問
このワークフローの使い方は?
上記のJSON設定コードをコピーし、n8nインスタンスで新しいワークフローを作成して「JSONからインポート」を選択、設定を貼り付けて認証情報を必要に応じて変更してください。
このワークフローはどんな場面に適していますか?
中級 - 個人の生産性, AIチャットボット
有料ですか?
このワークフローは完全無料です。ただし、ワークフローで使用するサードパーティサービス(OpenAI APIなど)は別途料金が発生する場合があります。
関連ワークフロー
高度なマルチエージェントAIパーソナルアシスタント(250+タスク対応、WhatsApp + GPT)
高度なマルチエージェントAIパーソナルアシスタント(250以上のタスク対応、WhatsApp + GPT)
Set
Switch
Whats App
+
Set
Switch
Whats App
213 ノードElectrabot
個人の生産性
Voice2Propal – 音声・テキスト両対応のSmart WhatsApp提案ジェネレーター
音声またはテキストから自動のにWhatsApp提案を生成するには、GPTとAPITemplateを使用
Set
Switch
Split Out
+
Set
Switch
Split Out
19 ノードFloyd Mahou
リードナーチャリング
SmartMailエージェント - あなたのAIメールアシスタント、WhatsApp駆動
WhatsAppでGmail、GPTと音声認識を使用してメールを管理する
If
Set
Code
+
If
Set
Code
24 ノードFloyd Mahou
その他
出行時間アシスタント
GoogleルートAPIを使用してカレンダーに自動のに出張時間帯を追加
Set
Http Request
Agent
+
Set
Http Request
Agent
21 ノードKevin Armbruster
個人の生産性
🚀 Shopifyブランドを対象としたAI駆動型WhatsAppカスタマーサポート
Shopify向けのAI駆動WhatsAppカスタマーサポート(LLMエージェント)
Set
Slack
Switch
+
Set
Slack
Switch
30 ノードRuthwik
その他
WhatsApp顧客支援を自動化:音声文字起こし、FAQ、予約スケジュールも含む
WhatsApp カスタマーサポートを自動化(音声文字起こし、FAQ、予約調整込み)
If
Set
Switch
+
If
Set
Switch
23 ノードAureusR
その他