MiroFish: Schwarmintelligenz-Engine mit GraphRAG, OASIS-Kern und ReportAgent
MiroFish ist eine Schwarmintelligenz-Engine, die aus Ausgangsmaterial wie Nachrichten oder Finanzsignalen eine parallele digitale Welt baut, in der Tausende Agenten Zukunftsszenarien simulieren.
Auf einen Blick
- Was ist das?
- MiroFish baut aus Startmaterial eine simulierte Agentenwelt und liefert einen Vorhersagebericht. Einordnung des fünfstufigen Ablaufs, der .env-Schlüssel LLM_API_KEY und ZEP_API_KEY sowie der AGPL-3.0-Folgen.
- Für wen ist es gedacht?
- MiroFish passt zu Neugierigen, die Simulationen mit eigenen Startmaterialien ausprobieren wollen und externe Dienste für Modell und Gedächtnis akzeptieren. Ungeeignet ist es für vertrauliche Unterlagen, weil Zep Cloud und der Modellzugang außerhalb des eigenen Rechners liegen, und für jeden Einsatz als gehosteter Dienst ohne Klärung der AGPL-3.0-Netzwerkklausel.
- Darf ich es kommerziell nutzen?
- Ja, unter strengen Bedingungen. AGPL-3.0 ist eine Lizenz mit Netzwerk-Copyleft: Wenn andere eine veränderte Version über ein Netzwerk nutzen, etwa als gehosteten Dienst, müssen Sie ihnen den Quellcode unter derselben Lizenz anbieten.
- Wird es noch gepflegt?
- Ja. Die letzten Commits kamen vor 13 Tagen.
- In welcher Sprache ist es geschrieben?
- Hauptsächlich Python, laut der Sprachstatistik von GitHub.
Die Antworten beruhen auf den GitHub-Daten des Projekts (zuletzt abgeglichen am 15. September 2026) und auf unserer Analyse. Sie sind keine Rechtsberatung.
TIEFGEHENDE OPEN-SOURCE-ANALYSE
Was MiroFish aus einem Seed-Material baut: GraphRAG, Personas und ein OASIS-Kern
MiroFish bezeichnet sich im README als Schwarmintelligenz-Engine. Aus einem Startmaterial, etwa einem Analysebericht oder einer Geschichte, plus einer in Alltagssprache formulierten Frage soll ein Vorhersagebericht entstehen, dazu eine begehbare simulierte Welt. Solche Zusagen sind selbst berichtet; im README findet sich keine Messreihe, die Trefferquoten belegt.
Der Aufbau hat drei Schichten. Zunächst werden aus dem Startmaterial Entitäten und Beziehungen gezogen und in einen Graphen überführt, den das README als GraphRAG-Konstruktion bezeichnet. Daraus entstehen Personas mit eigenem Gedächtnis und eigener Verhaltenslogik, und erst danach läuft die eigentliche Simulation.
Diesen Simulationsschritt führt laut README der OASIS-Kern von CAMEL-AI aus. MiroFish setzt also auf einen fremden Kern und ergänzt ihn um Zuführung, Auswertung und Oberfläche. Die Metadaten nennen Python als Hauptsprache, die Projektseite liegt unter mirofish.ai, und im README weist der Autor auf eine Inkubation durch die Shanda Group hin.
Die fünf Stufen von MiroFish: Graph Building bis Deep Interaction
Der Arbeitsablauf ist im README in fünf Stufen gegliedert. Die erste, Graph Building, extrahiert das Startmaterial und injiziert sowohl individuelles als auch kollektives Gedächtnis in den Graphen.
Stufe zwei richtet die Umgebung ein: Beziehungen zwischen Entitäten werden bestimmt, Personas erzeugt, die Agentenkonfiguration eingespeist. Stufe drei fährt die eigentliche Simulation, laut README parallel auf zwei Plattformen, liest die Vorhersagefrage automatisch mit und aktualisiert das Zeitgedächtnis laufend.
In Stufe vier übernimmt ein ReportAgent mit einem Werkzeugsatz die Auswertung der abgeschlossenen Simulation. Stufe fünf erlaubt Rückfragen, man kann mit jedem Agenten der simulierten Welt sprechen und dem ReportAgent nachfassen. Wie lange ein Lauf für ein gegebenes Startmaterial dauert und wie die Rundenzahl festgelegt wird, steht im README nicht.
LLM_MODEL_NAME=qwen-plus und ZEP_API_KEY: zwei fremde Dienste in der .env
Das README verlangt Node.js ab Version 18, Python zwischen 3.11 und 3.12 sowie den Paketmanager uv. Die obere Grenze bei Python ist erwähnenswert: Wer auf 3.13 oder neuer sitzt, muss eine eigene passende Umgebung bereitstellen.
In der .env stehen vier Einträge im Mittelpunkt. LLM_API_KEY, LLM_BASE_URL und LLM_MODEL_NAME beschreiben den Modellzugang. Als Vorbild nennt das README das Modell qwen-plus über den Bailian-Kompatibilitätsmodus mit der Adresse https://dashscope.aliyuncs.com/compatible-mode/v1; grundsätzlich funktioniert jede API im OpenAI-SDK-Format.
Hinzu kommt ZEP_API_KEY für Zep Cloud, den Speicher für das Agentengedächtnis. Das README schreibt, das kostenlose Monatskontingent reiche für einfache Nutzung. Praktisch heißt das, dass Startmaterial und Simulationsverlauf den eigenen Rechner verlassen und bei einem fremden Anbieter liegen, was bei vertraulichen Unterlagen vorab geklärt werden muss.
npm run setup:all und npm run dev: Port 3000 vorn, Port 5001 hinten
Der Aufbau aus dem Quellcode beginnt mit cp .env.example .env und dem Eintragen der Schlüssel. Danach installiert npm run setup:all die Abhängigkeiten aus Wurzelverzeichnis, Frontend und Backend in einem Durchgang.
Wer schrittweise vorgehen will, nutzt npm run setup für die Node-Abhängigkeiten und npm run setup:backend für die Python-Seite, wobei die virtuelle Umgebung automatisch angelegt wird. Gestartet wird mit npm run dev, das beide Dienste gemeinsam hochzieht.
Erreichbar ist das Frontend anschließend unter http://localhost:3000, die Backend-API unter http://localhost:5001. Zur Fehlersuche lassen sich die Teile mit npm run backend und npm run frontend einzeln starten. Der Docker-Weg ist kürzer: cp .env.example .env, danach docker compose up -d, mit denselben Ports und einer im docker-compose.yml auskommentierten Spiegeladresse für langsame Downloads.
Warum das README bei MiroFish zu Simulationen unter 40 Runden rät
Das README enthält eine ungewöhnlich deutliche Kostenwarnung. Es spricht von hohem Verbrauch und rät, Simulationen zunächst mit weniger als 40 Runden zu fahren. Damit ist die Rundenzahl der stärkste Stellhebel für Zeitbedarf und Tokenverbrauch, auch wenn das README keine Werte pro Runde nennt.
Die Warnung passt zum Aufbau. Tausende Agenten mit Langzeitgedächtnis erzeugen in jeder Runde eine hohe Zahl an Modellaufrufen, hinzu kommen die Schreibvorgänge in den Gedächtnisspeicher. Wer die Engine kennenlernen will, sollte mit kurzem Startmaterial und einer eng gefassten Frage beginnen.
Zur Einordnung bietet das Projekt eine Live-Demo auf GitHub Pages unter 666ghj.github.io/mirofish-demo/ sowie zwei Videobeispiele. Eines startet von einem Analysebericht über eine chinesische Hochschule, das andere simuliert das fehlende Ende des Romans Der Traum der Roten Kammer aus den ersten 80 Kapiteln. Weitere Beispiele, darunter Finanzprognosen, kündigt das README an, ohne einen Zeitpunkt zu nennen.
AGPL-3.0 bei MiroFish: die Netzwerkklausel trifft jeden gehosteten Einsatz
MiroFish steht unter AGPL-3.0. Diese Lizenz richtet sich ausdrücklich auf netzwerkfähige Software: Wer eine veränderte Fassung auf einem öffentlich erreichbaren Server betreibt, muss den Nutzerinnen und Nutzern dieses Servers den Quelltext der geänderten Fassung anbieten. Für ein Projekt, das als interner Dienst hinter einer Anmeldung laufen soll, ist das die zentrale Prüffrage vor jeder Integration.
Das README weist außerdem auf den OASIS-Kern von CAMEL-AI hin, dessen eigene Lizenzbedingungen bei einer Weitergabe ebenfalls zu beachten sind. Aussagen zu Sicherheitsprüfungen oder zu Betriebszusagen trifft das README nicht.
Zu den Metadaten: 71.659 Sterne, 11.132 Forks und 122 offene Issues zum Zeitpunkt des Abrufs, letzter Push am 7. März 2026. Die drei Releases heißen v0.1.2 vom 7. März 2026, v0.1.1 vom 22. Januar 2026 und v0.1.0 vom 22. Dezember 2025. Eine 0.1er-Nummer bei dieser Reichweite ist ein klarer Hinweis darauf, dass Schnittstellen noch wandern können.
camel-ai/oasis als Unterbau: was MiroFish zusätzlich beisteuert
Die nächste Alternative ist der Unterbau selbst. camel-ai/oasis liefert die soziale Simulation ohne die Hülle von MiroFish: Szenarien werden dort als Code beschrieben, Agenten und Umgebung direkt konfiguriert, und es gibt keinen GraphRAG-Aufbau aus Startmaterial, keinen ReportAgent und keine Weboberfläche.
Wer die Mechanik der Simulation untersuchen oder eigene Szenarien reproduzierbar wiederholen will, ist bei OASIS näher am Geschehen und braucht weder Zep Cloud noch eine Node-Installation. Wer eine Frage in Alltagssprache stellen und am Ende einen Bericht samt Rückfragemöglichkeit haben möchte, bekommt bei MiroFish diese Kette aus einem Guss.
Der Preis ist zusätzliche Abhängigkeit. MiroFish verlangt neben dem Modellzugang einen zweiten fremden Dienst für das Gedächtnis, und der Betrieb hängt an zwei Ports und einem Build aus Node und Python. Bei OASIS entfällt beides, dafür wandert die Arbeit an Datenhaltung und Auswertung zu den Nutzenden.
Für wen sich MiroFish v0.1.2 eignet und ein erster Lauf über npm run dev
Geeignet ist MiroFish für Experimente, bei denen das Startmaterial unkritisch ist und die Frage eher explorativ gestellt wird, etwa für Stoffentwicklung oder Szenarienskizzen. Weniger geeignet ist es für Vorhersagen, an denen eine Entscheidung mit echten Kosten hängt, weil das README keine Validierung der Ergebnisse liefert.
Für einen ersten eigenen Lauf bietet sich der Quellcode-Weg an. cp .env.example .env ausführen, dann npm run setup:all und npm run dev, anschließend im Browser unter http://localhost:3000 ein kurzes Startmaterial hochladen und die Rundenzahl unter 40 belassen. Im Backend-Log auf Port 5001 lässt sich dabei ablesen, wie viele Modellaufrufe eine einzige Runde auslöst.
Zwei Punkte gehören vor einem dauerhaften Einsatz auf die Liste. Erstens die AGPL-3.0-Klausel zum Netzwerkbetrieb, falls MiroFish anderen als Dienst angeboten werden soll. Zweitens der Datenpfad: Über LLM_API_KEY und ZEP_API_KEY gelangen Startmaterial und Simulationsverlauf zu fremden Anbietern.
Redaktionelles Fazit
MiroFish passt zu Neugierigen, die Simulationen mit eigenen Startmaterialien ausprobieren wollen und externe Dienste für Modell und Gedächtnis akzeptieren. Ungeeignet ist es für vertrauliche Unterlagen, weil Zep Cloud und der Modellzugang außerhalb des eigenen Rechners liegen, und für jeden Einsatz als gehosteter Dienst ohne Klärung der AGPL-3.0-Netzwerkklausel. Geprüft werden sollten zuerst ein Lauf unter 40 Runden gegen ein Startmaterial mit bekanntem Ausgang, die Kostenspur im Backend-Log auf Port 5001 und der Stand von v0.1.2.
Community-Notizen