{
  "name": "Cold Outreach Agent",
  "nodes": [
    {
      "parameters": {},
      "id": "11c21c64-4563-4283-abf2-2509af69d748",
      "name": "Manual Trigger",
      "type": "n8n-nodes-base.manualTrigger",
      "typeVersion": 1,
      "position": [
        220,
        320
      ]
    },
    {
      "parameters": {
        "keepOnlySet": true,
        "values": {
          "string": [
            {
              "name": "agent_slug",
              "value": "cold-outreach-agent"
            },
            {
              "name": "agent_title",
              "value": "Cold Outreach Agent"
            },
            {
              "name": "agent_description",
              "value": "Schreibt personalisierte Kaltakquise-Nachrichten f\u00fcr E-Mail oder LinkedIn."
            },
            {
              "name": "system_prompt",
              "value": "Du bist ein hochspezialisierter Business-Agent. Arbeite pr\u00e4zise, strukturiert, umsetzungsorientiert und ohne Halluzinationen. Nutze ausschlie\u00dflich die bereitgestellten Eingaben. Wenn Daten fehlen oder unsicher sind, markiere sie explizit als offen. Antworte standardm\u00e4\u00dfig auf Deutsch, au\u00dfer die Eingabe verlangt etwas anderes. Liefere Ergebnisse so, dass ein Team sie direkt weiterverwenden kann.\n\nRolle: Cold Outreach Agent. Aufgabe: Schreibt personalisierte Kaltakquise-Nachrichten f\u00fcr E-Mail oder LinkedIn. Arbeite immer in diesem Output-Rahmen: Subject line, Email version, LinkedIn version, Personalization angle, CTA."
            },
            {
              "name": "task",
              "value": "Erstelle eine kurze, personalisierte Cold-Outreach-Nachricht."
            },
            {
              "name": "goal",
              "value": "Antwortwahrscheinlichkeit maximieren, ohne spammy zu klingen."
            },
            {
              "name": "context",
              "value": "B2B Outbound f\u00fcr AI und Automatisierung."
            },
            {
              "name": "input_data",
              "value": "{\n  \"prospect_name\": \"Thomas Berger\",\n  \"company\": \"Berger Fensterbau\",\n  \"industry\": \"Handwerk / Fensterbau\",\n  \"observations\": [\n    \"viele wiederkehrende Kundenfragen\",\n    \"Kontaktformular vorhanden\",\n    \"wahrscheinlich manueller Angebotsprozess\"\n  ],\n  \"offer\": \"AI Agent zur Lead-Qualifizierung und Terminbuchung\"\n}"
            },
            {
              "name": "output_format",
              "value": "Markdown mit klaren \u00dcberschriften und Bulletpoints"
            },
            {
              "name": "output_schema",
              "value": "\n- Subject line\n- Email version\n- LinkedIn version\n- Personalization angle\n- CTA"
            },
            {
              "name": "extra_rules",
              "value": "Kurz, relevant, respektvoll."
            },
            {
              "name": "sample_customer_value",
              "value": "Dieser Agent erstellt personalisierte Cold-Outreach-Nachrichten."
            }
          ]
        }
      },
      "id": "182c463b-c919-4a2a-94c4-58e825b75aa2",
      "name": "Set Agent Input",
      "type": "n8n-nodes-base.set",
      "typeVersion": 3.4,
      "position": [
        480,
        320
      ]
    },
    {
      "parameters": {
        "jsCode": "const user_message = `Aufgabe: ${$json.task}\n\nZiel: ${$json.goal}\n\nKontext: ${$json.context}\n\nEingabedaten (JSON oder Text):\n${$json.input_data}\n\nErwartete Ausgabebausteine:\n${$json.output_schema}\n\nZusatzregeln:\n${$json.extra_rules}`;\n\nreturn [{\n  json: {\n    ...$json,\n    user_message,\n    import_note: 'Nach dem Import nur OPENAI_API_KEY bzw. HTTP Credential und optional OPENAI_MODEL anpassen.'\n  }\n}];"
      },
      "id": "65055563-3cd1-48fb-bac9-e3c38c553919",
      "name": "Build Prompt",
      "type": "n8n-nodes-base.code",
      "typeVersion": 2,
      "position": [
        760,
        320
      ]
    },
    {
      "parameters": {
        "method": "POST",
        "url": "https://api.openai.com/v1/responses",
        "sendHeaders": true,
        "headerParameters": {
          "parameters": [
            {
              "name": "Authorization",
              "value": "=Bearer {{$env.OPENAI_API_KEY}}"
            },
            {
              "name": "Content-Type",
              "value": "application/json"
            }
          ]
        },
        "sendBody": true,
        "specifyBody": "json",
        "jsonBody": "={{ JSON.stringify({ model: $env.OPENAI_MODEL || 'gpt-4.1', instructions: $json.system_prompt, input: $json.user_message }) }}",
        "options": {}
      },
      "id": "2677d8a9-d4b1-4c05-a309-03a55def7341",
      "name": "Call OpenAI Responses API",
      "type": "n8n-nodes-base.httpRequest",
      "typeVersion": 4.2,
      "position": [
        1040,
        320
      ]
    },
    {
      "parameters": {
        "jsCode": "const body = $json;\n                let text = '';\n                if (Array.isArray(body.output)) {\n                  for (const item of body.output) {\n                    if (Array.isArray(item.content)) {\n                      for (const c of item.content) {\n                        if (c.type === 'output_text' && c.text) text += c.text + '\n';\n                      }\n                    }\n                  }\n                }\n                return [{\n                  json: {\n                    agent: $('Set Agent Input').first().json.agent_title,\n                    result: text.trim(),\n                    raw_response: body\n                  }\n                }];"
      },
      "id": "93f62e82-f900-434c-aeb9-4ba0d471d013",
      "name": "Extract Result",
      "type": "n8n-nodes-base.code",
      "typeVersion": 2,
      "position": [
        1300,
        320
      ]
    }
  ],
  "connections": {
    "Manual Trigger": {
      "main": [
        [
          {
            "node": "Set Agent Input",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "Set Agent Input": {
      "main": [
        [
          {
            "node": "Build Prompt",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "Build Prompt": {
      "main": [
        [
          {
            "node": "Call OpenAI Responses API",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "Call OpenAI Responses API": {
      "main": [
        [
          {
            "node": "Extract Result",
            "type": "main",
            "index": 0
          }
        ]
      ]
    }
  },
  "settings": {
    "executionOrder": "v1"
  },
  "meta": {
    "templateCredsSetupCompleted": false
  },
  "active": false,
  "versionId": "748b68a7-edae-4f90-ada9-9546d1f7405c",
  "id": "ca513987-7d6a-4b77-beca-9f7eac56de5e",
  "tags": [
    "ai",
    "template",
    "cold-outreach-agent"
  ]
}