Bulletin hebdomadaire sur les droits des animaux
Ceci est unSocial Media, AI Summarizationworkflow d'automatisation du domainecontenant 11 nœuds.Utilise principalement des nœuds comme Set, EmailSend, ExecuteWorkflow, ScheduleTrigger, ChainLlm. Recherche automatisée d'actualités sur les droits des animaux et résumé hebdomadaire, en utilisant Claude AI et Serper
- •Aucun prérequis spécial, prêt à l'emploi après importation
Nœuds utilisés (11)
Catégorie
{
"id": "SWZk4x34IRwxhKzr",
"meta": {
"instanceId": "26bd595441827fb23edb0643d6d240e79b0b8993d278e90950f16e18bf9e3c4a"
},
"name": "Weekly Animal Advocacy Brief",
"tags": [],
"nodes": [
{
"id": "b2a2dd9d-2bcf-4689-bfaf-099a1356188d",
"name": "Déclencheur Planifié",
"type": "n8n-nodes-base.scheduleTrigger",
"position": [
280,
0
],
"parameters": {
"rule": {
"interval": [
{
"field": "weeks",
"triggerAtHour": 12
}
]
}
},
"typeVersion": 1.2
},
{
"id": "fe98d44d-7ec8-419f-a7d5-064a240a88a1",
"name": "Modèle de Chat OpenRouter",
"type": "@n8n/n8n-nodes-langchain.lmChatOpenRouter",
"position": [
980,
220
],
"parameters": {
"model": "anthropic/claude-sonnet-4",
"options": {}
},
"credentials": {
"openRouterApi": {
"id": "QqgKARn52qQiKICN",
"name": "OpenRouter account"
}
},
"typeVersion": 1
},
{
"id": "0f3a7012-ce68-404b-b5c8-6394a11aedd5",
"name": "Appeler l'Agent de Recherche",
"type": "n8n-nodes-base.executeWorkflow",
"position": [
760,
0
],
"parameters": {
"options": {},
"workflowId": {
"__rl": true,
"mode": "list",
"value": "k053fXGjIF7dUIQZ",
"cachedResultName": "♻️ 🧩 📚 General Research Agent"
},
"workflowInputs": {
"value": {
"chatInput": "=Your job is to research news and updates strictly from the past week, only using the Serper API. You must set the time parameter as follows to ensure only past-week articles are retrieved:\n\n\"tbs\": \"qdr:w\" (past week)\n\nYou are searching for news and articles on the following topics, but **only as they relate to animal rights, animal welfare, vegetarianism, and veganism**:\n\n{{ $json.Topics }}\n\nAlso consider the additional context of the user's instructions for the type of information they want you to find:\n\n{{ $json['Custom Instructions'] }}\n\nThe current date and time is {{ $now }}.\n\n**Your final answer should:**\n- Be as long and detailed as possible.\n- Include every direct URL you find, using exactly the same URL string returned by the tools.\n- Never modify, shorten, omit, or \"clean up\" URLs in any way.\n- Clearly show all URLs, even if some are repeated across different findings.\n\n**Research requirements:**\n- Make multiple API calls to Serper if needed to get complete coverage.\n- Use scraping tools (text scraping, URL scraping) on the sites you find to extract additional details, but never modify or fabricate URLs.\n- If a website blocks scraping, acknowledge it and continue with the available data (this does not mean the tool is broken).\n\n**Prohibited behavior:**\n- Never say \"I don't have access to real-time news data or current internet content\" or any similar disclaimer, as you do have tools for real-time news retrieval.\n- Never guess or invent URLs.\n\n**IMPORTANT:** Always include every URL exactly as found by the tools, without any alterations.",
"sessionId": "={{ (Math.random().toString(36).substring(2) + Date.now().toString(36)) }}"
},
"schema": [
{
"id": "chatInput",
"type": "string",
"display": true,
"required": false,
"displayName": "chatInput",
"defaultMatch": false,
"canBeUsedToMatch": true
},
{
"id": "sessionId",
"type": "string",
"display": true,
"required": false,
"displayName": "sessionId",
"defaultMatch": false,
"canBeUsedToMatch": true
}
],
"mappingMode": "defineBelow",
"matchingColumns": [],
"attemptToConvertTypes": false,
"convertFieldsToString": true
}
},
"retryOnFail": true,
"typeVersion": 1.2,
"waitBetweenTries": 5000
},
{
"id": "543cb81a-7d48-4040-ba32-43c3eac8b407",
"name": "Rédiger le Rapport HTML",
"type": "@n8n/n8n-nodes-langchain.chainLlm",
"position": [
980,
0
],
"parameters": {
"text": "=Write an HTML formatted report on the latest updates relevant to the user based on the context provided and the user's request. \n\nRules for links:\n- You must ONLY use URLs explicitly provided in the context. \n- Do NOT invent, guess, or modify any URLs. If a link is missing or incomplete, state: \"Link not available.\"\n- Use the exact URL as it appears in the context without shortening, changing parameters, or cleaning them in any way.\n- When displaying a link, wrap it in an `<a href=\"URL\">` tag for presentation, but the URL must remain untouched.\n\nUser topics interested in:\n{{ $('Set Preferences').item.json.Topics }}\n\nUser instructions:\n{{ $('Set Preferences').item.json['Custom Instructions'] }}\n\nContext:\n{{ $json.output }}\n\nEXTREMELY IMPORTANT: Your response must be entirely valid HTML code and start directly with `<!DOCTYPE html>`. Do not include any backticks or code block formatting. \n\nCheck your response carefully to ensure:\n- Every hyperlink exactly matches a URL from the context.\n- There are no fabricated or missing URLs.\n- The HTML structure is correct and well-formed.",
"batching": {},
"promptType": "define"
},
"retryOnFail": true,
"typeVersion": 1.7,
"waitBetweenTries": 5000
},
{
"id": "39295455-87b7-45c3-956d-3624a9b1f594",
"name": "Définir les Préférences",
"type": "n8n-nodes-base.set",
"position": [
500,
0
],
"parameters": {
"options": {},
"assignments": {
"assignments": [
{
"id": "8f4f5057-9dbf-4418-a2a8-e9ec0de3d678",
"name": "Topics",
"type": "string",
"value": "Animal rights legal cases, undercover investigations in factory farming, corporate pledges to improve animal welfare, plant-based and cultivated meat innovations, veganism trends and campaigns, government policies affecting farmed animals."
},
{
"id": "ef06b983-97ea-4581-b364-61f9781e13cf",
"name": "Custom Instructions",
"type": "string",
"value": "Focus on high-impact, verifiable updates that matter for animal advocacy campaigns. Prioritize credible sources (NGOs, major news outlets, scientific publications). Summarize key events in clear, non-technical language, and highlight how they affect animal rights or vegan advocacy efforts."
},
{
"id": "6f8950a4-8cbd-486e-b2eb-35a7102d9577",
"name": "Recipient Email",
"type": "string",
"value": "email@example.com"
}
]
}
},
"typeVersion": 3.4
},
{
"id": "76bd893d-a50a-412c-ac54-901b45bce7e3",
"name": "Envoyer un Email",
"type": "n8n-nodes-base.emailSend",
"position": [
1320,
0
],
"webhookId": "3b53318b-cd46-48d4-ab35-fae8613232d1",
"parameters": {
"html": "={{ $json.text }}",
"options": {
"appendAttribution": false
},
"subject": "Weekly Update from Open Paws",
"toEmail": "={{ $('Set Preferences').item.json['Email Address'] }}",
"fromEmail": "email@example.com"
},
"credentials": {
"smtp": {
"id": "WT1fLClVHN3DUxyk",
"name": "info@openpaws.ai - ProtonMail SMTP"
}
},
"typeVersion": 2.1
},
{
"id": "585d8c3f-0940-4b6b-86f4-42bba49faba2",
"name": "Note Adhésive1",
"type": "n8n-nodes-base.stickyNote",
"position": [
140,
-640
],
"parameters": {
"height": 600,
"content": "# ⏰ Schedule Node (Cron)\n\n**What it does:** Triggers the workflow every week.\n\n## Recommended settings:\n- **Mode:** Cron\n- **Day of Week:** Monday (or your choice)\n- **Hour:** 09:00 (or your preferred time)\n\n**Tip:** \nFor a **daily version**, duplicate this workflow and set:\n- Schedule it **every day at 09:00**.\n- Set - `\"tbs\": \"qdr:d\"`in the \"Call Research Agent\" and \"Write HTML Report\" nodes\n"
},
"typeVersion": 1
},
{
"id": "7ad051d3-05ea-402d-aad1-aa151443e2bb",
"name": "Note Adhésive2",
"type": "n8n-nodes-base.stickyNote",
"position": [
420,
-640
],
"parameters": {
"height": 600,
"content": "# 🧩 Set Preferences\n- **Update Topics:** List of topics for research (e.g., factory farming exposés, animal rights laws).\n- **Update Instructions:** How results should be summarized (e.g., “Focus on advocacy actions and credible sources”).\n- **Recipient Email:** Change this to where the email should be sent.\n"
},
"typeVersion": 1
},
{
"id": "3f84cfea-d967-483b-92c2-9e95b87a0504",
"name": "Note Adhésive3",
"type": "n8n-nodes-base.stickyNote",
"position": [
700,
-640
],
"parameters": {
"height": 600,
"content": "# 🔎 Research Agent\n- Calls the **Multi-tool Research Agent subworkflow**: \n [Add this first](https://n8n.io/workflows/5588-multi-tool-research-agent-for-animal-advocacy-with-openrouter-serper-and-open-paws-db/).\n- Finds news using Serper + scraping tools (past week or day).\n- **Important:** Uses strict URL rules (no changes, no omissions).\n"
},
"typeVersion": 1
},
{
"id": "94bd72d4-5192-496c-9662-24ef514ba714",
"name": "Note Adhésive4",
"type": "n8n-nodes-base.stickyNote",
"position": [
980,
-640
],
"parameters": {
"height": 600,
"content": "# 🧱 Write HTML\n- Converts research output into a **valid HTML email**.\n- Starts with `<!DOCTYPE html>` (no code blocks).\n- **Includes all URLs exactly as found**, wrapped in `<a>` tags.\n- Missing links display as: **\"Link not available.\"**\n"
},
"typeVersion": 1
},
{
"id": "f8a10e24-f270-459d-8247-46f9bd1a4e92",
"name": "Note Adhésive5",
"type": "n8n-nodes-base.stickyNote",
"position": [
1260,
-640
],
"parameters": {
"height": 600,
"content": "# ✉️ Send Email\n- Sends the final HTML report to **Recipient Email**.\n- Subject: `Animal Advocacy Weekly Brief – {{ $now }}`\n- Body: Uses HTML output from the previous node.\n"
},
"typeVersion": 1
}
],
"active": false,
"pinData": {},
"settings": {
"executionOrder": "v1"
},
"versionId": "1dbc091a-fbbe-425d-aaaf-ecc16a6363d0",
"connections": {
"39295455-87b7-45c3-956d-3624a9b1f594": {
"main": [
[
{
"node": "0f3a7012-ce68-404b-b5c8-6394a11aedd5",
"type": "main",
"index": 0
}
]
]
},
"b2a2dd9d-2bcf-4689-bfaf-099a1356188d": {
"main": [
[
{
"node": "39295455-87b7-45c3-956d-3624a9b1f594",
"type": "main",
"index": 0
}
]
]
},
"543cb81a-7d48-4040-ba32-43c3eac8b407": {
"main": [
[
{
"node": "76bd893d-a50a-412c-ac54-901b45bce7e3",
"type": "main",
"index": 0
}
]
]
},
"0f3a7012-ce68-404b-b5c8-6394a11aedd5": {
"main": [
[
{
"node": "543cb81a-7d48-4040-ba32-43c3eac8b407",
"type": "main",
"index": 0
}
]
]
},
"fe98d44d-7ec8-419f-a7d5-064a240a88a1": {
"ai_languageModel": [
[
{
"node": "543cb81a-7d48-4040-ba32-43c3eac8b407",
"type": "ai_languageModel",
"index": 0
}
]
]
}
}
}Comment utiliser ce workflow ?
Copiez le code de configuration JSON ci-dessus, créez un nouveau workflow dans votre instance n8n et sélectionnez "Importer depuis le JSON", collez la configuration et modifiez les paramètres d'authentification selon vos besoins.
Dans quelles scénarios ce workflow est-il adapté ?
Intermédiaire - Réseaux sociaux, Résumé IA
Est-ce payant ?
Ce workflow est entièrement gratuit et peut être utilisé directement. Veuillez noter que les services tiers utilisés dans le workflow (comme l'API OpenAI) peuvent nécessiter un paiement de votre part.
Workflows recommandés
Open Paws
@openpawsOpen Paws is a nonprofit building open-source AI tools to accelerate animal advocacy. We create machine learning models and automation workflows trained on real-world campaign data to help end industrial animal exploitation. All tools are free, transparent, and designed for real-world impact.
Partager ce workflow