A Letaido / docs
DOCUMENTATION

Kernfunktionen

Eine vollständige Übersicht dessen, was Letaido heute erstellen kann. Jede Fähigkeit ist ein Grundbaustein, den es zusammensetzt, nicht etwas, das es nur vorgibt zu tun.

Auf einen Blick

Fähigkeit Was es ist Wo es sich befindet
Dateien Echtes Lesen/Schreiben/Bearbeiten auf einem Dateisystem, das dir gehört ~/workspace/
Datenbank PostgreSQL, der persistente Speicher für alles Drei benannte DBs (siehe Daten)
Interne Web-App Nur für Mitglieder zugängliche Flask-App (die Konsole) console-http, nur für Mitglieder
Öffentliche Web-App Internetfähige Flask-App (die öffentliche Website) site-http, separater Prozess hinter nginx
Connectors Typisierte Drittanbieter-API-Wrapper (Ahrefs, Slack, HubSpot, ...) Lokaler Connector-Dispatcher
Automations Geplante Skripte, geplante Agent-Läufe und trigger-gesteuerte Läufe Registrierte Automations in deinem Workspace
Webhooks & Trigger Ereignisgesteuerte Reaktionen auf Drittanbieter-Signale Connector-Trigger + ad-hoc
Skills Wiederverwendbare Playbooks, die der Agent bei Bedarf liest ~/workspace/skills/ + Plattform
Memory Chat-übergreifende Persistenz von Fakten, die du markierst ~/workspace/.memory.md
Research Websuche, Seitenabruf, mehrstufige Synthese mit Quellen Integriert
LLM-Zugriff Aufrufe an über 300 Modelle über einen lokalen Proxy Lokaler LLM-Proxy
Dateiexporte PDF- und PNG-Generierung unter einem sandbox-sicheren Rendering-Pfad Integriert (siehe PDF-Skill)

Dateien

Letaido hat Lese-/Schreib-/Bearbeitungszugriff auf deinen Workspace. Es behandelt Dateien als Arbeitsergebnis, nicht als Arbeitsbereich.

  • Entwürfe, Notizen und Recherche-Dumps liegen als Markdown vor.
  • Code, Generatoren und einmalige Skripte liegen als .py.
  • Uploads, die du in den Chat ziehst, landen in ~/workspace/uploads/ und werden über den absoluten Pfad referenziert.
  • Dateien, die du teilen möchtest, landen in ~/workspace/downloads/ und werden über eine registrierte Download-URL veröffentlicht.

Was es NICHT tut: außerhalb deines Workspace in die Plattform-Interna schreiben, Dateieigentümer ändern oder andere Workspaces berühren.

Datenbank

PostgreSQL ist der einzige persistente Speicher. Kein SQLite, kein JSON-auf-Festplatte, keine In-Memory-Dicts, die beim Neustart verschwinden.

Drei Datenbanken, jede mit einer anderen Zielgruppe (behandelt in Daten & Speicherung): - console_db für interne Tools und privaten Status. - site_db für Inhalte, die die öffentliche Website bereitstellt. - console_site_db für explizite oberflächenübergreifende Kanäle.

Interne Web-App (die Konsole)

Agent-A---Console.gif

Wenn du nach „einer Seite, auf der ich X einfügen und Y erhalten kann" fragst, ist das Artefakt eine Console-Anwendung: ein Python-Blueprint plus ein Jinja-Template, automatisch registriert in einer nur für Mitglieder zugänglichen Flask-App.

  • Routen sind unter vorhersehbaren URLs verfügbar (/applications/<slug>/).
  • Seiten können aus der Datenbank lesen, Konnektoren aufrufen und Ergebnisse rendern.
  • Die App startet bei Dateiänderungen automatisch neu; du musst flask run nie manuell ausführen.

Öffentliche Web-App (die öffentliche Website)

Agent-A---Public-site.gif

Ein separater Flask-Prozess, der das offene Internet bedient, mit seiner eigenen Datenbankrolle und drei Sichtbarkeitsmodi (aus, autorisiert, offen). Hier befinden sich kundenorientierte Seiten, Lead-Generierungs-Flows, öffentliche Reports und diese Dokumentation.

Die öffentliche Website kann vorberechnete Daten lesen, die die Console schreibt, aber sie kann nicht auf den internen Zustand der Console zugreifen. Diese Trennung wird auf Betriebssystem- und Datenbankebene durchgesetzt, nicht durch Konvention.

Konnektoren

Agent-A---Connectors.gif

Typisierte Wrapper um Drittanbieter-APIs. Discovery ist ein Baum (Anbieter → Kategorie → Connector), jeder Aufruf wird protokolliert, jede Berechtigung ist begrenzt und jede neue Oberfläche (Chat, Console, Website) erfordert ihre eigene Genehmigung.

Heute verdrahtet, gruppiert nach ihrer typischen Verwendung:

  • SEO und Marketing-Intelligence: Ahrefs (vollständige Suite), Semrush, Apify, Firehose.
  • CRM und Vertrieb: HubSpot, Gong, Chargebee, Stripe.
  • Kommunikation und Zusammenarbeit: Slack, Notion, Linear, GitHub.
  • Content und E-Mail: WordPress, Mailchimp, Resend, SendGrid, Fathom.
  • Daten und Betrieb: Airtable.
  • Infrastruktur: Cloudflare, DNSimple.

Neue Anbieter werden regelmäßig hinzugefügt. Sieh dir den Tab „Connectors" in deinem Workspace an, um die aktuelle Liste zu sehen.

Automatisierungen

Agent-A---Jobs.gif

Wiederkehrende Aufgaben werden als registrierte Automatisierungen gespeichert, nicht als „Erinnere mich später" im Chat. Eine Automatisierung ist entweder ein Python-Skript, das per Cron ausgeführt wird, ein geplanter Agent-Chat, der mit einem festen Prompt läuft, oder eine ereignisgesteuerte Ausführung, die bei einem Drittanbieter-Ereignis ausgelöst wird. Jede wird zur Genehmigung durch den Eigentümer/Admin eingereicht und läuft dann nach ihrem Zeitplan, wobei stdout und stderr für jeden Durchlauf erfasst werden.

Typische Anfragen: wöchentliche Konkurrenz-Scans, tägliche Traffic-Momentaufnahmen, stündliche Brand Radar-Aktualisierungen, Montagmorgen-Zusammenfassungen wie die, die diese Dokumente aktualisiert.

Webhooks und Trigger

Letaido kann sowohl zuhören als auch abfragen. Connector-Trigger (Slack-Nachrichten, GitHub-Ereignisse, Linear-Statusänderungen, HubSpot-Datensatzänderungen) liefern Ereignisse in eine lokale Warteschlange, die eine App oder ein Job verarbeitet.

Für Dienste ohne Connector-Trigger gibt es weiterhin einen Ad-hoc-Webhook-Pfad mit expliziter Bestätigung, damit Ereignisse nicht stillschweigend verworfen werden.

Fähigkeiten

Agent-A---Skills.gif

Ein Skill ist ein Ordner mit einer SKILL.md-Datei und allen unterstützenden Assets. Der Agent liest sie bei Bedarf, wenn die Aufgabe passt. Einige Skills werden mit der Plattform ausgeliefert (Postgres, Pydantic, PDF-Export, Websuche). Andere sind workspace-spezifisch und befinden sich in ~/workspace/skills/, einschließlich der Markenstimme, des Design-Handbuchs, der Post-Bank und der Marketingstrategie für dein Team.

Skills sind die Art und Weise, wie Letaido deinen Hausstil lernt, ohne dass er in jedem Chat als Textbaustein auftaucht.

Speicher

Agent-A---Memory.gif

Letaido liest ~/workspace/.memory.md zu Beginn jedes Chats. Wenn du sagst „merk dir das: X", wird es angehängt. Gute Dinge zum Merken: Rolle, wiederkehrende Vokabeln, stilistische Regeln, langfristige Ziele. Schlechte Dinge zum Merken: alles Sensible, alles, was sich wöchentlich ändert.

Es gibt außerdem ein Änderungsprotokoll (progress.md), das der Agent nach jeder bedeutenden Änderung erweitert, sodass du nachvollziehen kannst, was über mehrere Sitzungen hinweg passiert ist.

Recherche

  • Websuche im offenen Internet mit hervorgehobenen Auszügen (oft ausreichend; spart einen Abruf).
  • Seitenabruf als sauberes Markdown (entfernt Werbung, Navigation, Boilerplate).
  • Mehrstufige Recherche mit abwechselnder Suche und Synthese, wenn die Aufgabe umfangreich ist.
  • Lesen hochgeladener PDFs, Transkripte, Präsentationen und Extrahieren strukturierter Ausgaben.

Letaido zitiert standardmäßig Quellen und teilt dir mit, wenn eine Behauptung nicht verifiziert werden konnte.

LLM-Zugriff

Agent-A---AI-bots.gif

Letaido selbst denkt durch ein LLM. Es stellt diese Fähigkeit auch Apps und Jobs über einen lokalen Proxy zur Verfügung: Jeder Code kann die neuesten Claude-, GPT-, Gemini- und über 300 weitere Modelle aufrufen, ohne API-Schlüssel verwalten zu müssen. Das bedeutet, dass die Console-Apps und Hintergrund-Jobs, die der Agent für dich erstellt, selbst KI-Agents und LLM-Aufrufe in sich ausführen können, nicht nur der Chat, in dem du mit Letaido sprichst.

Das ist die Grundlage für Dinge wie „eine App, die eine URL nimmt und ein 90-Sekunden-Videoskript in unserer Markenstimme zurückgibt" oder einen Job, der eingehende HubSpot-Leads stündlich mit einem LLM klassifiziert.

Datei-Exporte

PDF- und PNG-Generierung unter einem Sandbox-sicheren Pfad. Es gibt eine dedizierte Fähigkeit, die auflistet, welche Bibliotheken innerhalb dieser Sandbox funktionieren (Pillow, ReportLab, Headless-Pfade) und welche vermieden werden sollten (die meisten Web-Canvas-basierten Exporter).

Wenn du „ein PDF dieses Reports" anforderst, liest der Agent zuerst die Fähigkeit, um eine funktionierende Route auszuwählen, anstatt zu raten.

Unter der Haube. Jede Funktion oben bildet sich auf eine kleine Menge von Primitiven ab: ein Dateischreiben, eine SQL-Abfrage, ein Flask-Blueprint, ein Cron-Eintrag, ein Webhook-Abonnement, ein Connector-Aufruf. Der Agent erfindet keine Primitiven. Er kombiniert sie. Deshalb ist „baue mir etwas, das X alle Y macht und Z benachrichtigt" eine zuverlässige Form der Anfrage.

Last updated 2026-07-15