{"id":"BjFYuqVBrWn6dovD","meta":{"instanceId":"94fc2c6a7a77ded555aa833bb96d962eb52fa6fab7c08bc61fda4e8d5d10e8c1","templateCredsSetupCompleted":true},"name":"🎥 AI Content Generator: Transcript to Video & Image","tags":[],"nodes":[{"id":"0cbe8586-ebbe-4d3c-ae15-641108540fc2","name":"When chat message received","type":"@n8n/n8n-nodes-langchain.chatTrigger","position":[608,144],"webhookId":"804e7b7f-39ec-4e19-a90e-f63dadb3b73c","parameters":{"options":{}},"typeVersion":1.3},{"id":"7fd53ea1-2792-4636-9f3b-16f12118e0ef","name":"Main GPT-4 Model","type":"@n8n/n8n-nodes-langchain.lmChatOpenAi","position":[832,576],"parameters":{"model":{"__rl":true,"mode":"list","value":"gpt-4.1-mini"},"options":{}},"credentials":{"openAiApi":{"id":"credential-id","name":"openAiApi Credential"}},"typeVersion":1.2},{"id":"07c389dc-27a4-4a27-985a-a61ce540eed6","name":"Simple Memory","type":"@n8n/n8n-nodes-langchain.memoryBufferWindow","position":[928,368],"parameters":{"contextWindowLength":2},"typeVersion":1.3},{"id":"7fe34c6c-e134-496f-8aeb-9fe4267cf763","name":"Text to Video","type":"@n8n/n8n-nodes-langchain.toolWorkflow","position":[1312,784],"parameters":{"workflowId":{"__rl":true,"mode":"list","value":"","cachedResultName":"Your Subworkflow Name"},"description":"Generates professional coaching videos from detailed video prompts. Takes a video prompt (scene descriptions, timing, visual elements) as input and returns a generated video file. Called by the Video Generator after it creates the prompt from coaching session summaries.\n"},"typeVersion":2.2},{"id":"a5207443-f484-46fc-b6da-d90e5eb60ecc","name":"Video Generator","type":"@n8n/n8n-nodes-langchain.agentTool","position":[1040,576],"parameters":{"text":"={{ /*n8n-auto-generated-fromAI-override*/ $fromAI('Prompt__User_Message_', ``, 'string') }}","options":{"systemMessage":"AI Agent System Prompt: Coaching Session to Video Prompt\n\n## Your Role\nYou are an AI assistant specialized in transforming coaching session summaries into video generation prompts. Your ONLY job is to retrieve the coaching summary and output a detailed video prompt that can be directly used for video generation.\n\n## Workflow Steps\n\n### Step 1: Retrieve the Most Recent Coaching Summary\nWhen the user requests a video prompt:\n1. Use the \"Get Fathom Transcript\" tool to retrieve the most recent coaching session\n2. The tool returns a JSON array of meetings from the past 7 days\n3. **Extract these specific fields from the first item:**\n   - `default_summary.markdown_formatted` - The full meeting summary\n   - `calendar_invitees` - Array of attendees (find student/client name where `is_external: true`)\n   - `created_at` - Meeting date\n\n### Step 2: Analyze the Summary\nFrom the `default_summary.markdown_formatted`, identify:\n- **Core teaching moment**: What problem was being solved?\n- **Student/client journey**: Challenge → Breakthrough\n- **Technical details**: Tools/workflows (n8n, Clay, APIs, etc.)\n- **Coach's approach**: Explanations and analogies\n- **Outcome**: What the student achieved\n\n### Step 3: Create the Video Prompt (ONLY OUTPUT)\n\n**CRITICAL: Output ONLY the video prompt text. No headers, no markdown formatting, no additional context. Just the plain text prompt.**\n\nGenerate a 300-500 word video prompt that includes:\n\n**Structure to follow:**\n\nProfessional coaching/business setting with [describe lighting and aesthetic]. [Describe visual elements like motion graphics].\n\nOPENING ([X] seconds): [Detailed visual description of the hook scene. Include what's on screen, camera angles, any text overlays, person's expression/action]. Mood: [emotion].\n\nSETUP ([X] seconds): [Detailed visual description of the context. Show the problem state - what tools are visible, what's the person doing, what's on their screen, timestamps or progress indicators]. [Describe specific actions being performed].\n\nSOLUTION ([X] seconds): [Detailed visual description of the transformation. Describe the workflow building step-by-step, what animates, what lights up, what data flows where, what technical elements are visible, what text labels appear]. [Include specific tool names, node types, API calls]. [Show the \"aha\" moment visually].\n\nPAYOFF ([X] seconds): [Detailed visual description of success. Show the person's reaction, what results appear on screen (notifications, metrics, dashboards), what changed from the beginning]. Mood: [emotion].\n\nOVERALL TONE: [Describe the energy, approach, and focus of the video].\n\n**Voice Guidelines (use when crafting the narrative):**\n- Direct and action-oriented\n- Conversational (like talking to a friend)\n- Uses specific examples (real tool names, real workflows)\n- Technical but accessible\n- Includes concrete details (tool names, node types, numbers)\n- Natural transitions like \"And that's when...\" or \"Here's what I mean...\"\n\n**Never use:**\n- Corporate buzzwords (streamline, enhance, elevate, empower)\n- Formal transitions (Furthermore, Moreover, Consequently)\n- Generic praise (\"This is fascinating\")\n\n### Step 4: Format the Output\n\n**IMPORTANT: Output ONLY the video prompt. Nothing else.**\n\nDo NOT include:\n- ❌ Headers like \"Video Prompt:\" or \"🎥\"\n- ❌ Session information\n- ❌ Story narrative\n- ❌ Key moments\n- ❌ Markdown formatting\n- ❌ Any preamble or postamble\n- ❌ Questions like \"Would you like me to adjust?\"\n\n**ONLY output the plain text video prompt that can be directly copied into a video generation tool.**\n\n## Data Extraction Reference\n\n**From Fathom API Response:**\n```json\n{\n  \"items\": [\n    {\n      \"created_at\": \"2025-12-03T17:59:51Z\",\n      \"default_summary\": {\n        \"markdown_formatted\": \"## Meeting Purpose\\\\n\\\\n[Description]...\"\n      },\n      \"calendar_invitees\": [\n        {\n          \"name\": \"Client Name\",\n          \"is_external\": true\n        }\n      ]\n    }\n  ]\n}\n```\n\n**Extract:**\n- Summary: `items[0].default_summary.markdown_formatted`\n- Client/student name: Find invitee where `is_external: true`\n\n## Quality Standards\n\nThe video prompt must:\n✅ Be 300-500 words\n✅ Include specific visual descriptions for each scene\n✅ Use the actual client's/student's name\n✅ Include specific tool names and technical details\n✅ Describe animations, data flows, and screen changes\n✅ Show clear transformation (problem → solution → outcome)\n✅ Sound authentic (technical but accessible)\n✅ Be ready to copy-paste directly into a video generation tool\n\nYour output is the video prompt text only. Nothing else."},"toolDescription":"Transforms coaching session summaries into detailed video generation prompts. Analyzes the teaching moment, creates scene-by-scene visual narratives, and generates videos using the Text to Video workflow."},"typeVersion":2.2},{"id":"0f2b53b4-2f03-4c5f-818b-3c2bc42d167d","name":"Video Generator GPT Model","type":"@n8n/n8n-nodes-langchain.lmChatOpenAi","position":[1136,784],"parameters":{"model":{"__rl":true,"mode":"list","value":"gpt-4.1-mini"},"options":{}},"credentials":{"openAiApi":{"id":"credential-id","name":"openAiApi Credential"}},"typeVersion":1.2},{"id":"8d6a9f89-588d-4855-bceb-ee8e67ae510b","name":"Content Orchestrator","type":"@n8n/n8n-nodes-langchain.agent","position":[1088,144],"parameters":{"options":{"systemMessage":"## Your Role\nYou are a Content Orchestrator, the main coordinator for transforming coaching session transcripts into multi-format content. You manage the entire content creation pipeline from transcript retrieval to final deliverables.\n\n## Your Capabilities\n\nYou have access to:\n1. **Get Fathom Transcript** - Retrieves the most recent coaching session summary\n2. **Content Post Generator** - Creates written content, Google Docs, and generates video/image assets\n\n## Workflow Logic\n\n### Step 1: Understand User Intent\nWhen the user sends a message, identify:\n- What content formats they want: **video**, **image**, or **both**\n- Whether they want content from the latest session or a specific topic\n- Any special requirements (tone, focus, length)\n\n**Example user inputs:**\n- \"Create content from my latest session - video and image\"\n- \"Generate a post from today's coaching call with video only\"\n- \"Make an image for the last session\"\n\n### Step 2: Retrieve the Coaching Session\nUse the **Get Fathom Transcript** tool to fetch the most recent coaching session. This tool automatically:\n- Gets meetings from the past 7 days\n- Filters for relevant coaching sessions\n- Returns the full summary and transcript\n\n### Step 3: Route to Content Post Generator\nCall the **Content Post Generator** and provide:\n- The coaching session data from Fathom\n- Clear instructions on what formats to create (video, image, or both)\n- Any specific user requirements\n\n**Example instruction to Content Post Generator:**\n\"Using the transcript provided, create a written post and Google Doc. Then generate both a video and an image for this coaching session.\"\n\n## Communication Style\n- Be concise and action-oriented\n- Confirm what you're creating before you start\n- Provide status updates as you work\n- Let the user know when each asset is complete\n\n## Important Rules\n- ALWAYS retrieve the Fathom transcript first before creating content\n- NEVER hallucinate or make up session details\n- Pass ALL user requirements down to the Content Post Generator\n- If the user's request is unclear, ask for clarification before proceeding\n\n## Example Interaction\n\n**User:** \"Create content from my latest coaching session - I need both video and image\"\n\n**Your process:**\n1. Use Get Fathom Transcript to retrieve the latest session\n2. Call Content Post Generator with: \"Create written content, Google Doc, video, and image from this coaching session summary\"\n3. Confirm completion: \"Done! I've created your content post in Google Docs, generated a video prompt, and created an image. All assets are ready.\"\n\nYour job is to orchestrate, not to create the content yourself. Delegate to the Content Post Generator and ensure all user requirements are met."}},"typeVersion":2.2},{"id":"52689894-f66d-4efb-b3de-5a131936af83","name":"Content Post Generator","type":"@n8n/n8n-nodes-langchain.agentTool","position":[1184,368],"parameters":{"text":"={{ /*n8n-auto-generated-fromAI-override*/ $fromAI('Prompt__User_Message_', ``, 'string') }}","options":{"systemMessage":"## Your Role\nYou are a Content Generator specialized in transforming coaching session transcripts into polished written content and coordinating multimedia asset creation.\n\n## Your Capabilities\n\nYou have access to:\n1. **Transcript to Content** - Creates written posts and Google Docs from transcripts\n2. **Video Generator** - Creates video generation prompts and generates videos\n3. **Image Generator** - Creates image prompts and generates social media graphics\n\n## Workflow Logic\n\n### Step 1: Receive Session Data\nThe Content Orchestrator will provide you with:\n- Full coaching session transcript\n- Meeting summary\n- User's requested content formats (video, image, or both)\n\n### Step 2: Determine What to Create\nBased on the user's request, identify which assets to generate:\n- Written content + Google Doc (always)\n- Video (if requested)\n- Image (if requested)\n\n### Step 3: Delegate to Specialized Tools\n\n**For written content:**\n- Call **Transcript to Content** tool\n- Provide the full transcript and summary\n- Receive back the Google Doc link and formatted content\n\n**For video (if requested):**\n- Call **Video Generator** tool\n- It will analyze the session and create a detailed video prompt\n- Video generation will be initiated automatically\n- Receive back the video URL\n\n**For image (if requested):**\n- Call **Image Generator** tool\n- It will extract key insights and create image prompt\n- Image generation will be initiated automatically\n- Receive back the image file/URL\n\n### Step 4: Compile and Return Results\nGather all generated assets and provide them to the user in a clear format:\n- Google Doc link\n- Video URL (if generated)\n- Image URL/file (if generated)\n\n## Communication Style\n- Provide clear status updates as you work\n- Confirm when each asset is complete\n- Group related assets together in your response\n- Be concise but informative\n\n## Important Rules\n- Always create written content, even if only video/image requested\n- Process requests in parallel when possible for efficiency\n- If a tool fails, inform the user and continue with other assets\n- Never skip the Transcript to Content step\n\n## Example Interaction\n\n**Input from Orchestrator:**\n\"Create written content, Google Doc, video, and image from this coaching session summary\"\n\n**Your process:**\n1. Call Transcript to Content → Get Google Doc link\n2. Call Video Generator → Get video prompt/URL\n3. Call Image Generator → Get image file\n4. Return: \"Content created! Here are your assets: [Google Doc link] [Video URL] [Image URL]\"\n\nCoordinate all content creation efficiently and ensure the user receives all requested deliverables."},"toolDescription":"Transforms coaching session transcripts into multi-format content. Creates written posts and Google Docs, then coordinates with Video Generator and Image Generator to produce all requested visual assets. Returns complete content package ready for distribution."},"typeVersion":2.2},{"id":"dd9de17c-730f-4288-915a-b02d985bb433","name":"Text to Image","type":"@n8n/n8n-nodes-langchain.toolWorkflow","position":[1424,784],"parameters":{"workflowId":{"__rl":true,"mode":"list","value":"","cachedResultName":"Your Subworkflow Name"},"description":"Creates professional social media graphics from detailed image prompts. Takes an image prompt (visual style, text overlays, composition) as input and returns a generated image file. Called by the Image Generator after it extracts key insights from coaching sessions.\n"},"typeVersion":2.2},{"id":"b4f43401-75e5-49a8-a313-d97f9431482e","name":"Get Fathom Transcript","type":"n8n-nodes-base.httpRequestTool","position":[1472,368],"parameters":{"url":"https://api.fathom.ai/external/v1/meetings","options":{},"sendQuery":true,"queryParameters":{"parameters":[{"name":"include_summary","value":"true"},{"name":"calendar_invitees"},{"name":"teams"},{"name":"limit","value":"1"}]},"toolDescription":"Retrieves the most recent coaching session transcript from Fathom. Automatically fetches meetings from the past 7 days, filters for relevant coaching sessions, and returns full summary and transcript data for content generation."},"typeVersion":4.2},{"id":"7f910715-d89d-4196-b5cd-6cdd95474c8d","name":"Image Generator","type":"@n8n/n8n-nodes-langchain.agentTool","position":[1328,576],"parameters":{"text":"={{ /*n8n-auto-generated-fromAI-override*/ $fromAI('Prompt__User_Message_', ``, 'string') }}","options":{"systemMessage":"## Your Role\nYou are an Image Generation Specialist that transforms coaching session insights into compelling visual prompts for social media graphics.\n\n## Your Task\n\nWhen called, you will:\n1. Receive coaching session data (summary and key moments)\n2. Extract the most visual and impactful teaching moment\n3. Create a detailed image generation prompt\n4. Call the Text to Image workflow to generate the actual image\n\n## Image Prompt Creation Guidelines\n\n### Step 1: Identify the Key Visual Moment\nFrom the session data, find:\n- The main breakthrough or \"aha\" moment\n- The most shareable insight or tip\n- Visual elements that represent the teaching (workflow diagrams, before/after states, etc.)\n\n### Step 2: Create the Image Prompt\n\nYour prompt should be 100-150 words and include:\n\n**Visual Style:**\n- Professional coaching/business aesthetic\n- Clean, modern design\n- Readable text overlays\n- Appropriate color scheme\n\n**Main Elements:**\n- Central visual metaphor or diagram\n- Key quote or insight as text overlay\n- Subtle branding elements\n- Clear focal point\n\n**Text Content:**\n- Hook or main insight (large, readable font)\n- Supporting detail or context (smaller text)\n- Attribution if needed\n\n**Technical Specs:**\n- Aspect ratio: Square (1:1) for Instagram/LinkedIn\n- Style keywords: \"professional,\" \"clean,\" \"modern,\" \"coaching\"\n- Avoid: cluttered, overly complex, hard to read\n\n### Step 3: Call Text to Image Tool\n- Pass the image prompt to the Text to Image workflow\n- The workflow will generate the actual image using DALL-E or Stability AI\n- Return the generated image URL/file\n\n## Example Image Prompts\n\n**Example 1 - Workflow Insight:**\n\"Professional coaching infographic showing a before and after transformation. Left side: tangled, manual process with sticky notes and spreadsheets, person looking overwhelmed. Right side: clean automated n8n workflow diagram with smooth data flow, person smiling. Center text overlay: 'From 3 hours to 3 minutes' in bold sans-serif font. Modern business aesthetic, blue and white color scheme, clean design, social media ready, 1:1 aspect ratio.\"\n\n**Example 2 - Key Insight:**\n\"Modern business coaching graphic. Central focus: lightbulb icon made of connected workflow nodes. Large text overlay: 'Automation isn't about replacing work, it's about reclaiming time.' Subtle background: abstract tech pattern. Professional color palette: navy blue, teal, white. Clean typography, inspirational but professional, LinkedIn-ready square format.\"\n\n## Quality Standards\n\nImage prompts must:\n✅ Be 100-150 words\n✅ Specify visual style clearly\n✅ Include specific text overlays\n✅ Describe layout and composition\n✅ Specify aspect ratio (1:1 for social)\n✅ Be suitable for professional social media\n✅ Highlight the key teaching moment\n✅ Be clear enough for AI image generation\n\nYour output should be the image URL/file from the Text to Image workflow."},"toolDescription":"Transforms coaching session summaries into detailed video generation prompts. Analyzes the teaching moment, creates scene-by-scene visual narratives, and generates videos using the Text to Video workflow."},"typeVersion":2.2},{"id":"7ebf27ec-ebd7-4fed-b497-0831c897f5bc","name":"Transcript to Content","type":"@n8n/n8n-nodes-langchain.toolWorkflow","position":[1616,576],"parameters":{"workflowId":{"__rl":true,"mode":"list","value":"","cachedResultName":"Your Subworkflow Name"},"description":"Transforms raw coaching session transcripts into polished written content. Takes transcript data and meeting summary as input, generates structured posts, and creates Google Docs. Returns formatted content and document links ready for publishing."},"typeVersion":2.2},{"id":"364c510c-3e82-40a5-9da7-dabc04d20564","name":"Subworkflow Entry Point","type":"n8n-nodes-base.executeWorkflowTrigger","position":[1952,912],"parameters":{"workflowInputs":{"values":[{"name":"post_title","type":"any"},{"name":"post_content","type":"any"},{"name":"original_meeting_title","type":"any"},{"name":"original_meeting_date","type":"any"},{"name":"prompt"},{"name":"input.prompt"}]}},"typeVersion":1.1},{"id":"6cb02291-fd63-4afd-a732-9283f1c307e9","name":"Create Google Doc","type":"n8n-nodes-base.googleDocs","position":[2160,912],"parameters":{"title":"={{ $json.post_title }}","folderId":"15i8eJEE9WN6G6yJaUzy5JdxJob-eo7Bm"},"typeVersion":2},{"id":"137e9a83-45ac-459d-9d7d-2598b63872d7","name":"Insert Content into Doc","type":"n8n-nodes-base.googleDocs","position":[2368,912],"parameters":{"actionsUi":{"actionFields":[{"text":"={{ $('When Executed by Another Workflow').item.json.post_content }}","action":"insert"}]},"operation":"update","documentURL":"={{ $json.id }}"},"typeVersion":2},{"id":"8b28f0dc-fefe-4f9b-a84b-69a9dc18e51d","name":"Format Image Link","type":"n8n-nodes-base.set","position":[2720,1152],"parameters":{"options":{},"assignments":{"assignments":[{"id":"ab57919b-e75c-41c3-b2cc-885d48f3cd5c","name":"videoURL","type":"string","value":"={{ JSON.parse($json.data.resultJson).resultUrls[0] }}"}]}},"typeVersion":3.4},{"id":"38bd5038-96c4-4248-98bc-1742c9b51c68","name":"Call DALL-E API","type":"n8n-nodes-base.httpRequest","position":[2160,1152],"parameters":{"url":"https://api.openai.com/v1/images/generations","method":"POST","options":{},"sendBody":true,"sendHeaders":true,"bodyParameters":{"parameters":[{"name":"model","value":"gpt-image-1"},{"name":"prompt","value":"={{ $json.output }}"},{"name":"size","value":"1024x1024"}]},"headerParameters":{"parameters":[{}]}},"typeVersion":4.2},{"id":"08bac396-4acd-42b1-a6ee-d6fbd86c0b25","name":"Convert Image to Binary","type":"n8n-nodes-base.convertToFile","position":[2384,1152],"parameters":{"options":{},"operation":"toBinary","sourceProperty":"data[0].b64_json"},"typeVersion":1.1},{"id":"a68ad896-4691-4e56-bfcd-11b16f86ac5f","name":"Upload to Storage","type":"n8n-nodes-base.googleDrive","position":[2560,1152],"parameters":{"name":"=","driveId":{"__rl":true,"mode":"list","value":"My Drive"},"options":{},"folderId":{"__rl":true,"mode":"list","value":"root","cachedResultUrl":"https://drive.google.com/drive","cachedResultName":"/ (Root folder)"}},"credentials":{"googleDriveOAuth2Api":{"id":"credential-id","name":"googleDriveOAuth2Api Credential"}},"typeVersion":3},{"id":"8d04ca0e-371e-45fd-8106-bb7b99628273","name":"Fetch Generated Video","type":"n8n-nodes-base.httpRequest","position":[2368,1440],"parameters":{"url":"=https://api.kie.ai/api/v1/jobs/recordInfo?taskId={{ $json.data.taskId }}","options":{}},"typeVersion":4.2},{"id":"3c57452a-616e-4636-8fcc-aa5df8d4795d","name":"Video Ready","type":"n8n-nodes-base.slack","position":[2768,1440],"webhookId":"e9e2d8b9-ed34-4ba2-8bd4-9b2b264636da","parameters":{"text":"=Your video is ready! 🎥  \n\n[Watch your coaching session video]({{ $json.videoURL }})  \n\nThis captures the key breakthrough moment from your session. The video shows the problem, the solution, and the impact - all in about 60 seconds.","select":"channel","channelId":{"__rl":true,"mode":"list","value":"C09G17879L1","cachedResultName":"ab-tesssssttt"},"otherOptions":{},"authentication":"oAuth2"},"credentials":{"slackOAuth2Api":{"id":"credential-id","name":"slackOAuth2Api Credential"}},"typeVersion":2.3},{"id":"2fb76613-e93a-47ff-b1e2-9d8bfad53a72","name":"Call Video API","type":"n8n-nodes-base.httpRequest","position":[2160,1440],"parameters":{"url":"https://api.kie.ai/api/v1/jobs/createTask","method":"POST","options":{},"sendBody":true,"bodyParameters":{"parameters":[{"name":"model","value":"sora-2-pro-text-to-video"},{"name":"input.prompt","value":"={{ $json.output }}"},{"name":"input.aspect_ratio","value":"landscape"},{"name":"input.n_frames","value":"10"},{"name":"input.size","value":"high"}]}},"typeVersion":4.2},{"id":"5e995261-025b-4d74-9292-1441396e762f","name":"Format Video Link","type":"n8n-nodes-base.set","position":[2576,1440],"parameters":{"options":{},"assignments":{"assignments":[{"id":"ab57919b-e75c-41c3-b2cc-885d48f3cd5c","name":"videoURL","type":"string","value":"={{ JSON.parse($json.data.resultJson).resultUrls[0] }}"}]}},"typeVersion":3.4},{"id":"e4330934-1133-47ca-8457-e5c650a5bfc6","name":"Main Overview","type":"n8n-nodes-base.stickyNote","position":[224,-160],"parameters":{"color":4,"width":460,"height":960,"content":"## 🎥 AI Content Generator: Transcript to Video & Image\n\n### Transform meeting transcripts into engaging multi-format content with AI-powered automation\n\nPerfect for educators, consultants, and content creators who record sessions and want to repurpose them into social media posts, videos, and images without manual work.\n\n### How it works\n* Chat interface triggers the AI orchestrator when you request content creation\n* Fetches your most recent meeting transcript from Fathom\n* AI analyzes the transcript and extracts key insights and breakthrough moments\n* Generates written post content and creates a Google Doc automatically\n* Creates detailed video generation prompts and sends to video API (Luma/Runway)\n* Generates image prompts and creates social media graphics via DALL-E\n* Returns all assets: written content, video URL, and image file ready to use\n\n### How to use\n* Connect your Fathom account to retrieve meeting transcripts\n* Set up the three required subworkflows: Text to Video, Text to Image, and Transcript to Content\n* Configure your OpenAI credentials for AI processing\n* Simply chat: \"Create content from my latest session - video and image\"\n* Review and customize the generated content as needed\n\n### Requirements\n* Fathom account with recorded meetings or sessions\n* OpenAI API account (GPT-4 recommended for best results)\n* Google Docs access for content storage\n* Video generation API (Luma AI or Runway ML) for video creation\n* Three subworkflows must be created separately (see setup notes)\n\n### Good to know\n* Video generation typically costs $0.50-$2.00 per video depending on your provider\n* The workflow processes the most recent 7 days of Fathom transcripts automatically\n* AI agents use ~5,000-10,000 tokens per complete content generation\n* Subworkflows need to be set up once before using this main workflow\n* Videos take 2-5 minutes to generate after the prompt is created\n\n### Need Help?\nJoin the [Discord](https://discord.com/invite/XPKeKXeB7d) or ask in the [Forum](https://community.n8n.io/)!\n\nHappy Creating! 🚀"},"typeVersion":1},{"id":"4704cbde-42c0-4a53-b913-82b54f57bc0b","name":"Subworkflow Setup Warning","type":"n8n-nodes-base.stickyNote","position":[1584,-64],"parameters":{"color":5,"width":528,"height":428,"content":"### ⚠️ Required Subworkflows Setup!\n\nBefore using this template, you MUST create three separate subworkflows:\n\n1. **Text to Video** - Converts video prompts into actual videos using Luma AI or Runway ML\n2. **Text to Image** - Generates images from prompts using DALL-E or Stability AI\n3. **Transcript to Content** - Transforms raw transcripts into structured written content\n\n**Setup steps:**\n1. Create each subworkflow separately in your n8n instance\n2. Configure API credentials for video/image generation services\n3. Link each subworkflow to the corresponding tool nodes in this main workflow\n4. Test each subworkflow independently before running the full automation\n\nSee the template description for detailed subworkflow requirements."},"typeVersion":1},{"id":"48fd93f5-3884-4058-a901-abe40183ac94","name":"Step 1 - Chat Trigger","type":"n8n-nodes-base.stickyNote","position":[608,-368],"parameters":{"color":7,"width":300,"height":200,"content":"## 1. Chat Interface Entry Point\n[Read more about the Chat Trigger node](https://docs.n8n.io/integrations/builtin/core-nodes/n8n-nodes-langchain.chattrigger/)\n\nThe workflow begins when you send a message via the chat interface. Simply tell the AI what content you want to create from your latest coaching session - specify video, image, or both formats."},"typeVersion":1},{"id":"e3853cfd-a60d-4f4b-a724-41a651a5ce33","name":"Step 2 - Orchestrator","type":"n8n-nodes-base.stickyNote","position":[944,-384],"parameters":{"color":7,"width":320,"height":220,"content":"## 2. AI Content Orchestrator\n[Read more about the AI Agent node](https://docs.n8n.io/integrations/builtin/cluster-nodes/root-nodes/n8n-nodes-langchain.agent/)\n\nThe main coordinator that understands your request, retrieves the coaching transcript from Fathom, and delegates to the Content Post Generator. It manages the entire pipeline from transcript to final deliverables."},"typeVersion":1},{"id":"9b985105-991d-4120-865b-61b89d7520d3","name":"Step 3 - Content Generator","type":"n8n-nodes-base.stickyNote","position":[1296,-384],"parameters":{"color":7,"width":320,"height":240,"content":"## 3. Content Post Generator\n[Read more about Tool Agent nodes](https://docs.n8n.io/integrations/builtin/cluster-nodes/sub-nodes/n8n-nodes-langchain.agenttool/)\n\nThis specialized agent transforms raw transcripts into polished content. It creates written posts, generates Google Docs, and coordinates with the Video Generator and Image Generator to create all requested assets in the formats you specified."},"typeVersion":1},{"id":"052f0807-4587-441e-8af0-ec6a82b1f157","name":"Step 4 - Video Pipeline","type":"n8n-nodes-base.stickyNote","position":[1648,-368],"parameters":{"color":7,"width":320,"height":220,"content":"## 4. Video Generation Pipeline\n[Read more about Tool Workflow nodes](https://docs.n8n.io/integrations/builtin/cluster-nodes/sub-nodes/n8n-nodes-langchain.toolworkflow/)\n\nAnalyzes coaching moments and creates detailed video prompts with scene descriptions, timing, and visual elements. Connects to your Text to Video subworkflow which calls Luma AI or Runway ML to generate the actual video file."},"typeVersion":1},{"id":"a3b2670a-1eca-46e9-8642-279f60b52659","name":"Step 5 - Image Pipeline","type":"n8n-nodes-base.stickyNote","position":[2000,-368],"parameters":{"color":7,"width":320,"height":220,"content":"## 5. Image Generation Pipeline\n[Read more about Tool Workflow nodes](https://docs.n8n.io/integrations/builtin/cluster-nodes/sub-nodes/n8n-nodes-langchain.toolworkflow/)\n\nExtracts key insights from the coaching session and creates compelling image prompts. Connects to your Text to Image subworkflow which uses DALL-E or Stability AI to generate professional graphics for social media."},"typeVersion":1},{"id":"707e4afd-ec22-44fd-9770-7cf9630c11f6","name":"Memory Note","type":"n8n-nodes-base.stickyNote","position":[752,-32],"parameters":{"color":7,"width":320,"height":200,"content":"## Memory & AI Models\n\nThe workflow uses GPT-4.1-mini for optimal balance of speed, cost, and quality. A window buffer memory (2 messages) maintains conversation context for follow-up requests without excessive token usage."},"typeVersion":1}],"active":false,"pinData":{},"settings":{"executionOrder":"v1"},"versionId":"4bf54712-e756-4875-9ce5-d0f34e340f94","connections":{"Simple Memory":{"ai_memory":[[{"node":"Content Orchestrator","type":"ai_memory","index":0}]]},"Text to Image":{"ai_tool":[[{"node":"Image Generator","type":"ai_tool","index":0}]]},"Text to Video":{"ai_tool":[[{"node":"Video Generator","type":"ai_tool","index":0}]]},"Call Video API":{"main":[[{"node":"Fetch Generated Video","type":"main","index":0}]]},"Call DALL-E API":{"main":[[{"node":"Convert Image to Binary","type":"main","index":0}]]},"Image Generator":{"ai_tool":[[{"node":"Content Post Generator","type":"ai_tool","index":0}]]},"Video Generator":{"ai_tool":[[{"node":"Content Post Generator","type":"ai_tool","index":0}]]},"Main GPT-4 Model":{"ai_languageModel":[[{"node":"Content Orchestrator","type":"ai_languageModel","index":0},{"node":"Content Post Generator","type":"ai_languageModel","index":0}]]},"Create Google Doc":{"main":[[{"node":"Insert Content into Doc","type":"main","index":0}]]},"Upload to Storage":{"main":[[{"node":"Format Image Link","type":"main","index":0}]]},"Fetch Generated Video":{"main":[[{"node":"Format Video Link","type":"main","index":0}]]},"Get Fathom Transcript":{"ai_tool":[[{"node":"Content Orchestrator","type":"ai_tool","index":0}]]},"Transcript to Content":{"ai_tool":[[{"node":"Content Post Generator","type":"ai_tool","index":0}]]},"Content Post Generator":{"ai_tool":[[{"node":"Content Orchestrator","type":"ai_tool","index":0}]]},"Convert Image to Binary":{"main":[[{"node":"Upload to Storage","type":"main","index":0}]]},"Subworkflow Entry Point":{"main":[[{"node":"Create Google Doc","type":"main","index":0},{"node":"Call DALL-E API","type":"main","index":0},{"node":"Call Video API","type":"main","index":0}]]},"Video Generator GPT Model":{"ai_languageModel":[[{"node":"Video Generator","type":"ai_languageModel","index":0},{"node":"Image Generator","type":"ai_languageModel","index":0}]]},"When chat message received":{"main":[[{"node":"Content Orchestrator","type":"main","index":0}]]}}}