Confluence Skills/Markdown 构建树形知识库
·
让我来分析一下不同方案的优劣,以及如何用 Skills/Markdown 构建树形知识库。
RAG vs Skills/Markdown 对比
| 维度 | RAG | Skills/Markdown |
|---|---|---|
| 适合场景 | 大量非结构化文档、全文检索 | 结构化知识、有明确层级关系 |
| 检索精度 | 依赖向量相似度,可能漂移 | 精确路由,确定性强 |
| 知识更新 | 需重新 embedding | 直接编辑 Markdown |
| 上下文利用 | 塞入大量碎片 chunk | 按需加载,token 利用率高 |
| 树形结构支持 | ❌ 天然扁平化 | ✅ 天然支持层级 |
| 实现复杂度 | 高(需向量数据库) | 低(文件系统即可) |
结论:对于 Confluence 这类有明确结构的知识库,Skills 方式通常效果更好。
树形知识库的 Skills 设计方案
核心思路:Router + Leaf 模式
skills/
├── ROOT.md # 入口路由
├── product/
│ ├── SKILL.md # product 子路由
│ ├── api/
│ │ ├── SKILL.md # api 子路由
│ │ ├── auth.md # 叶子节点
│ │ └── rate-limit.md
│ └── deploy/
│ ├── SKILL.md
│ └── docker.md
└── engineering/
├── SKILL.md
└── onboarding.md
1. ROOT.md — 根路由(最重要)
# Knowledge Base Router
你是 Confluence 知识库助手。根据用户问题,选择正确的子领域读取对应 SKILL.md。
## 领域路由表
| 用户问题关键词 | 读取路径 |
|--------------|---------|
| API、接口、鉴权、限流 | /skills/product/api/SKILL.md |
| 部署、发布、上线、Docker | /skills/product/deploy/SKILL.md |
| 入职、环境搭建、权限申请 | /skills/engineering/SKILL.md |
## 规则
1. 先读对应 SKILL.md,再回答
2. 如果跨多个领域,依次读取
3. 找不到时,告知用户并建议完善知识库
2. 子领域 SKILL.md — 二级路由
# Product / API 知识路由
## 包含内容
- auth.md:OAuth2 流程、Token 刷新、API Key 管理
- rate-limit.md:限流策略、错误码 429 处理
## 路由规则
- 问题涉及登录/权限/Token → 读取 auth.md
- 问题涉及频率/配额/限制 → 读取 rate-limit.md
- 两者都涉及 → 都读取
3. 叶子节点 — 实际知识
# API 鉴权
**最后更新**: 2024-01-15
**负责人**: 平台团队
## OAuth2 流程
...具体内容...
## 常见问题
Q: Token 过期怎么办?
A: 调用 /auth/refresh 接口...
关键设计原则
① 每个节点职责单一
- Router 节点:只做路由判断,不含知识内容
- Leaf 节点:只含知识内容,不做路由
② 路由要用"意图词"而非"关键词"
# ❌ 弱路由
关键词:docker → 读 docker.md
# ✅ 强路由
用户想了解容器化部署流程、镜像构建、K8s 配置 → 读 docker.md
用户遇到容器启动失败、OOM 报错 → 读 docker-troubleshoot.md
③ 控制树的深度
- 建议最多 3 层(Root → Domain → Topic)
- 超过 3 层时,考虑合并叶子节点,或用 RAG 处理该子树
④ 与 RAG 混合使用
树形 Skills(结构化部分)
└── 覆盖:流程、规范、FAQ、操作手册
RAG(非结构化部分)
└── 覆盖:历史决策记录、会议纪要、长文档
从 Confluence 迁移的实操建议
- 按 Confluence Space → Domain SKILL.md 映射
- 按 Page Tree → 文件目录 映射
- Page 标签/Label 作为路由关键词补充
- 优先迁移高频访问页面,低频的先留 RAG
这套方案的核心优势是:Claude 每次只加载当前问题相关的知识,上下文干净,回答精准,且知识更新只需改 Markdown 文件。
更多推荐



所有评论(0)