采集编排器
对标内容采集总指挥。识别链接类型并分流调用对应采集技能,入库后可选沉淀知识卡片与规律。
安装方法
- 先问使用者用的是什么 AI 工具,选项按这个顺序列:1. WorkBuddy 2. Claude Code 3. Codex 4. 其他(用户直接说工具名),回答记作 X
- 只安装给 X,不安装或链接其他任何工具:
-
X 是 WorkBuddy:把本技能下载后放进
~/.workbuddy/skills/(WorkBuddy 的技能目录;skills CLI 不支持 WorkBuddy,由你直接放置) -
X 是其他工具:
npx -y --registry=https://registry.npmmirror.com skills add https://modelscope.cn/skills/sunny31221/collect-orchestrator-buheliwa -a X -y(不带
-a会安装给本机所有检测到的工具,禁止;--registry为 npmmirror 镜像,保证国内不翻墙也能拉到 CLI) -
X 不在上述范围时,按该工具自身的技能机制安装,装完确认 X 能识别本技能即可
-
- 装完后询问是否现在使用本技能
核心原则
编排器只负责调度,不重复实现采集逻辑。每个平台采集技能独立维护,编排器串联它们形成完整流程。
触发场景
用户说以下任一种表述时使用本技能:
- "采集这条链接" + 具体链接
- "采集链接文档" / "采集链接清单"
- "入库这些内容"
- "采集并提取规律"
- "把这些素材采集下来"
完整流程
0. 目录检查
采集要写入 规律研究/ 和 知识库/ 下的既定目录。开始前看一眼这两个顶层目录在不在:
- 在 → 进第 1 步
- 不在 → 提示用户先运行「内容创作系统初始化」技能把目录建全,再回来采集
1. 识别链接来源
对话框输入:
- 用户直接在对话中发送链接
- 立即识别链接类型并采集
链接文档输入:
- 读取
AI第二大脑/规律研究/对标内容采集/对标采集内容链接.md - 逐行解析未标记「已入库 ✓」的链接
2. 链接类型识别
根据 URL 特征判断平台:
| 平台 | URL 特征 | 调用技能 |
|---|---|---|
| 小红书 | xiaohongshu.com / xhslink.com | xiaohongshu-collect-buheliwa |
| 公众号 | mp.weixin.qq.com | crawl-wechat-buheliwa |
| YouTube | youtube.com / youtu.be | youtube-collect-buheliwa |
| 视频号 | channels.weixin.qq.com / weixin.qq.com/sph | channels-collect-buheliwa |
3. 分流采集
小红书(链接):
调用 xiaohongshu-collect-buheliwa,附上笔记链接。
小红书(社媒助手 JSON): 读清单时遇到 JSON 数据包(社媒助手复制的笔记 JSON),同样交给小红书采集技能走 JSON 模式——JSON 与链接只是输入形式不同,产出完全一致:
调用 xiaohongshu-collect-buheliwa,附上 JSON 数据包。
公众号:
调用 crawl-wechat-buheliwa,附上文章链接,归档目录指定为 AI第二大脑/规律研究/对标内容采集/公众号。
YouTube:
调用 youtube-collect-buheliwa,附上视频链接。
取官方字幕转逐字稿 + 封面 + 播放数据,落 02_内容信息.md + 04_文案结构化梳理.md + 05_视频脚本.md
视频号:
调用 channels-collect-buheliwa,附上视频链接。
下载视频(转写完删原片)+ 转写逐字稿 + 抽封面,落 02_内容信息.md + 04_文案结构化梳理.md + 05_视频脚本.md
4. 采集后处理
4.1 回写标记归采集技能,编排器不代写
「已入库 ✓ 日期」标记由采集技能在采完那一条时写进链接文档(它自己知道什么时候采完)。编排器读链接文档是为了知道还剩哪些没采,不代写、不补写、不重复写——同一件事只留一处。
4.2 链接归档(每批采集跑完追加到 CSV)
每次采集跑完,立刻归档一次——不让链接文档无限变长,同时留一份能拿来做统计的台账。
动作:采集完成后运行随技能附带的脚本:
python3 "<技能目录>/scripts/archive_links.py"
脚本自己找项目根(往上找含 AI第二大脑 的目录),扫链接文档里所有带「已入库 ✓ 日期」的行,追加进:
AI第二大脑/规律研究/对标内容采集/对标内容采集归档.csv
CSV 字段:平台, 链接, 入库日期, 状态, 素材文件夹
路径写法:本技能引用的目录一律按文件夹名书写、不带编号;实际目录带数字编号前缀时,忽略前缀按名字匹配。
去重与追加:
- 以链接为唯一键,已记过的链接不重复追加
- 同一链接的入库日期变了 → 更新那一行
- 没带的
素材文件夹列留空,需要时人工补
其他说明:
- 脚本纯标准库,不需要额外装东西;首次运行自动建 CSV 并写表头
- 用户说「归档链接」时手动跑一次也可以
- 未入库的链接不记——CSV 只装已入库的
- 旧的按月份文件归档(
链接归档/YYYY-MM_链接归档.md)不再使用
4.3 结构化梳理(关键步骤)
所有平台统一要求:采集后必须生成 04_文案结构化梳理.md(中心思想 + 主段分析)。
四个平台共用一套编号:
| 编号 | 装什么 |
|---|---|
| 01_原始素材/ | 01-封面图/ + 02-正文图片/(图文型才有)。原片不存,转写完即删 |
| 02_内容信息.md | 元信息 + 原文正文 |
| 03_图片文案原文.md | 图片 OCR 原文(只有图片笔记有) |
| 04_文案结构化梳理.md | 中心思想 + 核心论点 + 逐段梳理 |
| 05_视频脚本.md | 视频转写(只有视频型有) |
原文的载体各平台不同:图文型原文在 03_图片文案原文.md(公众号的正文在 02_内容信息.md 里),视频型原文在 05_视频脚本.md。结构化梳理件是在原文之上做概括与归类,与原文两份并存、不互相替代。
理由: 规律提取需要统一的结构化输入格式。
5. 知识卡片沉淀(关卡 ①)
采集完成后,先自己判断这条素材里有没有值得存的知识点——判断标准是「这个内容以后写文章或做选题时还能用得上吗」:
| 判断信号 | 依据 | 例子 | |---|---|---| | 教程 / 步骤 | 素材给了具体做法、操作流程 | 安装配置步骤、工作流怎么搭 | | 原理 / 机制 | 讲清了一个东西为什么这样运转 | 渐进式披露为什么省 token | | 概念 / 对比 | 定义了一个概念,或讲清两个东西的区别 | 买点 vs 卖点、Skill 和 MCP 的区别 | | 工具 / 方法 | 介绍了一个工具怎么用、一个方法怎么套 | 某个命令的用法、一套判断框架 |
判断结果决定分岔:
- 有值得存的 → 走下面的询问格式问作者
- 没有(纯故事、纯情绪、纯数据罗列、素材本身就是广告)→ 不问,静默跳过,继续走规律提取那一步
- 作者明确说过要存 → 跳过判断,直接调
thought-card-buheliwa
宁可少问也别硬问——每条素材都问一遍,作者会被问烦。一条素材里值得存的点通常只有一两个,多的时候把最值得的先问。
询问用户时,必须先把卡片里大概会写什么讲出来——只问「要不要沉淀」作者没法判断。说清三件事:这条素材里的哪个知识点、这张卡片大概会讲什么、它以后能用在哪儿。
询问格式:
这篇素材里有一个知识点值得存:<知识点名称>。
卡片大概会写:<2-3 句说清这张卡片的内容——是什么、解决什么问题、关键做法或判断标准>
以后能用在哪:<写文章时当论据 / 做选题时的参考 / 回答问题时的现成答案>
要沉淀成知识卡片吗?
例子:
这篇素材里有一个知识点值得存:「买点 vs 卖点的区分」。
卡片大概会写:卖点是从自己产品出发的参数(蛋白棒含多少蛋白质),买点是买家生活场景里的具体结果和情绪(减脂期扛饿)。判断买点的方法是从真实服务里听客户的语言,不是拍脑袋猜。
以后能用在哪:写营销类、创作类文章时当核心论据;做选题时可直接变成一个选题。
要沉淀成知识卡片吗?
用户同意 → 调用 thought-card-buheliwa 提取并落盘到 AI第二大脑/知识库/(落盘时沿用上面说的知识点名称与概括,不再重写一遍)
6. 采集之后的串联流程(三道关卡 + 交接写作)
采集和梳理做完(素材落盘 + 04_文案结构化梳理.md 写完),接着走这条链。三道关卡互不牵连:每关问一句,作者点头就做、摇头就只跳过这一关,接着问下一关——关卡②不沉淀规律卡片,照样会问关卡③要不要进选题池。整链只有一处 AI 自己关门判断(关卡①的「有没有值得存的知识点」,见第 5 节),其余判断要么看作者指令、要么作者拍板(2026-09-15 作者定)。
采集 + 写 04_文案结构化梳理.md
↓
关卡 ①:知识卡片(见第 5 节)
点名 → 直接存;没点名 → 先判断有没有值得存的,有才问;跳过就继续下一关
↓
关卡 ②:规律沉淀(调 pattern-extractor-buheliwa 抽规律、写底稿)
├─ 作者点名 → 直接落卡
└─ 没点名 → 问一句「要不要沉淀为规律卡片」→ 是则落卡 / 不是则跳过
(两种情况都继续关卡③)
↓
关卡 ③:选题池
说清这条素材给了什么可写的角度 → 是则写进 选题池/选题池.md
并直接给 3-5 个现在就能写的选题 → 候选就绪
否 → 流程结束(关卡③是最后一关)
↓
交接写作流程入口 A(选哪个、写不写,由写作流程问)
6.1 规律沉淀(关卡 ②)
调 pattern-extractor-buheliwa 抽规律、写底稿。做完之后:
作者点名沉淀 → 直接落卡,不再询问,继续关卡③。
没点名 → 说清卡片会写什么,问一句:
这批素材里的「<做法名>」可以写成规律卡片。
卡片会写:<一句话说清这条规律是什么、怎么用>
要沉淀为规律卡片吗?
- 是 → 落卡,继续关卡③
- 不是 → 不落卡,跳过这一关、继续关卡③(不是结束整条链)
不看数量(2026-09-15 作者定):不数「够几条证据」、不设待确认池、无观察池——落不落卡只由作者拍板。
6.2 沉淀到选题池(关卡 ③)
这次采的素材里,「<素材带来的启发>」跟你的定位对得上,可以进选题池。
要沉淀到选题池吗?
- 是 → 调
topic-generator-buheliwa,把这次的素材与启发写进选题池/选题池.md,并直接给 3-5 个现在就能写的选题 → 候选就绪 - 否 → 流程结束(关卡③是最后一关)
选题一次给 3-5 个,只给作者现在写得动的(有素材、能查证、符合定位),凑不出 3 个就给 1-2 个并说明原因。
6.3 交接写作流程
候选就绪即交接——作者站在写作流程的入口 A(从选题池挑一个开工)。选哪个、写不写,由写作流程去问;采集侧收尾在「候选就绪」(2026-09-15 作者定:原来在采集侧问的「要写哪个」已移交写作流程)。
见 01-写作流程图/写作流程-观点到成稿.md。
7. 规律卡片落盘
AI第二大脑/规律研究/内容规律/<平台>/
├── 01_开头规律卡片/
├── 02_标题规律卡片/
├── 03_正文结构规律卡片/
└── 04_封面规律卡片/
人工确认边界(2026-09-15 定):
- 作者点名沉淀 → 直接落卡,不问
- 没点名 → 说清卡片会写什么问一句;说是则落卡、说不是则不落(不看数量、不设待确认池、无观察池)
使用示例
示例 1:对话框单条采集
用户:
采集这条小红书:https://xiaohongshu.com/explore/xxx
执行:
- 识别为小红书链接
- 调用
xiaohongshu-collect-buheliwa - 采集后生成
04_文案结构化梳理.md - 采集技能回写链接文档(追加链接 + 标记「已入库 ✓ 2026-09-11」)
- 询问:"这篇素材里有一个知识点值得存:「XX」。卡片大概会写:……。以后能用在哪:……。要沉淀成知识卡片吗?"
- 走三道关卡:知识卡片 → 规律沉淀 → 选题池(见第 6 节)
示例 2:批量采集链接文档
用户:
采集链接文档里的所有内容
执行:
- 读取
对标采集内容链接.md - 逐行解析未标记的链接
- 按平台分类:小红书 5 条、公众号 3 条、YouTube 2 条
- 并行调用对应采集技能
- 每条采集完成后标记「已入库 ✓」
- 全部完成后询问知识卡片沉淀
- 按平台逐条走三道关卡(见第 6 节)
示例 3:主动提取规律
用户:
采集这条公众号文章,并把它的结构沉淀成规律
执行:
- 调用
crawl-wechat-buheliwa采集 - 生成
04_文案结构化梳理.md - 采集技能回写链接文档
- 跳过知识卡片询问(用户已明确要求提取规律)
- 立即调用
pattern-extractor-buheliwa(作者已点名沉淀,直接落卡,不问数量) - 规律卡片落盘
示例 4:关卡②被跳过,照样走关卡③
场景: 采完一条小红书,作者在关卡②说「这批不沉淀规律卡片」。
执行:
- 关卡② 记下「不落卡」,不结束整条链
- 继续关卡③:说清这条素材给了什么可写的角度,问要不要进选题池
- 作者说是 → 调
topic-generator-buheliwa写进选题池/选题池.md,给 3-5 个现在就能写的选题 → 候选就绪,交接写作流程入口 A - 作者说否 → 流程结束(关卡③是最后一关)
要点: 三道关卡互不牵连,某一关答「不」只跳过这一关;只有关卡③答「否」才是流程结束。
常见问题
1. 链接文档在哪里?
默认路径:AI第二大脑/规律研究/对标内容采集/对标采集内容链接.md
2. 为什么视频也要生成 04_文案结构化梳理.md?
规律提取需要统一的结构化输入格式(中心思想 + 主段分析)。视频只有转录文本无法直接提取规律,必须先进行结构化梳理。
3. 如何查看采集进度?
检查链接文档中的「已入库 ✓」标记:
- 未标记 → 未采集
- 已标记 → 已采集
4. 如何强制重新采集?
删除链接文档中对应行的「已入库 ✓」标记,再次调用编排器。
5. 链接文档会不会越来越长?
不会。每次采集跑完,脚本会把已入库的链接追加进同目录的 对标内容采集归档.csv(按链接去重,不重复记)。链接文档本身保持原样,作为「采过哪些」的记录;CSV 是可以直接拉去做统计的台账。用户也可以随时说「归档链接」手动跑一次。
少花调用次数
有些链路按请求次数计费(第三方兼容接口的每日额度多是这样),不按 token。一次模型回复里发多个工具调用,只算 1 次请求;串行一次发一个,就一次一个数。同一个任务排得好坏,能差三倍次数。
- 能串的串成一条命令:
python3 a.py && python3 b.py,中间结果用$(...)接住。互不依赖的命令别分成两次 Bash。 - 无依赖的一轮发完:抓取、下载、读文件这些互不依赖的动作,放在同一条回复里一起发。
- 脚本能批量就别逐条调:先看脚本的
--help,支持一次处理多条或整个目录的,就一次跑完。 - 输出要过滤:脚本输出配
head/grep再看。全量输出进上下文既拖速度,也容易把关键信息淹掉。 - 图片只存档,不进模型:下载下来的封面和正文图直接落位,不要用 Read 之类的读图能力打开看。图片进 API 会以 base64 文本计费,一张原图约十万 token,此后每轮请求都带着重发。确实要看图时,先跑
scripts/shrink.py压小,一次最多两张。
不做什么
- 不建目录——目录、入口文档与环境由
content-system-init-buheliwa一次建好 - 不采集内容——只识别平台、分流给对应采集技能
- 不写
04_文案结构化梳理.md——那是采集技能的事 - 不提取规律、不生成选题本身——关卡②调
pattern-extractor-buheliwa、关卡③调topic-generator-buheliwa,本技能只发起与串联 - 不代写「已入库 ✓」标记——标记由采集技能自己写(见 4.1)
依赖技能
| 技能 | 用途 | 需要提供 |
|---|---|---|
| xiaohongshu-collect-buheliwa | 小红书采集 | 笔记链接或社媒助手 JSON |
| crawl-wechat-buheliwa | 公众号采集 | 文章链接、归档路径 |
| youtube-collect-buheliwa | YouTube 采集 | 视频链接 |
| channels-collect-buheliwa | 视频号采集 | 视频链接 |
| thought-card-buheliwa | 知识卡片沉淀 | 待沉淀的观点或素材 |
| pattern-extractor-buheliwa | 规律提取 | 素材目录 |
channels-collect-buheliwa 的下载环节依赖第三方开源技能 download-wechat-channels,按它的说明安装;该技能未安装时提示使用者安装,不要自己实现下载。
错误处理
| 错误场景 | 处理方式 | |---|---| | 链接无法识别平台 | 跳过该链接,记录到错误日志,继续处理下一条 | | 采集技能调用失败 | 保留该链接未标记状态,报告错误,继续处理下一条 | | 链接文档不存在 | 由第 0 步自检自动创建 |
输出示例
✅ 采集完成:3 条成功,0 条失败
已入库素材:
- 小红书:001_如何用Claude Code搭建写作系统_xxx
- 公众号:002_AI写作的三个阶段
- YouTube:003_Agent编排实战_yyy
📊 素材统计:
- 小红书:13 条(达到阈值,建议提取规律)
- 公众号:5 条
- YouTube:2 条
💡 是否识别知识卡片?
这 3 篇素材里有 2 个知识点值得存:
1. 「XX 的安装方法」——卡片会写清三步安装与常见报错处理;以后写教程类文章可直接引用
2. 「YY 和 ZZ 的区别」——卡片会写两者的适用场景与选法;做选题时能直接变成一篇
要沉淀成知识卡片吗?
微信扫一扫