cheat-on-audience
把短视频评论区变成可交互的知识图谱,并发布成人和 agent 都能读的形态。当用户说「分析我的评论区」「评论区图谱」「大家在关心什么」「评论区都在聊什么」「comment atlas」「把评论做成图谱」「把图谱发出去」,或者手上有一批评论数据想看出结构时使用。产出零依赖单文件 HTML(悬浮速览、点击看评论原文证据)、GitHub 首页可直接渲染的 mermaid 图、以及 agent 可 fetch 的 graph.json 和 digest.md。
ソース情報
- リポジトリ
- XBuilderLAB/cheat-on-audience
- ソースの最終更新活動
- 2026年8月1日 08:21
- 検出された SKILL.md の言語
- 中国語
- スター
- 18
- フォーク
- 5
インストール方法
デフォルトでは、最初にソースを確認する Prompt が選択されています。直接コマンドに切り替えるか、ローカルコピーをダウンロードすることもできます。
ソースファイルを確認
インストールを決める前に、SKILL.md と SkillsMP に表示されている付属ファイルをお読みください。
SKILL.md を表示中
SKILL.md
ソースの指示 · 読み取り専用プレビュー- name
- cheat-on-audience
- description
- 把短视频评论区变成可交互的知识图谱,并发布成人和 agent 都能读的形态。当用户说「分析我的评论区」「评论区图谱」「大家在关心什么」「评论区都在聊什么」「comment atlas」「把评论做成图谱」「把图谱发出去」,或者手上有一批评论数据想看出结构时使用。产出零依赖单文件 HTML(悬浮速览、点击看评论原文证据)、GitHub 首页可直接渲染的 mermaid 图、以及 agent 可 fetch 的 graph.json 和 digest.md。
# cheat-on-audience
把一堆散装评论变成一张有结构、可追溯的知识图谱。
核心主张:**单条评论没有价值,评论之间的关系才有。** 谁在关心什么、什么内容引出了什么讨论、哪些关注点总是同时出现、哪些提问从来没被回答过——这些只有连成网络才看得见。
## 什么时候用
- 用户想知道自己的观众到底在关心/焦虑什么
- 用户有评论数据(任何平台),想找选题缺口
- 用户想做「我分析了 N 条评论」这类元内容
## 六个阶段
### 阶段 1:拿到评论数据
按优先级尝试:
1. **用户已有导出文件** — 直接问路径。支持 JSON / CSV / 纯文本(一行一条)。
2. **iGrowth 插件已采集的数据**(如果用户装了)— 查 `~/.igrowth/opc-assets/runs/*/video-comments.json`,取最新且 `comment_count` 最大的一份。
3. **用户手动复制** — 让用户从创作者后台复制评论粘贴进来。
最低要求:每条评论至少有正文。有点赞数更好(权重信号),有来源视频最好(上下文)。
**不要写爬虫去抓平台数据。** 用官方后台导出、用户已授权的插件,或手动复制。
### 阶段 2:先看数据,再定 schema
**这一步不能跳。** 先采样 30-50 条评论读一遍,看清这个账号的评论区在聊什么,再决定关注点词表。
一个讲 AI 工具的账号和一个讲留学的账号,评论区的关注点维度完全不同。用通用词表抽出来的图谱是废的。
读完之后,把 `references/schema.md` 里的词表改成贴合这批数据的版本,再进入抽取。
### 阶段 3:逐条抽取
按 `references/schema.md` 对每条评论抽取结构化字段。
评论超过 200 条时,切成每批 ~130 条,用多个 subagent 并行抽取,每个 agent 写自己的 `extracted_N.json`。
**中文评论区必须处理的三件事:**
- `is_sarcasm` 阴阳怪气——字面正向实际负面,不处理整张图会歪
- `is_ask` 提问——这是内容缺口信号,最有商业价值的一类
- `is_win` 成果汇报——正反馈,是做案例内容的素材库
### 阶段 4:建图
```bash
python3 scripts/build_graph.py
```
读 `data/extracted_*.json` 合成 `data/graph.json`。每条边都挂评论原文作为证据——图谱里任何一个结论都能点回到具体是谁说的哪句话。没有证据的边不要建。
### 阶段 5:渲染
```bash
python3 scripts/render.py
```
产出 `atlas.html`——零依赖单文件,双击就能打开,也能直接发 Artifact 或推 GitHub Pages。
**不要引 CDN。** Artifact 的 CSP 会拦截外部请求,弱网也会白屏。渲染器里的力导向是手写的,200 行,不需要 d3。
### 阶段 6:发布(可选)
```bash
python3 scripts/export.py
```
一次生成四种分发形态:
| 产物 | 给谁看 | 怎么打开 |
| --- | --- | --- |
| `docs/index.html` | 人 | GitHub Pages,点链接就能交互 |
| README 里的 mermaid | 人 | GitHub 首页原生渲染,不用点任何链接 |
| `data/digest.md` | agent 和人 | 纯文本摘要,结论在前证据在后 |
| `data/graph.json` | agent | 完整结构化数据,含逐条评论证据 |
| `llms.txt` | agent | 资源清单入口 |
脚本会从 `git remote` 自动推断仓库地址补全链接;还没推送时用相对路径,推送后重跑即可。
mermaid 片段写在 README 的 `<!-- ATLAS:MERMAID:BEGIN/END -->` 之间,每次重跑覆盖。生成前会做语法自检——**首页渲染失败会显示一大块红色报错,比没有图更糟**,自检不过就不改 README。
开启 Pages:仓库 Settings → Pages → Source 选 `main` 分支的 `/docs` 目录。
**发布前必须确认**:`graph.json` 里含评论原文。虽然不含昵称和 UID,但仍是用户生成内容。公开仓库前要明确告知用户这一点,由用户决定。
## 渲染器的三层交互
1. 悬浮 tooltip — 类型、提及次数、最高赞的一条评论
2. 点击抽屉 — 全部关系 + 每条关系下的评论原文、点赞、来源视频、信号标记
3. 筛选 — 按节点类型、按信号(只看提问 / 只看成果 / 只看阴阳怪气)、全文搜索
悬浮只做速览,证据一定要放点击层——手机上没有 hover。
## 读取别人发布的图谱
这个 skill 也能反过来用——读现成的公开图谱,不用自己跑数据:
```
读一下 https://raw.githubusercontent.com/<owner>/<repo>/main/data/digest.md
```
要完整证据链就 fetch `graph.json`。结构:
```
meta { title, subtitle, stats, stance }
types { concern|persona|video|metaphor|coping: {label, color} }
nodes [ {id, type, mentions} ]
links [ {s, t, rel, w, ev: [{text, like, video, stance, sarcasm, ask, win}]} ]
```
## 产出解读
图建完后,主动给用户这几个结论,别只丢一个 HTML:
- **关注点 TOP 榜** — 按提及次数排
- **内容缺口** — `is_ask` 密集但你的视频从没正面回应过的关注点,这是被验证过需求的选题
- **共现簇** — 总是一起出现的关注点,说明观众心里它们是一件事
- **金句库** — 高赞 metaphor,直接可以当视频标题或结尾
- **成果案例** — `is_win` 的评论,是最好的社会证明素材
## 常见坑
- 评论数据通常没有单条时间戳(平台后台一般不给),所以时间维度只能用视频发布时间近似,别假装有精确的评论时间轴
- 只出现一次的关注点是噪音,建图时过滤掉
- 玩梗、纯打招呼的评论要保留记录但 concerns 留空,不要硬塞——否则关注点榜单会被垃圾词污染
- 抽取时 `text` 字段必须原样复制,一旦改写就失去了证据价值
GitHubで見る