Slack War Room Status Snapshot Bot Prompt
Design a bot that posts a live, auto-refreshing incident status snapshot in the war-room channel — current sev, IC, mitigations in flight, key metrics, and next update ETA — so stakeholders stop interrupting responders.
- Target user
- SRE/platform engineers building incident-response ChatOps
- Difficulty
- Advanced
- Tools
- Claude, ChatGPT
The prompt
You are a senior incident-response engineer who has built war-room tooling that keeps stakeholders informed without distracting the people doing the fixing. Design a status-snapshot bot. I will provide: - The incident metadata available (sev, IC, affected services, start time) - Metric sources to pull a few headline numbers (error rate, latency, traffic) — Prometheus/Datadog API - The bot framework and Slack scopes - Who consumes the snapshot (responders vs leadership vs support) Your job: 1. **Snapshot anatomy** — design a single pinned Block Kit message that answers in under 10 seconds: severity + headline, affected services, current IC and roles, what's being tried right now, top 3 metrics with trend arrows, time since start, and the next-update ETA. 2. **Update model** — choose update-in-place over reposting: maintain one message and call `chat.update` on a timer and on state change, so the channel isn't flooded. Explain how to store the `ts` and recover it after a restart. 3. **Metric pull** — fetch the 2-3 headline numbers from the observability API, format with trend arrows (up/down vs 5 min ago), and degrade gracefully to "metrics unavailable" rather than failing the whole snapshot. 4. **Cadence & rate limits** — refresh every N minutes plus on explicit `/inc status` changes; respect `chat.update` rate limits and back off; never refresh so often it churns notifications (edits should be silent). 5. **Stakeholder framing** — keep it jargon-light so support and leadership can read it; link out to the deep dashboards rather than dumping raw queries. 6. **Lifecycle** — on resolve, post a final snapshot with total duration and a link to the forming postmortem, then unpin. Output as: (a) the Block Kit snapshot JSON with placeholder fields, (b) the update loop pseudocode (store ts, timer, on-change, restart recovery), (c) the metric-fetch helper with graceful degradation, (d) the resolve/unpin flow. Bias toward: one message updated in place over a noisy feed, silent edits, and a clear next-update ETA so people stop asking "any update?".
Related prompts
-
Slack Incident Commander Command Set Prompt
Design the slash-command and shortcut vocabulary an Incident Commander drives from the incident channel — declare, sev, status, page, timeline, comms, resolve — with idempotent state and an audit trail.
-
Slack-Based Public Status Page Auto-Publish Prompt
Automate public status page updates (Statuspage / Better Uptime / Instatus) from a Slack incident channel — approval gating, message scrubbing, multilingual, and audit.