Mini-Programme Übersicht
Mini-Programme sind sandboxed Web-Apps, die direkt innerhalb der AISCouncil Plattform laufen. Sie erweitern die Plattform mit benutzerdefinierten Funktionen – von Geräte-Sync-Tools bis hin zu visuellen Page-Buildern – und laufen dabei in einer sicheren, berechtigungskontrollierten Umgebung.
Was sind Mini-Programme?
Ein Mini-Programm ist eine Standard-HTML/CSS/JS-Web-App, die in einem sandboxed iframe innerhalb der Plattform läuft. Anstatt zu einer separaten Website zu navigieren, starten Benutzer Mini-Programme aus dem Apps-Bereich in der Seitenleiste. Die App ersetzt den Chat-Bereich und hat über das window.ais SDK Zugriff auf Plattform-APIs.
Mini-Programme können:
- Chat-Nachrichten lesen und senden, um mit KI-Modellen zu interagieren
- Daten lokal speichern mit pro-App isoliertem Speicher
- Bot-Konfiguration lesen, um zu wissen, welches Modell aktiv ist
- Benachrichtigungen und Dialoge anzeigen durch die Plattform-UI
- Benutzerinformationen lesen zur Personalisierung
- Hooks registrieren, um Plattform-Verhalten zu erweitern
Wie sie funktionieren
+---------------------------+
| AISCouncil |
| (Host-Seite) |
| |
| +---------------------+ |
| | Sandboxed iframe | |
| | (null origin) | |
| | | |
| | window.ais SDK | |
| | | | |
| +---|------------------+ |
| | postMessage |
| v |
| Message Bridge |
| (Berechtigungsprüfung) |
| (Methoden-Dispatch) |
+---------------------------+
-
SDK-Injektion – Wenn ein Mini-Programm startet, erstellt die Plattform einen sandboxed iframe und injiziert das
window.aisSDK (~2 KB) als<script>-Preamble vor Ihrem App-Code. -
postMessage-Bridge – Jeder SDK-Aufruf (
ais.storage.get(),ais.chat.send(), etc.) sendet einpostMessagean die Host-Seite. Der Host validiert die Berechtigungen der aufrufenden App und leitet die Anfrage an das entsprechende Plattform-Modul weiter. -
Antworten – Ergebnisse werden über
postMessagean den iframe zurückgesendet, wo das SDK das entsprechende Promise auflöst.
Sicherheitsmodell
Mini-Programme laufen in einer strikten Sicherheits-Sandbox:
| Schutz | Wie |
|---|---|
| Null origin | sandbox="allow-scripts allow-forms" – kein allow-same-origin, daher erhält der iframe eine null origin |
| Kein Zugriff auf Eltern-DOM | Kann das DOM, localStorage oder Cookies der Host-Seite nicht lesen oder ändern |
| Kein Netzwerkzugriff auf Host-Origin | Kann keine Same-Origin-Requests zu aiscouncil.net machen |
| Berechtigungsgesteuerte APIs | Jede SDK-Methode außer Speicher erfordert eine explizite Berechtigungserteilung vom Benutzer |
| Pro-App-Speicherisolation | Speicherschlüssel werden mit mp:{app-name}: präfixiert – Apps können nicht auf die Daten anderer Apps zugreifen |
| Inhaltsadressiertes Caching | Entry-HTML wird bei der Installation abgerufen und zwischengespeichert, nicht bei jedem Start aus dem Netzwerk geladen |
Mini-Programme können weiterhin Netzwerkrequests an externe Origins machen (ihren eigenen CDN, Drittanbieter-APIs, etc.), da allow-scripts fetch() und XMLHttpRequest erlaubt. Die network:fetch-Berechtigung ist für zukünftige Proxied-Requests durch die Plattform gedacht, nicht zur Einschränkung des ausgehenden Netzwerkzugriffs.
Berechtigungsdialog
Wenn ein Benutzer ein Mini-Programm installiert, zeigt ein Berechtigungsdialog den App-Namen, die Beschreibung und die Liste der angeforderten Berechtigungen an. Der Benutzer muss zustimmen, bevor die Installation fortgesetzt wird. Apps, die nur storage anfordern (immer erlaubt), zeigen den Dialog dennoch zur Transparenz an.
Vergleich mit anderen Plattformen
| Funktion | aiscouncil Mini-Programme | WeChat Mini Programs | Chrome Extensions | PWAs |
|---|---|---|---|---|
| Laufzeitumgebung | Sandboxed iframe | Custom WebView | Isolated world + Service Worker | Vollständiger Browser-Tab |
| Max. Größe | 5 MB (HTML) / 50 MB (Bundle) | 2-20 MB | Kein festes Limit | Kein Limit |
| Review erforderlich | Nein (Direct Install) | Ja (Pflicht) | Ja (Chrome Web Store) | Nein |
| Offline-Unterstützung | Ja (bei Installation gecacht) | Ja | Ja | Ja (Service Worker) |
| Plattform-APIs | window.ais SDK | wx API | chrome API | Nur Web-APIs |
| Sicherheitsmodell | Null-origin iframe | Custom Sandbox | Content Security Policy | Same-origin |
| Verbreitung | URL, Datei-Upload, Registry | Nur WeChat Store | Chrome Web Store | Nur URL |
Apps finden und installieren
Aus dem App Store
- Klicken Sie auf das Apps-Symbol in der linken Seitenleiste (oder das App-Grid-Symbol im Header auf Mobil)
- Durchsuchen Sie den App Store-Bereich unten im Apps-Panel
- Klicken Sie auf Installieren auf einer beliebigen App-Karte
- Überprüfen Sie die Berechtigungen im Dialog und klicken Sie auf Erlauben
Per URL (Sideloading)
- Im Apps-Panel finden Sie den Sideload-Bereich
- Fügen Sie eine Manifest-URL in das Textfeld ein
- Klicken Sie auf Installieren
- Überprüfen Sie die Berechtigungen und bestätigen Sie
Per Datei-Upload
- Klicken Sie im Apps-Panel auf App hochladen
- Wählen Sie eine
.html-Datei (Single-File-App) oder ein.ais-Bundle (ZIP-Archiv) - Überprüfen Sie die Berechtigungen und bestätigen Sie
Siehe Apps sideloading für vollständige Details zu allen Installationsmethoden.
Apps starten und schließen
Starten: Klicken Sie auf die Öffnen-Schaltfläche auf einer beliebigen installierten App-Karte. Die App ersetzt den Chat-Bereich und übernimmt das Hauptinhalts-Panel.
Schließen: Apps können sich selbst durch Aufruf von ais.close() schließen, oder der Benutzer kann auf die X-Schaltfläche in der Apps-Titelleiste klicken, um zur Chat-Ansicht zurückzukehren.
Wenn eine App geschlossen wird:
- Wird der iframe zerstört und sein Message-Handler entfernt
- Wird der Chat-Bereich wiederhergestellt
- Geht jeder ungespeicherte Zustand in der App verloren (Apps sollten
ais.storageverwenden, um Daten zu persistieren)
Integrierte Apps
Die Plattform wird mit zwei integrierten Mini-Programmen ausgeliefert:
Geräte-Sync
Synchronisiert Profile, API-Schlüssel und Einstellungen zwischen Geräten. Unterstützt drei Übertragungsmethoden:
- LAN-Sync – Direkte Verbindung zwischen Geräten im selben Netzwerk
- QR-Code – Scannen Sie einen Code, um Geräte zu koppeln
- Internet-Relay – WebRTC-Signalisierung über die API für Geräte in verschiedenen Netzwerken
Berechtigungen: storage, config:read, auth:read, ui:toast, secrets:sync
App Builder
Erstellen Sie Webseiten visuell mit KI-Inhaltsgenerierung. Wählen Sie ein Template, bearbeiten Sie Sektionen mit dem aktiven KI-Modell und exportieren Sie als URL oder HTML-Datei. Veröffentlichen Sie direkt auf bcz.co mit einem benutzerdefinierten Slug.
Berechtigungen: storage, chat:read, chat:write, ui:toast, auth:read, pages:publish
Nächste Schritte
- SDK-Referenz – Vollständige API-Dokumentation für
window.ais - Tutorial: Erste App erstellen – Schritt-für-Schritt-Anleitung zum Erstellen eines Mini-Programms
- Manifest-Referenz – Schema-Dokumentation für
manifest.json - Apps sideloading – Apps von URLs, Dateien und Bundles installieren
- In der Registry veröffentlichen – Ihre App an die Community verteilen