From 3335ecaba6253911fe9e7d71057915d2c286af10 Mon Sep 17 00:00:00 2001 From: Maximilian Kaske <56969857+mxkaske@users.noreply.github.com> Date: Wed, 7 Oct 2026 09:05:59 +0200 Subject: [PATCH] chore: incident response core content (#2862) * chore: incident response core content * fix: format * fix: --- README.md | 8 ++++---- apps/web/src/app/(docs)/docs/[[...slug]]/page.tsx | 4 +--- apps/web/src/content/docs.config.ts | 6 ++++-- apps/web/src/content/llms-context.ts | 4 +++- apps/web/src/content/pages/home.mdx | 12 ++++++------ apps/web/src/lib/metadata/shared-metadata.ts | 7 ++++--- apps/web/src/lib/metadata/structured-data.ts | 7 ++++--- 7 files changed, 26 insertions(+), 22 deletions(-) diff --git a/README.md b/README.md index e7eac9c8..8362d6d1 100644 --- a/README.md +++ b/README.md @@ -2,7 +2,7 @@

openstatus

-

The open-source status page and uptime monitoring platform. +

The open-source status page, incident response and uptime monitoring platform.
Learn more »
@@ -26,7 +26,7 @@ ## About openstatus -openstatus is the open-source **uptime monitoring** and **status page** platform built for **infra as code**. Declare monitors and status pages in code. Let your agents update them. +openstatus is the open-source **status page**, **incident response** and **uptime monitoring** platform built for **infra as code**. Run incidents from Slack or your AI agent. Declare monitors and status pages in code. Let your agents update them. Monitors, status pages, and notification channels are declared in YAML or Terraform, applied from the CLI or CI, and operable from Claude, ChatGPT, or Cursor over MCP. Available as a managed service or self-hosted. @@ -42,7 +42,7 @@ Monitors, status pages, and notification channels are declared in YAML or Terraf - **28 global regions** checking in parallel across 3 cloud providers - **Flat pricing, unlimited members** — no per-seat or per-subscriber charges - **Open source & self-hostable** — AGPL-3.0, private-locations run in a single 8.5MB Docker image -- **Incident management** — declare and run incidents from the dashboard or Slack, with severity, commander, and a full timeline +- **Incident response** — declare and run incidents from the dashboard or Slack, with severity, commander, and a full timeline - **Incident communication** — subscriber notifications via email, RSS, and webhooks ### Status pages @@ -53,7 +53,7 @@ Beautiful, customizable status pages with custom domains, password protection, m Monitor your servers, websites and APIs from 28 regions across multiple cloud providers globally. Get notified via Slack, Discord, PagerDuty, email, and more when your services are down or slow. -### Incident management +### Incident response Declare, coordinate, and resolve incidents from the dashboard or right inside Slack. diff --git a/apps/web/src/app/(docs)/docs/[[...slug]]/page.tsx b/apps/web/src/app/(docs)/docs/[[...slug]]/page.tsx index 83bf051f..3d3b8200 100644 --- a/apps/web/src/app/(docs)/docs/[[...slug]]/page.tsx +++ b/apps/web/src/app/(docs)/docs/[[...slug]]/page.tsx @@ -18,6 +18,7 @@ import { DocsFeedback } from "../../../../content/docs-feedback"; import { DocsSubNav } from "../../../../content/docs-sub-nav"; import { TableOfContents } from "../../../../content/docs-toc"; import { + DOCS_DESCRIPTION, type DocsNavNode, docsNavTree, findDocsNode, @@ -48,9 +49,6 @@ export const dynamicParams = false; const EDIT_BASE = "https://github.com/openstatusHQ/openstatus/edit/main/apps/web/src/content/pages/docs"; -const DOCS_DESCRIPTION = - "Infra as code for uptime monitoring and status pages. Let your agents update them. Learn how to monitor your endpoints, create your status page, configure notifications, and drive it all from the CLI, Terraform, API, or MCP."; - type Params = { slug?: string[] }; // Hub pages (the /docs root and section landings) have no backing MDX file. diff --git a/apps/web/src/content/docs.config.ts b/apps/web/src/content/docs.config.ts index 1a374f60..c5f33eef 100644 --- a/apps/web/src/content/docs.config.ts +++ b/apps/web/src/content/docs.config.ts @@ -333,6 +333,9 @@ export function sectionForParentSlug( return docsNav.find((s) => sectionParentSlug(s) === parentSlug); } +export const DOCS_DESCRIPTION = + "Infra as code for uptime monitoring, status pages and incident response. Let your agents update them. Learn how to monitor your endpoints, create your status page, run incidents from Slack, configure notifications, and drive it all from the CLI, Terraform, API, or MCP."; + // Parent/section landing slugs (concept, tutorial, …) for static generation. export function getParentSlugs(): string[] { return docsNav.map(sectionParentSlug).filter((s): s is string => Boolean(s)); @@ -355,8 +358,7 @@ export function docsNavTree(): DocsNavNode { return { label: "openstatus documentation", href: "/docs", - description: - "Infra as code for uptime monitoring and status pages. Let your agents update them. Learn how to monitor your endpoints, create your status page, configure notifications, and drive it all from the CLI, Terraform, API, or MCP.", + description: DOCS_DESCRIPTION, children: docsNav.map((section) => { const parent = sectionParentSlug(section); return { diff --git a/apps/web/src/content/llms-context.ts b/apps/web/src/content/llms-context.ts index 94399e28..67a858a3 100644 --- a/apps/web/src/content/llms-context.ts +++ b/apps/web/src/content/llms-context.ts @@ -3,10 +3,11 @@ // Keep numbers in sync with src/content/pages/unrelated/pricing.mdx. export const PRODUCT_SUMMARY = - "Openstatus is an open-source uptime monitoring and status page platform built for infra as code: monitors, status pages, and notification channels are declared in YAML or Terraform and driven from a CLI, a typed API, or an MCP server (Claude, ChatGPT, Cursor), so your agents can update them. It runs synthetic checks in parallel from 28 regions across Fly.io, Koyeb, and Railway and surfaces incidents on branded status pages. Available as managed SaaS or self-hosted (AGPL-3.0). Bootstrapped, founded in 2023."; + "Openstatus is an open-source status page, incident response and uptime monitoring platform. Incidents run from Slack or your AI agent: declare one, keep a single timeline and leave with a drafted postmortem; Slack declarations open a dedicated channel. It is built for infra as code: monitors, status pages, and notification channels are declared in YAML or Terraform and driven from a CLI, a typed API, or an MCP server (Claude, ChatGPT, Cursor), so your agents can update them. It runs synthetic checks in parallel from 28 regions across Fly.io, Koyeb, and Railway and surfaces incidents on branded status pages. Available as managed SaaS or self-hosted (AGPL-3.0). Bootstrapped, founded in 2023."; export const PRODUCT_CONTEXT_MARKDOWN = `## Who it's for +- Small teams that want incident response next to their monitors and status page, run from Slack instead of a separate on-call tool - Teams that manage uptime monitoring and status pages as infra as code and let agents (Claude, Cursor, ChatGPT, CI) open and resolve incidents over MCP, CLI, or API - Development teams that want transparent incident communication - Companies that need multi-region uptime monitoring @@ -28,6 +29,7 @@ Annual billing gives 2 months free (Starter $300/yr, Pro $1,000/yr, Scale $5,000 - **28-region monitoring** — Parallel checks across Europe, North America, South America, Asia, Africa, and Oceania; no round-robin, all selected regions fire simultaneously - **Multi-cloud** — Monitors run on Fly.io, Koyeb, and Railway for true cloud diversity - **Status Pages** — Branded public or password-protected pages with custom domains, themes, maintenance windows, and subscriber notifications (email, RSS, Slack) +- **Incident Response** — Declare incidents from Slack or the dashboard, a dedicated Slack channel for incidents declared in Slack, one timeline with reminders, internal status alongside public status page updates, and AI-drafted postmortems - **API Monitoring** — Assertions, thresholds, status code checks, header and body validation - **Infra as Code** — Define monitors, status pages, and notification channels in YAML (CLI, GitHub Actions) or Terraform - **Private Locations** — 8.5MB Docker image for monitoring internal services behind firewalls diff --git a/apps/web/src/content/pages/home.mdx b/apps/web/src/content/pages/home.mdx index 65b8acec..d3511d9f 100644 --- a/apps/web/src/content/pages/home.mdx +++ b/apps/web/src/content/pages/home.mdx @@ -1,14 +1,14 @@ --- -title: "Free & Open Source Status Page and Uptime Monitoring" -hero: "The status page that just works." +title: "Free & Open Source Uptime Monitoring, Status Page and Incident Response from Slack or AI" +hero: "Run status pages and incident response from Slack or your AI agent." publishedAt: "2026-04-07" -updatedAt: "2026-10-05" +updatedAt: "2026-10-07" author: "openstatus" -description: "Open source status page and uptime monitoring. Your monitors update it, your subscribers hear it first, your auditor gets the trail. Live in five minutes." +description: "Open source status page, incident response and global uptime monitoring. When something breaks, your subscribers hear it first and your auditor gets the trail." category: "product" faq: - question: "What is openstatus?" - answer: "Openstatus is an open-source status page and uptime monitoring platform. Monitor from 28 regions, publish a branded status page on your own domain, and manage it from the dashboard, Slack, CLI, API, Terraform or an AI agent. It is used by teams like Cal.com, WhiteBIT, and Documenso, and can be self-hosted." + answer: "Openstatus is an open-source status page and incident response platform. Monitor from 28 regions, publish a branded status page on your own domain, and manage it from Slack, an AI agent, the dashboard, CLI, API or Terraform. It is used by teams like Cal.com, WhiteBIT, and Documenso, and can be self-hosted." - question: "What does the free plan include?" answer: "The free Hobby plan includes one monitor, one status page with three page components, and a minimum check interval of 10 minutes. No credit card is required, and you can upgrade or cancel at any time." - question: "Do I need a status page for SOC 2?" @@ -337,7 +337,7 @@ No per-seat fees. Every new workspace starts with a 14-day Starter trial, no car

-Openstatus is an open-source status page and uptime monitoring platform. Monitor from 28 regions, publish a branded status page on your own domain, and manage it from the dashboard, Slack, [CLI](/tooling/cli), [API](/tooling/api), [Terraform](/tooling/terraform) or an [AI agent](/tooling/mcp-server). +Openstatus is an open-source status page and incident response platform. Monitor from 28 regions, publish a branded status page on your own domain, and manage it from Slack, an [AI agent](/tooling/mcp-server), the dashboard, [CLI](/tooling/cli), [API](/tooling/api) or [Terraform](/tooling/terraform). It is used by teams like [Cal.com](https://status.cal.com), [WhiteBIT](https://status.whitebit.com), and [Documenso](https://status.documenso.com), and available as a [managed service](https://app.openstatus.dev) or for [self-hosting](/github). diff --git a/apps/web/src/lib/metadata/shared-metadata.ts b/apps/web/src/lib/metadata/shared-metadata.ts index 8939fbc6..5f05d713 100644 --- a/apps/web/src/lib/metadata/shared-metadata.ts +++ b/apps/web/src/lib/metadata/shared-metadata.ts @@ -4,11 +4,12 @@ import type { MDXData } from "../../content/utils"; export const TITLE = "openstatus"; export const HOMEPAGE_TITLE = - "Free & Open Source Status Page and Uptime Monitoring"; + "Open Source Status Page, Uptime Monitoring & Incident Response"; export const DESCRIPTION = - "Open source status page and uptime monitoring. Your monitors update it, your subscribers hear it from you first. Free to start, self-hostable."; + "Open source status page, incident response and global uptime monitoring. When something breaks, your subscribers hear it first and your auditor gets the trail."; -export const OG_DESCRIPTION = "The status page for humans and agents"; +export const OG_DESCRIPTION = + "Status pages and incident response for humans and agents"; export const BASE_URL = process.env.NODE_ENV === "production" diff --git a/apps/web/src/lib/metadata/structured-data.ts b/apps/web/src/lib/metadata/structured-data.ts index c5b9b615..ef4d0c7f 100644 --- a/apps/web/src/lib/metadata/structured-data.ts +++ b/apps/web/src/lib/metadata/structured-data.ts @@ -185,7 +185,7 @@ export const getJsonLDProduct = (): WithContext => { "@type": "Product", name: "openstatus", description: - "The open-source status page and uptime monitoring platform built for infra as code. Declare monitors in code and let your agents update them.", + "The open-source status page, incident response and uptime monitoring platform. Run incidents from Slack or your AI agent and declare monitors in code.", image: `${BASE_URL}/assets/logos/OpenStatus-Logo.svg`, url: BASE_URL, brand: { @@ -213,9 +213,10 @@ export const getJsonLDSoftwareApplication = name: "openstatus", url: BASE_URL, description: - "The open-source status page and uptime monitoring platform built for infra as code. Declare monitors in code and let your agents update them.", + "The open-source status page, incident response and uptime monitoring platform. Run incidents from Slack or your AI agent and declare monitors in code.", applicationCategory: "BusinessApplication", - applicationSubCategory: "Status Pages & Uptime Monitoring", + applicationSubCategory: + "Status Pages, Incident Response & Uptime Monitoring", operatingSystem: "Web, Self-hosted", offers: Object.entries(allPlans).map(([_, value]) => ({ "@type": "Offer", -- 2.51.2