TIPS 60 · MIROFISH

Tausend erfundene Kunden vor dem Launch

MiroFish Schritt für Schritt: was es ist, wie du es auf deinem Computer installierst, was du ihm zu lesen gibst, um einen Launch durchzuspielen, und wie du die erfundenen Kunden befragst. Mit seinen Grenzen, klar gesagt.

Was es ist und warum es zählt

Vor einem Launch rätst du meistens. Stimmt der Preis? Versteht man den Satz ganz oben auf der Seite? Macht die Anzeige neugierig oder nervt sie? Du merkst es, wenn die ersten echten Kunden kommen, und dann hast du schon Zeit und Geld ausgegeben.

MiroFish ist eine Simulations-Engine mit vielen Agenten, kostenlos und Open Source auf GitHub, mit mehr als 80.000 Sternen. Ein Agent ist hier eine Figur, die von einem KI-Modell gesteuert wird: Sie hat ein Alter, einen Charakter, ein Gedächtnis und eigene Ansichten. Du gibst ihr Ausgangsmaterial, das das Projekt Samen (Seed) nennt: deine Produktseite, deine Preisliste, eine Anzeige, eine Nachricht. Daraus baut MiroFish eine kleine Welt, füllt sie mit Agenten und lässt sie auf zwei simulierten sozialen Netzwerken miteinander reden, einem Feed wie Twitter und einer Community wie Reddit. Am Ende schreibt es einen Bericht, und du kannst jedem einzelnen Fragen stellen.

Es ist für alle, die gerade allein etwas launchen. Es ist keine Kristallkugel, es ist eine Generalprobe: Es zeigt dir, wo deine Seite nicht ankommen könnte, und warum, bevor ein echter Kunde es merkt.

1. Was du brauchst

  • Git, Node.js, Python und uv, ein Paketmanager für Python. Die passenden Versionen stehen in der Tabelle Prerequisites im README: Für Python gibt es auch eine Obergrenze, die neueste Version läuft also eventuell nicht. Oder nur Docker.
  • Einen API-Schlüssel für ein Sprachmodell, das das Format des OpenAI-SDK nutzt. Das README empfiehlt das Modell qwen-plus auf Alibabas Plattform Bailian, aber jeder kompatible Dienst geht.
  • Einen Schlüssel für Zep Cloud, den Dienst, der das Gedächtnis der simulierten Welt als Graph speichert, also als Karte von Personen, Dingen und Verbindungen. Laut README reicht das kostenlose Monatskontingent für einfache Nutzung. MiroFish verbindet sich nur mit Zep Cloud.
  • Die Texte, die es lesen soll, als PDF-, Markdown- oder TXT-Dateien.

Eins solltest du gleich wissen: Das Programm läuft auf deinem Computer, aber was du hochlädst, geht an den Dienst des Modells und an Zep Cloud. Gib ihm keine vertraulichen Dokumente und keine Daten deiner Kunden.

2. Installieren und starten

  1. Lade das Projekt mit git clone https://github.com/666ghj/MiroFish herunter und wechsle in den Ordner.
  2. Kopiere die Beispieldatei mit cp .env.example .env. Die Datei .env enthält die Schlüssel und bleibt nur auf deinem Computer.
  3. Öffne .env und fülle LLM_API_KEY, LLM_BASE_URL, LLM_MODEL_NAME und ZEP_API_KEY aus. Unten stehen drei Zeilen LLM_BOOST für ein optionales, schnelleres zweites Modell: Wenn du es nicht nutzt, lösch sie. So steht es im Kommentar in der Datei, auf Chinesisch.
  4. Installiere alles mit npm run setup:all.
  5. Starte mit npm run dev. Die Oberfläche läuft unter http://localhost:3000, das Backend antwortet unter http://localhost:5001.

Mit Docker reicht nach Schritt 3 docker compose up -d: Es liest dieselbe .env und nutzt dieselben Ports. Die Oberfläche öffnet sich auf Chinesisch: Wähl im Sprachmenü English. Es gibt nur Chinesisch und Englisch, und die Sprache, die du dort wählst, ist auch die Sprache des Berichts und der Antworten der Agenten.

Claude Code kann fast die ganze Arbeit machen. Das Einzige, was ich selbst mache, sind die Schlüssel: Ich tippe sie von Hand in die .env und füge sie nie in den Chat ein.

Die Nachricht
Installiere MiroFish (https://github.com/666ghj/MiroFish) in einem neuen Ordner, außerhalb meiner Projekte.
Lies das README und die Datei .env.example und prüfe, ob Git, Node.js, Python und uv in den geforderten Versionen da sind. Wenn etwas fehlt, sag mir, wie ich es installiere, bevor du es tust.
Leg die .env aus der Beispieldatei an, entferne die drei Zeilen LLM_BOOST und lass die Schlüssel leer: Die trage ich selbst ein.
Wenn ich dir sage, dass ich fertig bin, führ npm run setup:all und dann npm run dev aus und sag mir, ob Frontend und Backend ohne Fehler starten.

3. Den Seed für deinen Launch vorbereiten

Das Ergebnis hängt davon ab, was du ihm zu lesen gibst. Um einen Launch durchzuspielen, bereite ich eine einzige Markdown-Datei vor, mit:

  • Den Text der Landingpage von oben nach unten, genau so, wie er ist.
  • Die Preise: die Tarife, was jeder enthält, die kostenlose Testphase, falls es eine gibt.
  • Die Anzeige, die du schalten willst: den Text und was man im Bild oder Video sieht.
  • Zwei Zeilen dazu, wer deiner Meinung nach deine Kunden sind. Das hilft, glaubwürdige Agenten zu erzeugen.
Die Nachricht
Lies meine Landingpage (<Pfad oder Adresse>), die Preisliste (<Pfad>) und den Anzeigentext (<Text>).
Schreib eine Datei launch-seed.md für MiroFish: den Seitentext so, wie er ist, die Preise als Tabelle, die Anzeige und zwei Zeilen über die Kunden, an die ich denke (<wer sie sind>).
Verbessere nichts und füge keine Versprechen hinzu, die nicht auf der Seite stehen: Es muss die Version sein, die ich morgen veröffentlichen würde.

Dann gibt es das zweite Feld, die Anfrage: was du wissen willst, in normalen Worten. Je genauer sie ist, desto eher beantwortet der Bericht deine Frage und keine andere. Meine, für einen Launch:

Die Nachricht
Simuliere, wie <Freelancer und kleine Teams> in den ersten Tagen nach dem Launch auf die Seite und die Anzeige reagieren. Ich will wissen: was man nicht versteht, welche Einwände es zum Preis gibt, wer es teilen würde und warum, und welcher Satz der Seite am häufigsten zitiert wird, im Guten oder im Schlechten.

4. Die Simulation laufen lassen, mit wenigen Runden

Du lädst die Datei hoch, schreibst die Anfrage und drückst Start Engine. Danach geht MiroFish durch fünf Phasen, die du nacheinander siehst:

  1. Graph Build: Es liest das Dokument und baut den Graphen auf Zep.
  2. Env Setup: Es erzeugt die Agenten, jeder mit Alter, Land, Charakter, einer Biografie und Erinnerungen aus dem Seed. Hier legst du auch fest, wie viele Runden laufen.
  3. Run Simulation: Die beiden Netzwerke laufen gleichzeitig. Jede Runde ist ein Stück simulierte Zeit, in dem die Agenten posten, kommentieren, liken und einander folgen.
  4. Report Generation: Ein eigener Agent, der ReportAgent, rekonstruiert, was passiert ist, und schreibt den Bericht, Abschnitt für Abschnitt.
  5. Deep Interaction: Du chattest mit dem ReportAgent oder mit jedem beliebigen Agenten der Welt, oder du schickst dieselbe Frage an eine Gruppe.

Das Geld steckt in den Runden. MiroFish schlägt selbst eine Zahl vor, verbraucht aber viel: Das README rät, zuerst weniger als 40 Runden zu probieren, und der Bildschirm selbst empfiehlt beim ersten Mal, auf Custom umzuschalten. Schalte in Env Setup Custom ein und zieh den Regler runter, er beginnt bei 10. Mach einen kleinen Test, prüf, ob alles läuft und der Bericht Sinn ergibt, und erst dann wird es länger.

5. Den Bericht lesen und die erfundenen Kunden befragen

Den Bericht lese ich so, wie ich die Kommentare unter einem Post lese: Ich zähle keine Stimmen, ich suche die Sätze, die immer wiederkommen. Drei Fragen: Was wurde nicht verstanden? Welcher Einwand kommt am häufigsten? Wer hat das Produkt verteidigt, und mit welchen Worten?

Dann der nützlichste Teil, Deep Interaction. Such dir einen Agenten aus, der den Preis kritisiert hat, und frag ihn, warum, und was ihn umstimmen würde. Mit Send survey wählst du eine Gruppe von Agenten und schickst allen dieselbe Frage. Meine Standardfragen:

Die Nachricht
Du hast die Seite gesehen: Was macht dieses Produkt, in einem Satz?
Was hat dich am meisten zweifeln lassen?
Zu welchem Preis würdest du es ausprobieren, und was würdest du dafür erwarten?
Was würdest du einem Freund sagen, der dich fragt, ob es sich lohnt?

Achtung: Simulation und Interviews funktionieren nur, solange die Umgebung läuft. Aus dem Verlauf kannst du Graph, Umgebung und Bericht wieder öffnen, aber weder die Simulation noch die Interviews. Stell deine Fragen, bevor du schließt.

Der Bericht landet auch in einer Datei, full_report.md, in backend/uploads/reports. Dort kann Claude Code ihn lesen, neben deiner Seite:

Die Nachricht
Lies den neuesten MiroFish-Bericht (die jüngste Datei full_report.md in backend/uploads/reports) und meine Landingpage.
Liste die Einwände auf, die am häufigsten vorkommen, jeweils mit dem Satz der Seite, der sie auslöst.
Schlag für jeden eine Änderung an der Seite vor. Trenne, was nach einem echten Problem aussieht, von dem, was nur eine Idee der Simulation sein könnte: Das prüfe ich mit echten Menschen.

6. Die Grenzen, klar gesagt

  • Es ist eine Generalprobe, keine Vorhersage. Die Agenten sind Sprachmodelle, die eine Rolle spielen: Der Bericht gibt dir Hypothesen, die du mit echten Menschen prüfen musst, keine Verkaufszahlen.
  • Es kostet. Das Programm ist kostenlos, aber jede Runde bedeutet viele Aufrufe des Modells, die dein Anbieter nach Verbrauch abrechnet. Mehr Agenten und mehr Runden, mehr Kosten. Zep Cloud kostet, wenn du über das kostenlose Kontingent hinausgehst.
  • Deine Texte verlassen deinen Computer. Es gibt einen Fork, MiroFish-Offline (github.com/nikmcfly/MiroFish-Offline), der Zep Cloud durch Neo4j und das Cloud-Modell durch Ollama ersetzt, sodass alles lokal bleibt. Er stammt nicht vom ursprünglichen Team, und sein README verlangt einen starken Rechner: mindestens 16 GB RAM, eine Grafikkarte wird empfohlen.
  • Die Lizenz ist die AGPL-3.0. Für dich selbst darfst du es frei nutzen. Wenn du aber den Code änderst und andere deine Version über das Netz nutzen lässt, etwa als Online-Dienst, musst du diesen Nutzern den Quellcode deiner geänderten Version anbieten.

Häufige Fehler

  • Die erste Simulation mit den Runden starten, die MiroFish vorschlägt. Schalte Custom ein und fang niedrig an.
  • Eine vage Anfrage schreiben, etwa „was halten sie davon?“. Frag nach Konkretem: was man nicht versteht, die Einwände zum Preis, wer es teilt.
  • Den Bericht für eine Vorhersage halten und alles umbauen. Was aus der Simulation kommt, prüfst du mit ein paar echten Menschen.
  • Die Umgebung schließen, bevor du den Agenten deine Fragen gestellt hast.

Checkliste

  • Die vier Einträge für Modell und Zep in der .env, ohne Zeilen LLM_BOOST, wenn ich sie nicht nutze
  • Eine Seed-Datei mit Seite, Preisen und Anzeige, so wie ich sie veröffentlichen werde
  • Eine genaue Anfrage, mit den Fragen, die für den Launch zählen
  • Erster Test in Custom, mit wenigen Runden
  • Fragen an mindestens einen Kritiker und einen Fürsprecher, bevor ich die Umgebung schließe
  • Die wichtigsten Einwände notiert, zum Prüfen mit echten Menschen

Häufige Fragen

Kann ich das Sprachmodell nutzen, das ich schon verwende?

Wenn der Dienst eine API anbietet, die mit dem Format des OpenAI-SDK kompatibel ist, ja: Du änderst LLM_BASE_URL, LLM_MODEL_NAME und den Schlüssel. Das README empfiehlt qwen-plus; mit einem anderen Modell können sich Ergebnisse und Verbrauch ändern, also mach zuerst einen kurzen Test.

Funktioniert es mit einer Seite, die nicht auf Englisch ist?

Der Seed kann in deiner Sprache sein, aber die Oberfläche gibt es nur auf Chinesisch und Englisch, und der Bericht und die Antworten der Agenten kommen in der Sprache der Oberfläche. Ich wähle English und lasse mir den Bericht dann von Claude Code auf Deutsch zusammenfassen.

Ersetzt es einen Test mit echten Nutzern?

Nein. Es bringt dich zum Test mit echten Nutzern mit einer Seite, die schon von den offensichtlichsten Fehlern befreit ist, und mit den richtigen Fragen.

← Alle Anleitungen