3.4 KiB
3.4 KiB
name, description, metadata
| name | description | metadata | ||
|---|---|---|---|---|
| kb-workflow | 知识库工作流编排技能。接收"添加到知识库 + 链接"消息,完成完整处理流程。 |
|
KB Workflow
触发条件
当用户发送包含以下模式的消息时,此技能自动触发:
| 触发词 | 行为 | 示例 |
|---|---|---|
添加到知识库 + 链接 |
添加到知识库并处理 | "添加到知识库 https://www.bilibili.com/video/BVxxx" |
保存到知识库 + 链接 |
同上 | "保存到知识库 https://www.bilibili.com/video/BVxxx" |
Workflow 步骤
当触发后,按照以下步骤执行:
步骤 1: 查重
运行查重命令:
python3 kb_workflow.py --check --url "[URL]"
- 如果存在:汇报用户并询问是更新还是跳过
- 如果不存在:继续步骤 2
步骤 2: 链接解析
启动子代理: kb-link-parser
输入: 用户的 URL
预期输出: pending/{platform}_{id}.link.json
步骤 3: 元数据提取
启动子代理: 根据平台选择
- Bilibili →
kb-bilibili-metadata - 知乎 →
kb-zhihu-metadata
输入: 步骤 2 输出的文件路径
预期输出: metadata/{platform}_{id}.meta.json
步骤 4: 内容下载
启动子代理: 根据平台选择
- Bilibili →
kb-bilibili-content - 知乎 → (暂无)
输入: 步骤 3 输出的文件路径
预期输出:
content/downloads/{platform}_{id}.mp4content/subtitles/{platform}_{id}.srt(可能没有)
步骤 5: OCR 处理
启动子代理: kb-ocr-processor
输入: 步骤 4 输出的字幕文件路径(没有字幕则用视频文件路径)
预期输出: content/{platform}_{id}.txt
步骤 6: 深度分析
启动子代理: kb-deep-analyzer
输入:
- 步骤 3 输出的元数据文件路径
- 步骤 5 输出的文字内容文件路径(如有,否则用元数据文件路径)
预期输出: analyzed/{platform}_{id}.md
步骤 7: 归档
运行归档命令:
python3 kb_workflow.py --archive "[分析报告文件路径]"
步骤 8: 汇报完成
向用户汇报:
- 视频标题
- 处理阶段完成情况
- 最终文件路径
- Git commit 信息
子技能清单
| 步骤 | 子技能 | 输入 | 输出 |
|---|---|---|---|
| 2 | kb-link-parser | URL | pending/{p}_{id}.link.json |
| 3 | kb-bilibili-metadata | link.json | metadata/{p}_{id}.meta.json |
| 3 | kb-zhihu-metadata | link.json | metadata/{p}_{id}.meta.json |
| 4 | kb-bilibili-content | meta.json | downloads/{p}{id}.mp4, subtitles/{p}{id}.srt |
| 5 | kb-ocr-processor | srt/mp4 | {p}_{id}.txt |
| 6 | kb-deep-analyzer | meta.json, txt | analyzed/{p}_{id}.md |
目录结构
~/work/knowledge-base/
├── archive/
│ └── YYYY-MM-DD/
├── pending/
│ └── {platform}_{id}.link.json
├── metadata/
│ └── {platform}_{id}.meta.json
├── content/
│ ├── downloads/
│ │ └── {platform}_{id}.mp4
│ ├── subtitles/
│ │ └── {platform}_{id}.srt
│ └── {platform}_{id}.txt
└── analyzed/
└── {platform}_{id}.md
辅助命令
# 查重
python3 kb_workflow.py --check --url "[URL]"
# 归档
python3 kb_workflow.py --archive "[分析报告路径]"
环境变量(可选)
export KB_BASE_PATH="~/work/knowledge-base"