{
 "id": 4362,
 "status": "publish",
 "lang": "es",
 "slug": "mirofish-simulacion-mercado-agentes-ia",
 "url": "https://soymarketingultra.com/mirofish-simulacion-mercado-agentes-ia/",
 "title": "MiroFish: simula tu mercado con miles de agentes IA",
 "excerpt": "MiroFish genera miles de agentes IA con personalidad propia para simular la respuesta del mercado a tu lanzamiento. Analizamos si funciona o si es humo sintético.",
 "date_gmt": "2026-09-15T21:46:21Z",
 "modified_gmt": "2026-09-15T21:46:21Z",
 "categories": [
  {
   "slug": "ia-aplicada-es",
   "name": "IA Aplicada",
   "url": "https://soymarketingultra.com/category/ia-aplicada-es/"
  }
 ],
 "tags": [
  {
   "slug": "automatizacion-ia",
   "name": "automatización IA"
  },
  {
   "slug": "inteligencia-artificial-es",
   "name": "Inteligencia artificial"
  },
  {
   "slug": "marketing-digital-es",
   "name": "marketing digital"
  }
 ],
 "featured_image": {
  "url": "https://soymarketingultra.com/wp-content/uploads/review-mirofish-4362.png",
  "alt": "Review de MiroFish: análisis, límites y veredicto",
  "width": 1536,
  "height": 864
 },
 "translation": {
  "lang": "en",
  "url": "https://soymarketingultra.com/en/mirofish-ai-market-simulation/",
  "id": 4363
 },
 "seo": {
  "title": "MiroFish: simula tu mercado con miles de agentes IA",
  "description": "MiroFish genera miles de agentes IA para predecir la reacción del mercado a tu lanzamiento. Qué hace, cómo se instala y sus límites reales. Descúbrelo.",
  "focus_keyword": "MiroFish"
 },
 "html": "<p>MiroFish genera miles de agentes IA con personalidades y memoria propias, los suelta a interactuar entre ellos y predice cómo va a reaccionar el mercado a tu lanzamiento, tu precio o tu campaña. <strong>Simulación masiva con IA para ensayar la respuesta del mercado antes de soltar un euro</strong>. Más de 73.000 estrellas en GitHub, licencia AGPL-3.0 y una demo en vivo: la pregunta no es si existe, es si funciona de verdad.</p>\n\n<div class=\"mu-tldr\">\n  <div class=\"mu-tldr__header\">\n    <img src=\"https://soymarketingultra.com/wp-content/themes/astra-child/assets/brand/despiram-sorprendido.png\" alt=\"Mascota Marketing Ultra\" class=\"mu-tldr__mascot\" />\n    <p class=\"mu-tldr__title\">TL;DR: El resumen sin rodeos</p>\n  </div>\n  <div class=\"mu-tldr__body\">\n    <ul>\n      <li><strong>Qué es</strong>: motor de código abierto de inteligencia de enjambre que simula miles de agentes IA para predecir reacciones del mercado a un lanzamiento, un precio o una campaña.</li>\n      <li><strong>Tracción</strong>: 73.593 estrellas en GitHub, respaldado por Shanda Group, motor construido sobre OASIS de CAMEL-AI.</li>\n      <li><strong>Coste real</strong>: la herramienta es gratuita (AGPL-3.0), pero cada simulación quema tokens de la API del LLM que configures.</li>\n      <li><strong>La pega gorda</strong>: los agentes son prompts de LLM sin verificación de evidencia. Pueden fabricar respuestas convincentes sin base real.</li>\n    </ul>\n    <div class=\"mu-tldr__verdict\"><svg class=\"mu-tldr__gavel\" aria-hidden=\"true\" viewBox=\"0 0 26 18\" width=\"40\" height=\"28\" shape-rendering=\"crispEdges\" style=\"image-rendering:pixelated\"><rect x=\"6\" y=\"0\" width=\"1\" height=\"1\" fill=\"#0a0000\"/><rect x=\"7\" y=\"0\" width=\"1\" height=\"1\" fill=\"#0a0000\"/><rect x=\"8\" y=\"0\" width=\"1\" height=\"1\" fill=\"#6b4535\"/><rect x=\"5\" y=\"1\" width=\"1\" height=\"1\" fill=\"#3a1510\"/><rect x=\"6\" y=\"1\" width=\"1\" height=\"1\" fill=\"#aa6666\"/><rect x=\"7\" y=\"1\" width=\"1\" height=\"1\" fill=\"#aa6666\"/><rect x=\"8\" y=\"1\" width=\"1\" height=\"1\" fill=\"#aa6666\"/><rect x=\"9\" y=\"1\" width=\"1\" height=\"1\" fill=\"#873235\"/><rect x=\"10\" y=\"1\" width=\"1\" height=\"1\" fill=\"#3a1510\"/><rect x=\"5\" y=\"2\" width=\"1\" height=\"1\" fill=\"#0a0000\"/><rect x=\"6\" y=\"2\" width=\"1\" height=\"1\" fill=\"#3a1510\"/><rect x=\"7\" y=\"2\" width=\"1\" height=\"1\" fill=\"#873235\"/><rect x=\"8\" y=\"2\" width=\"1\" height=\"1\" fill=\"#873235\"/><rect x=\"9\" y=\"2\" width=\"1\" height=\"1\" fill=\"#873235\"/><rect x=\"10\" y=\"2\" width=\"1\" height=\"1\" fill=\"#aa6666\"/><rect x=\"11\" y=\"2\" width=\"1\" height=\"1\" fill=\"#6b4535\"/><rect x=\"12\" y=\"2\" width=\"1\" height=\"1\" fill=\"#696969\"/><rect x=\"5\" y=\"3\" width=\"1\" height=\"1\" fill=\"#6b4535\"/><rect x=\"6\" y=\"3\" width=\"1\" height=\"1\" fill=\"#aa6666\"/><rect x=\"7\" y=\"3\" width=\"1\" height=\"1\" fill=\"#3a1510\"/><rect x=\"8\" y=\"3\" width=\"1\" height=\"1\" fill=\"#3a1510\"/><rect x=\"9\" y=\"3\" width=\"1\" height=\"1\" fill=\"#873235\"/><rect x=\"10\" y=\"3\" width=\"1\" height=\"1\" fill=\"#873235\"/><rect x=\"11\" y=\"3\" width=\"1\" height=\"1\" fill=\"#aa6666\"/><rect x=\"12\" y=\"3\" width=\"1\" height=\"1\" fill=\"#873235\"/><rect x=\"13\" y=\"3\" width=\"1\" height=\"1\" fill=\"#696969\"/><rect x=\"5\" y=\"4\" width=\"1\" height=\"1\" fill=\"#6b4535\"/><rect x=\"6\" y=\"4\" width=\"1\" height=\"1\" fill=\"#3a1510\"/><rect x=\"7\" y=\"4\" width=\"1\" height=\"1\" fill=\"#3a1510\"/><rect x=\"8\" y=\"4\" width=\"1\" height=\"1\" fill=\"#873235\"/><rect x=\"9\" y=\"4\" width=\"1\" height=\"1\" fill=\"#0a0000\"/><rect x=\"10\" y=\"4\" width=\"1\" height=\"1\" fill=\"#0a0000\"/><rect x=\"11\" y=\"4\" width=\"1\" height=\"1\" fill=\"#6b4535\"/><rect x=\"12\" y=\"4\" width=\"1\" height=\"1\" fill=\"#873235\"/><rect x=\"13\" y=\"4\" width=\"1\" height=\"1\" fill=\"#8a7060\"/><rect x=\"4\" y=\"5\" width=\"1\" height=\"1\" fill=\"#0a0000\"/><rect x=\"5\" y=\"5\" width=\"1\" height=\"1\" fill=\"#aa6666\"/><rect x=\"6\" y=\"5\" width=\"1\" height=\"1\" fill=\"#aa6666\"/><rect x=\"7\" y=\"5\" width=\"1\" height=\"1\" fill=\"#aa6666\"/><rect x=\"8\" y=\"5\" width=\"1\" height=\"1\" fill=\"#6b4535\"/><rect x=\"9\" y=\"5\" width=\"1\" height=\"1\" fill=\"#0a0000\"/><rect x=\"10\" y=\"5\" width=\"1\" height=\"1\" fill=\"#873235\"/><rect x=\"11\" y=\"5\" width=\"1\" height=\"1\" fill=\"#873235\"/><rect x=\"12\" y=\"5\" width=\"1\" height=\"1\" fill=\"#8a7060\"/><rect x=\"4\" y=\"6\" width=\"1\" height=\"1\" fill=\"#aa6666\"/><rect x=\"5\" y=\"6\" width=\"1\" height=\"1\" fill=\"#aa6666\"/><rect x=\"6\" y=\"6\" width=\"1\" height=\"1\" fill=\"#aa6666\"/><rect x=\"7\" y=\"6\" width=\"1\" height=\"1\" fill=\"#aa6666\"/><rect x=\"8\" y=\"6\" width=\"1\" height=\"1\" fill=\"#aa6666\"/><rect x=\"9\" y=\"6\" width=\"1\" height=\"1\" fill=\"#873235\"/><rect x=\"10\" y=\"6\" width=\"1\" height=\"1\" fill=\"#873235\"/><rect x=\"11\" y=\"6\" width=\"1\" height=\"1\" fill=\"#0a0000\"/><rect x=\"2\" y=\"7\" width=\"1\" height=\"1\" fill=\"#3a1510\"/><rect x=\"3\" y=\"7\" width=\"1\" height=\"1\" fill=\"#3a1510\"/><rect x=\"4\" y=\"7\" width=\"1\" height=\"1\" fill=\"#aa6666\"/><rect x=\"5\" y=\"7\" width=\"1\" height=\"1\" fill=\"#aa6666\"/><rect x=\"6\" y=\"7\" width=\"1\" height=\"1\" fill=\"#aa6666\"/><rect x=\"7\" y=\"7\" width=\"1\" height=\"1\" fill=\"#aa6666\"/><rect x=\"8\" y=\"7\" width=\"1\" height=\"1\" fill=\"#aa6666\"/><rect x=\"9\" y=\"7\" width=\"1\" height=\"1\" fill=\"#873235\"/><rect x=\"10\" y=\"7\" width=\"1\" height=\"1\" fill=\"#0a0000\"/><rect x=\"11\" y=\"7\" width=\"1\" height=\"1\" fill=\"#3a1510\"/><rect x=\"2\" y=\"8\" width=\"1\" height=\"1\" fill=\"#0a0000\"/><rect x=\"3\" y=\"8\" width=\"1\" height=\"1\" fill=\"#aa6666\"/><rect x=\"4\" y=\"8\" width=\"1\" height=\"1\" fill=\"#6b4535\"/><rect x=\"5\" y=\"8\" width=\"1\" height=\"1\" fill=\"#3a1510\"/><rect x=\"6\" y=\"8\" width=\"1\" height=\"1\" fill=\"#6b4535\"/><rect x=\"7\" y=\"8\" width=\"1\" height=\"1\" fill=\"#873235\"/><rect x=\"8\" y=\"8\" width=\"1\" height=\"1\" fill=\"#873235\"/><rect x=\"9\" y=\"8\" width=\"1\" height=\"1\" fill=\"#873235\"/><rect x=\"10\" y=\"8\" width=\"1\" height=\"1\" fill=\"#3a1510\"/><rect x=\"11\" y=\"8\" width=\"1\" height=\"1\" fill=\"#873235\"/><rect x=\"12\" y=\"8\" width=\"1\" height=\"1\" fill=\"#6b4535\"/><rect x=\"13\" y=\"8\" width=\"1\" height=\"1\" fill=\"#8a7060\"/><rect x=\"17\" y=\"8\" width=\"1\" height=\"1\" fill=\"#696969\"/><rect x=\"18\" y=\"8\" width=\"1\" height=\"1\" fill=\"#b87575\"/><rect x=\"19\" y=\"8\" width=\"1\" height=\"1\" fill=\"#8a7060\"/><rect x=\"20\" y=\"8\" width=\"1\" height=\"1\" fill=\"#8a7060\"/><rect x=\"21\" y=\"8\" width=\"1\" height=\"1\" fill=\"#8a7060\"/><rect x=\"22\" y=\"8\" width=\"1\" height=\"1\" fill=\"#8a7060\"/><rect x=\"23\" y=\"8\" width=\"1\" height=\"1\" fill=\"#6b4535\"/><rect x=\"1\" y=\"9\" width=\"1\" height=\"1\" fill=\"#8a7060\"/><rect x=\"2\" y=\"9\" width=\"1\" height=\"1\" fill=\"#873235\"/><rect x=\"3\" y=\"9\" width=\"1\" height=\"1\" fill=\"#3a1510\"/><rect x=\"4\" y=\"9\" width=\"1\" height=\"1\" fill=\"#3a1510\"/><rect x=\"5\" y=\"9\" width=\"1\" height=\"1\" fill=\"#873235\"/><rect x=\"6\" y=\"9\" width=\"1\" height=\"1\" fill=\"#6b4535\"/><rect x=\"7\" y=\"9\" width=\"1\" height=\"1\" fill=\"#3a1510\"/><rect x=\"8\" y=\"9\" width=\"1\" height=\"1\" fill=\"#3a1510\"/><rect x=\"9\" y=\"9\" width=\"1\" height=\"1\" fill=\"#873235\"/><rect x=\"10\" y=\"9\" width=\"1\" height=\"1\" fill=\"#3a1510\"/><rect x=\"11\" y=\"9\" width=\"1\" height=\"1\" fill=\"#873235\"/><rect x=\"12\" y=\"9\" width=\"1\" height=\"1\" fill=\"#873235\"/><rect x=\"13\" y=\"9\" width=\"1\" height=\"1\" fill=\"#873235\"/><rect x=\"14\" y=\"9\" width=\"1\" height=\"1\" fill=\"#6b4535\"/><rect x=\"15\" y=\"9\" width=\"1\" height=\"1\" fill=\"#8a7060\"/><rect x=\"16\" y=\"9\" width=\"1\" height=\"1\" fill=\"#696969\"/><rect x=\"17\" y=\"9\" width=\"1\" height=\"1\" fill=\"#ffdab0\"/><rect x=\"18\" y=\"9\" width=\"1\" height=\"1\" fill=\"#fcc378\"/><rect x=\"19\" y=\"9\" width=\"1\" height=\"1\" fill=\"#e5a97c\"/><rect x=\"20\" y=\"9\" width=\"1\" height=\"1\" fill=\"#6b4535\"/><rect x=\"21\" y=\"9\" width=\"1\" height=\"1\" fill=\"#e5a97c\"/><rect x=\"22\" y=\"9\" width=\"1\" height=\"1\" fill=\"#ffdab0\"/><rect x=\"23\" y=\"9\" width=\"1\" height=\"1\" fill=\"#ffdab0\"/><rect x=\"24\" y=\"9\" width=\"1\" height=\"1\" fill=\"#696969\"/><rect x=\"1\" y=\"10\" width=\"1\" height=\"1\" fill=\"#ffdab0\"/><rect x=\"2\" y=\"10\" width=\"1\" height=\"1\" fill=\"#6b4535\"/><rect x=\"3\" y=\"10\" width=\"1\" height=\"1\" fill=\"#aa6666\"/><rect x=\"4\" y=\"10\" width=\"1\" height=\"1\" fill=\"#873235\"/><rect x=\"5\" y=\"10\" width=\"1\" height=\"1\" fill=\"#3a1510\"/><rect x=\"6\" y=\"10\" width=\"1\" height=\"1\" fill=\"#3a1510\"/><rect x=\"7\" y=\"10\" width=\"1\" height=\"1\" fill=\"#3a1510\"/><rect x=\"8\" y=\"10\" width=\"1\" height=\"1\" fill=\"#3a1510\"/><rect x=\"9\" y=\"10\" width=\"1\" height=\"1\" fill=\"#0a0000\"/><rect x=\"11\" y=\"10\" width=\"1\" height=\"1\" fill=\"#696969\"/><rect x=\"12\" y=\"10\" width=\"1\" height=\"1\" fill=\"#6b4535\"/><rect x=\"13\" y=\"10\" width=\"1\" height=\"1\" fill=\"#873235\"/><rect x=\"14\" y=\"10\" width=\"1\" height=\"1\" fill=\"#873235\"/><rect x=\"15\" y=\"10\" width=\"1\" height=\"1\" fill=\"#873235\"/><rect x=\"16\" y=\"10\" width=\"1\" height=\"1\" fill=\"#8a7060\"/><rect x=\"17\" y=\"10\" width=\"1\" height=\"1\" fill=\"#e5a97c\"/><rect x=\"18\" y=\"10\" width=\"1\" height=\"1\" fill=\"#aa6666\"/><rect x=\"19\" y=\"10\" width=\"1\" height=\"1\" fill=\"#6b4535\"/><rect x=\"20\" y=\"10\" width=\"1\" height=\"1\" fill=\"#ffdab0\"/><rect x=\"21\" y=\"10\" width=\"1\" height=\"1\" fill=\"#ffdab0\"/><rect x=\"22\" y=\"10\" width=\"1\" height=\"1\" fill=\"#ffdab0\"/><rect x=\"23\" y=\"10\" width=\"1\" height=\"1\" fill=\"#ffdab0\"/><rect x=\"24\" y=\"10\" width=\"1\" height=\"1\" fill=\"#e5a97c\"/><rect x=\"25\" y=\"10\" width=\"1\" height=\"1\" fill=\"#8a7060\"/><rect x=\"2\" y=\"11\" width=\"1\" height=\"1\" fill=\"#ffdab0\"/><rect x=\"3\" y=\"11\" width=\"1\" height=\"1\" fill=\"#3a1510\"/><rect x=\"4\" y=\"11\" width=\"1\" height=\"1\" fill=\"#873235\"/><rect x=\"5\" y=\"11\" width=\"1\" height=\"1\" fill=\"#aa6666\"/><rect x=\"6\" y=\"11\" width=\"1\" height=\"1\" fill=\"#873235\"/><rect x=\"7\" y=\"11\" width=\"1\" height=\"1\" fill=\"#873235\"/><rect x=\"8\" y=\"11\" width=\"1\" height=\"1\" fill=\"#3a1510\"/><rect x=\"13\" y=\"11\" width=\"1\" height=\"1\" fill=\"#8a7060\"/><rect x=\"14\" y=\"11\" width=\"1\" height=\"1\" fill=\"#3a1510\"/><rect x=\"15\" y=\"11\" width=\"1\" height=\"1\" fill=\"#873235\"/><rect x=\"16\" y=\"11\" width=\"1\" height=\"1\" fill=\"#6b4535\"/><rect x=\"17\" y=\"11\" width=\"1\" height=\"1\" fill=\"#3a1510\"/><rect x=\"18\" y=\"11\" width=\"1\" height=\"1\" fill=\"#ffdab0\"/><rect x=\"19\" y=\"11\" width=\"1\" height=\"1\" fill=\"#ffdab0\"/><rect x=\"20\" y=\"11\" width=\"1\" height=\"1\" fill=\"#ffdab0\"/><rect x=\"21\" y=\"11\" width=\"1\" height=\"1\" fill=\"#e5a97c\"/><rect x=\"22\" y=\"11\" width=\"1\" height=\"1\" fill=\"#e5a97c\"/><rect x=\"23\" y=\"11\" width=\"1\" height=\"1\" fill=\"#e5a97c\"/><rect x=\"24\" y=\"11\" width=\"1\" height=\"1\" fill=\"#e5a97c\"/><rect x=\"25\" y=\"11\" width=\"1\" height=\"1\" fill=\"#3a1510\"/><rect x=\"0\" y=\"12\" width=\"1\" height=\"1\" fill=\"#fd5d5b\"/><rect x=\"1\" y=\"12\" width=\"1\" height=\"1\" fill=\"#fcc378\"/><rect x=\"2\" y=\"12\" width=\"1\" height=\"1\" fill=\"#ffee94\"/><rect x=\"5\" y=\"12\" width=\"1\" height=\"1\" fill=\"#0a0000\"/><rect x=\"6\" y=\"12\" width=\"1\" height=\"1\" fill=\"#3a1510\"/><rect x=\"7\" y=\"12\" width=\"1\" height=\"1\" fill=\"#873235\"/><rect x=\"8\" y=\"12\" width=\"1\" height=\"1\" fill=\"#3a1510\"/><rect x=\"14\" y=\"12\" width=\"1\" height=\"1\" fill=\"#8a7060\"/><rect x=\"15\" y=\"12\" width=\"1\" height=\"1\" fill=\"#e5a97c\"/><rect x=\"16\" y=\"12\" width=\"1\" height=\"1\" fill=\"#0a0000\"/><rect x=\"17\" y=\"12\" width=\"1\" height=\"1\" fill=\"#ffdab0\"/><rect x=\"18\" y=\"12\" width=\"1\" height=\"1\" fill=\"#e5a97c\"/><rect x=\"19\" y=\"12\" width=\"1\" height=\"1\" fill=\"#e5a97c\"/><rect x=\"20\" y=\"12\" width=\"1\" height=\"1\" fill=\"#696969\"/><rect x=\"21\" y=\"12\" width=\"1\" height=\"1\" fill=\"#0a0000\"/><rect x=\"22\" y=\"12\" width=\"1\" height=\"1\" fill=\"#0a0000\"/><rect x=\"23\" y=\"12\" width=\"1\" height=\"1\" fill=\"#0a0000\"/><rect x=\"24\" y=\"12\" width=\"1\" height=\"1\" fill=\"#c09068\"/><rect x=\"25\" y=\"12\" width=\"1\" height=\"1\" fill=\"#3a1510\"/><rect x=\"0\" y=\"13\" width=\"1\" height=\"1\" fill=\"#e5a97c\"/><rect x=\"1\" y=\"13\" width=\"1\" height=\"1\" fill=\"#fcc378\"/><rect x=\"2\" y=\"13\" width=\"1\" height=\"1\" fill=\"#ffee94\"/><rect x=\"3\" y=\"13\" width=\"1\" height=\"1\" fill=\"#ffee94\"/><rect x=\"4\" y=\"13\" width=\"1\" height=\"1\" fill=\"#ffee94\"/><rect x=\"14\" y=\"13\" width=\"1\" height=\"1\" fill=\"#8a7060\"/><rect x=\"15\" y=\"13\" width=\"1\" height=\"1\" fill=\"#ffdab0\"/><rect x=\"16\" y=\"13\" width=\"1\" height=\"1\" fill=\"#e5a97c\"/><rect x=\"17\" y=\"13\" width=\"1\" height=\"1\" fill=\"#e5a97c\"/><rect x=\"18\" y=\"13\" width=\"1\" height=\"1\" fill=\"#0a0000\"/><rect x=\"19\" y=\"13\" width=\"1\" height=\"1\" fill=\"#873235\"/><rect x=\"20\" y=\"13\" width=\"1\" height=\"1\" fill=\"#873235\"/><rect x=\"21\" y=\"13\" width=\"1\" height=\"1\" fill=\"#873235\"/><rect x=\"22\" y=\"13\" width=\"1\" height=\"1\" fill=\"#0a0000\"/><rect x=\"23\" y=\"13\" width=\"1\" height=\"1\" fill=\"#e5a97c\"/><rect x=\"24\" y=\"13\" width=\"1\" height=\"1\" fill=\"#e5a97c\"/><rect x=\"25\" y=\"13\" width=\"1\" height=\"1\" fill=\"#3a1510\"/><rect x=\"1\" y=\"14\" width=\"1\" height=\"1\" fill=\"#fd5d5b\"/><rect x=\"2\" y=\"14\" width=\"1\" height=\"1\" fill=\"#fd5d5b\"/><rect x=\"3\" y=\"14\" width=\"1\" height=\"1\" fill=\"#fd5d5b\"/><rect x=\"4\" y=\"14\" width=\"1\" height=\"1\" fill=\"#fcc378\"/><rect x=\"5\" y=\"14\" width=\"1\" height=\"1\" fill=\"#ffee94\"/><rect x=\"6\" y=\"14\" width=\"1\" height=\"1\" fill=\"#ffee94\"/><rect x=\"7\" y=\"14\" width=\"1\" height=\"1\" fill=\"#e5a97c\"/><rect x=\"15\" y=\"14\" width=\"1\" height=\"1\" fill=\"#8a7060\"/><rect x=\"16\" y=\"14\" width=\"1\" height=\"1\" fill=\"#3a1510\"/><rect x=\"17\" y=\"14\" width=\"1\" height=\"1\" fill=\"#e5a97c\"/><rect x=\"18\" y=\"14\" width=\"1\" height=\"1\" fill=\"#e5a97c\"/><rect x=\"19\" y=\"14\" width=\"1\" height=\"1\" fill=\"#3a1510\"/><rect x=\"20\" y=\"14\" width=\"1\" height=\"1\" fill=\"#b87575\"/><rect x=\"21\" y=\"14\" width=\"1\" height=\"1\" fill=\"#aa6666\"/><rect x=\"22\" y=\"14\" width=\"1\" height=\"1\" fill=\"#0a0000\"/><rect x=\"23\" y=\"14\" width=\"1\" height=\"1\" fill=\"#0a0000\"/><rect x=\"24\" y=\"14\" width=\"1\" height=\"1\" fill=\"#e5a97c\"/><rect x=\"25\" y=\"14\" width=\"1\" height=\"1\" fill=\"#8a7060\"/><rect x=\"1\" y=\"15\" width=\"1\" height=\"1\" fill=\"#ffdab0\"/><rect x=\"4\" y=\"15\" width=\"1\" height=\"1\" fill=\"#ffdab0\"/><rect x=\"5\" y=\"15\" width=\"1\" height=\"1\" fill=\"#fcc378\"/><rect x=\"6\" y=\"15\" width=\"1\" height=\"1\" fill=\"#e5a97c\"/><rect x=\"7\" y=\"15\" width=\"1\" height=\"1\" fill=\"#e5a97c\"/><rect x=\"8\" y=\"15\" width=\"1\" height=\"1\" fill=\"#ffdab0\"/><rect x=\"16\" y=\"15\" width=\"1\" height=\"1\" fill=\"#696969\"/><rect x=\"17\" y=\"15\" width=\"1\" height=\"1\" fill=\"#aa6666\"/><rect x=\"18\" y=\"15\" width=\"1\" height=\"1\" fill=\"#aa6666\"/><rect x=\"19\" y=\"15\" width=\"1\" height=\"1\" fill=\"#c09068\"/><rect x=\"20\" y=\"15\" width=\"1\" height=\"1\" fill=\"#b87575\"/><rect x=\"21\" y=\"15\" width=\"1\" height=\"1\" fill=\"#aa6666\"/><rect x=\"22\" y=\"15\" width=\"1\" height=\"1\" fill=\"#e5a97c\"/><rect x=\"23\" y=\"15\" width=\"1\" height=\"1\" fill=\"#aa6666\"/><rect x=\"24\" y=\"15\" width=\"1\" height=\"1\" fill=\"#6b4535\"/><rect x=\"25\" y=\"15\" width=\"1\" height=\"1\" fill=\"#ffe2e2\"/><rect x=\"5\" y=\"16\" width=\"1\" height=\"1\" fill=\"#e5a97c\"/><rect x=\"6\" y=\"16\" width=\"1\" height=\"1\" fill=\"#ffe2e2\"/><rect x=\"7\" y=\"16\" width=\"1\" height=\"1\" fill=\"#ffe2e2\"/><rect x=\"8\" y=\"16\" width=\"1\" height=\"1\" fill=\"#ffdab0\"/><rect x=\"17\" y=\"16\" width=\"1\" height=\"1\" fill=\"#696969\"/><rect x=\"18\" y=\"16\" width=\"1\" height=\"1\" fill=\"#696969\"/><rect x=\"19\" y=\"16\" width=\"1\" height=\"1\" fill=\"#6b4535\"/><rect x=\"20\" y=\"16\" width=\"1\" height=\"1\" fill=\"#6b4535\"/><rect x=\"21\" y=\"16\" width=\"1\" height=\"1\" fill=\"#696969\"/><rect x=\"22\" y=\"16\" width=\"1\" height=\"1\" fill=\"#6b4535\"/><rect x=\"23\" y=\"16\" width=\"1\" height=\"1\" fill=\"#696969\"/><rect x=\"19\" y=\"17\" width=\"1\" height=\"1\" fill=\"#b87575\"/><rect x=\"20\" y=\"17\" width=\"1\" height=\"1\" fill=\"#3a1510\"/><rect x=\"21\" y=\"17\" width=\"1\" height=\"1\" fill=\"#3a1510\"/><rect x=\"22\" y=\"17\" width=\"1\" height=\"1\" fill=\"#696969\"/></svg>Veredicto: herramienta para ensayo barato y rápido, no para validación definitiva. Úsala como primer argumento antes del caro.</div>\n  </div>\n</div>\n\n<div class=\"mku-ficha\"><table class=\"mku-ficha-tabla\"><tbody><tr><th>Qué es</th><td>Motor open source de inteligencia de enjambre que simula miles de agentes IA para predecir el desenlace de escenarios sociales, de mercado o políticos.</td></tr><tr><th>Web oficial</th><td><a href=\"https://mirofish.ai/\" rel=\"noopener\" target=\"_blank\">https://mirofish.ai/</a></td></tr><tr><th>Repositorio</th><td><a href=\"https://github.com/666ghj/mirofish\" rel=\"noopener\" target=\"_blank\">repo</a></td></tr><tr><th>Licencia</th><td>AGPL-3.0</td></tr><tr><th>Precio</th><td>freemium</td></tr><tr><th>Alternativa a</th><td>forecasting manual con hojas de cálculo y focus groups</td></tr><tr><th>Estrellas en GitHub</th><td>73.593</td></tr><tr><th>Año de lanzamiento</th><td>2025</td></tr><tr><th>Quién lo mantiene</th><td>666ghj (persona)</td></tr></tbody></table><p class=\"mku-ficha-fecha\">Revisado el 2026-09-15</p></div><div class=\"mku-caja-roundup\"><p>Esta herramienta forma parte del recopilatorio vivo <a href=\"https://soymarketingultra.com/skills-claude-code-codex-agentes-codigo/\">Skills para Claude Code, Codex y otros agentes de código</a> →</p></div>\n<h2>El problema que resuelve</h2>\n\n<p>MiroFish ataca un hueco que cualquier equipo de marketing conoce: no existe un ensayo general barato para el mercado. Testar una campaña o un lanzamiento con personas reales significa un grupo focal que cuesta miles de euros y tarda semanas, una encuesta con sesgos de autoselección evidentes o, seamos honestos, lanzar y cruzar los dedos.</p>\n\n<p>La propuesta es directa: le das el material (un post de lanzamiento, un nuevo precio, un anuncio), le dices qué quieres saber y <a href=\"https://mirofish.ai/\" target=\"_blank\" rel=\"noopener\">MiroFish</a> genera cientos de personajes IA con perfiles diversos. Los deja reaccionar entre ellos y te devuelve un informe de predicción. Un grupo focal sintético, veinticuatro horas al día, sin moderador y sin pizza.</p>\n\n<p>Por debajo, su motor de simulación corre sobre OASIS (Open Agent Social Interaction Simulations), un proyecto de investigación de CAMEL-AI. No es un proyecto personal con un README bonito: tiene base académica y respaldo corporativo de Shanda Group.</p>\n\n<h2>Cómo se pone en marcha</h2>\n\n<p>MiroFish se despliega desde código fuente (Node.js + Python) o con Docker, y necesita dos claves de API externas para funcionar.</p>\n<figure class=\"wp-block-image size-full mu-diagram\"><img src=\"https://soymarketingultra.com/wp-content/uploads/an-lisis-de-mirofish-lo-bueno-lo-malo-y-para-qui-n-es-diagrama-1.webp\" alt=\"Corte transversal de MiroFish abierto: entrada de contenido, enjambre de agentes, red social y núcleo LLM expuesto; mascota inspeccionando el motor.\" class=\"wp-image-4369\"/></figure>\n<figure class=\"mu-captura\"><img src=\"https://soymarketingultra.com/wp-content/uploads/review-mirofish-simulacion-mercado-agentes-ia-home.png\" alt=\"La web oficial de MiroFish\" loading=\"lazy\" /><figcaption>La web oficial de MiroFish, capturada el 2026-09-15.</figcaption></figure>\n\n\n<p>Para la ruta desde código: clonas el <a href=\"https://github.com/666ghj/mirofish\" target=\"_blank\" rel=\"noopener\">repositorio</a>, copias .env.example a .env y rellenas dos claves obligatorias. La primera, una API de LLM compatible con el formato OpenAI SDK (el proyecto recomienda Qwen-plus de Alibaba a través de Bailian). La segunda, una cuenta de Zep Cloud para la memoria de los agentes, que ofrece cuota gratuita mensual para uso básico. Requisitos: Node.js 18+, Python entre 3.11 y 3.12, y el gestor de paquetes uv.</p>\n\n<p>Después: <code>npm run setup:all</code> instala todo y <code>npm run dev</code> levanta los servicios. Frontend en localhost:3000, API en localhost:5001. Con Docker se reduce a copiar el .env y <code>docker compose up -d</code>. Si no quieres instalar nada todavía, hay una <a href=\"https://666ghj.github.io/mirofish-demo/\" target=\"_blank\" rel=\"noopener\">demo interactiva</a> para experimentar con un escenario prediseñado.</p>\n\n<div class=\"mu-prompt-box\">\n  <div class=\"mu-prompt-bar\">\n    <span class=\"mu-prompt-bar__icon\">▶</span>\n    <span class=\"mu-prompt-bar__title\">¿Quieres probarlo tú mismo?</span>\n  </div>\n  <div class=\"mu-prompt-body\">\n    <p>Copia esto y pégalo en <strong>Claude Code</strong>, <strong>Cursor</strong> o tu asistente de código favorito:</p>\n  </div>\n  <div class=\"mu-prompt-code-wrap\">\n    <pre class=\"mu-prompt-code\">Clona <span class=\"hl-url\">https://github.com/666ghj/mirofish</span>, configura el .env con mi clave de API de LLM y una cuenta gratuita de Zep Cloud, instala dependencias con npm run setup:all y lanza una simulación de prueba con 20 agentes que reaccionen a este texto de lanzamiento: [pega aquí tu texto].</pre>\n  </div>\n  <div class=\"mu-prompt-foot\">\n    <p><strong>No necesitas saber programar.</strong> El asistente se encarga de la instalación, la configuración y las pruebas.</p>\n  </div>\n</div>\n\n<h2>Usándola en marketing real</h2>\n\n<p>¿Y esto para qué sirve si trabajas en agencia o como freelance? El escenario típico: un cliente quiere \"validar el mensaje antes de invertir en paid media\". Traducción: tres semanas de encuestas, un estudio de mercado externo o tu intuición disfrazada de estrategia.</p>\n<figure class=\"mu-captura\"><img src=\"https://soymarketingultra.com/wp-content/uploads/review-mirofish-simulacion-mercado-agentes-ia-app_video.png\" alt=\"MiroFish en acción\" loading=\"lazy\" /><figcaption>MiroFish en acción - fotograma del <a href=\"https://www.youtube.com/watch?v=QmdCkaTM1P4\" rel=\"noopener\" target=\"_blank\">vídeo de Tech With Tim</a>.</figcaption></figure>\n\n<figure class=\"mu-captura\"><img src=\"https://soymarketingultra.com/wp-content/uploads/review-mirofish-simulacion-mercado-agentes-ia-app.png\" alt=\"MiroFish en funcionamiento\" loading=\"lazy\" /><figcaption>MiroFish en funcionamiento (captura del 2026-09-15).</figcaption></figure>\n\n\n<p>Con MiroFish podrías alimentar la simulación con el borrador de la página de destino, el precio propuesto y el texto del anuncio. Generar 500 agentes con perfiles variados y ver qué sale. Ya hablamos de <a href=\"https://soymarketingultra.com/agentes-ia-marketing-campanas/\">agentes IA aplicados al marketing</a>: lo de MiroFish va un paso más allá, porque simula un comportamiento social completo.</p>\n\n<p>Mi lectura: lo útil no es creerte la simulación al pie de la letra. Son los ángulos que no habías visto. Si 300 de tus 500 agentes reaccionan mal al precio pero no al producto, eso es una señal. No una verdad: una señal. El que confunda ambas cosas tiene un problema mayor que el de elegir herramienta.</p>\n\n<h2>Lo que no te cuentan</h2>\n\n<p>Los agentes de MiroFish son prompts de LLM, no personas simuladas con cognición real. La \"opinión\" de cada personaje es lo que un modelo de lenguaje predice que diría alguien con ese perfil. Esos perfiles no han vivido nada. Lo que te devuelven es un modelo de lenguaje prediciendo qué palabras van después de otras. SOLO eso. Y eso tiene un techo. Conócelo antes de tomar decisiones con lo que te devuelva.</p>\n\n<p>El coste: MiroFish es gratuito, pero cada simulación consume tokens de la API que configures. Una simulación larga con cientos de agentes puede disparar la factura. El propio README recomienda empezar con menos de 40 rondas.</p>\n\n<p>La instalación no es trivial. Dos claves de API, un entorno Python específico (3.11-3.12, no vale otra versión), Node.js y uv. Para un perfil de marketing sin equipo técnico, esta barrera no es menor.</p>\n\n<p>Y la licencia. AGPL-3.0 obliga a publicar con la misma licencia cualquier modificación que distribuyas. Si una agencia quiere integrar MiroFish en un producto propio, revisa las implicaciones legales antes de montar nada.</p>\n\n<h2>Qué dice la gente</h2>\n\n<p>En r/MiroFish, un usuario abre el debate preguntando cuál es la barrera real para usar la herramienta y pone sobre la mesa las sospechosas: complejidad de la configuración, huecos en la documentación, diseño de prompts y no saber si lo que sale tiene calidad real. El camino entre \"la instalo\" y \"me da algo útil\" es más largo de lo que el README sugiere.</p>\n<blockquote class=\"mku-social-proof\"><p>\"For most people I assume it is one of these: setup complexity cost unclear use cases documentation gaps prompt design not knowing how to evaluate output quality What is the real blocker for you right now? Would be useful to see whether the biggest problem is technical, conceptual\" <a href=\"https://www.reddit.com/r/MiroFish/comments/1rywzkl/what_is_the_biggest_barrier_to_using_mirofish/\" rel=\"noopener\" target=\"_blank\">srch4aheartofgold en reddit</a></p></blockquote>\n\n<blockquote class=\"mku-social-proof\"><p>\"TL;DR: MiroFish spawns AI agents to predict things. Cool idea, but the agents hallucinate and they make up plausible justifications with zero evidence checking. I built Brain in the Fish , a Rust MCP server that fixes this with a Spiking Neural Network verification layer that mak\" <a href=\"https://www.reddit.com/r/SideProject/comments/1s1d169/i_built_the_brain_that_mirofish_was_missing_be/\" rel=\"noopener\" target=\"_blank\">Successful-Farm5339 en reddit</a></p></blockquote>\n\n<blockquote class=\"mku-social-proof\"><p>\"TL;DR: MiroFish spawns AI agents to predict things. Cool idea, but the agents hallucinate and they make up plausible justifications with zero evidence checking. I built Brain in the Fish , a Rust MCP server that fixes this with a Spiking Neural Network verification layer that mak\" <a href=\"https://www.reddit.com/r/VibeCodersNest/comments/1s1zimc/a_brain_for_mirofish/\" rel=\"noopener\" target=\"_blank\">Successful-Farm5339 en reddit</a></p></blockquote>\n\n\n<p>En r/SideProject, un desarrollador construyó un proyecto entero (\"Brain in the Fish\") para resolver lo que considera el problema fundamental de MiroFish: que los agentes \"fabrican justificaciones plausibles sin verificación de evidencia\". Que alguien monte una herramienta entera para parchear el agujero central de otra ya te dice todo sobre lo gordo de esa limitación.</p>\n\n<h2>Alternativas</h2>\n\n<p>MiroFish compite con lo de toda la vida: grupos focales presenciales, encuestas cuantitativas y hojas de cálculo con modelos de previsión. La simulación con IA gana en velocidad y coste. Lo otro gana en algo que no se puede fabricar: personas reales con opiniones reales.</p>\n\n<p>A día de hoy no hay nada de código abierto con la misma tracción. Si buscas validación de verdad, las encuestas online siguen siendo lo más fiable y accesible. MiroFish no las reemplaza: las precede como primer filtro barato.</p>\n\n<h2>Veredicto</h2>\n\n<p>La idea de MiroFish tiene sentido. La ejecución todavía cojea. La promesa de simular miles de clientes antes de lanzar suena de maravilla, pero lo que estás simulando es lo que un LLM cree que esos clientes pensarían. No es lo mismo.</p>\n\n<p>¿Merece la pena probarlo? Si tienes el perfil técnico para montarlo y la disciplina de no confundir una simulación con una validación, sí. Tiene todo el sentido como primer filtro barato antes de soltar la pasta gorda. Pero que nadie confunda esto con hablar con personas reales, porque no se le acerca.</p>\n<script type=\"application/ld+json\" data-mku-schema=\"review\">{\"@context\":\"https://schema.org\",\"@graph\":[{\"@type\":\"SoftwareApplication\",\"name\":\"MiroFish\",\"applicationCategory\":\"BusinessApplication\",\"url\":\"https://mirofish.ai/\",\"license\":\"AGPL-3.0\"}]}</script>",
 "markdown_url": "https://soymarketingultra.com/mirofish-simulacion-mercado-agentes-ia.md"
}