← Blog

Eine fixe Sequenz durch eine agentische Schleife ersetzen.

Den größten Teil von 2025 war die Outreach-Engine von Overwise eine fünfstufige E-Mail-Sequenz mit Templates, Varianten und einem A/B-Winner-Picker. Im April 2026 haben wir sie herausgerissen und als agentische Schleife neu gebaut: ein Sonnet-Executor, der pro Lead entscheidet, was auf welchem Kanal gesendet wird, ein Opus-Advisor für Grenzfälle und ein Verifier, der Drafts verwirft, deren Aussagen sich nicht aus echten Signalen belegen lassen. Hier ist, was wir behalten, was wir gelöscht haben — und das Pro-Lead-Entscheidungs-Log, das dabei entstanden ist.

Wie die alte Sequenz aussah

Die Pre-April-Pipeline war ein vernünftiges v1: Jede Kampagne hatte eine feste 5-Schritt-E-Mail-Sequenz mit Template-Slots zur Personalisierung, zwei oder drei Template-Varianten pro Schritt und einem Job, der die antwortstärkere Variante auf Plan beförderte. Versand und Drafting waren entkoppelt — der SequenceRunnerService führte jeden Lead nach Kadenz durch Stufe 1 → 2 → 3 → 4 → 5, der SequenceDraftingAgent + der PersonalizationAgent füllten die Template-Slots, und der ReplyTriageAgent reichte positive Antworten zur Ein-Klick-Freigabe in die AI-Inbox zurück.

Es funktionierte. Es belog sich auch an drei Stellen.

Erstens: „Stufe 3" war kein echtes Signal. Zwei Leads auf demselben Template in derselben Stufe konnten völlig unterschiedliche Gesprächszustände haben — einer war gebounct, einer hatte zweimal geöffnet, einer hatte einen Link geklickt, aber nicht geantwortet — und der Sequence-Runner sah nichts davon. Die Next-Send-Entscheidung wurde gefällt, indem gezählt wurde, wie viele E-Mails rausgegangen waren, nicht indem gelesen wurde, was passiert war.

Zweitens: Der A/B-Winner-Picker beförderte das Falsche. Antwortrate als einziges Signal kollabiert positive Antworten, negative Antworten und „Sprechen wir später" in eine Zahl. Der Winner-Picker beförderte fröhlich die Variante mit mehr Abmeldungen. Wir bekamen es mit, weil wir die Inbox lasen, nicht weil das System es kennzeichnete.

Drittens: Die Templates waren ein Einweg-Spiegel. Der Käufer (ein B2B-SaaS-Gründer, der selbst Outbound macht) sah seinen Namen in der Absenderzeile, konnte aber nicht nachvollziehen, warum eine bestimmte E-Mail an einen bestimmten Lead ging. „Das war Schritt 2 von Sequenz B" ist keine Antwort, die er gegenüber seinem eigenen Interessenten verteidigen kann.

Die Form, mit der wir sie ersetzt haben

Die neue Schleife ist ein einzelner Agent — der LeadOutreachAgent — der einmal pro Lead und Entscheidungsmoment läuft, mit dem vollen Lead-Zustand im Kontext. Er tut eines von vier Dingen: jetzt senden (welcher Kanal, welcher Text), warten (bis wann und warum), halten (an die AI-Inbox eskalieren) oder beenden (suppress, Lead-Ziel erreicht oder kein Weg vorwärts).

Der Executor ist Claude Sonnet 4.6. Er liest die Discovery-Signale des Leads, vorherige Outreach-Versuche (gesendet + Antworten), die Versuchszahl pro Kanal, das Kampagnenziel und die Markenstimme sowie eine kleine Memory-Zusammenfassung, die der Agent selbst zwischen Entscheidungen pflegt. Er liefert eine strukturierte Entscheidung plus eine einzeilige Begründung, beide auf der Outreach-Historie des Leads gespeichert.

Für Grenzfälle — eine heiße Antwort, die sorgfältig beantwortet werden muss, ein Lead, von dem gebouncet wurde, aber für den ein frischer Role-Account-Treffer existiert, eine Entscheidung, bei der ein falscher Versand teuer wäre — ruft der Agent vor dem Handeln einen Opus-4.7-Advisor für eine zweite Meinung. Die Trennung ist Absicht: Sonnet erledigt das Volumen (günstig, schnell, gut genug), Opus reviewt, wenn es teuer wird (langsam, teuer, lohnt sich).

Der MessageVerifier: Cite-or-Discard

Das Trust-Loop-Primitiv mit dem größten Hebel war der MessageVerifier. Nachdem der Executor einen Body gedraftet hat, aber bevor irgendetwas versandt wird, liest der Verifier den Draft als Klartext und fragt: Lässt sich jede konkrete Aussage in dieser E-Mail aus den tatsächlichen Signalen des Leads belegen? „Wir haben gesehen, dass Sie auf padelclub-berlin.com kein Buchungs-Widget haben" — belegbar, wenn die Discovery-Probe diese Absenz erfasst hat. „Mir ist aufgefallen, dass Sie einen Sales Lead suchen" — belegbar, wenn ein Hot-Lead-Trigger das Greenhouse-Listing erfasst hat. „Ich fand Ihren letzten Launch großartig" — nicht belegbar, sofern der Discovery-Datensatz nicht tatsächlich ein Launch-Event hat.

Drafts, deren Aussagen den Cite-Check nicht bestehen, gehen mit redigierten Aussagen und einem Retry-Budget von eins zurück zum Executor. Schlägt auch der zweite Draft fehl, taucht der Lead als MESSAGE_VERIFICATION_FAILED-Aufgabe in der AI-Inbox auf, statt zu senden. Der ganze Punkt: Ein selbstbewusster, flüssiger Draft, der außerdem nicht stimmt, ist die Fehlersituation, die dieses Produkt nicht ausliefern kann — weil die Domain-Reputation des Käufers den Preis zahlt.

Das Pro-Lead-Entscheidungs-Log

Jede Agenten-Ausführung hängt einen Eintrag an die Outreach-Historie des Leads. Jeder Eintrag ist ein kleiner strukturierter Datensatz — Richtung (outbound / inbound), Kanal (E-Mail / Manual-Dispatch), Entscheidung und Begründung, Kosten in Tokens, das produzierende Modell und eine Referenz auf die gesendete oder empfangene Nachricht. Hold- und Terminate-Entscheidungen werden ebenfalls angehängt, mit dem Grund und der ggf. erzeugten AI-Inbox-Aufgabe.

Das Log ist das Trust-Artefakt. In der Campaign-Detail-Ansicht kann ein Käufer jeden Lead öffnen und in Klartext lesen, was passiert ist und warum — nicht „Schritt 3 lief planmäßig", sondern „OUTBOUND #2 gesendet, weil der vorige Versand 4 Tage her war und zweimal geöffnet, aber nicht geklickt wurde; zitiert auf die Missing-Booking-Widget-Probe aus der Discovery." Wenn ein Empfänger zurückschreibt und fragt, woher wir seine E-Mail haben, hat der Gründer eine echte Antwort.

Die Kosten-Obergrenze, weil Agenten driften

Eine Schleife, die pro Lead entscheidet, kann sich drehen. Wir haben das auf zwei Wegen gedeckelt. Pro Lead hat der Agent eine tägliche Kosten-Obergrenze (LLM-Tokens + bezahlte Anreicherung + Verifier-Calls); wenn die Obergrenze erreicht ist, gibt er eine WAIT-Entscheidung mit dem Cost-Cap-Grund zurück, und der Scheduler greift nach dem Tageswechsel wieder auf. Pro Projekt erhebt eine tägliche Budget-Obergrenze im Billing-Layer eine DailyBudgetExhaustedException am Orchestrator-Chokepoint — das gesamte Projekt pausiert Outreach mit einer CAMPAIGN_AUTO_PAUSED-Aufgabe, und der Nutzer kann sie per Klick aufheben.

Wir haben überlegt, die Obergrenze als reine Warnung zu gestalten. Wir bereuen nicht, sie hart gemacht zu haben. Drift ist real, und eine $400-Rechnung aus einer Run-Away-Schleife in Woche eins eines $99-Plans ist die Art Vertrauensverlust, aus der man sich nicht herausentschuldigen kann.

Was wir gelöscht haben

Das Rewrite ermöglichte es, einen sinnvollen Komplexitäts-Anteil zu verwerfen:

  • EmailTemplate-Entität und ihre CRUD-Endpunkte — Templates existieren nicht mehr als First-Class-Objekt; der Agent draftet pro Entscheidung aus Markenstimme + Signalen.
  • SequenceRunnerService, SequenceDraftingAgent, PersonalizationAgent, ReplyTriageAgent — ihre Aufgaben kollabierten in die einzelne Agenten-Schleife.
  • WinnerPickerService und das A/B-Test-Modul — mit Per-Decision-Drafting ist „Winner" eine Pro-Lead-Frage, keine Template-Promotion auf Kampagnenebene.
  • Campaign.tone, Campaign.templates, Lead.sequenceState — alle weg. Der neue Zustand lebt auf der Outreach-Historie des Leads; Kampagnen beschreiben Ziele und erlaubte Kanäle, keine Skripte.
  • Drei Activity-Event-Typen, die an die Template-Promotion gebunden waren — es gibt dort nichts mehr zu protokollieren.

Etwa ~3.000 Zeilen Code sind unter dem Strich entfernt. Das ist nicht die interessante Zahl — die interessante ist, dass die Oberfläche, die ein Gründer verstehen muss, um dem Produkt zu vertrauen, kleiner geworden ist. Fünf weniger Konzepte im Mental Model.

Was wir evaluieren — und was nicht

Wir haben parallel zum Rewrite ein Offline-Eval-Harness gebaut. Der Agent wird gegen 10 handkuratierte Lead-Fixtures aus fünf Vertikalen (Local-Physical, Hospitality, Visual-Brand, Online-B2B, Long-Tail) bewertet. Für jedes Fixture prüfen wir Action-Accuracy (wählt der Agent SEND / WAIT / HOLD / TERMINATE so, wie es ein menschlicher Reviewer täte?), Citation-Disziplin (lässt sich jede Aussage auf ein Fixture-Signal zurückführen?) und Kosten (Per-Fixture-Cap 4¢, Total-Cap 50¢ pro Eval-Lauf).

Was wir bewusst noch nicht veröffentlichen, sind Antwortraten, Hot-Lead-Raten oder Conversion-Zahlen. Zwei Gründe. Erstens: Die agentische Schleife läuft Wochen, nicht Monate — jede Zahl, die wir nennen würden, wäre Small-Sample. Zweitens: Diese Zahlen gehören den Kunden, nicht uns; sie kommen als Kunden-Stories, wenn Kunden sie erzählen wollen und Daten haben, die sie gerne teilen.

Was als Nächstes kommt

Drei Threads seit dem April-Rewrite:

  • Source-Routing. Der Agent entscheidet, was gesendet wird; ein Geschwister-Source-Router (ebenfalls Sonnet) entscheidet, wo Leads gefunden werden. Heute neun aktive Discovery-Quellen, pro Kampagne anhand des ICP geroutet.
  • Hot-Lead-Trigger. Ein Pro-Projekt-Stündlich-Scanner beobachtet aktive Leads auf Buying-Intent-Signale — Hiring-Spikes, Funding-Ankündigungen, Tech-Stack-Änderungen, Competitor-Churn. Treffer tauchen als HOT_LEAD_BOOST-Aufgaben auf und schieben den Lead an den Anfang der Outreach-Queue.
  • Vektor-Ähnlichkeits-Loops. Sobald eine Kampagne fünf Konversionen hat, mitteln wir deren Embeddings und legen 50 Lookalike-Leads als AI-Inbox-Aufgabe vor. Dasselbe Primitiv läuft rückwärts: 3-20 Ihrer besten Kundendomains einfügen, in unter 2 Sekunden 50 Lookalikes zurückbekommen.

Jeder davon komponiert auf die agentische Schleife auf, statt sie zu umgehen. Die Entscheidung, was wann gesendet wird, bleibt an einer Stelle. Die Entscheidung, welcher Lead an die Oberfläche kommt, wird mit der Zeit stärker.

Wenn Sie das hier schon kennen

Sie sind B2B-SaaS-Gründer und machen Ihren Outbound selbst. Sie haben Lemlist oder Instantly ausprobiert. Sie haben gesehen, wie die KI eine selbstbewusste Drei-Absatz-Mail über ein Problem schrieb, das der Lead nicht hat, und gespürt, wie es ankommt: Das ging gerade unter meinem Namen raus.

Dieses Gefühl ist die Design-Vorgabe. Die agentische Schleife, der Cite-or-Discard-Verifier, das Pro-Lead-Entscheidungs-Log, die Kosten-Obergrenze — keines davon existiert, um die KI smarter zu machen. Sie existieren, damit Sie, wenn eine E-Mail Ihr Postfach verlässt, nachlesen können, warum sie ging, sie auf Nachfrage verteidigen und der nächsten vertrauen können, weil die Schleife aus der letzten gelernt hat.

Wenn das das Produkt ist, auf das Sie gewartet haben — die 14-Tage-Testphase beginnt da, wo Sie beginnen. Keine Demo-Pflicht, Karte hinterlegt, jederzeit kündbar.

— Tobias Duelli, Gründer · tobias@overwise.com

Wenn Sie soweit sind

Ihre ersten Leads, in 5 Minuten.

14 Tage gratis. Karte hinterlegt, Hartstop bei Ihrer Lead-Grenze (keine Überraschungs-Rechnung). Alle Trust-Artefakte Standard. Jederzeit kündbar, ohne E-Mail.

14 Tage gratis testen — erste Leads in 5 Min → Karte hinterlegt · Kein Demo-Gate · Jederzeit kündbar
Ab 99 $/Mo. · 14 Tage gratis · In 5 Min. live · SOC 2 · DSGVO-sicher