Persona.js
Persona: Die VanillaJS Agent UI Library für WebMCP-native KI-Front-End-Erlebnisse
Persona ist eine leichtgewichtige und erweiterbare VanillaJS Agent UI Library für WebMCP-native Anwendungen. Erstellen Sie agentische Benutzeroberflächen mit Shadow DOM-Isolation, SSE-Streaming und flexiblen Layouts.
2026-06-30
--K
Persona.js Produktinformationen
Persona: Die leistungsstarke VanillaJS Agent UI Library für WebMCP
In der modernen Webentwicklung gewinnt die Integration von KI-Agenten zunehmend an Bedeutung. Persona ist eine spezialisierte VanillaJS Agent UI Library, die Entwicklern dabei hilft, hochwertige, agentische Front-End-Erlebnisse direkt im Browser zu erstellen. Persona ist leichtgewichtig, hochgradig erweiterbar und von Grund auf WebMCP-native konzipiert. In diesem Artikel erfahren Sie alles über die Funktionen, Einsatzmöglichkeiten und die Implementierung dieser innovativen Library.
Was ist Persona?
Persona ist eine Open-Source-Library (MIT-Lizenz), entwickelt von Runtype Labs, die es ermöglicht, KI-Agenten-Schnittstellen in reiner JavaScript-Umgebung zu realisieren. Im Gegensatz zu komplexen Framework-gebundenen Lösungen ist Persona eine VanillaJS Agent UI Library, die auf jedem Tech-Stack funktioniert. Sie bietet eine Brücke zwischen Ihrem KI-Backend und dem Benutzer-Interface Ihrer Webanwendung.
Der Kern von Persona liegt in der Unterstützung des WebMCP-Standards. Dies bedeutet, dass Persona Tools auf Ihrer Webseite automatisch erkennt und diese dem Agenten zur Verfügung stellt. Ob es sich um Suchfunktionen, Warenkörbe oder Buchungssysteme handelt – Persona integriert diese nahtlos in den Chat-Flow.
Funktionen (Features) von Persona
Persona zeichnet sich durch eine Reihe von technischen Merkmalen aus, die sie zur idealen Wahl für moderne Web-Projekte machen.
1. WebMCP-native Integration
Als WebMCP-native Library nutzt Persona den Standard document.modelContext. Dadurch kann der Agent direkt auf Seitenaktionen zugreifen. Die Benutzeroberfläche dient dabei als Vermittler, der Tools erkennt und die Zustimmung des Benutzers einholt, bevor Aktionen ausgeführt werden.
2. Flexible Layout-Optionen
Persona passt sich Ihrem Design an, nicht umgekehrt. Sie können zwischen verschiedenen Startpunkten wählen:
- Floating Launcher: Ein kleiner Button in der Ecke, der ein schwebendes Panel öffnet – ideal für Support, Onboarding oder Sales.
- Docked Panel: Ein Copilot, der fest an der Seite Ihrer Anwendung verankert ist.
- Fullscreen Layout: Ein vollständiges Assistenten-Interface für immersive Erlebnisse.
3. Absolute Isolation dank Shadow DOM
Ein kritischer Punkt bei Web-Widgets ist die Stilsicherheit. Persona nutzt Shadow DOM Rendering und Präfix-basiertes CSS. Dadurch bleiben die Stile des Widgets und der Host-Seite vollständig getrennt. Nichts leakt nach außen, und keine globalen CSS-Regeln der Webseite beeinflussen die Persona-UI.
4. Transport und Streaming
Persona unterstützt SSE (Server-Sent Events) für flüssiges Streaming direkt von jedem Backend. Dank pluggbarer Parser wie customFetch und parseSSEEvent lässt sich Persona an jede Request-Form anpassen. Es ist mit jedem SSE-Backend kompatibel.
5. Umfassendes Theming
Mit einem dreistufigen Token-System (Palette, Semantik, Komponente) lässt sich Persona perfekt an Ihr Branding anpassen. Ein integrierter Live Theme Editor ermöglicht Anpassungen in Echtzeit, inklusive Dark-Mode-Support.
Einsatzbereiche (Use Case)
Die Flexibilität der VanillaJS Agent UI Library ermöglicht zahlreiche Anwendungsszenarien:
- E-Commerce & Storefronts: Ein KI-Agent kann Produkte suchen, den Warenkorb verwalten und den Checkout-Prozess begleiten, indem er direkt die WebMCP-Tools der Seite nutzt.
- Interaktive Kalender: Nutzer können Termine per Sprache oder Texteingabe buchen, während der Agent die Kalender-Logik der Anwendung steuert.
- Dokumentations-Assistenten: Ein integrierter Chatbot, der auf Basis der Dokumentation Fragen beantwortet und Nutzer zu den richtigen Seiten führt.
- Komplexe Formular-Steuerung: Anstatt lange Formulare manuell auszufüllen, kann der Nutzer dem Agenten die Informationen mitteilen, woraufhin dieser die Formulare auf der Seite befüllt.
Wie man Persona verwendet (How to Use)
Die Integration von Persona ist einfach und kann entweder über NPM oder via Script-Tag erfolgen.
Installation via NPM
Installieren Sie das Paket zunächst über Ihren Paketmanager:
npm install @runtypelabs/persona
Initialisierung des Widgets
Ein einfaches Floating-Widget lässt sich mit wenigen Zeilen Code in Ihre Anwendung integrieren:
import "@runtypelabs/persona/widget.css";
import { initAgentWidget } from "@runtypelabs/persona";
initAgentWidget({
target: "#chat",
config: {
apiUrl: "https://your-api.com/chat",
// Floating Launcher ist der Standardwert
},
});
Registrierung von WebMCP Tools
Damit der Agent Aktionen auf Ihrer Seite ausführen kann, müssen Sie Tools registrieren:
document.modelContext.registerTool({
name: "search_products",
description: "Den Katalog durchsuchen.",
inputSchema: {
type: "object",
properties: {
query: { type: "string" },
},
required: ["query"],
},
async execute({ query }) {
return searchCatalog(query);
},
});
Persona entdeckt dieses Tool automatisch über den WebMCP-Standard und fragt den Nutzer um Erlaubnis, bevor es ausgeführt wird.
FAQ – Häufig gestellte Fragen
Funktioniert Persona mit jedem Backend?
Ja, Persona ist so konzipiert, dass es mit jedem SSE-Backend zusammenarbeitet. Es gibt vorgefertigte Beispiele für Vercel AI SDK, OpenAI Agents, LangGraph.js, Hono, Express und SvelteKit.
Kann ich Persona ohne Framework nutzen?
Absolut. Persona ist eine VanillaJS Agent UI Library. Sie können sie per Script-Tag direkt in eine einfache HTML-Seite einbinden, ohne React, Vue oder Angular verwenden zu müssen.
Wie sicher sind die Tools?
Sicherheit steht an erster Stelle. Persona führt keine Tools eigenständig aus. Jede Aktion, die über WebMCP initiiert wird, erfordert die ausdrückliche Zustimmung des Benutzers (User Approval).
Unterstützt Persona Voice-Integration?
Ja, es gibt Demos für die Voice-Integration, bei denen Nutzer per Spracherkennung mit dem Agenten interagieren können.
Was ist WebMCP?
WebMCP ist ein Standard, der dem Browser einen zentralen Ort (document.modelContext) für Seiten-Tools gibt. Persona nutzt diesen Standard, um nahtlos mit der Webseite zu kommunizieren.
Fazit: Persona bietet die perfekte Lösung für Entwickler, die eine professionelle, isolierte und hochperformante Agent-Schnittstelle benötigen. Dank der Unterstützung von VanillaJS und WebMCP ist sie zukunftssicher und einfach zu implementieren.







