MiroFish : comment l'installer et simuler la réaction de tes clients
Teste ton prix, ton post ou ta pub sur une fausse foule avant la vraie. Installation par un prompt, trois scénarios prêts à coller, et la méthode pour en tirer quelque chose d'utile.
Tu veux publier un nouveau post, changer ton prix ou lancer une pub, et tu te demandes comment les gens vont le prendre. MiroFish répond à ça d'une façon qui n'existait pas avant : tu lui donnes ton projet et ce qui t'inquiète, et il fabrique une simulation d'internet, avec des dizaines d'agents IA qui ont chacun un âge, un métier, une personnalité et un avis. Ils postent, commentent et débattent, manche après manche, sur un faux Twitter et un faux Reddit. À la fin, tu as un rapport, et tu peux demander à n'importe quel agent pourquoi il a réagi comme ça.
Le logiciel est gratuit et open source, et il tourne sur ta machine. Gratuit ne veut pas dire sans coût : chaque agent pense avec une IA qui se paie à l'usage, sur ta clé, sauf si tu fais tourner un modèle chez toi. Sur une petite simulation ce sont des centimes, sur une grosse la note monte vite. Ce guide a deux moitiés : l'installer, en collant un prompt dans Claude Code, puis s'en servir sérieusement, avec les scénarios, la discipline de coût et la façon de lire le rapport.
Ce que ça fait, et qui l'a fait
Imagine une petite ville dans un jeu vidéo. Chaque habitant a un métier, un budget, une histoire, un caractère et une mémoire. Tu épingles ton annonce sur la place, et tu regardes ce que la ville en fait. C'est exactement ça, en cinq étapes : tu déposes des documents et ta question, MiroFish en tire un graphe de connaissances, crée un agent par personne ou organisation trouvée dans ces documents, fait tourner la simulation sur une copie de Twitter et une copie de Reddit, puis un agent rapporteur lit tout et t'écrit le rapport, pour que tu n'aies pas à faire défiler dix mille messages.
Derrière, Guo Hangjiang, alias BaiFu, un étudiant chinois en dernière année, qui l'a codé en une dizaine de jours. Ce n'était pas un coup de chance : son projet précédent, BettaFish, dépasse 42 000 étoiles. Et ce n'est pas une nouveauté de la semaine : le dépôt est public depuis novembre 2025, la première version date de décembre 2025. C'est en mars 2026 qu'il a pris la première place des tendances GitHub mondiales, et Chen Tianqiao, le fondateur de Shanda, a décidé d'y mettre 30 millions de yuans dans les 24 heures qui ont suivi leur rencontre. Aujourd'hui : plus de 75 000 étoiles, des mises à jour régulières, une licence AGPL dont on reparle plus bas, et un moteur de simulation emprunté à OASIS, le projet open source de CAMEL-AI.
Pourquoi c'est mieux que de demander à une seule IA
Tu as sûrement déjà collé un post dans ChatGPT en demandant si les gens allaient aimer. Tu as reçu une réponse propre, encourageante, avec trois suggestions. Voilà pourquoi elle ne valait presque rien.
Une IA seule te donne la moyenne. La moyenne de tout ce qu'elle a lu, dite poliment. Une moyenne ne résilie jamais son abonnement. Des gens précis et agacés, si.
Pas de désaccord, donc pas de contagion. Les vrais dégâts arrivent quand la personne A lit la personne B et s'énerve plus qu'au départ. Il faut plusieurs voix et plusieurs tours pour voir ça.
Un chat veut t'aider. Un inconnu simulé ne cherche pas du tout à t'aider, et c'est exactement pour ça que tu le veux.
Ce qu'il te faut, et le point qui piège tout le monde
Trois choses, pas plus :
Un ordinateur avec Docker Desktop. C'est la voie la plus simple, le projet fournit l'image prête. Sans Docker, il faut Node 18 ou plus, Python 3.11 ou 3.12 (pas 3.13, pas 3.10), et l'outil uv. Le prompt ci-dessous vérifie et installe ce qui manque.
Une clé d'IA pour la simulation. C'est elle qui fait penser chaque agent. MiroFish accepte n'importe quelle API au format OpenAI : trois options à la section suivante, dont une gratuite.
Une clé Zep, gratuite. Zep est le service de mémoire : c'est ce qui permet à un agent de se souvenir de ce qu'il a vu trois tours plus tôt. Son offre gratuite donne 10 000 crédits par mois, ce que le projet juge suffisant pour un usage simple. Compte sur app.getzep.com, clé dans les réglages.
Choisis l'IA qui fait tourner la simulation
Le fournisseur que le projet recommande lui-même. Au moment où j'écris, environ 0,40 dollar le million de mots lus et 1,60 dollar le million écrits : une simulation courte coûte des centimes. Compte international sur Model Studio, région Singapour, clé API dans les réglages. Attention, l'adresse donnée dans le fichier d'exemple du projet est celle du service chinois : avec un compte hors Chine, c'est l'adresse de Singapour qu'il faut, le prompt le sait.
Zéro euro pour l'IA, et le modèle ne quitte pas ton ordinateur. Tes documents, eux, passent quand même par Zep, le service de mémoire, qui est en ligne. Deux contreparties honnêtes : il faut une machine correcte (compte 16 Go de mémoire vive pour un modèle de 14 milliards de paramètres, et c'est le minimum pour que les agents tiennent un rôle), et la qualité des réactions est en dessous de Qwen-plus. Bien pour tester la mécanique, moins pour une vraie décision.
N'importe quelle API au format OpenAI marche : OpenAI, Mistral, un modèle via OpenRouter. Tu paies au tarif du fournisseur. Sur un modèle premium, surveille la note, la simulation parle beaucoup.
Fais-le installer par Claude Code
Ouvre Claude Code dans un dossier vide et colle ce prompt. Il vérifie ta machine, clone le projet, prépare la configuration selon l'IA que tu choisis, lance l'application et te dit comment faire ta première simulation. Il ne te demandera jamais une clé dans la conversation : c'est toi qui les colles dans le fichier, il te dit juste où.
Installe MiroFish sur mon ordinateur : https://github.com/666ghj/MiroFish 1. Vérifie ce que j'ai : Docker Desktop installé et lancé ? Sinon Node 18+, Python 3.11 ou 3.12 et uv. Installe ce qui manque et dis-moi ce que tu fais à chaque fois. 2. Clone le dépôt dans un dossier mirofish, puis crée le fichier .env à partir de .env.example. 3. Demande-moi quelle IA je veux pour la simulation : A. Qwen-plus via Alibaba Model Studio (pas cher) B. Ollama, un modèle local gratuit C. une autre clé compatible OpenAI Règle toi-même LLM_BASE_URL et LLM_MODEL_NAME selon mon choix. Pour A et un compte hors Chine, l'adresse est celle de la région Singapour. Pour B, installe Ollama, télécharge un modèle adapté à ma mémoire vive, et si on passe par Docker, remplace localhost par host.docker.internal. 4. Ne me demande JAMAIS une clé dans ce chat. Dis-moi quelles lignes de .env remplir moi-même (LLM_API_KEY, ZEP_API_KEY) et où obtenir chaque clé, puis attends que je t'écrive « c'est fait ». Vérifie ensuite qu'elles sont remplies, sans jamais les afficher. 5. Lance l'application : docker compose up -d, ou npm run setup:all puis npm run dev. Ouvre http://localhost:3000 et confirme que ça répond. 6. Explique-moi en cinq lignes comment lancer une première simulation de moins de 40 tours. Si une étape échoue, montre-moi l'erreur exacte et propose une correction avant de continuer.
Au moment des clés, il te donne les deux lignes à remplir dans le fichier .env et où obtenir chaque clé. Tu les colles toi-même, tu reviens, tu écris « c'est fait ».
Le fichier .env est ignoré par Git dans ce projet : tes clés ne partiront jamais dans un dépôt. Ne les mets nulle part ailleurs, une clé collée dans une conversation reste dans l'historique.
L'application s'ouvre sur localhost:3000, le moteur tourne derrière sur localhost:5001. Si la page s'affiche mais que rien ne se passe au lancement, c'est le moteur qui n'a pas démarré : dis-le à Claude Code.
Un sélecteur de langue en haut passe l'interface en anglais. Il n'y a pas de français, mais tes documents et ta question peuvent l'être.
Prépare ton dossier : c'est lui qui fabrique la foule
Le secret que la vidéo n'a pas le temps de dire. MiroFish ne te demande pas « combien d'agents veux-tu » : il crée un agent pour chaque personne ou organisation citée dans tes documents. Si tu ne déposes que ta page de vente, la ville est vide. Ta foule, tu la fabriques donc toi-même, avec trois fichiers.
Le matériel, mot pour mot. Le vrai post, le vrai mail, le vrai texte à l'écran, première ligne comprise. Un résumé de ton lancement produit des réactions à un résumé, et ça ne t'apprend rien sur ton lancement.
Le panel, avec des noms. Pas « nos clients ». Des personnes nommées, avec un métier, un budget, une ancienneté, et ce qu'elles pensent déjà de toi. Chaque nom devient un agent. Une entrée vague donne une foule générique qui approuve tout, et c'est la première cause des simulations décevantes.
Le marché. Tes concurrents nommés, leurs prix, ce qui se dit dans ton secteur. Les concurrents deviennent des agents aussi, et ils ont un avis.
Claude prépare ces trois fichiers avec toi :
Je vais tester une décision dans MiroFish : [augmenter mon prix de 29 à 39 euros par mois]. MiroFish crée un agent par personne ou organisation citée dans les documents qu'on lui donne. Prépare-moi trois fichiers texte. 1. materiel.md : le texte exact que mes clients verront, mot pour mot, objet compris. Je te le colle, tu n'y changes rien. 2. panel.md : 20 personnes nommées qui ressemblent à mes vrais clients, réparties ainsi : - 10 clients fidèles depuis plus d'un an - 6 arrivés dans les trois derniers mois - 4 qui n'utilisent presque plus le produit Pour chacune : prénom et nom, âge, métier, budget, ancienneté, une alternative qu'elle connaît déjà, et ce qu'elle pense de moi aujourd'hui. Ajoute une personne agaçante, qui critique pour se faire remarquer. 3. marche.md : mes 2 ou 3 concurrents nommés, leurs prix, et ce qui se dit sur mon secteur. Les personnes du panel sont fictives mais réalistes. N'invente aucun chiffre sur mon entreprise : pose-moi d'abord les questions qu'il te manque.
Avant d'écrire ta question, trois règles
Nomme la décision que tu vas prendre. Écris ce que tu changeras selon la réponse. Si rien ne changerait, tu n'as pas besoin de la simulation, tu cherches une permission.
Nomme ce qui te fait peur. La peur que tu n'as pas dite à voix haute est en général la vraie question. Mets-la dans la question et fais-la tester.
Demande des citations, pas des notes. La phrase exacte, citée d'un agent. Les pourcentages d'une simulation sont de la décoration, les phrases sont des munitions.
Trois scénarios prêts à coller
Sur la page d'accueil de MiroFish, tu déposes tes fichiers (PDF, Markdown ou texte) et tu colles ta question dans la case prévue. Voici les trois questions qui valent le plus, à adapter.
Le test d'augmentation de prix
La simulation la plus rentable pour la plupart des business : c'est la décision où se tromper coûte cher et où tout le monde devine. Le panel en trois groupes (fidèles, récents, presque partis) fait remonter ce que tout le monde rate : les plaintes les plus bruyantes viennent souvent de ceux qui utilisent le moins le produit.
Voici le mail d'augmentation de prix (materiel.md) et les clients qui vont le recevoir (panel.md). Simule leur réaction sur les réseaux, puis dis-moi : 1. Qui annonce qu'il part, et qui partirait vraiment d'après son comportement. Explique l'écart. 2. La phrase exacte de mon mail qui déclenche le plus de colère. Cite-la. 3. L'objection qui se propage le plus d'un agent à l'autre, et le tour où elle a pris. 4. Le changement de formulation qui réduirait le plus les départs, et pourquoi. Cite des phrases d'agents, pas des pourcentages.
Ce qui revient : une estimation de départs à prendre avec des pincettes, et une phrase de ton propre mail que tu voudras supprimer tout de suite. Cette phrase est tout le rendement de l'opération.
Le test du post, la veille de publier
La répétition générale d'une réaction publique. Dans le panel, mets des gens qui t'aiment déjà, des gens qui ne te connaissent pas, des fidèles de ton concurrent, des experts du domaine qui vérifieront tes affirmations, et quelqu'un qui critique pour se faire remarquer. Une foule simulée agréable, c'est une soirée perdue.
Voici le post de lancement tel qu'il sera publié (materiel.md) et les personnes qui vont le voir (panel.md). Simule leur réaction, puis donne-moi : 1. Trois premières réponses réalistes, dans la voix de ceux qui les écrivent. 2. La lecture de mauvaise foi la plus forte de ce post, citée. 3. L'affirmation contestée en premier, et pourquoi celle-là. 4. La critique grossit-elle ou s'éteint-elle au fil des tours ? Montre-moi le tour où ça bascule. 5. La ligne à ajouter qui désamorce l'objection la plus forte sans affaiblir le post.
Ce qui revient : trois réponses désagréablement plausibles, l'attaque que tu n'avais pas vue venir, et une réponse franche à la seule question qui compte, est-ce un orage qui passe ou un orage qui monte.
Le test des angles de pub
L'erreur que celui-ci évite : choisir l'angle qui marche le mieux en moyenne, et découvrir plus tard qu'il séduit un groupe en braquant celui qui te paie le plus. Mets tes trois versions dans le matériel, et trois types de clients dans le panel.
Voici trois versions de la même pub, A, B et C (materiel.md), et trois types de clients (panel.md). Simule leur réaction, puis donne-moi : 1. Le classement A, B, C dans chaque groupe, séparément. Pas de gagnant global : je ne vends pas à une moyenne. 2. Pour chaque groupe, la phrase qui l'a arrêté, citée exactement. 3. Tout angle qui gagne un groupe en en braquant un autre. C'est ce que je cherche le plus. 4. L'angle qui marcherait encore si un concurrent faisait pareil la semaine prochaine. 5. Le mot qui porte le plus dans la version gagnante.
Ce qui revient : trois classements séparés, en général en désaccord, et au moins un angle que tu aimais bien éliminé pour une raison que tu peux expliquer à ton équipe.
Interroge un agent : la fonction que personne n'utilise
C'est la meilleure de toutes. Une fois la simulation finie, la dernière étape de l'interface te laisse discuter avec n'importe quel habitant, ou envoyer un sondage à tous d'un coup. Ouvre celui dont la réaction t'a le plus surpris et pose-lui ces cinq questions.
Réponds comme toi-même, avec tes mots. 1. Qu'as-tu pensé à la première seconde, avant de lire les réactions des autres ? 2. As-tu changé d'avis ? Si oui, quel message ou quelle personne t'a fait changer, et pourquoi ? 3. Qu'est-ce qui aurait dû être différent pour que tu achètes, ou que tu en parles à quelqu'un ? 4. D'après ça seulement, que penses-tu de cette entreprise ? Sois dur si tu le penses. 5. Que dirais-tu de ça à un ami, en une phrase, comme tu le dirais vraiment ? Ne sois pas poli et ne résume pas.
Le rapport aplatit le raisonnement. La question 2 retrouve la chaîne de cause à effet, la seule partie sur laquelle tu peux agir, et la question 5 te donne de la copie écrite dans les mots de ton client. Trois interviews t'apprennent plus sur tes objections qu'une semaine à lire des avis.
Garde la dépense raisonnable
Le projet lui-même prévient : forte consommation, commence par des simulations de moins de 40 tours. Le calcul derrière l'avertissement est simple. À chaque tour, une partie des agents se réveille, et chaque agent réveillé, c'est un appel à l'IA. Ajoute la mémoire et le rapport final. Tout est facturé sur ta clé, et c'est le seul endroit où le coût arrête vraiment les gens en plein projet.
Ce qui est vraiment gratuit. Le logiciel, sans limite. La mémoire Zep, tant que tu restes dans son quota mensuel, que le projet juge suffisant pour un usage simple. Et l'IA, si tu choisis un modèle local.
Ce qui ne l'est plus à grande échelle. Une IA en ligne se paie au volume, et le volume grossit avec le nombre d'agents multiplié par le nombre de tours. Des centaines d'agents sur des dizaines de tours, ce n'est plus un outil gratuit, c'est une ligne de budget.
Premier passage : petit. Un panel de 20 personnes et 5 tours. À l'étape de configuration, l'interface propose un nombre de tours : passe en mode Custom et réduis-le, MiroFish le recommande lui-même pour une première fois. Tu testes ton dossier, pas l'outil. Attends-toi à le trouver mal écrit.
Deuxième passage : même taille. Corrige le dossier d'après ce qui est revenu. La plupart en demandent deux réécritures avant de mériter de l'argent.
Troisième passage : élargis le panel, 10 tours. La population t'achète de la variété d'opinion, les tours t'achètent de la contagion. La variété coûte moins cher.
Au-delà de 20 tours seulement quand tu veux savoir si une objection grossit ou meurt. C'est la seule question qui a vraiment besoin de ce temps.
Lis le rapport sans te raconter d'histoires
C'est là que les gens se trompent. Une simulation est une machine à produire des objections auxquelles tu n'avais pas pensé. Ce n'est pas un instrument de mesure, et aucune précision n'est publiée par le projet.
Les phrases sont la récolte, les chiffres la décoration. N'emmène jamais un pourcentage simulé en réunion comme si c'était une étude. Emmène la phrase. Elle se défend, le chiffre non.
Lance le même dossier deux fois. Ce qui revient les deux fois est un signal. Ce qui n'apparaît qu'une fois est du bruit. Savoir la différence coûte un petit passage de plus.
Confronte au réel. Une des objections ressemble-t-elle à ce qu'un vrai client t'a déjà dit ? Si aucune, ton panel était trop vague.
Souviens-toi de quoi sont faits ces agents. D'un modèle nourri de l'internet écrit. Ils sont donc bavards, connectés et tranchés. Les clients silencieux qui partent sans rien dire sont sous-représentés, et c'est pourtant comme ça que la plupart des clients s'en vont.
Chaque agent part avec une position. Elle est écrite dans son profil à la création. Au fil des tours il lit les autres et ses messages évoluent, c'est ce qui fait circuler les arguments, mais ne t'attends pas à des conversions en masse.
L'outil n'a pas été pensé pour ton business. Il vise l'opinion publique, la finance et la fiction. L'usage pour un prix ou une pub est un détournement, qui marche avec un bon dossier et donne du vide sinon.
La foule ne décide pas. Laisse-la te montrer ce que tu n'avais pas envisagé, puis décide. Une simulation qui dit « ne lance pas » t'a dit quoi corriger, pas quoi abandonner.
Les erreurs les plus fréquentes
Coller un résumé au lieu du vrai texte. Tu obtiens une réaction au résumé. Elle a l'air convaincante et elle est inutile.
Partir trop gros. Cent agents et quarante tours pour découvrir que le dossier était à réécrire, ce que vingt agents et cinq tours t'auraient dit pour quelques centimes.
Lancer après avoir décidé. Si rien dans le rapport ne peut changer ton plan, tu cherches une permission, pas une information.
Sauter les interviews parce que le rapport a l'air complet. Le rapport est le résumé. Le raisonnement est dans les interviews.
Tester seulement la version que tu aimes. Passe aussi celle que tu as rejetée. La leçon la moins chère du marché, c'est de découvrir que l'option prudente que tu avais jetée était la bonne.
Ta première semaine
Ouvre la démo en ligne et fais-toi une idée. Décide honnêtement si tu veux l'installation complète.
Installe avec le prompt. Fixe le plafond de dépense chez ton fournisseur avant de lancer quoi que ce soit.
Simule ton dernier lancement, celui dont tu connais déjà le résultat. Petit : 20 personnes, 5 tours. Tu calibres l'outil, tu n'apprends rien de neuf sur ce lancement.
Compare au réel. Réécris ton panel jusqu'à ce que la réaction simulée ressemble à celle que tu as vraiment eue. C'est le jour qui décide si tout ça te sera utile.
Prends une vraie décision qui arrive et lance un des trois scénarios, toujours petit. Écris ta prédiction avant.
Interroge trois agents : celui qui a détesté, celui qui a adoré, celui dont la position a bougé. Garde les citations dans un fichier.
Fais un seul changement dans ton vrai texte, à partir d'une seule citation. Un changement tiré d'une phrase, c'est une première semaine parfaitement réussie.
TinyTroupe, l'alternative pour une simple réaction
MiroFish répond à une question de contagion : comment une opinion se répand, est-ce que la critique grossit. Si ta question est plus simple, que pensent ces six types de personnes de cette pub précise, il existe TinyTroupe, la bibliothèque de simulation de personnages de Microsoft, publiée par Microsoft, sous licence MIT. Ici tu décris tes personnages directement, sans passer par des documents, et le projet fournit des exemples tout faits : évaluation d'une publicité, étude de marché, interview d'un client. Ça reste du Python et des carnets de code, donc pas plus simple à la main, mais Claude Code s'en charge :
Installe TinyTroupe depuis le dépôt officiel de Microsoft (github.com/microsoft/TinyTroupe) en suivant son README. Ma clé OpenAI est dans la variable OPENAI_API_KEY, ne me la demande pas ici. Ouvre ensuite l'exemple d'évaluation de publicité et adapte-le : remplace la pub par la mienne et les personnages par les 6 profils que je vais te décrire. Lance-le et résume-moi leurs réactions, avec leurs phrases citées.
La licence : à lire avant d'en faire un produit
Open source ne veut pas dire « fais-en ce que tu veux ». MiroFish est publié sous licence AGPL-3.0, la plus stricte des licences libres courantes.
Pour ton propre usage, aucune contrainte. Tester tes prix, tes posts et tes pubs, apprendre, modifier le code dans ton coin : tu ne dois rien à personne.
Si tu le modifies et que d'autres s'en servent en ligne. Tu dois proposer à ces utilisateurs le code source complet de ta version, gratuitement et sous la même licence. C'est la clause qui distingue l'AGPL des autres licences libres : mettre le logiciel derrière un site ne te dispense pas de partager.
Si tu l'intègres dans ton produit. Le code que tu construis autour peut tomber sous la même obligation. Si le code de ton produit doit rester privé, c'est un vrai risque, pas un détail.
Lire un guide, c'est bien.
Construire pendant 30 jours, c'est autre chose.
Ce guide t'a donné une méthode. Le problème, c'est qu'on enregistre des astuces IA et qu'on n'en applique aucune. Le Challenge IA, c'est l'inverse : un défi par jour, un système construit par jour, pendant 30 jours. Les inscriptions ouvrent bientôt.
Un challenge par jour
30 jours, 30 systèmes qui tournent pour toi.
Tes propres agents
Prompts et agents à installer pendant que tu construis.
Vidéos et démos réelles
Je construis devant toi, tu refais derrière.
Accès à vie
Ce que tu construis reste à toi, sans limite de temps.
Gratuit et sans engagement. Les inscrits sont prévenus en premier.
Pas le temps d'apprendre ? On le fait pour toi.
Des solutions IA sur mesure, clés en main, pour automatiser tes process, réduire tes coûts et gagner du temps sur ce qui compte. Agents IA, automatisations, outils internes : on construit, tu récoltes.
De 0 à 70 000 abonnés en 3 mois. Ne cherche plus jamais quoi poster.
Je l'ai construite pour moi, parce que je perdais mes journées à chercher quoi poster. Zoe surveille les créateurs de ta niche, repère les Reels qui explosent cette semaine, comprend pourquoi ils marchent, et t'écrit le script du tien avec ta manière de parler. Elle tourne toujours sur mon compte tous les jours. Elle est maintenant ouverte à tout le monde.
Elle repère
Les Reels qui font x5 la moyenne du compte qui les a publiés.
Elle explique
Ce qui a marché dans la vidéo, hook par hook.
Elle écrit
Le script prêt à tourner, avec ta manière de parler.
Sans engagement, résiliable en un clic. Les résultats dépendent de ton travail : Zoe te dit quoi tourner, elle ne tourne pas à ta place.
Lis la suite gratuitement
Entre tes infos pour débloquer le guide complet.