Inspiration Urgent work already happens in Slack. During outages, disaster response, public health coordination, nonprofit logistics, and customer escalations, people post critical information across many channels. The problem is not lack of information. The problem is that the information is fragmented, unowned, and hard to turn into action quickly.
CrisisOps Agent was inspired by the idea that Slack can become more than a communication layer. With the Slack Assistant thread API, Real-Time Search, and MCP integrations, Slack can become the command surface for high-stakes work.
What it does CrisisOps Agent is a Slack-native AI command center for moments when work becomes urgent. It:
Detects weak signals with Chaos Radar — AI-powered incident detection using Groq LLaMA-3.3-70b before anyone calls the incident Opens a structured incident command workflow in Slack with severity picker, commander assignment, and auto-generated task list Searches real-time Slack context via the Slack Real-Time Search API for urgent needs, blockers, owners, and evidence Generates AI-powered situation briefings that cite real Slack messages as evidence — no hallucinations Matches resource needs to inventory through MCP tool calls (search_inventory, get_location_eta, reserve_resource) Records key decisions with owner, risk, review time, and evidence in a structured Decision Ledger Drafts external updates that require human approval before anything is sent Generates postmortem reports from the incident evidence trail as rich Block Kit cards Provides a natural DM conversation interface via the Slack Assistant thread API with suggested prompts and typing status How we built it CrisisOps is a TypeScript/Node.js Slack app using Slack Bolt v4 and Socket Mode.
The architecture has three core layers:
Slack layer: Slack Assistant thread API, /crisisops slash commands, app mentions, interactive Block Kit cards, App Home live dashboard, and incident modals Agent layer: intent routing, AI-powered Chaos Radar, context retrieval via Slack RTS, Groq-powered briefing generation, MCP resource matching, decision ledger, human approval manager, and AI postmortem generation Integration layer: live Slack Real-Time Search API, MCP-compatible stdio server with 7 tool calls (inventory, ticketing, on-call, customer impact, location ETA, status updates), and full audit logging All AI outputs from Groq LLaMA-3.3-70b are grounded in real Slack evidence and citation-linked. Nothing is sent externally without human approval. Every tool call is logged in the audit trail.
The demo uses seeded Slack-like messages as a fallback, but when a Slack user token is configured, the agent searches live Slack workspace messages via the Real-Time Search API.
Challenges we ran into The biggest challenge was balancing a reliable demo with a realistic enterprise architecture. We solved it with clean swap points and graceful fallbacks throughout — the Groq AI falls back to rule-based output, the RTS falls back to demo data, and the MCP gateway can swap in real connectors without changing agent code.
The second challenge was making the Slack experience feel like a real product rather than a chatbot. Using the Assistant thread API with setSuggestedPrompts, setTitle, and setStatus was key to achieving that.
Accomplishments that we're proud of CrisisOps feels like a real Slack-native product. It uses all three hackathon technologies together: the Slack Assistant thread API, live Real-Time Search, and a real MCP stdio server. It proactively detects incidents, cites evidence, calls tools, records decisions with an audit trail, requires human approval before external communication, and generates postmortems — all inside Slack, in under 3 minutes.
What we learned The most powerful Slack agents are not generic assistants. They are operational systems that understand where work happens, respect human approval, and coordinate across tools. Social impact and enterprise value are not opposites — the same agent that helps a company manage an outage helps a nonprofit coordinate disaster relief.
What's next for CrisisOps Agent Add real connectors: Jira, PagerDuty, Salesforce, Zendesk, Google Maps, Statuspage, Google Sheets, Airtable Add admin controls for retention, permissions, and connector allowlists Add an incident simulation library for team training Submit to the Slack Marketplace for incident response, nonprofit operations, and public-sector teams Built With TypeScript · Node.js · Express · Slack Bolt v4 · Slack Socket Mode · Slack Assistant Thread API · Slack Real-Time Search API · Slack Block Kit · Slack App Home · Groq LLaMA-3.3-70b · MCP stdio server · MCP gateway (7 tools) · Zod · Vitest · Postgres-ready schema · SVG architecture diagram · GitHub
Built With
- express.js
- mcp
- node.js
- schema
- slack
- typescript
- vitest
- zod
Log in or sign up for Devpost to join the conversation.