{
  "schema": "ldwf",
  "version": 1,
  "name": "Dokumenten-Zusammenfassung",
  "meta": {
    "exportedAt": "2025-11-16T16:56:54.408Z",
    "exporter": "client"
  },
  "graph": {
    "nodes": [
      {
        "type": "trigger",
        "data": {
          "comment": "📂 SCHRITT 1: TRIGGER - NEUE DATEI ÜBERWACHEN\n\nBESCHREIBUNG:\nDieser Trigger startet den Workflow automatisch, sobald eine neue Datei in einem bestimmten Google Drive-Ordner hochgeladen wird.\n\nSETUP:\n1. Klicken Sie auf diesen Block\n2. Verbinden Sie Ihr Google Drive-Konto\n3. Wählen Sie den spezifischen Ordner aus, den Sie überwachen möchten\n4. Der Trigger reagiert nur auf neue Dateien in diesem Ordner\n\nPERSONALISIERUNGSOPTIONEN:\n• Überwachen Sie den Hauptordner für alle Team-Dokumente\n• Erstellen Sie separate Workflows für verschiedene Ordner (z.B. Verträge, Reports, Proposals)\n• Kombinieren Sie mit Unterordnern für bessere Organisation\n\nUNTERSTÜTZTE DATEIFORMATE:\nPDF, DOCX, TXT, Google Docs und weitere Textformate",
          "executionId": null,
          "errorHandling": {
            "strategy": "stop"
          },
          "slug": "newDocument",
          "kind": "integration",
          "integrationId": "027a1624-8691-4c3d-aeb9-9c179f2ac101",
          "triggerId": "371fdf5d-92e5-4e88-ade2-ca91334366af",
          "requiresConnection": true,
          "connectionId": null,
          "params": []
        },
        "id": "b0520b61-2e53-48b3-bac8-cb07826b9683",
        "position": {
          "x": 20,
          "y": 9710
        }
      },
      {
        "type": "action",
        "data": {
          "comment": "📥 SCHRITT 2: DOKUMENT HERUNTERLADEN\n\nBESCHREIBUNG:\nLädt den vollständigen Inhalt der neu hochgeladenen Datei herunter und extrahiert den Text für die weitere Verarbeitung.\n\nSETUP:\n• Keine manuelle Konfiguration erforderlich\n• Die Datei-ID wird automatisch vom Trigger übernommen\n• Der Dateiinhalt wird als Text extrahiert\n\nPERSONALISIERUNGSOPTIONEN:\n• Standard: Automatische Extraktion des Dateiinhalts\n• Der extrahierte Text wird direkt an den Analyzer weitergegeben\n• Funktioniert mit allen gängigen Dokumentformaten\n\nHINWEIS:\nBei sehr großen Dokumenten (>100 Seiten) kann die Verarbeitung etwas länger dauern.",
          "executionId": null,
          "errorHandling": {
            "strategy": "stop"
          },
          "slug": "getFile",
          "actionId": "19b9204a-21b2-4951-a33d-ab07c9087f1b",
          "config": {
            "connectionId": null,
            "requiresConfirmation": false,
            "modelId": "64776bd9-4c58-42d0-8301-2c8a4566e68c",
            "fields": {
              "itemId": {
                "mode": "auto"
              }
            }
          }
        },
        "id": "4f37ce87-ca11-4ccf-b52a-8950ac33dfe5",
        "position": {
          "x": 560,
          "y": 9710
        }
      },
      {
        "type": "action",
        "data": {
          "comment": "💾 SCHRITT 5: ZUSAMMENFASSUNG SPEICHERN\n\nBESCHREIBUNG:\nSpeichert die formatierte Zusammenfassung als neue Datei in Google Drive.\n\nSETUP:\n1. Verbinden Sie Ihr Google Drive-Konto (falls noch nicht geschehen)\n2. Standard: Speichert im gleichen Ordner wie das Originaldokument\n3. Optional: Wählen Sie einen anderen Zielordner\n\nPERSONALISIERUNGSOPTIONEN:\n• Zielordner festlegen:\n  - Gleicher Ordner wie Original (Standard)\n  - Separater 'Zusammenfassungen'-Ordner\n  - Unterordner nach Datum oder Kategorie\n• Dateiformat ändern (siehe Code-Block)\n• Berechtigungen setzen:\n  - Nur für Team sichtbar\n  - Öffentlich teilbar\n  - Spezifische Personen\n\nHINWEIS:\nDie KI wählt automatisch den passenden Ordner basierend auf dem Original-Upload.",
          "executionId": null,
          "errorHandling": {
            "strategy": "stop"
          },
          "slug": "uploadSummary",
          "actionId": "0f25bde8-7c7a-4c9e-8cd4-f37c7f3f4ede",
          "config": {
            "connectionId": null,
            "requiresConfirmation": false,
            "modelId": "c968689a-c0d9-49de-aa76-b10ed15ebb0e",
            "fields": {
              "file": {
                "mode": "manual",
                "value": "{{formatSummary.output.content}}"
              },
              "fileName": {
                "mode": "manual",
                "value": "{{formatSummary.output.fileName}}"
              },
              "folderId": {
                "mode": "prompt",
                "prompt": "Use the same folder ID where the original document was uploaded. If not available, leave empty to upload to root."
              }
            }
          }
        },
        "id": "1e81a39b-589e-4834-9cc3-12d53967d67e",
        "position": {
          "x": 2240,
          "y": 9710
        }
      },
      {
        "type": "agent",
        "data": {
          "comment": "🤖 SCHRITT 3: KI-ANALYSE & ZUSAMMENFASSUNG\n\nBESCHREIBUNG:\nEin spezialisierter KI-Agent liest das gesamte Dokument und erstellt eine strukturierte Zusammenfassung mit Executive Summary und Key Takeaways.\n\nSETUP:\n• Keine zusätzliche Konfiguration nötig - der Agent ist einsatzbereit\n• Verwendet das Standard-LLM-Modell Ihres Workspace\n• Analysiert automatisch den Dokumentinhalt\n\nPERSONALISIERUNGSOPTIONEN:\n• Prompt anpassen: Ändern Sie die Anweisungen für spezifische Dokumenttypen\n  - Technische Dokumente: Fokus auf technische Details\n  - Geschäftsberichte: Fokus auf Finanzkennzahlen\n  - Verträge: Fokus auf Verpflichtungen und Deadlines\n• Anzahl der Key Takeaways anpassen (Standard: 3-7)\n• Länge der Executive Summary ändern\n• Sprache festlegen (Deutsch/Englisch/andere)\n\nOUTPUT-STRUKTUR:\n✓ Executive Summary (2-3 Sätze)\n✓ Key Takeaways (Stichpunkte)\n✓ Success-Flag (true/false)",
          "executionId": null,
          "errorHandling": {
            "strategy": "stop"
          },
          "slug": "documentAnalyzer",
          "assistantId": null,
          "mode": "create",
          "name": "Document Analyzer",
          "prompt": {
            "mode": "manual",
            "value": "Analyze the uploaded document and create a comprehensive summary.\n\nYour task:\n1. Read and understand the entire document content\n2. Extract the most important insights and key points\n3. Create a structured summary with:\n   - Executive Summary: A concise overview in 2-3 sentences that captures the main purpose and conclusions\n   - Key Takeaways: 3-7 bullet points highlighting the most important findings, recommendations, or insights\n\nBe thorough but concise. Focus on actionable insights and critical information that stakeholders need to know."
          },
          "attachmentIds": [],
          "output": "structured",
          "connectionOverrides": {},
          "outputSchema": [
            {
              "id": "c0c397d7-9650-416a-a248-fbed64ab4030",
              "name": "executive_summary",
              "description": "2-3 sentence overview of the document",
              "type": "string",
              "required": true
            },
            {
              "id": "026fae49-2c29-401a-bb17-c6825e4a19ca",
              "name": "key_takeaways",
              "description": "Important insights in bullet point format",
              "type": "string",
              "required": true
            },
            {
              "id": "eb986ef3-34c7-47fd-b187-86be722746ce",
              "name": "success",
              "description": "Whether the analysis was successful",
              "type": "boolean",
              "required": true
            }
          ],
          "modelId": "c968689a-c0d9-49de-aa76-b10ed15ebb0e",
          "tools": [],
          "maxSteps": 25
        },
        "id": "8ad28049-33d0-46d2-9d2f-05166ef3234d",
        "position": {
          "x": 1120,
          "y": 9710
        }
      },
      {
        "type": "code",
        "data": {
          "comment": "📝 SCHRITT 4: ZUSAMMENFASSUNG FORMATIEREN\n\nBESCHREIBUNG:\nErstellt ein professionell formatiertes Textdokument aus der KI-Analyse mit Überschriften, Trennlinien und strukturiertem Layout.\n\nSETUP:\n• Keine Konfiguration erforderlich\n• Automatische Formatierung der KI-Ausgabe\n• Systematische Benennung: Zusammenfassung_[Dateiname]_[Datum].txt\n\nPERSONALISIERUNGSOPTIONEN:\n• Dateiformat ändern: .txt, .md (Markdown), .html\n• Layout anpassen: Andere Überschriften, Farben (bei HTML)\n• Dateinamen-Schema ändern:\n  - Präfix ändern (z.B. 'Summary_' statt 'Zusammenfassung_')\n  - Datumsformat anpassen (z.B. DD-MM-YYYY)\n  - Zusätzliche Metadaten hinzufügen\n• Sprache der Überschriften anpassen\n• Logo oder Firmen-Header hinzufügen\n\nAKTUELLE FORMATIERUNG:\n- Titel mit Trennlinien\n- Originaldateiname und Datum\n- Abschnitte für Executive Summary und Key Takeaways\n- Übersichtliches Layout",
          "executionId": null,
          "errorHandling": {
            "strategy": "stop"
          },
          "name": "Format Summary Document",
          "slug": "formatSummary",
          "language": "javascript",
          "code": "// Get the original file name from the trigger\nconst originalFileName = newDocument.output.name || 'document';\n\n// Remove file extension if present\nconst fileNameWithoutExt = originalFileName.replace(/\\.[^/.]+$/, '');\n\n// Get current date in YYYY-MM-DD format\nconst now = new Date();\nconst dateStr = now.toISOString().split('T')[0];\n\n// Create formatted summary document\nconst executiveSummary = documentAnalyzer.output.structured.executive_summary;\nconst keyTakeaways = documentAnalyzer.output.structured.key_takeaways;\n\nconst summaryContent = `DOCUMENT SUMMARY\n${'='.repeat(50)}\n\nOriginal Document: ${originalFileName}\nGenerated: ${dateStr}\n\n${'='.repeat(50)}\n\nEXECUTIVE SUMMARY\n${'-'.repeat(50)}\n\n${executiveSummary}\n\n${'='.repeat(50)}\n\nKEY TAKEAWAYS\n${'-'.repeat(50)}\n\n${keyTakeaways}\n\n${'='.repeat(50)}\n\nEnd of Summary`;\n\n// Create the file name for the summary\nconst summaryFileName = `Zusammenfassung_${fileNameWithoutExt}_${dateStr}.txt`;\n\nreturn {\n  content: summaryContent,\n  fileName: summaryFileName,\n  originalFileName: originalFileName\n};"
        },
        "id": "215892a4-bfdc-4f93-92e9-56edfc135c24",
        "position": {
          "x": 1680,
          "y": 9710
        }
      },
      {
        "type": "action",
        "data": {
          "comment": "💬 SCHRITT 6: TEAM BENACHRICHTIGEN\n\nBESCHREIBUNG:\nSendet eine Benachrichtigung an Ihren Slack-Channel mit Dokumenttitel, Link zur Zusammenfassung und einer Vorschau der Executive Summary.\n\nSETUP:\n1. Verbinden Sie Ihr Slack-Konto\n2. Wählen Sie den Channel aus, in dem die Benachrichtigungen erscheinen sollen\n3. Empfohlene Channels: #dokumente, #team-updates, #summaries\n\nPERSONALISIERUNGSOPTIONEN:\n• Nachrichtenformat anpassen:\n  - Emojis ändern oder entfernen\n  - Zusätzliche Informationen hinzufügen (z.B. Dokumentgröße, Seitenzahl)\n  - Erwähnungen (@team, @channel) hinzufügen\n• Alternative Chat-Tools:\n  - Microsoft Teams statt Slack\n  - Beide parallel nutzen\n• Benachrichtigungsregeln:\n  - Nur bei bestimmten Dokumenttypen\n  - Nur zu bestimmten Zeiten\n  - Mit Prioritätskennzeichnung\n• Link-Format:\n  - Direktlink zur Zusammenfassung\n  - Link zum Original-Dokument\n  - Beide Links einbinden\n\nAKTUELLE NACHRICHT:\n✓ Dokumenttitel\n✓ Zusammenfassungs-Dateiname\n✓ Executive Summary Vorschau",
          "executionId": null,
          "errorHandling": {
            "strategy": "stop"
          },
          "slug": "notifyTeam",
          "actionId": "26a39d11-d5fe-4f46-b776-973dd20b8147",
          "config": {
            "connectionId": null,
            "requiresConfirmation": false,
            "modelId": "c968689a-c0d9-49de-aa76-b10ed15ebb0e",
            "fields": {
              "text": {
                "mode": "manual",
                "value": "📄 *Neue Dokumentzusammenfassung verfügbar*\n\n*Original-Dokument:* {{formatSummary.output.originalFileName}}\n*Zusammenfassung:* {{formatSummary.output.fileName}}\n\n✅ Das Dokument wurde analysiert und eine strukturierte Zusammenfassung wurde erstellt.\n\n{{documentAnalyzer.output.structured.executive_summary}}"
              },
              "channelId": {
                "mode": "none"
              }
            }
          }
        },
        "id": "573efcb6-4c79-4013-99b5-a3e49675a882",
        "position": {
          "x": 2800,
          "y": 9710
        }
      }
    ],
    "edges": [
      {
        "id": "8e3c0584-1e97-478b-a924-2cdba7c8f1be",
        "source": "4f37ce87-ca11-4ccf-b52a-8950ac33dfe5",
        "target": "8ad28049-33d0-46d2-9d2f-05166ef3234d",
        "animated": false,
        "sourceHandle": "output-success",
        "targetHandle": "input-default",
        "conditionId": null
      },
      {
        "id": "473d6a92-5a2b-4afe-9920-72c09cca1d32",
        "source": "b0520b61-2e53-48b3-bac8-cb07826b9683",
        "target": "4f37ce87-ca11-4ccf-b52a-8950ac33dfe5",
        "animated": false,
        "sourceHandle": "output-success",
        "targetHandle": "input-default",
        "conditionId": null
      },
      {
        "id": "12c89725-f2e7-4460-8ce2-1c84b46a3216",
        "source": "8ad28049-33d0-46d2-9d2f-05166ef3234d",
        "target": "215892a4-bfdc-4f93-92e9-56edfc135c24",
        "animated": false,
        "sourceHandle": "output-success",
        "targetHandle": "input-default",
        "conditionId": null
      },
      {
        "id": "79c61444-b4d0-4fa5-bad7-946b4bd282da",
        "source": "215892a4-bfdc-4f93-92e9-56edfc135c24",
        "target": "1e81a39b-589e-4834-9cc3-12d53967d67e",
        "animated": false,
        "sourceHandle": "output-success",
        "targetHandle": "input-default",
        "conditionId": null
      },
      {
        "id": "228c069d-da0e-4ff4-90bc-f68b78bf4b2c",
        "source": "1e81a39b-589e-4834-9cc3-12d53967d67e",
        "target": "573efcb6-4c79-4013-99b5-a3e49675a882",
        "animated": false,
        "sourceHandle": "output-success",
        "targetHandle": "input-default",
        "conditionId": null
      }
    ]
  }
}