Inspiration

I served in the Navy. One of my roles was damage control: keeping the ship alive when fire and flooding hit at the same time.

Let me tell you what that actually feels like.

You are in a steel passageway.

The lights are strobing.

Smoke is filling the space faster than you can breathe through it, water is rising past your boots, and a general alarm is screaming so loud you cannot hear the person next to you.

Somewhere on that ship is a sailor's son, a sister, somebody's whole world, and the only thing standing between them and the sea is whether the people on the bridge can understand what is happening fast enough to act.

And here is the brutal truth I lived: the enemy was never a lack of information. It was the flood of it. Bilge alarms, thermal sensors, smoke detectors, and frantic radio reports all screaming at once, while we tracked the fight for a billion-dollar warship and the lives aboard it on a grease pencil and a plexiglass board.

One shared board. One fragile source of truth. Every update erased the last one. On a calm day with a clean log, roughly 1% of hand-entered data is wrong. Now add smoke, heat, and adrenaline. The studies are blunt about where this leads:

$$P(\text{accident} \mid \text{human error}) \approx 0.75\text{ to }0.96 \quad \text{(Allianz AGCS Safety & Shipping Review)}$$

Three out of four marine disasters trace back not to broken steel, but to a human being who was handed too much noise and too little time.

I left the Navy. I never left that feeling. CrisisRoom is the second brain I wish we'd had on the deck.

What it does

CrisisRoom turns crisis chaos into one clear, verified plan by running a live incident through a swarm of specialist AI agents that think together, the way a trained damage-control team does:

  • Hazard Intelligence: ranks flood, fire, and smoke severity and localizes each threat to a specific compartment.
  • Damage Control: assesses watertight integrity, bilge pumping capacity, fire suppression readiness, and structural risk, then recommends containment actions.
  • Response Coordination: turns confirmed hazards and containment status into prioritized, sequenced response tasks with owner roles.
  • Orchestrator: threads each agent's output into the next and synthesizes a single bridge brief a human can act on in seconds.

Integrations

How we built it

  • Frontend and backend: a Next.js dashboard and a typed FastAPI service over REST and WebSocket. It runs mock-first with zero API keys, then lights up as each integration connects. A judge can clone it and watch it work in one command.
  • Agents: four Fetch.ai uAgents in a single Bureau, discoverable on Agentverse and collaborating in-process, with ASI:One as the reasoning LLM behind every one of them.
  • Memory: Redis as the primary store, not a cache, in three tiers: Redis Iris for long-term semantic memory, RedisVL vector search (HNSW, cosine) for the live session, and a lexical fallback. Streams carry real-time coordination events.
  • Durable planning: Orkes AgentSpan runs risk_assessor then action_planner as chained, durable executions, so the highest-stakes part of the brief is orchestrated and observable.
  • Observability and safety: every LLM call is traced to Arize, and an LLM-as-judge scores each output on safety_policy and groundedness, writing the verdict back onto the exact span.
  • CRISP: a reversible, query-aware compression framework we built and benchmarked to shrink crisis context while protecting the numbers and entities that decide whether someone lives.

Challenges we ran into

  • Cross-process uAgent messaging needs the Fetch.ai Almanac network, which was unreachable for us. We solved it with an in-process Bureau that still registers on Agentverse for discoverability.
  • Early prompts occasionally implied an alert "had been sent." In a real crisis, that single false sentence kills people. Our Arize safety evaluator caught it, and we drove the failure rate down until it was gone.
  • Failed durable executions leaked raw error text into the brief. We fixed the parser to fail safe and fall back cleanly, because a wrong answer dressed as a confident one is the most dangerous output a crisis tool can produce.
  • We made Redis, ASI:One, RediSearch, and voice all optional with deterministic fallbacks, because the moment you need this system most is the moment the network is on fire too.

Accomplishments that we're proud of

  • A genuinely collaborating agent swarm, not four disconnected prompts wearing a trench coat.
  • Redis used as an AI-native brain, with Streams and vector search, holding sub-20ms latency at scale.
  • Safety we can actually measure, through an LLM-as-judge wired onto live traces, instead of hoping the model behaved.
  • A system that runs anywhere, with zero keys, in one command, so the people who need it are never blocked by a missing credential.
  • Most of all: we took the worst day of my old job and built something so the next damage controlman has a fighting chance the rest of us did not.

What we learned

  • Observability is a safety feature, not an afterthought. If you cannot measure whether your AI is safe, it is not.
  • Redis is an AI-native database, not just a cache.
  • Human-in-the-loop is not a limitation. It is the product. Trust is the feature people are actually buying.
  • Build the fallbacks first. In a real crisis, the happy path is the first thing to burn.

Built With

Share this project:

Updates