This workflow corresponds to n8n.io template #6275 — we link there as the canonical source.
This workflow follows the Chainllm → HTTP Request 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 →
{
"id": "CTJy7x5XKqgp6DZn",
"meta": {
"templateCredsSetupCompleted": true
},
"name": "Wordpress - Auto Generate and Post SEO Article",
"tags": [
{
"id": "1nTt3nVGfPKuBWLW",
"name": "wordpress",
"createdAt": "2025-05-27T02:35:46.996Z",
"updatedAt": "2025-05-27T02:35:46.996Z"
}
],
"nodes": [
{
"id": "d2961374-2410-40b4-89f7-c96ce916c0cd",
"name": "OpenAI - Generate Image",
"type": "@n8n/n8n-nodes-langchain.openAi",
"position": [
1460,
0
],
"parameters": {
"prompt": "=Create a highly realistic, natural-looking image that visually represents the blog article titled \"{{ $json.title.raw }}\". The image should be grounded in reality with believable lighting, textures, and composition\u2014avoid fantasy or surreal elements. Focus on lifelike details that a real camera could capture. Do not include any text in the image.\n\nGuidelines:\n\n1. Subject Matter:\n- Ensure the image directly relates to the central theme of the blog article.\n- Depict real-world scenarios or objects that embody the article's core message.\n\n2. Realism and Detail:\n- Use natural lighting and authentic textures to enhance realism.\n- Incorporate subtle details such as shadows, reflections, and depth of field to mimic real photography.\n\n3. Composition:\n- Employ a composition that aligns with professional photography standards, considering elements like framing, perspective, and balance.\n- Avoid any fantastical or surreal components that could detract from the image's authenticity.\n\n4. Technical Specifications:\n- Aim for high-resolution output suitable for web publication.\n- Ensure the image is free of any textual elements or overlays.\n\n",
"options": {
"size": "1024x1024",
"style": "vivid"
},
"resource": "image"
},
"credentials": {
"openAiApi": {
"name": "<your credential>"
}
},
"typeVersion": 1.8
},
{
"id": "2d35f4e8-9eec-41f9-a097-b551afc21903",
"name": "When clicking \u2018Test workflow\u2019",
"type": "n8n-nodes-base.manualTrigger",
"position": [
0,
0
],
"parameters": {},
"typeVersion": 1
},
{
"id": "bb2e9761-2b7c-4e4d-8d20-eca1b357b1ad",
"name": "Agent - Topic Chooser & Title Generator",
"type": "@n8n/n8n-nodes-langchain.chainLlm",
"position": [
440,
0
],
"parameters": {
"text": "Work as instructed!",
"messages": {
"messageValues": [
{
"message": "=You are an expert SEO blog writer for \u201cAgent Circle\u201d specializing in Technology and Artificial Intelligence content. For each request, you must:\n\n1. Randomly select one category (exactly as shown):\n\u2013 Artificial Intelligence (AI)\n\u2013 AI Agents\n\u2013 Automation\n\u2013 Workflow\n- Prompts\n\n2. Create the following elements:\n\n- Article Title: Unique, non-robotic, and engaging. Avoid using colons \u201c:\u201d. Clickbait is acceptable if not exaggerated.\n\n- Slug: URL-friendly, lowercase, hyphen-separated.\n\n- Focus Keyphrase: Maximum of 2 words, capturing the main idea.\n\n- Meta Description: Up to 160 characters, summarizing the article compellingly.\n\n3. Use the current year placeholder: If needed, incorporate {{ $now.year }} in the title to ensure content remains up-to-date.\n\nOutput exactly in this format:\nCategory: <chosen category>\nTitle: <your title>\nSlug: <your-slug>\nFocus Keyphrase: <max 2 words>\nMeta Description: <\u2264160 characters>"
}
]
},
"promptType": "define",
"hasOutputParser": true
},
"typeVersion": 1.6
},
{
"id": "a4e94839-a09b-49ff-9ccb-b0e6669027d7",
"name": "Agent - Article Generator",
"type": "@n8n/n8n-nodes-langchain.chainLlm",
"position": [
760,
0
],
"parameters": {
"text": "=Write a SEO Blog Article with 1,500\u20132,500-word.\n\nUse the following inputs:\n- Title: {{ $json.output.title }}\n- Category: {{ $json.output.category }}\n- Focus Phrase: {{ $json.output.focus_phrase }}\n\nInstructions:\n\nTitle Handling\n- Use the given title as-is.\n- Do not repeat the title within the article body.\n\nOpening Section (100\u2013150 words)\n- Start with an engaging hook to captivate readers.\n- Seamlessly include the focus phrase within the first 2\u20133 sentences.\n- Do not label this section as \"Introduction\".\n\nArticle Body Structure\n- Use 4 to 6 H2 headings, each with optional 1\u20132 H3s underneath as needed.\n- Include the focus phrase in at least one H2 or H3.\n- Naturally use the focus phrase throughout the article (between 4 to 16 times total).\n- Add bullet points, examples, data, or expert quotes to enrich the content.\n- Include at least one outbound link to a relevant high-authority source (if available).\n- Avoid inserting the article title again anywhere in the content.\n\nWriting Style\n- Friendly yet authoritative tone.\n- Clear, digestible paragraphs (2\u20134 sentences each).\n- Maintain logical flow with smooth transitions and varied sentence structure.\n- Write for a general audience\u2014avoid jargon or overly technical explanations.\n\nFinal Section (Conclusion & CTA)\n- Do not label this section as \u201cConclusion\u201d.\n- Summarize the article\u2019s key takeaways.\n- End with a compelling call to action, encouraging readers to learn more or take the next step.\n- Add a contact call-to-action like:\n\u201cFor more insights or collaboration opportunities, visit www.agentcircle.ai.\u201d\n\nSEO & Readability\n- Ensure excellent grammar and sentence flow.\n- Optimize for keyword density and natural placement.\n- Prioritize readability for desktop and mobile audiences.\n\nEnsure flawless grammar, optimal keyword density, and readability for a general audience.",
"messages": {
"messageValues": [
{
"message": "=Role: You are an elite blog writer for Dax AI, specializing in crafting highly valuable, SEO-optimized, audience-focused long-form articles ready for direct publication in WordPress.\n\nWhen provided with a topic or title, adhere strictly to the following guidelines:\n\n1. Content Focus\n- Deliver practical tips, clear strategies, in-depth insights, or step-by-step guides directly related to the topic.\n- Prioritize original, actionable advice that readers can implement immediately.\n\n2. Article Length & Structure\n- Minimum Word Count: 1,500 words.\n- Headings:\n - Utilize clear hierarchical headings to organize content:\n - <h2> for main sections.\n - <h3> for subsections.\n - <h4> for detailed points within subsections.\n- Flow:\n - Ensure each section flows logically, with appropriate introductions, transitions, and conclusions.\n\n3. SEO Optimization\n- Scannability:\n - Use short paragraphs (2\u20134 sentences).\n - Incorporate subheadings and bulleted or numbered lists for easy reading.\n- Keyword Usage:\n - Naturally incorporate relevant keywords without keyword stuffing.\n- Meta Description:\n - Write an engaging, concise meta description (under 160 characters) at the top of the article.\n\n4. WordPress-Compatible Formatting\n- Output Format:\n - Provide plain text only\u2014no Markdown, code fences, or additional commentary.\n- Headings:\n - Format headings as recognized by WordPress:\n - <h2>Section Title</h2>\n - <h3>Subsection Title</h3>\n - <h4>Detailed Point</h4>\n- Lists:\n - For bullet points, use a dash followed by a space (e.g., \u2013 Example item).\n - For numbered lists, use numerals followed by a period and a space (e.g., 1. Step one).\n - Do not bold list items.\n\n5. Final Output\n- Content Only:\n - Provide only the article body in ready-to-publish WordPress format.\n - Exclude the article title, author bylines, and any formatting instructions.\n- Commencement:\n - Begin immediately with the first <h2> section heading.\n\n"
}
]
},
"promptType": "define"
},
"typeVersion": 1.6
},
{
"id": "e554cb3b-f343-46a5-af3b-45560558791e",
"name": "Structured Output Parser",
"type": "@n8n/n8n-nodes-langchain.outputParserStructured",
"position": [
600,
160
],
"parameters": {
"jsonSchemaExample": "{\n\t\"category\": \"AI Agent\",\n\t\"title\": \"Article Title\",\n \"slug\": \"article-slug\",\n\t\"focus_phrase\": \"focus phrase for SEO\",\n\t\"meta_description\": \"meta description under 160 characters\"\n}"
},
"typeVersion": 1.2
},
{
"id": "7d0ea204-8162-497c-a092-93efc52a0d31",
"name": "Wordpress - Post Draft",
"type": "n8n-nodes-base.wordpress",
"position": [
1180,
0
],
"parameters": {
"title": "={{ $('Agent - Topic Chooser & Title Generator').item.json.output.title }}",
"additionalFields": {
"slug": "={{ $('Agent - Topic Chooser & Title Generator').item.json.output.slug }}",
"format": "standard",
"status": "draft",
"content": "={{ $json.text }}",
"authorId": 1,
"categories": "={{ $('Agent - Topic Chooser & Title Generator').item.json.output.category == \"Technology\" ? [3] :\n $('Agent - Topic Chooser & Title Generator').item.json.output.category == \"Artificial Intelligence (AI)\" ? [4] :\n $('Agent - Topic Chooser & Title Generator').item.json.output.category == \"Tech Fact\" ? [7] :\n $('Agent - Topic Chooser & Title Generator').item.json.output.category == \"Tech History\" ? [8] :\n $('Agent - Topic Chooser & Title Generator').item.json.output.category == \"Tech Tips\" ? [9] : [1] }}"
}
},
"credentials": {
"wordpressApi": {
"name": "<your credential>"
}
},
"typeVersion": 1
},
{
"id": "c94d2435-297c-4270-b00b-8e01ac699346",
"name": "Wordpress - Upload Image",
"type": "n8n-nodes-base.httpRequest",
"position": [
1640,
0
],
"parameters": {
"url": "=https://{{ $('Fields - Set Website').item.json.website }}/wp-json/wp/v2/media",
"method": "POST",
"options": {},
"sendBody": true,
"contentType": "binaryData",
"sendHeaders": true,
"authentication": "predefinedCredentialType",
"headerParameters": {
"parameters": [
{
"name": "Content-Type",
"value": "image/png"
},
{
"name": "Content-Disposition",
"value": "=attachment; filename={{$now.toMillis()}}.png"
}
]
},
"inputDataFieldName": "data",
"nodeCredentialType": "wordpressApi"
},
"credentials": {
"wordpressApi": {
"name": "<your credential>"
}
},
"typeVersion": 4.2
},
{
"id": "4097ce7f-8927-4545-9556-eb9cdc64357d",
"name": "Telegram - Send Message",
"type": "n8n-nodes-base.telegram",
"disabled": true,
"position": [
2080,
0
],
"parameters": {
"text": "=Post Published!\n\nArticle: {{ $json.link }}",
"chatId": "=",
"additionalFields": {}
},
"credentials": {
"telegramApi": {
"name": "<your credential>"
}
},
"typeVersion": 1.2
},
{
"id": "c457c854-eca6-4aab-9dd9-8b92553e2cfa",
"name": "Sticky Note1",
"type": "n8n-nodes-base.stickyNote",
"position": [
-800,
-420
],
"parameters": {
"width": 660,
"height": 1800,
"content": "## [n8n Automation] Auto-Generate SEO Articles In Wordpress - Try It Out!\n**This n8n template helps you automate the process of generating, uploading, and saving SEO-optimized articles as drafts in your Wordpress site using AI agents for both content and visuals.**\n\nUse cases are many: \n- **Blog Owners**: Effortlessly keep your Wordpress blog updated with automated, SEO-optimized articles and featured images.\n- **Affiliate Marketers**: Rapidly publish keyword-rich Wordpress posts to boost traffic and affiliate earnings without manual writing.\n- **Newsrooms & Content Teams**: Instantly draft and upload timely Wordpress articles to stay ahead on trending topics with minimal effort.\n- **Agencies**: Automate content creation and publishing across multiple client Wordpress sites, scaling your agency\u2019s output.\n\n## How It Works\n- The workflow begins with a manual trigger in n8n.\n- The target Wordpress website domain - where the article will be published - is specified using the **Fields \u2013 Set Website** node.\n- The **Agent \u2013 Topic Chooser & Title Generator** uses Google Gemini to randomly select one of your pre-defined website-related topics and requests the model to generate article elements in your specified format. The results are then parsed and routed to the next AI agent.\n- The **Agent \u2013 Article Generator** (powered by Google Gemini) creates a complete, SEO-optimized article tailored to your settings and the selected topic.\n- The workflow then uploads the AI-generated article as a draft post to your Wordpress site.\n- Next, the article content is sent to the **OpenAI** to generate a unique, relevant featured image.\n- The generated image is uploaded and set as the featured image in the draft post.\n- (Optional) Finally, the workflow can notify you via **Telegram** (or any connected messaging app) that the post is ready as a draft on your Wordpress account for further review.\n\n\n\u26a0\ufe0f **Important Note**: \n\nIn the default prompt setup of the first **Agent \u2013 Topic Chooser & Title Generator**, the website domain is set to **Agent Circle**, the industry is **Technology and Artificial Intelligence**, and the **5 available topics** for article generation are: Artificial Intelligence (AI); AI Agents; Automation; Workflow; Prompts). \n\nTo get the best results for your site, please make sure to adjust this part of the prompt to match your own website domain, your industry, and the topics most relevant to your audience. \n\n## How To Set Up\n- Download and import the workflow into your n8n workspace.\n- Set up the necessary credentials for each tool:\n - **Google Gemini API** (for article elements generation) \u2192 connected to nodes **Google Gemini Chat Model 1** and **Google Gemini Chat Model 2**.\n - **OpenAI API** (for creating unique featured images) \u2192 connected to the node **OpenAI - Generate Image**.\n - **Wordpress API access** (for posting, uploading, and setting featured images) \u2192 connected to the node **Wordpress - Post Draft**.\n - (Optional) **Telegram** or your preferred chat app (for completion notifications).\n- Adjust the **Fields \u2013 Set Website** node to match your target Wordpress website domain.\n- Manually trigger the workflow by clicking **Test Workflow** or **Execute Workflow**.\n- Wait for the process to complete.\n- Receive a chat notification or check the draft post directly in your Wordpress dashboard.\n\n## Requirements\n- An **n8n** instance (self-hosted or cloud).\n- **OpenAI** API access (for image generation).\n- **Wordpress** API access with admin permissions.\n- Access to **Google Gemini** (for advanced topic selection and article generation).\n- (Optional) API credentials for **Telegram** or another messaging app if you want to receive notifications when the process is complete.\n\n## How To Customize\n- **Modify topics, article elements and guildelines**: You can easily customize the pre-defined topics in the instruction prompt within Node **Agent \u2013 Topic Chooser & Title Generator**, as well as adjust the descriptions or structure of each article element to fit your needs and style.\n- **Integrate other chat triggers**: Link up with Slack, Discord, or any messaging tool to update progress.\n- **Choose your AI model**: Swap between Google Gemini and OpenAI for content generation, or add your preferred LLM.\n\n## Need Help?\nIf you\u2019d like this workflow customized, or if you\u2019re looking to build a tailored AI Agent for your own business - please feel free to reach out to [**Agent Circle**](https://www.agentcircle.ai/). We\u2019re always here to support and help you to bring automation ideas to life.\n\nJoin our community on different platforms for assistance, inspiration and tips from others.\n\nWebsite: https://www.agentcircle.ai/\nEtsy: https://www.etsy.com/shop/AgentCircle\nGumroad: http://agentcircle.gumroad.com/\nDiscord Global: https://discord.gg/d8SkCzKwnP\nFB Page Global: https://www.facebook.com/agentcircle/\nFB Group Global: https://www.facebook.com/groups/aiagentcircle/\nX: https://x.com/agent_circle\nYouTube: https://www.youtube.com/@agentcircle\nLinkedIn: https://www.linkedin.com/company/agentcircle"
},
"typeVersion": 1
},
{
"id": "911d0a64-fb6f-4020-ab2f-774071f99173",
"name": "Fields - Set Website",
"type": "n8n-nodes-base.set",
"position": [
180,
0
],
"parameters": {
"options": {},
"assignments": {
"assignments": [
{
"id": "4e89ea19-63e5-4c15-859a-7fbc5ac7ef7c",
"name": "website",
"type": "string",
"value": "www.agentcircle.ai"
}
]
}
},
"typeVersion": 3.4
},
{
"id": "a64228c0-b7ad-4f10-b63e-177505d20e03",
"name": "Wordpress - Set Featured Image & Post",
"type": "n8n-nodes-base.httpRequest",
"position": [
1820,
0
],
"parameters": {
"url": "=https://{{ $('Fields - Set Website').item.json.website }}/wp-json/wp/v2/posts/{{ $('Wordpress - Post Draft').item.json.id }}",
"method": "POST",
"options": {},
"sendBody": true,
"authentication": "predefinedCredentialType",
"bodyParameters": {
"parameters": [
{
"name": "featured_media",
"value": "={{ $json.id }}"
}
]
},
"nodeCredentialType": "wordpressApi"
},
"credentials": {
"wordpressApi": {
"name": "<your credential>"
}
},
"typeVersion": 4.2
},
{
"id": "ed2b75ad-56de-4e1f-a019-b669d5e3c100",
"name": "Google Gemini Chat Model 2",
"type": "@n8n/n8n-nodes-langchain.lmChatGoogleGemini",
"position": [
760,
160
],
"parameters": {
"options": {},
"modelName": "models/gemini-2.0-flash"
},
"credentials": {
"googlePalmApi": {
"name": "<your credential>"
}
},
"typeVersion": 1
},
{
"id": "f784998d-edbd-471c-9a10-856af15a5866",
"name": "Google Gemini Chat Model 1",
"type": "@n8n/n8n-nodes-langchain.lmChatGoogleGemini",
"position": [
440,
160
],
"parameters": {
"options": {},
"modelName": "models/gemini-2.0-flash"
},
"credentials": {
"googlePalmApi": {
"name": "<your credential>"
}
},
"typeVersion": 1
},
{
"id": "3c869b15-e99b-4139-903b-c97c5566260d",
"name": "Sticky Note",
"type": "n8n-nodes-base.stickyNote",
"position": [
-80,
-420
],
"parameters": {
"color": 6,
"width": 440,
"height": 760,
"content": "## 1. Initiate And Set Up\n- Specify the target Wordpress website domain using the **Fields \u2013 Set Website** node.\n- Manually trigger the workflow."
},
"typeVersion": 1
},
{
"id": "ee3d0cef-6beb-45dd-9e59-76039e3b19fc",
"name": "Sticky Note2",
"type": "n8n-nodes-base.stickyNote",
"position": [
400,
-420
],
"parameters": {
"color": 6,
"width": 640,
"height": 760,
"content": "## 2. Generate Topic, Title And Content With AI Agents\n- The first **Agent \u2013 Topic Chooser & Title Generator** (using Google Gemini) randomly selects one of your pre-defined website-related topics (in the prompt) and requests the chat model to generate article elements in your specified format. The results are then parsed and routed to the next AI agent.\n- The second **Agent \u2013 Article Generator** (powered by Google Gemini) creates a complete, SEO-optimized article based on your chosen topic and settings.\n\n\n\u26a0\ufe0f **Important Note**: \n\nIn the default prompt setup of the first **Agent \u2013 Topic Chooser & Title Generator**, the website domain is set to **Agent Circle**, the industry is **Technology and Artificial Intelligence**, and the **5 available topics** for article generation are: Artificial Intelligence (AI); AI Agents; Automation; Workflow; Prompts). \n\nTo get the best results for your site, please make sure to adjust this part of the prompt to match your own website domain, your industry, and the topics most relevant to your audience. "
},
"typeVersion": 1
},
{
"id": "40876aaf-6a6d-449f-8358-c4216af4fa7a",
"name": "Sticky Note4",
"type": "n8n-nodes-base.stickyNote",
"position": [
1080,
-420
],
"parameters": {
"color": 6,
"width": 300,
"height": 760,
"content": "## 3. Upload To Wordpress\n- The workflow automatically uploads the generated article as a draft post to your Wordpress site."
},
"typeVersion": 1
},
{
"id": "2f27d5eb-1a95-4d5a-9bf0-3191b6e9fc7c",
"name": "Sticky Note5",
"type": "n8n-nodes-base.stickyNote",
"position": [
2000,
-420
],
"parameters": {
"color": 6,
"width": 280,
"height": 760,
"content": "## 5. Get Notified\n- Receive a notification via Telegram or another connected chat app once the post is ready as a draft in Wordpress."
},
"typeVersion": 1
},
{
"id": "674e5af3-1c2d-4da5-b09a-50cb1832bd28",
"name": "Sticky Note6",
"type": "n8n-nodes-base.stickyNote",
"position": [
1420,
-420
],
"parameters": {
"color": 6,
"width": 540,
"height": 760,
"content": "## 4. Create The Draft Post & Set Featured Image\n- The article is sent to the OpenAI to create a unique, relevant visual.\n- The generated image is uploaded and set as the featured image for the draft article. \n- The draft post is ready in the Wordpress dashboard for further review before manually publishing."
},
"typeVersion": 1
}
],
"active": false,
"settings": {
"executionOrder": "v1"
},
"versionId": "0e443100-ae8d-46ed-b83d-c54d5c8e86d2",
"connections": {
"Fields - Set Website": {
"main": [
[
{
"node": "Agent - Topic Chooser & Title Generator",
"type": "main",
"index": 0
}
]
]
},
"Wordpress - Post Draft": {
"main": [
[
{
"node": "OpenAI - Generate Image",
"type": "main",
"index": 0
}
]
]
},
"OpenAI - Generate Image": {
"main": [
[
{
"node": "Wordpress - Upload Image",
"type": "main",
"index": 0
}
]
]
},
"Structured Output Parser": {
"ai_outputParser": [
[
{
"node": "Agent - Topic Chooser & Title Generator",
"type": "ai_outputParser",
"index": 0
}
]
]
},
"Wordpress - Upload Image": {
"main": [
[
{
"node": "Wordpress - Set Featured Image & Post",
"type": "main",
"index": 0
}
]
]
},
"Agent - Article Generator": {
"main": [
[
{
"node": "Wordpress - Post Draft",
"type": "main",
"index": 0
}
]
]
},
"Google Gemini Chat Model 1": {
"ai_languageModel": [
[
{
"node": "Agent - Topic Chooser & Title Generator",
"type": "ai_languageModel",
"index": 0
}
]
]
},
"Google Gemini Chat Model 2": {
"ai_languageModel": [
[
{
"node": "Agent - Article Generator",
"type": "ai_languageModel",
"index": 0
}
]
]
},
"When clicking \u2018Test workflow\u2019": {
"main": [
[
{
"node": "Fields - Set Website",
"type": "main",
"index": 0
}
]
]
},
"Wordpress - Set Featured Image & Post": {
"main": [
[
{
"node": "Telegram - Send Message",
"type": "main",
"index": 0
}
]
]
},
"Agent - Topic Chooser & Title Generator": {
"main": [
[
{
"node": "Agent - Article Generator",
"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.
googlePalmApiopenAiApitelegramApiwordpressApi
For the full experience including quality scoring and batch install features for each workflow upgrade to Pro
About this workflow
Use cases are many: Blog Owners: Effortlessly keep your Wordpress blog updated with automated, SEO-optimized articles and featured images. Affiliate Marketers: Rapidly publish keyword-rich Wordpress posts to boost traffic and affiliate earnings without manual writing. Newsrooms…
Source: https://n8n.io/workflows/6275/ — 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.
Ultimate Blogblizt is a powerhouse workflow that solves the tedious task of crafting and publishing SEO-optimized tech blog posts. It integrates AI models (OpenAI, Google Gemini), WordPress, and multi
BlogBlitz is a powerful workflow that automates the creation and publishing of SEO-optimized blog posts to WordPress, saving you hours of manual content creation. Triggered on a schedule or via Telegr
The best content automation template in the market is now even better—with “deep research” on time-sensitive topics\! Unlike most n8n content automation templates that are mainly for “demo purposes,”
Find trending theories – Uses Grok-4 to scan X (Twitter) for the top emerging conspiracy theory from the last 3 days Write the script – Takes the theory and creates a 24-second documentary-style scrip
Generate the script – Takes a "what if" question and creates a 24-second video script with 4 scenes (Hook, Wonder, Reality, CTA) using Gemini 2.5 Pro Create Veo prompts – Translates each scene's visua