This repository has been archived on 2026-08-07. You can view files and clone it. You cannot open issues or pull requests or push a commit.
Files
kb-skills/kb_workflow/SKILL.md
T
starmen1265 6a819b6c80
PR Test / lint (pull_request) Successful in 2s
docs(skill): update kb_workflow SKILL.md to reflect current implementation
- Fix CLI path: kb-workflow -> kb_workflow
- Add login command documentation for Zhihu
- Update directory structure to match actual paths
- Add environment variable checks section
- Document strict failure handling principle
- Update technical architecture diagram
2026-03-17 23:50:42 +08:00

6.2 KiB
Raw Blame History

name, description
name description
kb-workflow 当收到"添加到知识库 + 链接" 或"保存到知识库 + 链接"时使用

KB Workflow

知识库内容处理管道,支持 B站、知乎等平台的内容抓取、语音识别、深度分析和归档。

什么时候使用

当用户发送包含以下模式的消息时,此技能自动触发:

触发词 行为 示例
添加到知识库 + 链接 添加到知识库并处理 "添加到知识库 https://www.bilibili.com/video/BVxxx"
保存到知识库 + 链接 同上 "保存到知识库 https://zhuanlan.zhihu.com/p/xxx"

环境变量

执行前必须检查

在执行 workflow 之前,必须检查环境变量是否已经设置。

必须的环境变量(缺失则报错退出):

# ~/.kb_env 文件
export AI_API_KEY="your-api-key"
export AI_PROVIDER="zhipu"
export AI_MODEL="glm-5"
export AI_BASE_URL="https://open.bigmodel.cn/api/coding/paas/v4"
export KB_INTERMEDIATE_PATH="~/work/intermediate/analysis"
export KB_ARCHIVE_PATH="~/work/zq/30.资源/AI分析"

可选的环境变量:

变量名 用途
BILIBILI_COOKIE 下载会员视频
KB_GIT_USER / KB_GIT_EMAIL Git 提交信息
HF_TOKEN HuggingFace Token(说话者分离)

检查命令

# 从 ~/.kb_env 加载环境变量
if [ -f ~/.kb_env ]; then
    source ~/.kb_env
fi

# 检查必须的环境变量
if [ -z "$AI_API_KEY" ] || [ -z "$AI_PROVIDER" ] || [ -z "$AI_MODEL" ]; then
    echo "❌ 错误:必须的环境变量未设置"
    echo "请配置 ~/.kb_env 文件"
    exit 1
fi

echo "✅ 环境变量检查通过"

Workflow 执行方式

处理链接

# 处理 URL(自动执行完整管道)
python kb_workflow/kb_workflow.py process "https://www.bilibili.com/video/BVxxx"

# 指定输出目录
python kb_workflow/kb_workflow.py process "https://..." -o /path/to/output

# 强制重新执行(忽略已完成状态)
python kb_workflow/kb_workflow.py process "https://..." --no-skip

知乎登录

# 二维码扫码登录(Cookie 自动保存)
python kb_workflow/kb_workflow.py login

# 检查 Cookie 状态
python kb_workflow/kb_workflow.py login --status

# 从 JSON 文件导入 Cookie
python kb_workflow/kb_workflow.py login --import-cookie cookies.json

注意: 知乎链接处理时会自动检测 Cookie 是否过期,过期则自动触发扫码登录。

支持的平台和内容类型

平台 内容类型 URL 示例
B站 视频 bilibili.com/video/BVxxx
B站 专栏 bilibili.com/read/cvxxx
知乎 问答 zhihu.com/question/xxx/answer/xxx
知乎 专栏 zhuanlan.zhihu.com/p/xxx

处理流程

┌─────────────────────────────────────────────────────────────┐
│                    Pipeline 处理流程                         │
├─────────────────────────────────────────────────────────────┤
│  1. Parse     → LinkParser 解析 URL,识别平台和 ID           │
│  2. Download  → 平台适配器获取元数据和内容                    │
│  3. ASR       → 语音识别(视频无字幕时)                      │
│  4. Analyze   → DeepAnalyzer 生成深度分析报告                │
│  5. Archive   → 归档到 KB_ARCHIVE_PATH                      │
└─────────────────────────────────────────────────────────────┘

知乎特殊处理:

  • 评论默认爬取并追加到正文末尾
  • Cookie 过期时自动弹出二维码,扫码后继续执行
  • 无需手动设置 Cookie

目录结构

工作目录(KB_INTERMEDIATE_PATH):

~/work/intermediate/analysis/
└── {platform}_{content_id}/
    ├── metadata.json      # 元数据
    ├── content.md         # 内容(含评论)
    └── downloads/         # 下载的媒体文件

归档目录(KB_ARCHIVE_PATH):

~/work/zq/30.资源/AI分析/
└── YYYY-MM-DD/
    └── {platform}_{id}_analysis.md  # 深度分析报告

⚠️ 严格失败处理原则

深度分析步骤必须成功,否则整个流程失败

  1. 深度分析不可跳过:AI 分析是必须成功执行的步骤
  2. 失败即终止:如果分析返回失败,必须立即停止并汇报
  3. 禁止降级处理:不能使用预设模板或简单摘要来"假装成功"
  4. 每次执行都要使用 AI:必须有真实的 AI API 调用记录

示例

用户: 添加到知识库 https://zhuanlan.zhihu.com/p/123456789

Claude:
✅ 环境变量检查通过

◆ 处理中...
  → 解析 URL: zhihu 专栏 123456789
  → 获取元数据...
  → 爬取内容和评论...
  → 深度分析...

✅ 完成!

标题: 深度学习在推荐系统中的应用
内容目录: ~/work/intermediate/analysis/zhihu_123456789/
归档文件: ~/work/zq/30.资源/AI分析/2026-03-17/zhihu_123456789_analysis.md

技术架构

kb_workflow/
├── kb_workflow.py        — CLI 入口
├── auth/
│   └── zhihu_login.py    — 知乎登录和 Cookie 管理
├── crawler/
│   ├── zhihu_crawler.py  — 知乎爬虫(问答/专栏/评论)
│   └── models.py         — 数据模型
├── pipeline/
│   ├── pipeline.py       — Pipeline 编排引擎
│   ├── processors/       — 处理器实现
│   │   ├── parse.py      — URL 解析
│   │   ├── download.py   — 内容下载
│   │   ├── asr.py        — 语音识别
│   │   ├── analyze.py    — 深度分析
│   │   └── archive.py    — 归档
│   ├── platforms/        — 平台适配器
│   │   └── zhihu.py      — 知乎适配器(使用 ZhihuCrawler)
│   └── schemas.py        — 数据模型
└── deep_analyzer/        — AI 分析器