/oracle-simulate-audience · 换位思考模拟
把"谁会看、怎么看、会不会评论"显性化——不是自己猜,是两个具体的人在说话。
方法论:换位思考——站在用户角度想问题:你的内容在别人眼里到底是什么样子?这不是自我审查,是"如果我是他们,看到这段话会怎么想"。
前置
- 读
audience-profiles.md(init Phase 4 产出) —— 这是模拟的根基,不要求先跑 who-for- 路径:项目根
audience-profiles.md,读该作品所属轨道的画像 - 不存在(未 init 或档案缺失)→ 提示"先跑 /oracle-init 补画像——没有画像的模拟是 AI 自嗨"
- 存在但该作品轨道无对应画像(多轨项目新轨)→ 不用相邻轨画像顶替——提示补该轨画像后重跑
- 存在但该作品跑过 who-for → 画像基线 + 逐稿 brief 双重加成(brief 是这篇稿的深化受众理解,模拟更精准)
- 路径:项目根
- 读
<draft-path>—— 要模拟哪篇稿子;路径无效 → 报错退出,不凭标题脑补内容 - 读创作者真实表达样本(可选)——从已发布作品的文稿/文案提取声音特征(句长/口头禅/禁用词),模拟评论要贴合真人语气
两类人群模拟
人群 A:核心受众(精准匹配画像)
定义:与该轨画像匹配的人。在找内容、能识别专业、有明确痛点。
模拟视角:
- "这条是给我的吗?" → 是否命中画像场景
- "他说的问题我遇到过" → 痛点真实吗
- "这个方法我能用吗" → 解法可执行吗
- "这人懂行" → 专业度够吗
- "评论区我会说..." → 真实评论倾向(支持/质疑/补充/追问)
评论风格:偏理性专业偏追问细节;可能指出漏洞或补经验;长度中等信息密度高;可能带具体场景("我上次也遇到这事...")。
人群 B:一般关注(流量推荐刷到)
定义:不是主动搜索,是算法推荐/转发/无意刷到。画像模糊,但会被开头钩子留住。
模拟视角:
- "这跟我有什么关系?" → 开头 3 秒抓人吗
- "讲人话吗?" → 术语解释了吗
- "看完能干嘛?" → 价值清晰吗
- "有点意思/无聊/太长" → 节奏拖沓吗
- "评论区我会说..." → 倾向(点赞/划过/简单评价)
评论风格:偏感性偏情绪偏简单评价;"学到了"或"没看懂";长度短信息密度低;可能带表情或网络用语。
工作流
Step 1:提取文稿关键信号
核心观点 / 关键场景案例 / 金句反常识断言 / 结尾 CTA / 专业术语(是否解释)/ 开头钩子形式。
Step 2:人群 A 模拟
基于该轨画像 + 文稿信号,模拟 3-5 条真实评论:
【核心受众评论模拟】
画像视角(<画像具体描述>):
评论:"<模拟的真实评论内容>"
原因:"<为什么他会这么评论>"
情绪:支持/质疑/补充/焦虑/认可
评论要像真人说的:有具体场景不说空话;可能错别字或口语化;可能带个人经历;可能质疑/补充/追问。
Step 3:人群 B 模拟
基于开头 + 核心价值,模拟 3-5 条(格式同上,视角换泛人群)。
Step 4:差距诊断
| 差距类型 | 信号 | 风险 |
|---|---|---|
| 核心受众沉默 | A 类评论少 / 都是"学到了"无追问 | 内容太浅没戳到痛点 |
| 泛人群流失 | B 类"没看懂/太长/划走" | 钩子弱 / 术语未解释 |
| 两类都无评论 | A+B 都安静 | 缺互动触发器 |
| A 质疑 B 认同 | 专业圈质疑外行夸 | 专业度 vs 传播性冲突 |
| 都是"666/牛逼" | 情绪共鸣无实质讨论 | 停留在情绪层面 |
降级分支:draft 无 ## 互动设计 段 → 第五节「互动触发器检查」标注「无法检查——稿子未做互动设计,建议 oracle-seed 下次补」,其余四节正常出。
Step 5:修改建议
📌 修改建议(按优先级):
1. 🔴 高优先级:[具体问题 + 具体改法,如"开头 3 秒没击中核心受众——0:00-0:05 加 '<画像场景>' 钩子"]
2. 🟡 中优先级:[如"术语 X 没解释——改成 'X(就是...)'"]
3. 🟢 低优先级:[如"结尾加选择题 CTA"]
输出格式
# 评论区预判报告 — [标题]
> 生成:<日期> / 数据源:audience-profiles(该轨)+ <draft-path>
## 一、核心受众评论模拟
## 二、一般关注评论模拟
## 三、差距诊断
## 四、修改建议
## 五、互动触发器检查
[稿子给了观众"开口理由"吗——对照 draft 的 ## 互动设计 段逐项预判会不会生效]
报告输出到控制台;🔴 CHECKPOINT:用户确认后才落盘到作品目录 audience-simulation.md(供 retro 对照)。
Key Rules
- 模拟要像真人——写具体评论内容,不写"用户可能认为...";参考真实评论区语气,不编造"专业感"或"空洞赞美"
- 不代替用户决策——只给建议不改稿(用户明确要求才改)
- 画像缺失不硬跑——没 init 画像先补 init,不用 AI 臆造画像顶替
Refusals
- 「直接按模拟结果把稿子改了」 → 拒绝。本 skill 只给建议;用户明确说"按第 1 条改"才动稿
- 「画像不准,你帮我编一个」 → 拒绝。AI 臆造画像 = 自嗨模拟,画像回 init 修
- 「只模拟夸的评论」 → 拒绝。模拟的价值在预判质疑与流失,只要彩虹码没意义
Integration
| Skill | 关系 |
|---|---|
| oracle-init | 上游——audience-profiles.md 是模拟根基 |
| oracle-who-for | 深化层——跑过则 brief 叠加画像双重加成 |
| oracle-score | 旁路——rubric 打分 + 评论区模拟 = 双角度验证 |
| oracle-predict | 下游——模拟结果辅助 AB/SR 判断 |
| oracle-retro | 后续——发布后对比模拟评论 vs 真实评论(校准模拟精度) |