The idea
A web app that connects to PagerDuty (or Opsgenie), a team's Slack workspace, and Jira, then pulls everything tied to an on-call shift — pages, incident channels, resolved/open tickets, deploy mentions — into one timeline. At shift end it drafts a structured handoff note: what fired, what's still open, what needs watching, and links back to the source threads. The outgoing engineer edits and confirms; the incoming one gets a single page instead of scrollback archaeology.
Why build this
On-call handoffs are usually a Slack message typed from memory five minutes before someone logs off, or nothing at all. Context gets lost — a flaky alert that needs a follow-up ticket, a mitigation that's a band-aid, a customer who's still waiting on an update. PagerDuty, Slack, and Jira all have the raw data already; nobody aggregates it. Teams that do write handoffs by hand say it's the first process step to die under deadline pressure, which is exactly when it matters most.
Stack sketch
- Frontend: Next.js, shadcn/ui for the shift timeline and note editor
- Backend: Node/TypeScript API routes, or a small Fastify service if decoupled from the frontend
- Data sources: PagerDuty REST API (incidents, on-call schedule), Slack Web API (channel history, thread replies via bot token), Jira REST API (issues linked or mentioned during the window)
- LLM: Claude API to summarize incident threads and draft the handoff note from structured events; keep the timeline itself deterministic, not model-generated
- Storage: Postgres for shift records, generated notes, and edit history
- Delivery: post the finished note to a designated Slack channel or DM the incoming on-call, plus a web page permalink
Scope for v1
- Single PagerDuty schedule + one Slack workspace + one Jira project, OAuth-connected per team
- Automatic shift-boundary detection from the PagerDuty schedule (no manual "start/end shift" step)
- Draft note generated at shift end, editable before publish, one-click post to Slack
- Sections: incidents fired, still-open items, mitigations that need follow-up, notable non-paging Slack mentions
- Out of scope for v1: multi-team rollups, Opsgenie/VictorOps support, mobile app, historical trend dashboards
Where it could go
Next step is a searchable archive of past handoffs so a new hire can read "what's been flaky on this service for the last month" instead of asking around. After that, pattern detection across shifts — flagging an alert that's been silently re-fired and dismissed five shifts running is a much easier sell once the data's already being collected. A second expansion path is turning confirmed follow-ups into tracked tickets automatically instead of leaving them as prose in a note that nobody revisits.
Watch out for
Incident channels and postmortem threads often contain customer names, credentials pasted during debugging, or other sensitive text — treat ingestion and LLM summarization as handling regulated data by default, and give teams a way to redact or exclude channels before anything gets fed to a model.