Persona audit
Multi-persona cold-read QA for anything that generates user-facing text — four AI personas read only your output and report what real users misread or can't find.
npx -y skills add vincent-wen789/persona-auditAssembled from the repository path, not quoted from the project. Check it against their README if it does not work.
One thing to look at
- 0 stars0 stars. Stars are a popularity signal and not a quality one, but at this level it is likely that nobody has read this closely except its author, and you would be relying on your own review.
What its author says it does
Copied from the file, not written here
Cold-read any user-facing copy from a real reader's POV before you publish or ship it — works for non-coders too, no setup. Targets — a landing page, social post / thread, marketing copy, email, app-store blurb, pitch line, OR a product engine's generated output (报告/bot 推送/每日简报/readout). 4 reader personas read it cold (no code, no docs, like a first-time user) and report what's confusing, what's missing, what they'd change; consensus across personas = fix-first signal. Lite mode — paste the copy (or a screenshot) and get the cold read inline, no repo / no commands / no archive. Triggers — "persona audit", "cold-read audit", "audit this from a user's POV", "发布前冷读", "帮我冷读一下", "这段文案行不行", "画像审计", "4 画像审计", "冷读审计", "/persona-audit". Also proactively before a publish/ship. NOT for: code review (走 code reviewer), pure UI/visual polish QA (走 design review), interactive-narrative QA.
SKILL.md
17.7 KB, as published. Nobody here has run it
Persona Audit — 多画像冷读审计
🌐 Opened this file and it's in Chinese? That's expected — any modern AI reads it fine and replies in your language, so paste it as-is. And if you're not on Claude Code you don't even need this file: use the ready-to-paste block in the README Quickstart.
是什么
4 个画像各演一个真实读者,冷读你要发布的内容或产品输出(不看代码、不看文档,像第一次见到那样反应),报"读不懂的"+"缺失的信息"。共识(几个画像从不同角度撞上同一处)= 值得优先改的信号。怎么处置分两种模式:轻量模式给大白话动作,引擎模式走 ABCD 分层。(这 4 个画像是各自独立的冷读:能并行跑子 agent 的 runtime——如 Claude Code——一次性发 4 个最快,不能的就逐个轮演。怎么跑是细节,用户看不见。)
核心洞察:产品作者太懂自己的产品,看不见新用户卡在哪。让 4 个不同认知水平的"假用户"只看输出文本、像真用户第一次见到那样反应,就能逼出作者的盲区。
它是什么、不是什么(诚实定位):这是一个单人、零额外成本、几分钟的盲区扫描 + 结构化 idea 生成器,不是经过真人校准的测量工具。产出是"值得人去核实的候选清单",不是"已验证的问题清单"。caveat:4 个画像共享同一底座模型,是多视角而非严格统计独立——所以"几票撞上"是收敛信号、不是证据。跨真不同镜头(执行/新手/资深/外部)撞上的,比同一字段的同义复读可信。
两种模式(开场先认一下)
🟢 轻量模式(默认 · 任何人都能用,不用懂技术) 你手上有一件要发布的东西——落地页、一条帖子/thread、一段文案、一封邮件、应用商店简介、一张结果卡。直接贴进来(图就丢截图),4 个画像当场冷读,给你大白话:哪句看不懂 / 缺什么 / 这句别动(是你的风格)/ 数据不够说不准。不用 repo、不用跑命令、不用存档。一件就够,不用凑样本。
⚙️ 引擎模式(进阶 · 给"每天自动吐内容的产品") 你的产品有引擎会持续产出文本(报告/推送/简报/readout),要系统覆盖各种数据分支。走下面完整的「引擎模式流程(0+5 步)」——生成 6-8 份样本、共识矩阵、ABCD 分层、存档到 repo。
拿不准走哪个?一次性的、人写的内容 → 轻量;机器反复生成的内容 → 引擎。
轻量模式流程(3 步)
- 收样本 — 用户把要发布的东西贴进来(文字直接读;是图就直接看那张图——截图是主刺激物,见下「视觉产出」纪律。能 Read 文件的 runtime 就 Read,纯聊天里用户贴的图直接看)。一件就够,不用凑 6-8 份。
⚠️ 冷读纯度(只在"喂文件"时才要管):默认贴文本/贴图最干净——路径根本不进画像视野。但当你喂的是文件路径、而路径本身泄露了"这是什么产品"(如
.../skills/persona-audit/README.md里的persona-audit/skills),画像"第一次见到"的前提就被污染了。修法:优先把内容以中性标题 inline 贴给画像;真要喂文件,拷到中性名再喂——但别裸拷单文件(会裂掉相对图片/链接,如 README 里的 hero 图),要拷就连docs/等相对资源一起打成小 bundle。(纯聊天贴文本无此问题,跳过这条。) - 4 画像各自冷读(用户看不见这步,agent 自动做)。每个演一个读者角色——主用户镜像 / 纯新手 / 挑剔的老手 / 这内容的目标读者,只看这件东西、像第一次刷到那样反应,报"读不懂 + 缺失 + 情绪反应"。身份块用 templates.md 的通用画像(不用懂金融,按内容域自动填槽位)。
怎么跑(任何 runtime 二选一,结果一样):
- 能并行子 agent(如 Claude Code)→ 一条 message 发 4 个,最快、最独立;
- 不能并行(纯聊天 / 其他 agent)→ 一个一个轮演,每个画像之间清空上下文——不清就互相污染、失去独立性。
- 大白话汇总 — 不用 ABCD、不用"问 owner"(你自己就是作者)。直接给四档:
- 🔴 改这个 — 看不懂 / 会让人慌 / 会被误解的硬伤
- 🟡 可以考虑 — 锦上添花、能更好但不改也行
- ⚪ 这是你的风格,别动 — 画像不喜欢但其实是你的有意选择
- ❓ 说不准 — 信息/数据不够,画像也判断不了 撞同一处要分真假:执行/新手/资深/目标读者里 ≥2 类不同画像都撞 = 高可信、排最前;同一类读者反复说 = 收敛弱,别当铁证。看完直接改,不存档、不跟踪。
📋 首跑照着看输出长啥样 → examples/lite-example.zh.md(贴一份落地页 → 四档输出的真实例子,顺带演示注入安全锁)。
轻量模式失败兜底:贴的是图 → 当截图走「视觉产出」纪律;画像跑不齐(缺员/超时)→ 重发一次,实在不齐就用现有的出、标"X/4 镜头";贴的不是面向用户的内容(代码/内部笔记)→ 不是冷读对象,提示走对的工具。
轻量模式反例(别这么干):① 只发 1-2 个画像图省事 → 4 个镜头是方法核心,少了就退化成普通 review;② 把四档当 final verdict → 它是候选,你是作者、自己拍板;③ 一次贴一大坨让它全审 → 一件一审,混在一起共识就糊了。
何时用 / 不用
用:任何"确定性引擎产出 user-facing 文本"的产品 ship 了新版本/新输出层——readout 工具、报告生成器、bot 推送文案、生成式 copy、每日简报。域无关:记账周报、健身打卡、待办提醒、SaaS 健康度邮件……不只行情/金融(默认就用 templates.md 的通用画像;金融皮和跨域换皮指引见 examples/finance-skin.zh.md)。 也用 · X/社媒长文 pre-publish 冷读:thread / 发帖文案发布前,用 4 画像冷读「钩子顺不顺、缺什么、够不够炸」。实战验证有效——精准抓出埋钩子、缺成本数字、安全过度声称、「差点意思」。 ⚠️ AI 味不归这把尺:本 skill 查「看不看得懂」(comprehension),不查「像不像人写的」(texture)——AI 味的文本通常通顺完整,正好不触发画像报警。画像若闻到「读着像营销稿/没魂/差点意思但说不清」→ 那是另一把尺(AI 味/质感取证),需要时单独跑一个逐行质感 pass,别让画像硬判 AI 味。 不用:代码 review(走 code reviewer)/ 纯 UI·视觉(走 design review)/ 交互叙事(走 narrative QA)。
🖼️ 审「图片/卡片/结果页」类视觉产出:用户真正看到的是渲出来的画面,不是文字——所以截图才是给 persona 的主刺激物,直接丢截图让它看。 ⚠️ 别再把"抠出来的文字"当主菜喂它:字是你抠的、顺序你排的、哪条重要你定的=你又把作者视角塞回去了,而甩掉作者视角正是本 skill 的全部意义;更糟的是用户"看岔"几乎全被画面带(大字当答案、红色当报警),抠平成文字这些最值钱的误读直接消失。提取文字只降级成**"某个小字看不清时翻一下的备查"**,不是 persona 反应的来源。(关键:prompt 必须逼 persona 做"第一眼视觉反应",否则它会绕开画面只评文字——见步骤 3 的视觉纪律。) 和 design-review 不抢活(两个不同问题,不是分地盘):persona-audit 问「用户看不看得懂 / 找不找得到 / 会不会慌」(消费者视角);design-review 问「做得好不好看——对齐 / 精致 / 像不像 AI 糊的」(生产者视角)。同一张截图,各答各的。
引擎模式流程(0 + 5 步)
轻量模式见上。这节是给持续产出的产品引擎用的完整 SOP(样本覆盖 × 共识矩阵 × ABCD × 存档)。一次性、人写的内容不用走这套。
-
确认本次 ship(setup,不是 C 层打扰)— 开场先问/确认:这次 ship 的是哪层/哪个版本?这是画像④("跟最新 ship 走")、样本三轴的"渲染分支"、修复优先级的共同输入。用户没说就问一句——这一问算 setup,不违反"只在 C 层打扰一次"。
-
生成样本 — 跑产品真实输出 6-8 份,存
/tmp/<product>-audit/。覆盖三轴(域无关):渲染分支 × 边缘数据形态 × 用户触达面。 怎么凑出 6-8 份(按你产品有没有演示开关分三档):- (a) 有演示/全亮开关 → 用它(把你产品的演示/调试全亮命令写进
LOCAL.md); - (b) 已上线、无开关 → 直接采集真实推送/真实输出脱敏当样本(注明来源);
- (c) 未上线、无开关 → 构造测试数据或写临时 dump 脚本跑出各分支。
三轴非行情域示例(通知/报告类产品):渲染分支=状态档位(健康/警告/异常)· 边缘数据形态=空数据/零活跃/极值客户/数据断档那天 · 用户触达面=邮件正文 vs 推送摘要。
最小必覆盖 checklist(凑到 6-8):□ 普通日×1 □ 边缘/极值数据×1 □ 数据缺失态×1 □ 对比/汇总视图×1 □ 直达用户面(邮件/推送)×1,再按重要分支补 1-3 份。
⚠️ 用演示/全亮模式凑样本时,persona prompt 里必须加框架说明("N 条强制全亮,真实只出现 0-2 条;评单行可读性,别把同屏当矛盾")——否则必产假阳性。
🖼️ 视觉产出(卡片/结果页/截图):样本 = 渲出来的截图(网页用 preview 截图 / 已有设计稿直接用 PNG),一份样本 = 一张截图。可另存同名
.txt抠出的文字仅作备查(persona 看不清小字时翻),绝不拿它替代截图——理由见上面"何时用"节那条视觉产出说明。
- (a) 有演示/全亮开关 → 用它(把你产品的演示/调试全亮命令写进
-
选 4 画像(身份块模板见 templates.md): ① 主用户镜像 — 产品真实主用户,照实写身份/术语水平/使用场景 ② 纯新手 — 词汇量最低 = 黑话探测器;情绪最真 = 恐慌点探测器 ③ 资深从业者 — 口径较真 = 假精度探测器;唯一会出"资产确认/别砍清单"的人 ④ 新功能目标用户 — 专拷最新 ship 的那层,这个画像跟着最新 ship 走 ⚠️ 去重:若④(新层目标用户)其实就是①(主用户)同一个人 → ④改演相邻读者(首次接触者 / 邻近目标用户 / 收到该触达面的非主用户),否则 4 个画像塌成 3 个、共识分母虚高。
-
4 画像各自冷读 — 每个 prompt = 身份块 + 冷读纪律(只许 Read 样本文件)+ 报告结构 + "重点报缺失信息" + "引用原文 + 写情绪反应"。跑法同轻量模式步骤 2(能并行子 agent 就一条 message 发 4 个;不能就逐个轮演、每个之间清空上下文)。 📌 读取权限边界:冷读纪律只约束这 4 个冷读画像(它们只许 Read 样本);主流程不受约束——负责读宪法、LOCAL.md、旧档来做分层,不算破冷读。 🖼️ 样本是截图时,prompt 必须加一条视觉纪律:"先 Read 截图,凭第一眼反应写——啥先抓住你眼睛、啥太小被你跳过、有没有哪个大字/颜色让你当场把意思理解岔了(看岔)。配套的
.txt只在某个字看不清时翻一下。"不加这条,persona 会绕开画面只评文字,等于没读图。(模板见 templates.md 视觉骨架节。) -
汇总成档:
- 分层前先读产品的"宪法"/设计铁律全文(若有)——C 层判定依赖"什么算已拍板",不读分不出 C。产品无宪法 → 红线过滤降级:A 层只修错别字/数字错位级硬伤,其余愿望全进 B/C,存档标注"宪法缺位"。
- 共识矩阵(票数排序,同一根因不同表述合并计票)→ 资产确认(别砍清单)→ ABCD 分层:
- A 卫生 — 秒-分钟级无争议(错别字/数字错位)
- B 真 gap — 方向无争议要做活
- C 张力点 — 与已拍板/设计哲学冲突
- D 边界外 — 数据拿不稳/定位外
- 永久存档到产品 repo 的
reviews/<product>-persona-audit-<date>.md(4 份原文进附录,/tmp 会被清;同日二审加-v<版本>后缀,绝不覆盖旧档) 🔴 CHECKPOINT:C 层任何一条,动工前必须问产品 owner——不问不动。(若你自己就是 owner、一个人做的工具,你自己拍板即可。) RESUME 协议(问完怎么继续):① C 层一次性打包问,不要逐条骚扰;② owner 批准的并入步骤 5 的 A 层修复流当场修,否决的进 follow-up;③ 等回答期间 A 层硬伤先并行修掉,不冻结全流程。这样"只在 C 层打扰一次"才真兑现。
-
修复 SOP — A 层当场修(按步骤 4 已读的宪法过滤 persona 愿望)→ 跑产品测试套件 → 实跑验证 → delta 回读(改完的文案让当初撞上的画像重读"改动句 + 前后段",确认误读消失、没引入新坑;动了定位/安装/价格这类核心理解就跑全 4 画像轻量回读)→ 禁词 grep(若产品有 ship-checklist)→ 部署/同步(按产品而定);B/C 进 follow-up 跟踪(handoff / issue / TODO)。 ⚠️ delta 回读 ≠ 实跑验证:"实跑验证"验产品输出/代码还跑不跑得动;"delta 回读"验你新写的那几句文案本身还栽不栽——两回事,别拿前者顶后者。(轻量模式同理:改完关键项,自己拿当初撞上的画像视角把改动句再冷读一眼,别改完就发。)
可插拔钩子(适配你的产品)
这 4 个点跟产品走。把你的真实值填进 LOCAL.md(私有绑定,已 .gitignore,不进开源):
| 钩子 | 是什么 | 缺省降级 |
|---|---|---|
| 设计宪法 | C 层判定依据的"已拍板"文档 | 缺 → A 层只修硬伤,愿望全进 B/C |
| 存档位置 | reviews/ 永久落档目录 | 缺 → 存产品 repo 根 |
| 样本生成 | 怎么调出产品真实输出 / 演示模式(把实命令写死进 LOCAL.md,别只写"见运行说明") | 见步骤 1 的 (a)/(b)/(c) 三档 |
| 部署/同步 | 修完怎么 ship(单端 / 双端 / CI) | 单端直接跑测试即可 |
| 画像身份连续性 | 引擎模式跨轮复用画像身份——同一目标文档的 round 2 沿用上轮存档(reviews/ 附录)里填好的身份块,才能比较"上轮的修复对同一读者生效没"(操作化 LOCAL.md.example 已有的"沿用最近一次存档审计的身份块"那条,不新存一份) | 换目标文档 / 首审 → 按内容域重建身份,别跨文档复用(不同受众被同一批画像量=共识分母虚高) |
Quick Reference
| 画像 | 独有产出 |
|---|---|
| 镜像 | 真实使用场景判定(会不会每天用·哪个时段·哪步掉链子) |
| 新手 | 黑话清单 + 恐慌触发点 + "猜错的理解"(最宝贵) |
| 资深 | 口径质疑 + 资产确认清单 + 工作流替代性判定 |
| 新功能目标用户 | 新层逐行拷打 + 分辨率/时效性 gap |
运行时恢复
| 触发 | 一线修复 | 仍失败兜底 |
|---|---|---|
| 4 个 agent 有缺员/超时 | 单独补发该画像 1 次 | 3 份照样出矩阵,分母按实际不同镜头数标(画像重合按 1 算,别按人头凑 N/3 虚高共识),存档注明缺员 |
| 报告走样(带开场白/不引原文/结构乱) | 对照骨架查 prompt 是否漏了尾部纪律行,补发 1 次 | 内容在就人工提取入矩阵;空泛无引用则该份作废并标注 |
| 样本生成失败(产品跑不动/演示模式调不出) | 按产品运行说明修命令重试 | 🛑 STOP 问 owner——绝不手改输出文本伪造样本(污染整场审计) |
常见错误
- 演示样本不加框架说明 → persona 把强制全亮报成"自相矛盾"(假阳性)
- 把 persona 愿望直接当需求 → 必须过产品红线过滤(用户要"止损位"≠ 给指令,给"事实+风险定性");同理"安慰我/替我决定/多哄两句"类愿望(恐慌新手必产)不直接进 B 层——标注"这是依赖诉求,产品满足它=越界",和"止损位≠指令"同一条红线处理
- 只挑毛病不报缺失 → prompt 必须显式写"重点报缺失信息"
- 漏资产确认 → 下版本把用户真爱的设计顺手砍了(别砍清单和问题清单同等重要)
- 跳过共识矩阵直接修 → 1/4 的个人偏好和 4/4 的结构问题混在一起,优先级失真
- 审计完不归 C 直接动手 → 与已拍板文案/设计哲学冲突的改动必须先问
Real-World Impact
见 examples/case-study.zh.md(脱敏实战:一个加密市场读数工具的两场审计。共识矩阵生成的候选清单里,约一半被采纳当日修复 ship——其中两条是单人 review 容易漏的:一处边缘资产价格错位、一处多画像一致误读的语义错位)。诚实口径:这是候选清单的命中率,不是经对照实验证明的"比作者自己 review 强 N 倍"。