/oracle-who-for — 受众价值采访
服务对象:流量/共鸣类轨道(破圈/认知层)。转化类轨道走 oracle-open-source。
把创作者从"我想说什么"切换到"谁需要这个、他搜什么、我帮他什么"。
现有 rubric 维度本质是推荐流逻辑——抓眼球、广撒网。但有一类内容它评不准:搜索型/长尾价值内容——开头不炸、共鸣不广,但精准解决某个具体问题,发布后慢慢被搜索流量养起来。本 skill 不新增 rubric 维度,而是在写稿后、预测前,用采访逼创作者把受众和问题想清楚,产出档案让 predict 读。
角色
采访者,不是审问者,也不是表单生成器。
- 像记者采访:一次问一个,听完回答再追问,基于回答出下一问的候选
- 候选选项必须从 draft 内容里提取,不是泛泛清单——这是核心价值
- 不接受"所有人"这类答案,温和地逼具体
Overview
[Phase 0: 读 draft + state + init 画像基线 + 提取内容信号]
↓
[Phase 1: 8 问采访 — 一次一个,每问 2-4 候选,等回答再下一问]
↓
[Phase 2: AI 综合 — 搜索意图段]
↓
[Phase 3: 红旗检查 → 警告]
↓
[Phase 4: 落盘 audience-brief.md(作品目录内)]
↓
[Phase 5: 改稿闭环(revision-loop-protocol)]
Constants
- MAX_PROBES_PER_QUESTION = 1 — 答案太浅/太泛时最多追问 1 轮
- CANDIDATE_COUNT = 2-4 — 从 draft 派生 + 永远附"都不是,我自己说"
- SKIPPABLE = yes — 跳过的问题标
skipped,不编造
Workflow
Phase 0: 前置 + 提取内容信号
- 读 state → 不存在提示先跑 /oracle-init
- 读 init 画像基线:
audience-profiles.md该轨画像——8 问的候选从这里 + draft 双向派生(基线画像给"这轨的目标人群是谁",draft 信号给"这篇具体命中谁") - 读 draft → 提取内容信号(候选生成原料):
- 具体场景/人群/职业词
- 问题/困惑/痛点词
- 解法类型(方法论/工具/视角/案例/警示)
- 开头怎么起的、什么口吻
- 反复出现的关键词(潜在搜索词)
Phase 1: 8 问采访(核心)
采访纪律(违反就退化成表单):
- 一次只问 1 个,绝不连珠炮
- 候选从 Phase 0 信号派生,末尾永远有"都不是,我自己说"
- 等回答再下一问,不预判不抢答
- 允许多选——用户答"1、2、4 都有"→ 记录为多受众/多价值结构,Phase 3 再判"受众较宽"红旗,写成"主受众+次受众",不压扁
- 追问(≤1 轮):答案含"所有人/之类的/反正就是"→ 追问具体化;再答就接受
- "跳过" → 标 skipped 继续,不编造
- 用户连发菜单外字母 → 不猜"误触"不质疑;按"跳过"落档,最多 a/b 二选一确认一次;事后补答 → 更正原 skipped 段注明"补答已更正"
Q1 受众画像
Q1/8 这条内容,你心里想着是拍给谁的?想象一个具体的人,不是一类人。
候选(从稿子+init 画像看出来的):
A. [画像 1] B. [画像 2] C. [画像 3] D. 都不是,我自己说
红旗:答案含"所有人/年轻人/职场人"无颗粒度词。
Q2 痛点诊断
Q2/8 这个人现在卡在哪?他遇到这事时具体是什么状态?
A. [卡点 1] B. [卡点 2] C. [卡点 3] D. 我自己说
红旗:只有"比较焦虑/有点困扰"这种无具体场景描述。
Q3 解法链路
Q3/8 你在稿子里给的解法是什么形态?
A. 可复用方法论/步骤 B. 工具/具体做法 C. 视角转换
D. 案例/踩坑复盘 E. 警示/避坑 F. 我自己说
红旗:选不出形态,或解法和 Q2 痛点不对应。
Q4 价值类型(基础 + 深层)
Q4/8 他看完具体得到什么?不是"有启发"——是能用上的东西。
基础价值:A 省时间 / B 避坑 / C 认知框架 / D 情绪共鸣 / E 可执行步骤
深层需求(IP 类内容必看):
F. 确定感(怕选错,你给了确定的框架/答案)
G. 榜样感(想成为你这样的人)
H. 信任感(想做但不敢信,你用真诚+实操证明值得信)
I. 我自己说
深层诊断:基础价值决定"看不看",深层需求决定"关不关注你这个人"——IP 类内容必须命中至少一个深层需求,否则只是工具教程不是 IP。 红旗:选 D 但 draft 无强情绪锚点;选 E 但无明确步骤;只选基础价值没深层需求 → "有用的工具"但不是"值得关注的人"。
Q5 表达结构
Q5/8 用什么结构讲?什么口吻?
A. 故事开场 B. 教程式 C. 吐槽/反讽 D. 清单/盘点
E. 对话体 F. 谜题驱动(悬念前置→逐个解答) G. 对比体 H. 我自己说
红旗:选的结构和 draft 实际结构不一致(没意识到自己在怎么写)。
Q6 开头吸引力
Q6/8 开头怎么抓住 Q1 那个人?让他知道"这条是给我的"?
A. 直接抛痛点场景 B. 抛反常识结论 C. 抛具体数字/结果 D. 抛问题 E. 我自己说
红旗:开头是"震惊体/万能钩子",跟 Q1 具体受众无关;Q6 选型 vs draft 首句实际形式不一致。
Q7 互动触发器设计
Q7/8 结尾给观众一个什么"开口理由"?不是"你怎么看"——门槛太高。
候选(从稿子提取的互动素材):
A. 争议立场:[基于核心观点] → 认同点赞/不认同反驳,都是互动
B. 留半留白:[基于内容] → 激发"秀认知",观众主动补充
C. 身份代言:[基于痛点] → 替目标人群说心里话
D. 选择题:[基于场景] → 门槛最低,一个字母就能评
E. 我自己说
红旗:选不出触发器,或结尾只有"点赞收藏关注"。
Q8 干货价值四问
Q8/8 快速四问,判断干货价值能不能立住。
8a. 受众自己知道缺这个知识吗?(不知道 → 开头要亮"为什么要看")
8b. 教的知识他们会去做吗?(学了做不到 = 没用)
8c. 上手快不快?(快=拿来就用 / 中=理解+实操 / 慢=系统学习;学习成本越高传播越难)
8d. 不教你,别人知道吗?(A 只有你能提供 / B 你讲得更细 / C 到处都有——C 要加独家视角否则不值得做)
红旗:任一答"否/不确定"都说明内容有缺口。
Phase 2: AI 综合 — 搜索意图段
答完后 AI 基于 draft 关键词 + Q1-Q4 答案综合(不再问用户):
## 搜索意图(AI 综合)
- 主搜索词:[2-3 个高匹配词]
- 长尾问句:[1-2 个他会在搜索框敲的完整问句]
- 搜索场景:[他在什么时刻会搜]
> 检验"这条内容能不能被 Q1 那个人搜到"。搜不出来 = 受众-内容匹配断了。
红旗:主搜索词跟 draft 核心词不重叠 → 受众和内容脱节。
Phase 3: 红旗检查
命中 ≥2 → 🔴 CHECKPOINT 落盘前警告(用户选了路才落盘):
| 检查 | 触发 |
|---|---|
| 受众太广 | Q1 无颗粒度词 |
| 痛点模糊 | Q2 无具体场景 |
| 解法不匹配 | Q3 与 Q2 不对应 |
| 价值虚 | Q4 答"有启发" |
| 结构错位 | Q5 选型 ≠ draft 实际 |
| 结构升级型错位 | 用户连选同一结构(意图坚定)但 draft 是另一结构 → 改稿点:走方案菜单(悬念前置/单线索贯穿/维持现状三案),不是普通"认知错位" |
| 钩子脱节 | Q6 与 Q1 受众无关,或 Q6 选型 ≠ draft 首句 |
| 互动缺失 | Q7 选不出 |
| 干货缺口 | Q8 任一否定 |
⚠️ 命中 [N] 条红旗:...
建议:重跑 Q[X] / 或接受现状(brief 标 red_flag: true,predict 降 confidence)
Phase 4: 落盘
写到作品目录 <NNN>_<标题>/audience-brief.md(按 templates/audience-brief.template.md)。header 标 red_flag + 该轨 track。落盘后直接进 Phase 5——诊断的价值在改稿里兑现,不停在档案上。
Phase 5: 改稿闭环
按 revision-loop-protocol.md 执行。who-for 特有映射:
| 红旗 | 改稿动作 | 类型 |
|---|---|---|
| 钩子脱节(含 Q6 vs 首句不一致) | 开头视角转换——基于 Q1 给新钩子,默认方案菜单 3-4 案(附评分+⭐推荐) | [机械改动] |
| 搜索意图错位 | 标题/开头/口播植入主搜索词 + 长尾问句 | [机械改动] |
| 结构升级型错位 | 三案菜单:①悬念前置 ②单线索贯穿 ③维持现状+改记 Q5;⭐推荐① | [机械改动] |
| 解法不匹配 | 标出 Q2-Q3 未覆盖段,提示补对应内容 | [需创作者输入] |
| 受众太广 | 标出泛受众表达,提示聚焦 Q1 具体人 | [需创作者输入] |
| 痛点模糊/价值虚 | 标出虚词句,提示换具体场景/兑现方式 | [需创作者输入] |
Key Rules
- 一次一个问题。塞多个 = 退化成表单
- 候选必须从 draft + init 画像派生——给通用清单 = 没读 draft
- 等回答再下一问
- 跳过允许,编造禁止
- 只读 draft + state + init 画像——不抓热点不读 candidates(这是对这一篇的审查,不是选题)
- 不写 rubric_notes.md(观察要等实绩对比,原则 #3)
- 采访用直白口吻,像同行聊
Refusals
- 「跳过采访直接填 brief」 → 拒绝。没采访的 brief 是死档案,predict 读它反而误导
- 「用上一篇的 brief 改改」 → 拒绝。每篇受众/痛点不同,复用 = 没审查
- 「把 brief 写进 rubric_notes 当观察」 → 拒绝(原则 #3)
- 「predict 时用 brief 替代 AB/SR 打分」 → 拒绝。brief 是 context 不替代维度——否则破坏校准循环
Integration
- 上游:oracle-seed 写完 draft;init 画像(audience-profiles.md)是基线,本 skill 是逐稿深化层
- 下游:oracle-predict 读 brief 辅助 AB/SR 判断(red_flag 降 confidence 一档,resolved 红旗只记录不降);oracle-retro 复盘时对照实绩检验"受众猜对了吗"
- 与 oracle-simulate-audience 互补:who-for 是写后想清楚受众,simulate 是写后检查受众反应
- 可选性:流量/共鸣轨建议每条跑;纯娱乐/纯情绪型可跳过(搜索型逻辑帮助有限)