social-account-doctor — 找对标 / 拆爆款 / 套自己
不挖钩子建仓库,不写诊断报告。 直接对着具体爆款 → 输出我的下一条笔记初稿(标题 + 封面大字 + 首段 + CTA)。
0. 闭环图
[我的原始素材(文档 / 图片 / 视频 / 非平台链接)] ← 新入口(compose)
│
▼ ⓪ compose (多模态解析 → 核心事实/独家要素/金句清单 → 5 维本质 → 信息缺口)
│
[我的账号 / 选题方向 / compose 画像]
│
▼ ① find (多模态识别本质 → 矩阵搜 → 相似度过滤)
[5-10 个真对标爆款]
│
▼ 人工勾选 3-5 条 ✋
[选定对标]
│
▼ ② crack
[每条 4 维钩子拆解(视觉/文字/口播/剧情)+ 综合权重 + 骨架 + 封面 + 标签]
│
▼ ③ adapt (有素材时:每个产出必须溯源到"对标公式 + 素材条目")
[3 标题 + 3 封面大字 + 1 段首段 + 1 个 CTA] → 可发
副产品(可选,必须问):crack 跑完后主动问用户「要把这些钩子积累到 ./assets/hooks-{platform}.md 吗?」 — 用户答 yes 才追加。不会自动写。库的质量由你把关,跑多了自然形成弹药库。
1. 输入路由
| 用户说什么 | 走哪个命令 |
|---|---|
| "找对标" / "我这个号有什么对标" / "扫一下同赛道" | find |
| "拆这条爆款" / "这条为什么爆" / "提取这条的钩子" | crack(单条) |
| "对着这条仿写" / "下一条该怎么写" / "套这条的钩子写一条" | crack + adapt |
| "我想发 XX 主题,有什么参考" / "缺爆款选题" | find + crack + adapt(全闭环) |
| "我有素材帮我写一条能爆的" / "这份文档/这组图/这段视频能出一条爆款吗" / "基于这些材料做一条" | compose + find + crack + adapt(素材打底全闭环) |
1A. compose 命令 SOP(素材 → 初稿的新入口)
触发:用户带着自己的原始素材(本地文档 / 图片 / 视频 / 非平台链接)+ 一句"帮我写一条能爆的"。 作用:跑在
find之前,把一堆散素材炼成"5 维本质 + 独家要素清单 + 信息缺口",让下游 find/crack/adapt 有的放矢、且不乱编素材。
输入
- 必选 1-N 份原始素材(任意组合):
- 本地文档
.md/.txt/.pdf→scripts/analyze_document.py <path>(md/txt 也可以直接 Read;pdf 走脚本) - 图片
.jpg/.png→scripts/analyze_image.py - 视频
.mp4/.mov→scripts/analyze_video.py - 非平台链接(文章 / 博客 / 新闻 / 自己的官网/产品页)→
WebFetch取正文
- 本地文档
- 必选:我的账号定位(一句话)+ 目标平台
- 可选:我想强调的卖点 / 情绪 / 必须保留的关键词
- 不走本命令:小红书 / 抖音 / 快手 / 视频号 / B 站 / 公众号链接 — 那些是"别人的爆款",直接走
crack
Step 1 逐份解析(多模态必跑,跟 find Step 1 对称)
每份素材都跑一次对应脚本,不要看一份就下结论。汇总成素材画像,5 个字段:
| 字段 | 说明 | 来源要标到具体素材 |
|---|---|---|
| 核心事实 | 3-5 条原子事实 | 每条标 [素材 X · 段落/时间戳] |
| 独家要素 | 其他人没有的点:人物 / 数据 / 画面 / 场景 / 金句 | adapt 强制嵌入,必须标来源 |
| 视觉素材候选 | 图片 / 视频帧 / 文档配图 | adapt 的封面直接从这里挑 |
| 情绪基调 | 全部素材汇总出的情绪色 | 后续 Step 2 的 5 维输入 |
| 信息缺口 | adapt 想成立但素材没覆盖的点 | 明文列,问用户不要编 |
Step 2 炼 5 维本质(复用 find Step 1 框架)
基于素材画像,按 find 的 5 维(载体形态 / 情绪锚点 / 审美风格 / 内容结构 / 反差点)推断这条内容应该长成什么样。输出形容词三元组 + 一句话定位。
这 5 维直接喂给 find → find 可以跳过自己的 Step 1(已经有 5 维了),从 Step 2 矩阵搜索开始。
Step 3 交棒 find → crack → adapt(素材模式)
后面三步的差异:
find:跳过 Step 1,直接用 compose 的 5 维跑 Step 2-5crack:完全复用 SOPadapt(素材模式,强制项):- 标题 / 首段 / CTA 各至少嵌入 1 条素材独家要素
- 封面大字优先从素材画像的"候选金句"里选
- 每个产出除了现有的"抄了对标什么 + 改了什么",加一行
用了素材:[素材 X · 具体要素] - 素材覆盖不到、只能走通用话术的位置,必须 ⚪ 推断 标记 — 用户看到就知道这块是脑补
- 缺口明显影响成稿时(例:素材里没有具体数字但对标都有)→ 停下来问用户补,不要编一个假数字
compose 的输出
落盘到 ./reports/{YYYYMMDD-HHMM}-compose-{素材短码}.md,含:
- 素材清单(文件名 + 字/帧/时长)
- 5 维本质 + 形容词三元组
- 独家要素清单(编号)
- 候选金句 / 视觉素材清单
- 信息缺口清单 → 给用户的补充素材请求(如有)
完整闭环跑完后,adapt 报告里必须含"素材溯源列" — 没有这一列视同半成品,不写盘。
compose 的铁律
- 素材全吃完再下结论:N 份素材全跑完解析再炼 5 维,不要跑到第 2 份就开写
- 不编独家要素(对齐全局 feedback
账号资料修改要斟酌的铁律 — 素材没给的不要凭空加):adapt 想写但素材没给 → 问用户或标 ⚪ 推断 - 素材优先于通用话术:adapt 的每一行能从素材抠出来的,就不要用通用公式兜底
- 每一行要能双向溯源:对标公式(抄了什么)+ 素材条目(用了什么)两头都挂得上钩
2. find 命令 SOP(5 步铁律)
输入
我的账号链接 / 我的某条笔记链接 / 一个选题方向("我想发 XX")
输出
5-10 个对标爆款链接 — 不是关键词搜出来的,是按内容本质过滤过的。
5 步(每一步都不能省)
Step 1 内容本质识别(必跑多模态)
输入是我的账号 / 笔记 → 调 analyze_image.py(封面)+ analyze_video.py(视频)→ 提取 5 个本质维度:
| 维度 | 例子(橘猫做大酱那条) |
|---|---|
| 载体形态 | AI 拟人化小动物(不是真人 / 真宠物) |
| 情绪锚点 | 怀旧 / 家乡味道 / 童年记忆 |
| 审美风格 | 暖阳 + 慢镜头 + 烟火气 |
| 内容结构 | 教程类(原料 → 成品全流程) |
| 反差点 | 可爱角色 × 硬核农活(核心爆点) |
输出:5 个维度的描述(每个 1 句话)+ 形容词三元组(如:AI 萌宠 / 怀旧 / 反差教程)。
Step 2 生成搜索词矩阵
5 个本质维度交叉组合 → 4-6 个搜索词:
维度1:「AI萌宠」 / 「拟人猫」 / 「萌宠成精」
维度2:「乡村美食」/ 「老家味道」/ 「童年回忆」
维度3:「治愈」 / 「烟火气」
维度4:「教程」 / 「手作」
维度5:「反差萌」 / 「猫师傅」
⚠️ 铁律:搜索词 = 单一 2-4 字本质维度词。
- 不要用宽泛选题词("东北大酱"会搜出真人假对标)
- 不要带空格组合("猫师傅 美食" 在 V1/V2 接口会 HTTPStatusError,要拆成 4-6 个单词分次搜)
Step 3 矩阵词并行搜索
每个矩阵词调一次 search → 按互动量倒序取 top 10 → 汇总到候选池(20-50 条,去重)。
工具:
- 小红书
xiaohongshu_app_search_notes(只用这个,V2/Web V2 全挂 — 见 §9.1) - 抖音
douyin_app_v3_fetch_video_search_result_v2 - 快手
kuaishou_app_search_video_v2 - 视频号
wechat_channels_fetch_search_ordinary(综合)+wechat_channels_fetch_search_latest(最新)双源对比 — 见 §9.2
接口失败兜底:连续 3 次 retry 失败 → 不再硬刚,让用户手甩 3-5 个对标链接 → 直接 fetch_feed_notes_v2(小红书)/ fetch_video_detail(视频号)→ 跳到 crack。
视频号特殊铁律:视频号客户端不输出可复制的链接 / 视频 ID(分享出去是卡片)。唯一入口是账号名/关键词搜索 → 锁定本号视频 → 拿 id。不要让用户提供"视频号链接",他给不出。
Step 4 多模态相似度过滤(必跑多模态)
候选池每条抽首图 → analyze_image.py → 按 5 维打分(0-1)→ ≥ 3 维相似才留。
⚠️ 代价警告:这一步 20-50 次 multimodal 调用,token 不便宜,但不能省 — 否则 find 出来的全是表面假对标,后面 crack/adapt 全白做。
Step 5 体量 + 活跃度过滤
| 条件 | 标准 |
|---|---|
| 粉丝量 | 我 ×1 ~ ×10(伙伴/榜样档,删大佬级和小白级) |
| 近 30 天发文 | ≥ 8 条(不活跃删) |
| 单条互动 | ≥ 该号近 30 天均值 × 3(爆款不是日常) |
| 排除 | 官方蓝 V / 单条 100w+ 异常爆(不可复制) |
→ 输出 5-10 个真对标 + 每个贴一句"为什么是真对标"(5 维相似度命中哪几维)。
find 的人工卡点
最后一步必须给用户看清单 → 用户勾选 3-5 条 → 没勾的不进 crack。
3. crack 命令 SOP
输入
1 个或 N 个对标爆款链接(一般是 find 勾选出来的)。
输出
对每条吐 4 维钩子拆解 + 3 行结构元素(不写诊断报告,不打分,只罗列可抄元素):
对标:@xxx 的「东北橘猫做大酱」(50w 赞 / 1.2k 评 / 30s)
钩子(4 维拆解):
├ 视觉钩:拟人猫脸大特写 + 田间背景,0.5s 内出"猫看着你"的目光
├ 文字钩:封面中部一行字(OCR bbox 366,604,546x71)+ 标题「人!」感叹号
├ 口播钩:「人!其实快乐很简单,跟me下乡吧!」— 拟人猫"对人喊话"的反差
├ 剧情钩:第一秒就破壁(猫张嘴说"人!")— 把"猫"和"观众"的层级倒过来
└ 综合:视觉 ×0.4 + 口播 ×0.6 = 治愈系反差钩 ← 主驱动力
骨架:原料展示 → 工艺过程 → 成品 → 情绪升华(4 段,命中骨架 A 场景+冲突+解决)
封面公式:D 实物展示 + 暖色高对比 + 主体居中(无大字) [🟢 跑了 multimodal / ⚪ 推断]
标签组合:#AI萌宠 #东北美食 #怀旧 #反差萌(4-5 个)
复用提示:[一句话 — 这条最值得抄的一个具体动作]
为什么 4 维:钩子不是"那一句标题",而是视觉+文字+口播+剧情的整体开场设计。综合权重决定仿写时的精力分配方向(哪一维占比 ≥ 0.5 = 死磕那一维)。
钩子积累(可选,必须问 — 不要自动存)
crack 跑完所有对标后,把完整 4 维钩子单元(不是单句)汇总打给用户看,主动问:
本次 crack 提取了 N 条 4 维钩子单元:
1. @xxx「跟me下乡」(9k 赞, 治愈系反差钩, 主驱动力=口播 0.6)
2. @yyy「比熊求职」(13k 赞, 共鸣型反差钩, 主驱动力=文字 0.7)
...
要积累到 ./assets/hooks-{platform}.md 吗?
- yes:4 维拆解格式全存
- "1,3":只存指定条
- no:本次不存(默认)
只有用户明确说要存,才 mkdir -p ./assets + 追加(按情绪锚点分类,再按主驱动力二级索引;追加不覆盖;首次创建时建好"索引 + 速查"骨架)。
不要默认存 — 自动堆出来的钩子库都是垃圾,库的价值在于人工把关。
crack 用到的术语
封面 ABCDE / 标题 1-10 / 骨架 ABC / 钩子 1-7 → 全部对齐 references/scoring-vocab.md。
4. adapt 命令 SOP
输入
- 我的账号定位(一句话,必须)
- crack 输出(1-N 个对标的元素清单,必须)
- 我想发的方向(可选,没有就基于 crack 推荐)
输出
直接给可发的:
标题候选(3 个,每个标注命中哪个公式):
1. 「[文案]」 — 公式 4 怕错避坑 + 改了 XX
2. 「[文案]」 — 公式 2 反认知 + 改了 XX
3. 「[文案]」 — 公式 6 身份共鸣 + 改了 XX
封面大字(3 个,4 字以内):
1. 「[大字]」 — 套对标的 D 模板,加大字升级到 A+D 混合
2. ...
3. ...
首段文案(≤ 50 字,命中钩子模板 N 号):
「[文案]」 — 抄了对标的 XX,我做了 YY 改动
CTA(命中互动钩子模板):
「[文案]」 — 套对标的"评论扣 X 送 Y"结构
adapt 的铁律
- 标题 / 封面 / 首段 / CTA 必须命中
references/scoring-vocab.md里的至少 1 个公式 - 每个产出必须标注「抄了对标什么 + 我做了什么改动」 — 防止抄到不可复制的部分
- 不要 4 个候选,就 3 个(多了用户选不动)
5. 输出位置铁律
完整闭环(find → crack → adapt)跑完,必须落盘到当前工作目录:
./reports/
{YYYYMMDD-HHMM}-compose-{素材短码}.md # compose 模式才有:素材画像 + 5 维 + 缺口清单
{YYYYMMDD-HHMM}-find-{我的账号末8位}.md # 5-10 对标 + 为什么是真对标
{YYYYMMDD-HHMM}-crack-{对标末8位}.md # 每条 4 行清单
{YYYYMMDD-HHMM}-adapt-{选题短码}.md # 标题 + 封面 + 首段 + CTA(compose 模式必须含"素材溯源列")
./assets/ # 副产品,跨任务累积
hooks-xhs.md / hooks-douyin.md / hooks-kuaishou.md
写盘前 mkdir -p ./reports ./assets。只跑了 1 个命令、半成品、接口失败 → 不写盘,只在对话里说。
5.1 PDF 输出(按需,不默认)
铁律:默认只输出 .md,不要主动生成 PDF。只有用户明确说「整理成 PDF / 出 PDF / 出一份 pdf 版」等才跑:
python3 ~/.claude/skills/social-account-doctor/scripts/render_report_pdf.py \
./reports/{report}.md
# 输出 ./reports/{report}.pdf (同名同位)
脚本特性:
- A4 + 思源黑体 (CJK 必装 Source Han Sans SC) + 粉色诊断主题
- md 中本地图片
自动 base64 内嵌(PDF 自包含,可单文件传播) - 富排版(卡片式 top N 对标 / TL;DR 红框 / 三图横排)需在 md 里直接写 inline HTML,CSS 已经准备好对应 class:
<div class="tldr"><div class="verdict">...</div>...</div>— TL;DR 高亮框<div class="card"><div class="card-img"><img/></div><div class="card-body">...</div></div>— 对标卡片<div class="user-img"><img/><div class="caption">...</div></div>— 三图横排
- 想保留中间 HTML 自己改样式:加
--keep-html
**何时主动询问 PDF