msnandhis/incigent

GitHub: msnandhis/incigent

一款面向值班团队的语音事件响应副驾驶,通过语音与文本捕获事件并检索运行手册生成结构化简报。

Stars: 0 | Forks: 0

# Incigent Incigent 是一个面向值班工程团队的基于语音的事件响应副驾驶(hackathon 范围限定)。 当前版本有意聚焦于一个可信的工作流: - 通过语音或文本捕获实时事件 - 从 Qdrant 支撑的知识库中检索运行手册上下文 - 构建结构化的事件简报 - 准备一份交接摘要,响应者可用于发送给 Slack、Jira、PagerDuty 或其他事件工具 它使用 Vapi 处理语音,OpenRouter 进行保守的轮次分析,Qdrant 用于检索与记忆。 ## 当前产品范围 `/assistant` 体验围绕一个端到端的事件循环构建: 1. 响应者说出或输入故障服务与症状。 2. 后端检测语言(英语或印地语)。 3. Incigent 将该轮次分类为事件响应工作流。 4. 基于 Qdrant 的检索引入运行手册与事后分析指导。 5. 助手每次询问一个缺失的事件问题。 6. 答案转换为可视化的事件简报。 7. 用户可准备交接摘要并打开运行手册指南。 支持的语言: - 英语 - 印地语 ## 工作流 ### 事件响应 MVP 捕获以下信息: - 事件标题 - 影响的服务 - 症状 - 环境 - 严重程度 - 客户影响 - 检测来源 - 疑似原因 - 缓解计划 - 事件指挥官 - 沟通渠道 - 回滚就绪状态 实际产品中使用的知识引用包括: - Atlassian 事件响应手册: - Google SRE 工作手册事件响应: - PagerDuty 运行手册自动化: ## 路由 - `/` - 着陆页 - `/assistant` - 主要事件工作区 - `/api/assistant/turn` - 文本轮次端点 - `/api/assistant/state` - 用于 UI 同步的会话快照端点 - `/api/assistant/submit` - 交接摘要端点 - `/api/assistant/runtime` - 运行时就绪性与 Vapi 助手配置 - `/api/assistant/vapi` - Vapi Webhook / 工具端点 ## 技术栈 - Next.js App Router - React 19 - Tailwind CSS v4 - Vapi Web SDK - OpenRouter - Qdrant - Zod ## 本地开发 安装依赖: ``` npm install ``` 运行应用: ``` npm run dev ``` 打开: - - ## 环境变量 将 `.env.example` 复制为 `.env.local` 并填写所需值。 最小可用配置: ``` OPENROUTER_MODEL=openai/gpt-4o-mini ``` 推荐配置: ``` OPENROUTER_API_KEY= OPENROUTER_MODEL=openai/gpt-4o-mini OPENROUTER_SITE_URL= OPENROUTER_SITE_NAME=Incigent QDRANT_URL= QDRANT_API_KEY= QDRANT_COLLECTION=incigent_incident_memory_v1 QDRANT_KNOWLEDGE_COLLECTION=incigent_incident_knowledge_v1 QDRANT_PROFILE_COLLECTION=incigent_incident_profiles_v1 NEXT_PUBLIC_VAPI_PUBLIC_KEY= INCIGENT_PUBLIC_URL=https://your-public-url VAPI_VOICE_PROVIDER=vapi VAPI_VOICE_ID=Rohan VAPI_VOICE_ID_EN=Rohan VAPI_VOICE_ID_HI=Neha ``` 可选别名: ``` NEXT_PUBLIC_SITE_URL= NEXT_PUBLIC_APP_URL= ``` ## 运行时行为 - 如果缺少 `OPENROUTER_API_KEY`,助手将回退到确定性提取与响应逻辑。 - 如果缺少 `QDRANT_URL`,应用将回退到内存中的知识、会话与个人资料存储。 - 如果缺少 `NEXT_PUBLIC_VAPI_PUBLIC_KEY` 或有效的公共回调 URL,`/assistant` 仍可在文本模式下工作。 - `INCIGENT_PUBLIC_URL` 应指向用于 Vapi 工具调用与 Webhook 的公共 URL;`VOICE_SEVA_PUBLIC_URL` 仍被接受作为遗留回退。 ## 架构 ### 前端 助手 UI 是一个单工作区,包含: - 实时转录轨道 - 文本回退 - 语音触发 - 动态事件简报 - 交接操作面板 ### 后端 轮次引擎: - 检测语言 - 分类事件响应意图 - 从 Qdrant 支撑的知识库检索运行手册指导 - 从用户轮次中提取结构化事件字段 - 持久化会话状态与响应者个人资料 - 返回下一条简短回复与更新后的简报 ### 内存模型 存在三种逻辑存储类型: - 运行手册与事后分析知识 - 对话与会话状态 - 响应者个人资料记忆 当配置 Qdrant 时,这些内容会被持久化到独立的助手集合中,并在新的服务器进程中恢复。否则它们保留在本地内存中用于演示用途。 ## 说明 - 本版本有意限制为单一事件响应工作流,以确保演示的可靠性。 - 当前动作层准备交接与运行手册链接,而非深入的 PagerDuty/Jira 自动化。 - 现有知识库使用公共事件管理参考以及 Incigent 自身的分类模板。
标签:Incident Response, IPv6支持, Jira, MVP, On-call, OpenRouter, PagerDuty, Qdrant, Ruby, Slack, SRE, Vapi, 事件指挥官, 事后分析, 偏差过滤, 印地语, 向量检索, 回滚准备, 多语言, 实时协作, 对话代理, 工作流自动化, 库, 应急响应, 影响评估, 手over, 知识库, 结构化摘要, 自动化攻击, 英文, 语音交互, 语音转文本, 运维工具, 运行手册检索