Home
Softono
incidentbot

incidentbot

Open source MIT Python
163
Stars
57
Forks
11
Issues
5
Watchers
1 week
Last Commit

About incidentbot

The Open Source Incident Management Framework

Platforms

Web Self-hosted Docker

Languages

Python

Links

Incident Bot

CI version codecov

An incident management framework centralized around a ChatOps bot to allow your teams to easily and effectively identify and manage technical incidents impacting your cloud infrastructure, your products, or your customers' ability to use your applications and services.

Incident Bot's Documentation

[!NOTE] As of February 2nd, 2025, the Helm charts repository has moved from https://charts.incidentbot.io to https://docs.incidentbot.io/charts — please update your usage accordingly.

[!WARNING] The image registry and versioning scheme have changed. The official image has moved from Docker Hub (eb129/incidentbot) to the GitHub Container Registry, and releases now use CalVer instead of semantic versioning. If you are running an older version, see the migration guide before upgrading.

ghcr.io/incidentbot/incidentbot:latest

Features

  • Supports Slack and Matrix as chat platforms
  • Organize your efforts into channels to coordinate incident response
  • Easy to read messages that get to the point without a ton of visual distractions
  • Completely customizable status, severity, and role definitions to control all stages of incident response
  • Communicate with the bot using ephemeral messages to keep clutter out of your channels
  • Keep the rest of your organization informed with an incident digest channel that explains the state of all incidents
  • Integrate with tools you already use like Confluence, Jira, GitLab, Statuspage, PagerDuty, Zoom, and Phare
  • Automatically build a postmortem document base to save time
  • Embeddable incident status widgets via the built-in API

Interested in a web interface to use with Incident Bot? Check out the console project here.

Quick Start

Slack

  • Create a Slack app for this application. You can name it whatever you'd like.
  • Select from an app manifest and copy manifest.yaml out of this repository and paste it in to automatically configure the app and its required settings. Be sure to override any customizable settings like name, etc.
  • You'll need the app token, bot token, and user token for your application and provide those as the SLACK_APP_TOKEN, SLACK_BOT_TOKEN, and SLACK_USER_TOKEN environment variables — these can be found within the app's configuration page in Slack. For more information on Slack tokens, see the documentation here.

Matrix

  • Set PLATFORM=matrix and provide the MATRIX_HOMESERVER, MATRIX_USER_ID, MATRIX_ACCESS_TOKEN, and MATRIX_DEVICE_ID environment variables. See .env.sample for all available Matrix settings.

Both platforms

  • You'll need a Postgres instance to connect to. If trying the bot out using Docker Compose or Helm, there are options to run a database alongside the app.
  • Configure and deploy the application using one of the methods described in the documentation, or however you choose. (There's a Docker image available.)

Full setup documentation is available here.

Contributing

Please see contribution guidelines before opening a pull request.

Feedback

This application is not meant to solve every problem with regard to incident management. It was created as an open-source alternative to paid solutions.

If you encounter issues with functionality or wish to see new features, please open an issue or a feature request to let us know.