- Add complete skill set including feishu, github, ci-gen, etc. - Add workspace documentation (AGENTS.md, SOUL.md, etc.) - Add memory system and project context
5.8 KiB
Obsidian KB 技能开发 - 执行计划
项目: obsidian-kb-complete
目标: 构建多源内容知识库维护系统,含长视频分段分析
执行方式: 多代理并行
验收标准: 所有测试通过,代码提交至Git
代理分配
| 代理 | Checkpoint | 任务 | 依赖 | 模型 |
|---|---|---|---|---|
| 代理A | 1-2 | 项目脚手架 + 数据模型 + 存储 | 无 | kimi-coding/k2p5 |
| 代理B | 3 | B站适配器 | 代理A的models | kimi-coding/k2p5 |
| 代理C | 4-5 | 内容管道 + 长视频分段 | 代理A的models, config | kimi-coding/k2p5 |
| 代理D | 6 | CLI命令 | 代理C的pipeline | kimi-coding/k2p5 |
| 代理E | 7-8 | 模板 + 测试 + 文档 | 全部 | kimi-coding/k2p5 |
代理A: 项目脚手架与数据模型 (~60min)
Checkpoint 1: 项目脚手架
任务A1.1: 创建目录结构
- Action: 创建
skills/obsidian-kb/及所有子目录 - Verify: 目录结构完整
任务A1.2: 创建 SKILL.md
- Action: 编写技能元数据、命令列表、使用说明
- Verify: 包含所有6个命令
任务A1.3: 创建 requirements.txt
- Action: 列出依赖: requests, pyyaml 等
- Verify: pip install -r requirements.txt 成功
Checkpoint 2: 核心数据模型
任务A2.1: 实现 models.py
- Action: 定义 Content, ContentType, ContentStatus 类
- 字段: id, source, url, title, author, duration, transcript, etc.
- Verify: 可以创建实例并序列化
任务A2.2: 实现 config.py
- Action: 配置读取,支持 config.yaml
- Verify: 能读取API key, git配置, chunking配置
任务A2.3: 实现 storage.py
- Action: Inbox/Topics存储,JSON文件管理
- Verify: 能存取Content对象
任务A2.4: 实现 git_sync.py
- Action: Git仓库初始化、commit、push
- Verify: 能创建测试文件并推送
代理B: B站适配器 (~45min)
Checkpoint 3: B站适配器
前置条件: 代理A的 models.py 完成
任务B3.1: 实现 sources/base.py
- Action: 定义 SourceAdapter 抽象基类
- 方法: fetch_new(), extract_content(), get_transcript()
任务B3.2: 实现 sources/bilibili.py
- Action: B站API封装
- fetch_new(): 获取收藏夹视频列表
- extract_content(): 从URL提取视频元数据
- get_transcript(): 获取字幕(使用B站官方API)
- Verify: 能获取真实B站视频信息和字幕
任务B3.3: 实现 sources/__init__.py
- Action: SourceRegistry 注册表
- Verify: 可以通过名称获取适配器
代理C: 内容管道与长视频分段 (~75min)
Checkpoint 4: 内容处理管道
前置条件: 代理A的 models.py, config.py 完成
任务C4.1: 实现轻量扫描
- Action: 调用AI生成一句话摘要、关键词、质量评分
- Verify: 输入URL输出评分对象
任务C4.2: 实现深度分析基础
- Action: 根据duration选择分析策略
- Verify: 短视频(<10min)和长视频(>10min)不同处理
任务C4.3: 实现 pipeline.py
- Action: 整合轻量扫描→入库→深度分析→生成笔记→Git同步
- Verify: 端到端流程可运行
Checkpoint 5: 长视频分段分析
任务C5.1: 实现 content_chunker.py
- Action: ContentChunker类,chunk_by_duration()方法
- Verify: 能按时间分割SRT字幕
任务C5.2: 实现分段策略
- Action: get_chunking_strategy()函数
- 策略: <10min直接, 10-30min截断, 30-60min分2段, 60min+每15分钟一段
任务C5.3: 实现AI客户端分段逻辑
- Action: _analyze_in_chunks(), _analyze_chunk(), _merge_summaries()
- Verify: 长视频能正常分析不报错
代理D: CLI命令 (~40min)
Checkpoint 6: CLI命令
前置条件: 代理C的 pipeline.py 完成
任务D6.1: 实现 cli.py 框架
- Action: argparse命令解析框架
任务D6.2: 实现 /kb-subscribe
- Action: 订阅B站收藏夹/UP主
- Verify: 配置能保存到config
任务D6.3: 实现 /kb-inbox
- Action: 显示待处理列表
- Verify: 显示标题、评分、摘要
任务D6.4: 实现 /kb-process
- Action: 处理指定ID或全部
- Verify: 能调用pipeline完成分析
任务D6.5: 实现 /kb-skip, /kb-status, /kb-search
- Action: 跳过、状态、搜索命令
- Verify: 功能正常
代理E: 模板、测试与文档 (~45min)
Checkpoint 7: 模板与文档
前置条件: 全部代理完成
任务E7.1: 创建Markdown模板
- light_video.md, tutorial_video.md, article.md, topic_index.md
- Verify: 模板能正确渲染
任务E7.2: 实现 template_renderer.py
- Action: 根据content_type选择模板渲染
- Verify: 不同类型输出不同格式
任务E7.3: 完善 SKILL.md 和 README.md
- Action: 使用说明、配置指南、示例
Checkpoint 8: 测试与验证
任务E8.1: 编写单元测试
- Action: tests/test_*.py 覆盖核心模块
- Verify: pytest 通过
任务E8.2: 集成测试
- Action: 端到端测试完整流程
- Verify: 订阅→爬取→分析→同步
任务E8.3: Git提交
- Action: git add, commit, push
- 消息: "feat: implement obsidian-kb skill with long video chunking"
- Verify: 代码已推送到远程仓库
执行顺序
并行启动:
代理A (1-2) ─┬→ 代理B (3)
├→ 代理C (4-5) ─→ 代理D (6)
└→ 代理E (7-8, 等待其他)
验收标准
- 所有代理任务完成
- pytest 测试通过
- 能成功分析一个B站视频(含长视频分段)
- Markdown输出格式正确
- Git自动同步工作
- 代码已提交到Git仓库
计划已保存: memory/plans/obsidian-kb-execution.md
准备启动多代理并行开发?