名称: knowledge-raptor 描述: 搜索RAPTOR知识库以查找运行手册、过去事件、服务依赖和积累的团队知识。在调查事件之前使用 — 这包含从过去调查中学到的、整理的结构化知识。 允许工具: Bash(python *)
知识库 - RAPTOR集成
认证
无需凭证。 RAPTOR服务是一个内部Kubernetes服务。请求直接通过ClusterIP进行 — 无需代理,无需令牌。只需运行脚本。
为什么在事件中RAPTOR重要
RAPTOR知识库包含从过去调查中学到的知识、教授的运行手册、服务依赖图和事件模式。在Confluence之前检查它:
- 有已知的修复方法吗? 搜索匹配症状的运行手册
- 这以前发生过吗? 查找类似过去事件及其解决方案
- 爆炸半径是什么? 查询服务依赖图
- 我应该知道什么? 搜索相关团队知识
可用脚本
所有脚本都在 .claude/skills/knowledge-raptor/scripts/ 中
search.py - 通用知识搜索
使用语义搜索在所有知识(运行手册、文档、过去学习)中进行搜索。
python .claude/skills/knowledge-raptor/scripts/search.py --query SEARCH_QUERY [--tree TREE] [--top-k N]
# 示例:
python .claude/skills/knowledge-raptor/scripts/search.py --query "如何调试OOMKilled pods"
python .claude/skills/knowledge-raptor/scripts/search.py --query "数据库连接池耗尽" --top-k 10
python .claude/skills/knowledge-raptor/scripts/search.py --query "Redis缓存驱逐" --tree mega_ultra_v2
search_incident.py - 事件感知搜索
查找匹配特定症状的运行手册和过去事件。为事件调查优化。
python .claude/skills/knowledge-raptor/scripts/search_incident.py --symptoms DESCRIPTION [--service SERVICE] [--top-k N]
# 示例:
python .claude/skills/knowledge-raptor/scripts/search_incident.py --symptoms "pods不断崩溃并显示OOMKilled"
python .claude/skills/knowledge-raptor/scripts/search_incident.py --symptoms "API端点高延迟" --service payment-gateway
python .claude/skills/knowledge-raptor/scripts/search_incident.py --symptoms "503错误,连接超时" --service auth-service --top-k 10
query_graph.py - 服务依赖图
查询知识图以获取服务依赖、所有权、爆炸半径和相关运行手册。
python .claude/skills/knowledge-raptor/scripts/query_graph.py --entity ENTITY --query-type TYPE [--max-hops N]
# 查询类型: dependencies, dependents, owner, runbooks, incidents, blast_radius
# 示例:
python .claude/skills/knowledge-raptor/scripts/query_graph.py --entity payment-gateway --query-type blast_radius
python .claude/skills/knowledge-raptor/scripts/query_graph.py --entity redis-cache --query-type dependents
python .claude/skills/knowledge-raptor/scripts/query_graph.py --entity auth-service --query-type owner
python .claude/skills/knowledge-raptor/scripts/query_graph.py --entity postgres-primary --query-type dependencies --max-hops 3
find_similar.py - 查找相似过去事件
查找具有相似症状的过去事件,以识别模式和已知解决方案。
python .claude/skills/knowledge-raptor/scripts/find_similar.py --symptoms DESCRIPTION [--service SERVICE] [--limit N]
# 示例:
python .claude/skills/knowledge-raptor/scripts/find_similar.py --symptoms "数据库连接超时"
python .claude/skills/knowledge-raptor/scripts/find_similar.py --symptoms "高内存使用,pods重启" --service checkout-service
python .claude/skills/knowledge-raptor/scripts/find_similar.py --symptoms "Kafka消费者延迟增加" --limit 10
teach.py - 教授新知识
教授知识库在调查中学到的新知识。系统自动检测重复和矛盾。
python .claude/skills/knowledge-raptor/scripts/teach.py --content KNOWLEDGE [--type TYPE] [--entities ENTITY1,ENTITY2] [--confidence N] [--source SOURCE] [--context CONTEXT]
# 知识类型: procedural, factual, temporal, relational, contextual, policy, social, meta
# 示例:
python .claude/skills/knowledge-raptor/scripts/teach.py \
--content "当payment-gateway显示OOMKilled时,首先检查Redis连接池 — 在流量峰值期间会积累陈旧连接" \
--type procedural \
--entities payment-gateway,redis-cache \
--source "incident_INC-2024-0456"
python .claude/skills/knowledge-raptor/scripts/teach.py \
--content "auth-service回退到数据库会话时,每个请求增加约200ms延迟当Redis宕机时" \
--type factual \
--entities auth-service,redis-cache \
--confidence 0.9
常见工作流
1. 调查事件
# 步骤1: 搜索匹配的运行手册和过去事件
python .claude/skills/knowledge-raptor/scripts/search_incident.py --symptoms "503错误,高延迟" --service payment-gateway
# 步骤2: 检查爆炸半径
python .claude/skills/knowledge-raptor/scripts/query_graph.py --entity payment-gateway --query-type blast_radius
# 步骤3: 查找相似过去事件
python .claude/skills/knowledge-raptor/scripts/find_similar.py --symptoms "支付服务上的503错误"
# 步骤4: 解决后,教授所学内容
python .claude/skills/knowledge-raptor/scripts/teach.py \
--content "payment-gateway 503错误是由于Redis故障切换后连接池耗尽引起的" \
--type procedural \
--entities payment-gateway,redis-cache
2. 理解服务依赖
# 此服务依赖什么?
python .claude/skills/knowledge-raptor/scripts/query_graph.py --entity checkout-service --query-type dependencies
# 谁拥有它?
python .claude/skills/knowledge-raptor/scripts/query_graph.py --entity checkout-service --query-type owner
# 如果它宕机,会破坏什么?
python .claude/skills/knowledge-raptor/scripts/query_graph.py --entity checkout-service --query-type blast_radius
3. 从历史中学习
# 搜索关于某个主题的过去学习
python .claude/skills/knowledge-raptor/scripts/search.py --query "Kafka消费者重新平衡风暴"
# 查找相似事件
python .claude/skills/knowledge-raptor/scripts/find_similar.py --symptoms "Kafka消费者组频繁重新平衡"
快速命令参考
| 目标 | 命令 |
|---|---|
| 查找运行手册 | search_incident.py --symptoms "..." --service SVC |
| 通用搜索 | search.py --query "..." |
| 服务依赖 | query_graph.py --entity SVC --query-type dependencies |
| 爆炸半径 | query_graph.py --entity SVC --query-type blast_radius |
| 谁拥有服务 | query_graph.py --entity SVC --query-type owner |
| 过去事件 | find_similar.py --symptoms "..." |
| 教授知识 | teach.py --content "..." --type procedural |
最佳实践
何时使用RAPTOR vs Confluence
- 从RAPTOR开始 — 它有从过去调查中整理的结构化知识
- 回退到Confluence — 用于详细文档、架构文档或团队维基
- 教授回RAPTOR — 解决后,教授所学内容以便未来调查受益
调查流程
- 从事件搜索开始 — 将症状匹配到已知模式
- 检查依赖 — 在做出更改前理解爆炸半径
- 广泛搜索 — 如果事件搜索不匹配,尝试通用搜索
- 查看历史 — 查找相似过去事件以获取解决方案模式
- 教授所学 — 为未来调查者关闭循环