← all repositories
aaronjmars/MiroShark

Simulate Twitter mobs and market panics for the price of a coffee

MiroShark spawns hundreds of grounded AI agents that post, argue, and trade through your scenario hour by hour.

1.2k stars Python AgentsDomain Apps
MiroShark
Velocity · 7d
+16
★ / day
Trend
steady
star history

What it does Feed MiroShark a press release, policy draft, or half-baked “what if” and it builds a world around it. Hundreds of agents with demographic seeds, web-enriched backstories, and graph-modeled relationships then react hour by hour across simulated Twitter, Reddit, and a prediction market. You can chat with any agent, inject breaking news mid-run, fork the timeline, or pull a Substack-style report citing actual posts and trades.

The interesting bit The grounding pipeline is the quietly obsessive part: NER, embedding, entity resolution, contradiction checks, temporal edges, then retrieval that fuses vector search, BM25, and BFS graph traversal. Agents aren’t just LLM prompts with names; they’re anchored in a Neo4j graph that remembers who they argued with and when.

Key highlights

  • Counterfactual branching: fork a live simulation and inject events (“CEO resigns in round 24”)
  • Director mode: drop breaking news into the current timeline without branching
  • Per-agent MCP tools: personas can call real web search and APIs mid-simulation
  • On-chain citation: OriginTrail DKG anchoring plus WaybackClaw archive for finished sims
  • Cheap first run: ~$1 and ~10 minutes with one OpenRouter key, or run local via Ollama

Caveats

  • Windows setup is awkward: Neo4j Desktop in native Windows, then launcher from WSL2 or Git Bash (or just use WSL2 for everything)
  • The same API key gets pasted into five separate env vars, which feels like a placeholder waiting for a proper key router
  • README claims 40+ features but the deep dives are in separate docs; you’ll need to hunt for specifics

Verdict Worth a spin if you model information cascades, test messaging before it hits real humans, or just want to watch synthetic crowds argue. Skip it if you need rigorous forecasting — this is simulation theater, not a crystal ball.

heatdrop uses Google Analytics to see which pages get read — nothing else. Your call. How we handle data.