What is MiroFish?

MiroFish is an open-source multi-agent simulation engine, published on GitHub by 666ghj under the AGPL-3.0 licence. You give it seed material, such as a report, a news story, a policy draft or a novel, and describe in plain language what you want to explore. It turns the material into a knowledge graph, creates AI agents with their own personas and memory, lets them post, comment and react to each other on two simulated social platforms over a series of rounds, and then writes a report on what happened. It is a rehearsal, not a forecast.

Where MiroFish came from

MiroFish is developed in the open on GitHub, in the 666ghj/MiroFish repository, under the GNU AGPL-3.0 licence. Its README says the project has received strategic support and incubation from Shanda Group, and that its simulation engine is powered by OASIS (Open Agent Social Interaction Simulations), an open-source framework from the CAMEL-AI team. The project calls itself a simple and universal swarm intelligence engine. Its own demonstrations include a simulation seeded with a public-opinion report about Wuhan University, and an exploration of the lost ending of the Chinese novel Dream of the Red Chamber, seeded with its first 80 chapters.

How MiroFish works

The upstream README describes five steps. 1. Graph building: MiroFish extracts the people and organisations your material mentions, including media outlets and public bodies, and the relationships between them, and builds a knowledge graph in Zep Cloud that serves as the simulation's memory. 2. Environment setup: the relevant entities become agents, each with a generated persona that the README describes as an independent personality, long-term memory and behavioural logic; groups and organisations can be agents as well as individuals. 3. Simulation: the agents act on two simulated social platforms at once, one modelled on Twitter and one on Reddit, run by OASIS. Round by round they post, comment, like, repost, follow or do nothing, and which agents act in a round depends on the simulated time and the configuration. Their activity is written back into the graph memory as the simulation runs. 4. Report generation: a report agent plans an outline, then writes the report section by section, querying the simulated world with retrieval tools. 5. Deep interaction: once the simulation ends, you can question any agent in the simulated world and ask the report agent follow-up questions.

What swarm intelligence means here

The README describes MiroFish as capturing the collective emergence triggered by individual interactions. In our reading, that means the useful output is not what any single agent says but the patterns that appear when many simulated participants react to the same material and to each other: which objections spread, which arguments gain support, and where groups divide.

What is a synthetic audience?

A synthetic audience is the group of simulated participants that reacts to your material: generated personas, each with a background, a situation and concerns, standing in for the people you want to understand. MiroFish.co.uk uses the term for the agents in a study; the upstream project speaks of agents in a simulated world. Either way, you watch how plausible stand-ins react, argue and change their minds over several rounds instead of asking real people. That makes it different from polling or research with real respondents: nobody is recruited, the participants are not sampled from a population, and there is no way to put a margin of error on the results. What a synthetic audience can give you is directional: the objections people like these might raise, the questions your material leaves open, and how different groups might read the same words. The methodology page explains how a study builds and reads one.

What can you use MiroFish for?

The upstream README describes MiroFish as a rehearsal space for decision-makers, where policies and public relations can be tested before they are used, and as a creative sandbox for exploring scenarios, such as how a story might end. On MiroFish.co.uk the engine does one job: stress-testing a decision before it reaches real people. Typical material is a campaign or message, a pricing change, a product launch and its positioning, or a public statement, and each has a use-case page with an example study.

What MiroFish cannot tell you

The project's tagline speaks of predicting anything. No simulation can do that, and it helps to be clear about why. It is synthetic: the participants are generated by a language model from your material and descriptions, so they are not real people, not a representative sample, and the results are not statistics about any population. It depends on its inputs: the material, how you describe the audience, which language model runs the agents and how many rounds you allow all shape the outcome, and two runs on the same material can differ. It inherits the model's blind spots: personas can be stereotyped, and a language model's assumptions about a group are not evidence about that group. And it is not a forecast: a simulation shows what could plausibly happen under the assumptions you set, not what will happen. Used well, it helps you stress-test assumptions, find objections early and decide what to ask real people. The decision, and the judgment behind it, stay with you.

What do you need to run MiroFish?

To run the upstream project yourself you need Node.js 18 or later, Python 3.11 or 3.12 and uv, or Docker; an API key for a language model in OpenAI SDK format; and a Zep Cloud key for the graph memory. The README warns that consumption is high and suggests starting with fewer than 40 rounds. A community fork, MiroFish-Offline, swaps the hosted services for local ones and needs considerably more hardware. The guide Self-hosted vs hosted MiroFish sets out what each route involves.

Can you use MiroFish online?

Yes, through a hosted service. MiroFish.co.uk is an independent hosted service built on the open-source MiroFish project. It is operated by MSECO Ltd, not by the upstream authors, and its job fits in one line: stress-test a decision before you put it into the real world. You give it the material and describe the audience, a synthetic audience discusses it over five rounds in a Quick Study or ten in a Standard Study, and you read the report in your browser with nothing to install. The complete source code of the running service is published under the AGPL-3.0 at mirofish.co.uk/source, and the MiroFish online page explains what the hosted service does.

Is MiroFish open source?

Yes. It is published on GitHub (666ghj/MiroFish) under the GNU AGPL-3.0, which lets anyone run, study, modify and share it. If you run a modified version as a service over a network, the licence requires you to offer its source to the people who use it.

Is MiroFish free?

The software is free to download and use under the AGPL-3.0. Running it is not: the language-model API you connect usually charges for usage, Zep Cloud is free only up to its monthly quota, and the README warns that consumption is high. Hosted services charge for running it for you; on MiroFish.co.uk the first Quick Study is free.

Can MiroFish predict the future?

No simulation can promise that. The tagline speaks of predicting anything, but what MiroFish produces is a simulated discussion under the assumptions you give it. Treat the result as directional evidence to question and test, not as a forecast of what real people will do.

Can I run MiroFish locally?

Yes. The upstream code runs on your own machine, but it still calls a hosted language model and Zep Cloud. The community fork MiroFish-Offline replaces both with local services and needs considerably more hardware.

Can I use MiroFish online?

Yes, through a hosted service. MiroFish.co.uk is one: an independent hosted service built on the open-source MiroFish project.

Is MiroFish.co.uk the official MiroFish project?

No. It is an independent hosted service built on the open-source MiroFish project. The upstream project is on GitHub; the source of this service is at mirofish.co.uk/source.

Sources

Use MiroFish online