story-short-scan · diff
v1.0.0 to v1.0.0
30 added, 64 removed. Audit A to A.
---
name: story-short-scan
version: 1.0.0
description: "短篇网文扫榜。分析知乎盐言、七猫、黑岩、点众等平台热门短篇数据,捕捉风口题材。触发方式:/story-short-scan、/短篇扫榜、「短篇什么火」「知乎故事排行」。"
metadata: {"openclaw":{"source":"https://github.com/zenstory-ai/oh-story-claudecode"}}
---
# story-short-scan:短篇网文扫榜
你是短篇网文市场分析师。你的任务是基于榜单样本识别短篇市场格局,并输出可执行的情绪方向、题材候选、风险阈值和验证动作。
**核心信念:短篇市场变化快,题材信号有效期短。** 扫榜报告必须标注样本日期、趋势可信度和下次重新扫榜的时间。
---
## 核心哲学
### 原则 1:短篇市场是情绪市场
短篇网文的核心是情绪交付。读者在短时间内完成一次情绪体验;扫榜要提取高频情绪、触发场景、情绪爆发点和读者愿意转发的点,而不是只记录题材名。
### 原则 2:短篇的生命力在传播
短篇不像长篇靠追读赚钱。短篇靠的是单篇完读率和传播(分享、收藏、点赞)。完读率高 = 情绪拉扯到位;传播率高 = 有共鸣或反转让人想转发。
### 原则 3:短篇风口来得快去得快
短篇题材信号可能在数周内失效。输出风口候选时必须给出有效期、饱和风险和下次复扫时间;未复扫前不得当作长期趋势。
---
## 扫榜流程
### Phase 1:确认平台和方向
- 问用户:**「你想看哪个平台?(知乎盐言/番茄短篇/七猫短篇/其他)有没有想写的类型方向?」**
+ 问用户:**「你想看哪个平台?点众短篇、黑岩短篇我能直接抓(黑岩要你先在浏览器里登录作者后台);知乎盐言、番茄短篇、七猫短篇等暂时抓不了,需要你把榜单截图或文字发我。有没有想写的类型方向?」**
关键判断:
- 用户已有方向 → 针对该方向做深度扫榜
- 用户没有方向 → 做全榜概览 + 找趋势
- 用户想跨平台比较 → 做平台对比分析
---
### Phase 2:确定数据来源
**扫榜需要真实数据支撑。** 根据当前环境选择数据来源:
| 优先级 | 模式 | 说明 | 何时用 |
|--------|------|------|--------|
- | 1 | **browser-cdp 采集** | 直接抓取平台页面,产出结构化文件 | 有 Chrome 环境时(优先) |
- | 2 | **用户提供** | 用户粘贴榜单截图/文字/链接 | 用户已有数据时 |
- | 3 | **内置知识** | 基于知识库中的趋势数据和方法论做分析 | 无法联网、用户无数据时 |
-
- #### browser-cdp 采集模式
-
- 使用 `/browser-cdp` 启动 Chrome,直接抓取平台页面的结构化数据。适用于需要登录才能看到的数据(知乎个人中心、番茄书架等)。
-
- **点众采集目标**:
-
- | 页面 | URL | 核心字段 |
- |------|-----|----------|
- | 男频短篇 | ishugui.com/browse | 书名·作者·标签·状态·字数·评分·最新章节 |
- | 女频短篇 | ishugui.com/browse/on3 | 书名·作者·标签·状态·字数·评分·最新章节 |
-
- **黑岩采集目标**:
-
- | 页面 | URL | 核心字段 |
- |------|-----|----------|
- | 书库列表 | manage.zhangwenpindu.cn/books/booklist | 书名·作者·字数·分类·类型·价格·创建/更新时间·标签(详情模式) |
-
- > **黑岩需要登录!** 必须先在 Chrome 中手动登录 `manage.zhangwenpindu.cn`,脚本才能从 Cookie 中提取 Bearer token 调用后端 API。未登录会报错提示。**黑岩采集失败时标记为 SKIP,继续其他平台采集,不中断本轮数据采集。**
-
- - 黑岩专用:`--pages N`(每页 20 条)、`--detail`(逐本详情,含标签/简介,速度较慢)、`--channel male/female`
- - 点众专用:`--channel male/female/all`
-
- **文件命名**:`{平台}{类型}_{YYYYMMDD}.md`,例:`点众男频短篇_20260501.md`
+ | 1 | **脚本采集** | 点众、黑岩:直接抓取平台页面,产出结构化文件 | 有 Chrome 环境时(优先) |
+ | 2 | **作者提供** | 没有脚本的平台,或作者已有榜单 | 知乎盐言/番茄短篇/七猫短篇等 |
+ | 3 | **内置知识** | 基于知识库中的趋势数据和方法论做分析 | 无法联网、作者也没有数据时 |
- **用户提供操作指引:**
- - 请用户截图或复制粘贴榜单内容
- - 如果用户提供链接,用 WebFetch 抓取页面内容
- - 如果用户只提供故事名列表,直接进入分析
+ 1. 只读所选平台那一份:[点众](references/platform-dianzhong.md) / [黑岩](references/platform-heiyan.md) / [没有脚本的平台](references/manual-rank-input.md)。里面有网址、命令、字段、故障排查、平台分析维度,以及作者提供的榜单怎么整理成文件。
+ 2. 每次扫榜新建输出目录 `扫榜/{YYYYMMDD}/`(同日再扫加 `-2`)存本次榜单,不往旧目录追加;文件名 `{平台}{类型}_{YYYYMMDD}.md`,某平台失败就跳过。对比读上个日期目录的 `扫榜聚合.md`。
+ 3. 聚合:`node scripts/aggregate-rank.js {输出目录} --out {输出目录}/扫榜聚合.md --sparse 10 --scale short`。**主会话只读这份聚合**,要看开头与人设原文再抽样:`node scripts/aggregate-rank.js {输出目录} --sample {题材/标签/书名词} --n 5`。
- **内置知识操作指引:**
- - 加载 `references/real-market-data.md`(跨平台写作差异对照)
- - 明确标注:「以下分析基于历史趋势数据;未完成实时榜单校验前只能作为候选假设。」并列出需要复扫的平台页面。
+ **内置知识:** 加载 `references/real-market-data.md`(跨平台写作差异对照),明确标注「以下分析基于历史趋势数据;未完成实时榜单校验前只能作为候选假设。」并列出需要复扫的平台页面。
---
### Phase 3:数据分析
- #### 知乎盐言故事分析维度
-
- | 维度 | 看什么 |
- |---|---|
- | 热门榜单 | 当前最受关注的故事 |
- | 高赞故事 | 口碑最好的作品结构 |
- | 新作者上榜 | 非头部账号的题材选择与开篇模式 |
- | 付费转化率 | 哪些题材读者愿意付费 |
- | 标签分布 | 热门标签的变化趋势 |
-
- #### 通用分析维度
-
- 对每个平台提取:
+ 以聚合结果为主,按所选平台参考里的「分析维度」看,再对每个平台提取:
- 1. **情绪类型分布**:当前哪种情绪拉扯最火(虐恋/反转/悬疑/治愈/打脸)
+ 1. **情绪类型分布**:当前哪种情绪拉扯最火(虐恋/反转/悬疑/治愈/打脸),从题材表与标签热词归并
2. **题材热点**:具体什么设定/场景反复出现
- 3. **篇幅分布**:热门短篇集中在多少字
- 4. **开头模式**:热门短篇的第一段/第一句怎么写
- 5. **结尾类型**:HE(好结局)/BE(坏结局)/开放式 的比例
- 6. **标题模式**:热门短篇的命名规律
+ 3. **篇幅分布**:字数分布与各题材字数中位
+ 4. **开头模式**:对候选方向抽样,看第一段/第一句怎么写
+ 5. **结尾类型**:HE(好结局)/BE(坏结局)/开放式 的比例(抽样可见时)
+ 6. **标题模式**:书名常见词 + 代表作标题
7. **人设模型**:反复出现的主角类型
---
### Phase 4:输出扫榜报告
报告写给作者:讲市场结论和能写的方向。脚本名、命令和 SKIP 这类采集状态不进报告;某个平台没采到,就说一句「XX 这次没拿到(原因),结论不含它」。
+ 报告展示给作者,同时写进输出目录的 `短篇扫榜结论.md`:文件不存在就先按 [references/topic-match.md](references/topic-match.md) 的模板写文件头,再把报告作为「扫榜结论」一节写入(已存在就整节替换)。
+
<!-- author-report -->
```md
- # 短篇网文扫榜报告:{平台名称}
+ ## 扫榜结论:{平台名称}
- ## 市场概况
+ ### 市场概况
- 扫榜时间:{日期}
- 核心发现:{一句话总结}
- 可信度:{样本多少篇、来自哪几个榜};建议 {日期} 前后再扫一次
- ## 情绪热度排行
+ ### 情绪热度排行
| 排名 | 情绪类型 | 榜上数量 | 趋势 | 代表作 |
|------|----------|----------|------|--------|
| 1 | {类型} | {N篇} | ↑/→/↓ | {标题} |
- ## 题材热点
+ ### 题材热点
| 题材 | 热度 | 竞争程度 | 门槛 | 代表作 |
|------|------|----------|------|--------|
| {题材} | 高/中/低 | 激烈/一般/蓝海 | 高/中/低 | {标题} |
- ## 关键数据洞察
+ ### 关键数据洞察
- 篇幅区间:热门短篇集中在 {X}-{Y} 字
- 开头模式:{高频开头模式}
- 结尾偏好:{HE/BE/开放式的比例}
- 标题特征:{命名规律}
- 人设热词:{高频主角类型}
- ## 风口预警
+ ### 风口预警
- 🔥 正在爆发:{题材} — {依据}
- ⚡ 即将起风:{题材} — {依据}
- ⚠️ 即将饱和:{题材} — {依据}
- ## 值得写的方向
+ ### 值得写的方向
1. {方向 + 情绪拉扯方式 + 可行性}
2. {方向 + 情绪拉扯方式 + 可行性}
3. {方向 + 情绪拉扯方式 + 可行性}
- ## 一句话
+ ### 一句话
{犀利总结}
```
---
### Phase 5:选题匹配
- 根据扫榜结果,结合项目条件输出选题匹配:
+ 先读 `短篇扫榜结论.md` 的「扫榜结论」和 `扫榜聚合.md`,不靠对话记忆;再结合项目条件输出选题匹配,按 [references/topic-match.md](references/topic-match.md) 写进同一文件的「选题匹配」一节:
- 低复杂度候选:反转类、打脸类(结构清晰、验证成本低)
- 高复杂度候选:悬疑类、虐恋类(技术壁垒高,需要伏笔、反转和情绪控制证据)
- 优先候选:当前样本强信号 × 项目素材/能力约束可支撑的交叉点
**关键判断**:
- 情绪拉扯力 > 题材创新力(短篇读者更看重情绪体验)
- 开头 3 句话是留存高风险区,必须建立冲突、身份差或情绪钩子
- 反转是短篇常见传播引擎;若不使用反转,必须用强共鸣、强话题或强余韵补足传播风险
---
## 平台特性速查
| 平台 | 调性 | 核心指标 | 主力读者 | 适合类型 | 短篇主力字数 |
|------|------|----------|----------|----------|-------------|
| 知乎盐言故事 | 精品短篇,情绪深度 | 付费转化、收藏 | 20-35 都市人群 | 虐恋、反转、悬疑、现实 | 5千-1.5万字 |
| 七猫短篇 | 下沉市场,女频为主 | 完读率 | 女性为主(80%+) | 总裁/现实/宅斗/年代/悬疑 | 1-2万字(7-19章) |
| 黑岩短篇 | 极端情绪,快节奏 | 完读率、付费 | 混合 | 虐恋、复仇、身份反转 | 8千-4万字 |
| 点众短篇 | 精品快节奏 | 完读率 | 混合 | 家庭复仇、假千金、弹幕流 | 1-2万字(5-10章) |
---
## 流程衔接
**流水线:** 短篇
**位置:** 扫榜(第 1/3 步)
| 时机 | 跳转到 | 命令 |
|---|---|---|
| 找到方向 | story-short-analyze | `/story-short-analyze` |
| 直接开写 | story-short-write | `/story-short-write` |
| 更适合长篇 | story-long-scan | `/story-long-scan` |
---
## 参考资料
按需加载以下文件:
| 文件 | 何时加载 |
|------|----------|
+ | 三份平台参考(链接见 Phase 2 第 1 步) | 「确定数据来源」:只读所选平台那份 |
+ | [references/topic-match.md](references/topic-match.md) | Phase 4/5:`短篇扫榜结论.md` 模板、可行性上限与交付 |
+ | [scripts/aggregate-rank.js](scripts/aggregate-rank.js) | 把输出目录里的原始榜单聚合成短表(`--out` 落盘,`--sample` 抽原始条目),主会话只读它 |
| [references/real-market-data.md](references/real-market-data.md) | **核心参考**:跨平台写作差异对照表、各平台简介公式速查、题材爆款公式速查表、各平台写作特征 |
| [scripts/cdp-utils.js](scripts/cdp-utils.js) | CDP 公共工具函数(ab/sleep/evalJSON/safeStr/scrollLoad/getArg),各采集脚本共用 |
- | [scripts/dz-browse-scraper.js](scripts/dz-browse-scraper.js) | 点众短篇采集(男频/女频),按 bookId 聚合 anchor 解出书名/评分/简介/作品页(避免把 UI 文字或简介误当书名),带连通性自检+书名解析率质量门,配合 browser-cdp 使用 |
- | [scripts/heiyan-booklist-scraper.js](scripts/heiyan-booklist-scraper.js) | 黑岩书库列表采集,后端 API 模式(Bearer token),含字数/标签/价格/时间,支持 --detail 获取标签简介;区分 CDP 未连/未登录/超时/接口错误并带书名命中率质量门 |
+ | [scripts/dz-browse-scraper.js](scripts/dz-browse-scraper.js) | 点众短篇采集(男频/女频),用法见点众参考 |
+ | [scripts/heiyan-booklist-scraper.js](scripts/heiyan-booklist-scraper.js) | 黑岩书库列表采集(需登录),用法见黑岩参考 |
---
## 语言
- 跟随用户的语言回复,用户用什么语言就用什么语言回复
- 中文回复遵循《中文文案排版指北》