Tanya-garg10/-IncidentIQ-Smarter-SRE-Incident-Resolution
GitHub: Tanya-garg10/-IncidentIQ-Smarter-SRE-Incident-Resolution
IncidentIQ 是一个结合大语言模型与组织记忆库的 SRE 智能故障响应平台,帮助团队从每次停机中积累经验并显著缩短平均解决时间。
Stars: 0 | Forks: 0
# 🛡️ IncidentIQ — 更智能的 SRE 故障解决平台
IncidentIQ 是一个先进的、AI 驱动的站点可靠性工程 (SRE) 平台,旨在大幅缩短平均解决时间 (MTTR)。通过将最先进的大型语言模型 (LLM)(如通过 Anthropic SDK 接入的 Claude)与组织记忆库(由 Vectorize.io 的 Hindsight 提供支持)相结合,IncidentIQ 能够保留、召回并更新来自过往每次故障、运维手册和复盘的组织知识。
## 🚀 核心功能
- 🔍 **AI 驱动的根本原因分诊:** 立即分析生产告警。内置的 SRE Copilot 会根据置信度对可能的根本原因进行排序,并生成即时的缓解和诊断命令。
- 🧠 **Hindsight 记忆库:** 无缝集成 Hindsight Memory。实时自动索引、召回和搜索过往故障、运维手册和复盘,将历史知识直接引入活跃的分诊频道。
- 🕸️ **交互式依赖与故障图谱:** 基于 React Flow 构建的交互式、基于节点的系统拓扑、活跃故障和相关服务的可视化展示。
- 📑 **一键生成无指责复盘:** 利用 Claude 从活跃的故障时间线、影响详情和根本原因中,即时生成完整、专业的复盘报告(可选/旧版后端支持 Gemini)。
- 📚 **上下文感知运维手册:** 根据故障相似度自动推荐相关的运维手册,并提供 SRE 可复制和执行的诊断命令。
- 📊 **可靠性分析仪表板:** 深入洞察系统健康状况,包括 MTTR 趋势、服务正常运行时间可靠性百分比、故障严重程度频率以及记忆重用率。
- ⌨️ **全局命令面板:** 使用 ⌘K(或 Ctrl+K)快捷键随时随地访问搜索和命令。
## 🛠️ 技术栈
- **框架与语言:** Next.js 15 (App Router) & TypeScript
- **样式与 UI:** Tailwind CSS, Framer Motion, Radix UI 和 Lucide React
- **数据可视化:** React Flow (知识图谱) & Recharts (分析图表)
- **全局状态管理:** Zustand
- **数据库与身份验证:** Firebase Firestore & Auth
- **AI 模型与客户端集成:**
- Anthropic SDK:使用 Claude 3.5 Sonnet / 4.5 进行活跃的流式传输故障 Copilot 推理和复盘生成。
- Google Generative AI(可选):为 Gemini 2.5 Pro (`lib/gemini.ts`) 提供预构建的 SDK 集成,可用于多 LLM 设置。
- Vectorize Hindsight Client:使用 `@vectorize-io/hindsight-client` 进行组织记忆保留。
## 📂 项目结构
```
InsidentlQ/
├── app/
│ ├── (dashboard)/ # Dashboard layout and page routes
│ │ ├── analytics/ # MTTR, reliability, and SRE analytics
│ │ ├── dashboard/ # Main dashboard overview
│ │ ├── incidents/ # Incident feeds, new incident form, details
│ │ ├── knowledge-graph/ # React Flow system topology map
│ │ ├── memory/ # Memory Vault database
│ │ └── runbooks/ # Runbooks storage and search
│ ├── api/ # Serverless API routes (AI & Hindsight memory)
│ ├── globals.css # Main styling & animations
│ ├── layout.tsx # Root context and metadata
│ └── page.tsx # High-fidelity Landing Page
├── components/
│ ├── dashboard/ # AICopilot, IncidentFeed, and MemoryEngine
│ └── layout/ # Navigation, Command Palette
├── context/ # AuthContext for Firebase
├── lib/ # Claude, Gemini, Firebase, Hindsight, and Mock Data utilities
├── store/ # Zustand Stores (incident and UI state)
├── types/ # TypeScript definitions
└── package.json # Dependencies and scripts
```
## ⚙️ 环境配置
要配置外部 API 服务,请在根目录下创建一个 `.env.local` 文件并定义以下变量:
```
# Claude AI (Anthropic)
ANTHROPIC_API_KEY=your_claude_api_key
# Google Gemini (Generative AI)
GEMINI_API_KEY=your_gemini_api_key
# Vectorize Hindsight 记忆
HINDSIGHT_API_KEY=your_hindsight_api_key
HINDSIGHT_BANK_ID=incidentiq-global-bank
# Firebase 配置
NEXT_PUBLIC_FIREBASE_API_KEY=your_firebase_api_key
NEXT_PUBLIC_FIREBASE_AUTH_DOMAIN=your_project.firebaseapp.com
NEXT_PUBLIC_FIREBASE_PROJECT_ID=your_project_id
NEXT_PUBLIC_FIREBASE_STORAGE_BUCKET=your_project.appspot.com
NEXT_PUBLIC_FIREBASE_MESSAGING_SENDER_ID=your_sender_id
NEXT_PUBLIC_FIREBASE_APP_ID=your_app_id
```
## 🚀 快速开始
请按照以下步骤在您的机器上本地运行此应用程序:
1. 克隆并安装依赖
```
git clone https://github.com/bahuli1203/InsidentlQ.git
cd InsidentlQ
npm install
```
2. 运行开发服务器
```
npm run dev
```
在浏览器中打开 `http://localhost:3000` 即可查看落地页并开始探索。
3. 构建生产版本
```
npm run build
npm run start
```
由 Shravani Dhuri 和 Tanya Garg 用 ❤️ 构建。
标签:API集成, SRE, 事故响应, 偏差过滤, 可观测性, 自动化攻击