kyisaiah47/incident-response-agent

GitHub: kyisaiah47/incident-response-agent

Slack 原生事件指挥中心,实现从故障声明、作战室创建、值班寻呼到 AI 生成事后总结的一站式事件响应管理。

Stars: 0 | Forks: 0

banner # 🚨 事件响应 Agent **原生 Slack 事件指挥中心 —— 在一个工作流中完成声明、管理和事后总结。** ![Deno](https://img.shields.io/badge/Deno-000000?style=for-the-badge&logo=deno&logoColor=white) ![Slack](https://img.shields.io/badge/Slack-4A154B?style=for-the-badge&logo=slack&logoColor=white) ![PagerDuty](https://img.shields.io/badge/PagerDuty-06AC38?style=for-the-badge&logo=pagerduty&logoColor=white) ![Datadog](https://img.shields.io/badge/Datadog-632CA6?style=for-the-badge&logo=datadog&logoColor=white) ![License: MIT](https://img.shields.io/badge/License-MIT-yellow.svg?style=for-the-badge)

事件响应 Agent 使用 [Slack Agent Builder](https://slackagentbuilder.devpost.com/) 框架将 Slack 变成一个全面的事件指挥中心。一个简单的 **Declare** 触发器即可在几秒钟内启动一个专门的作战室频道、呼叫值班人员并发布实时上下文简报。当风波平息后,**Resolve** 触发器会读取作战室记录并自动起草一份完整的事件后总结 —— 无需切换上下文。 ## ✨ 功能 - **一键创建作战室** —— 自动生成唯一的事件频道(例如 `inc-sev1-api-gateway-0607-1423`) - **自动上下文简报** —— 在任何人输入内容之前,搜索 Slack 中有关受影响服务的近期消息,并将其发布到作战室 - **实时事件搜索** —— 查询 Datadog Events v2 实时搜索 API,获取过去 6 小时内所有与服务相关的事件,并在声明时将其展示在作战室中 - **PagerDuty 寻呼** —— 在事件声明的那一刻,值班工程师就会收到寻呼 - **实时 Datadog 监控流** —— 在声明时,会提取受影响服务的活动监控并将其发布到作战室 - **AI 生成的事件后总结** —— Resolve 触发器会读取完整的作战室对话并起草一份结构化的事件后总结文档 - **优雅降级** —— PagerDuty 和 Datadog 集成是可选的;没有它们 Agent 也能正常工作 ``` Declare trigger (link trigger) │ ▼ IncidentDeclaredWorkflow ├── search_context → Slack channel history search (recent messages about service) ├── prepare_incident → generate incident ID + war room channel name ├── CreateChannel → Slack native function (Enterprise Grid-safe) ├── create_war_room → post context brief, invite declarer, save to datastore ├── page_oncall → PagerDuty REST API ├── search_events → Datadog Events v2 real-time search API (last 6h) └── fetch_metrics → Datadog monitors API Resolve trigger (link trigger) │ ▼ IncidentResolvedWorkflow └── draft_postmortem → reads war room history, generates postmortem doc ``` 有关完整的 Mermaid 图表,请参阅 [architecture.md](architecture.md)。 ## 🛠️ 技术栈 | 层级 | 技术 | |---|---| | 运行时 | Deno | | 框架 | Slack Functions SDK (`deno-slack-sdk`) | | 持久化 | Slack Datastore | | 告警 | PagerDuty API | | 监控 | Datadog API | ## 🚀 快速开始 ### 前置条件 - 已安装并完成身份验证的 [Slack CLI](https://api.slack.com/automation/cli/install) - 处于付费计划的 Slack 工作区 - PagerDuty 和 Datadog API 密钥(可选) ### 安装与运行 ``` git clone https://github.com/kyisaiah47/incident-response-agent cd incident-response-agent slack app link slack env add ANTHROPIC_API_KEY your_key slack env add PAGERDUTY_TOKEN your_key slack env add PAGERDUTY_SERVICE_ID your_service_id slack env add DATADOG_API_KEY your_key slack env add DATADOG_APP_KEY your_key # 本地运行 slack run # 创建 link triggers slack trigger create --trigger-def triggers/declare_trigger.ts slack trigger create --trigger-def triggers/resolve_trigger.ts ``` 将快捷方式 URL 发布到任何频道即可开始使用该 Agent。 ### 部署到生产环境 ``` slack deploy ``` ## 黑客松提交详情 | 字段 | 值 | |---|---| | 赛道 | 新型 Slack Agent | | Slack App ID | `A0B9PQ3PQRW` | | 沙箱工作区 | https://test-sandbox-123.slack.com | ## 📄 许可证 MIT
标签:AI自动总结, Deno, Slack机器人, 协作工具, 自动化攻击, 运维自动化