Getting it into your agent
One page per mod, every tool's command on it. A separate URL per tool would split the same page into five that compete with each other.
npx skills add zenstory-ai/oh-story-dsh --skill story-long-scangit clone --depth 1 https://github.com/zenstory-ai/oh-story-dshWrote this? Show the measurements
A badge with what this costs and how it scanned, read live from this page, so it follows the numbers instead of freezing them. Markdown for a README, HTML for a documentation site or a project page.
[](https://agentmods.dev/skills/zenstory-ai/oh-story-dsh/story-long-scan)<a href="https://agentmods.dev/skills/zenstory-ai/oh-story-dsh/story-long-scan"><img src="https://agentmods.dev/badge/skills/zenstory-ai/oh-story-dsh/story-long-scan/github.svg" alt="Measured on agentmods" height="20"></a>Or the 80×15 button, for a site that already has a row of RSS and ATOM ones. Only the verdict fits; the numbers stay here.
<a href="https://agentmods.dev/skills/zenstory-ai/oh-story-dsh/story-long-scan"><img src="https://agentmods.dev/badge/skills/zenstory-ai/oh-story-dsh/story-long-scan.svg" alt="Reviewed on agentmods" width="80" height="20"></a>What it costs to keep this loaded
Counted locally with the o200k_base tokenizer, which is exact for GPT models; Claude uses its own tokenizer and its counts differ. Treat this as one consistent yardstick across the catalogue rather than a bill. Prices are per million input tokens.
| Model | Per session | Once invoked |
|---|---|---|
| Fable 5.1 | $0.00073 | $0.02631 |
| Opus 5.5 | $0.00029 | $0.01052 |
| Sonnet 5.5 | $0.00015 | $0.00526 |
| Haiku 4.5 | $0.00007 | $0.00263 |
Grade A, and why
story-long-scan scanned grade A with 0 findings against 26 rules in 11 categories — prompt injection, anti-refusal, data exfiltration, privilege escalation, supply chain, agent snooping, system-prompt leakage, SSRF and excessive agency — measured 8d ago.
A static scan of the body, not an audit. Every finding is printed with the line that produced it so you can judge whether it matters here. A mod is markdown that instructs an agent; that is exactly why what it instructs is worth reading.
Nothing flagged
None of the 26 patterns this scan looks for appear in this file: no shell pipes, no recursive deletes, no credential paths, no hidden text, no instruction-override or anti-refusal phrasing, no agent-config snooping. That is not a guarantee, it is the absence of the things that are checkable.
This is a copy
100% identical to story-long-scan — 0 lines differ, which has more behind it and is treated as the original. This page carries a canonical link to it rather than competing with it.
How it starts
The opening of the file, as written. The whole thing — 161 lines — stays where its author put it; the contents beside it link to each section on GitHub.
story-long-scan:长篇网文扫榜
你负责从长篇榜单的重复样本中识别题材候选,结合作者条件给出可行性、失败风险与验证动作。
核心信念:单本排名提供线索,近期多榜单、多作品的重复模式才支持趋势判断。
扫榜原则
原则 1:扫榜看模式,别只看排名
提取样本中重复的题材、设定、套路、书名词和简介卖点,判断能否支持趋势候选。
原则 2:各平台的热度口径不同
番茄看在读,起点看付费榜和总推荐,晋江看收藏、营养液和积分,七猫看热度。完读率、追读、订阅转化是作者后台的数据,采集脚本拿不到,作者没提供就不下结论。
原则 3:扫榜的目的是找到你能写的爆款题材
每个方向都结合素材储备、题材边界、计划篇幅和目标平台样本判断可行性,再给选题建议。
扫榜流程
Phase 1:确认平台和方向
沿用作者已给的条件;缺的一次问齐,给选项:
- 平台:起点 / 番茄 / 晋江 / 七猫 / 刺猬猫 / 多个平台对比
- 频道(番茄、七猫才分):男频 / 女频 / 都看
- 看什么:新书里在冒头的(多采新书样本) / 成熟大盘(只采默认榜单)
- 有没有关注的题材方向(没有就做全榜概览)
Phase 2:确定数据来源
| 优先级 | 模式 | 说明 | 何时用 |
|---|---|---|---|
| 1 | 脚本采集 | 直接抓取平台页面数据,产出结构化榜单文件 | 优先;起点排行榜不需要 Chrome |
| 2 | 作者提供 | 作者粘贴榜单文字、截图,或给已有的榜单文件 | 作者已有数据,或脚本采不到时 |
| 3 | 内置知识 | 只用历史题材候选做分析 | 无法联网、作者也没有数据时 |
脚本采集模式
命令里的 scripts/ 相对本 skill 根目录。
- 每次扫榜在工作目录新建
扫榜/{YYYYMMDD}/(同日再扫加-2),下文{outdir}指它。不往旧目录追加,聚合会混进旧榜。 - 只读所选平台参考:起点 / 番茄 / 七猫 / 晋江 / 刺猬猫。按 Phase 1 的频道和「看什么」运行默认命令;需要 Chrome 的平台先
/browser-cdp启动。 - 聚合:
node scripts/aggregate-rank.js {outdir} --out {outdir}/扫榜聚合.md。主会话先只读聚合:题材分布、去重本数、热度与字数中位、标签、书名词、多榜重合和代表作。 - 看聚合的「采集情况」:标了问题(书名没解出来、没采到、只有书单、详情没取到)的榜单,按平台参考的「采不到时」排查后重采;重采不了,报告里说明结论不含它。
- 分析新人物设定、新切入设定和新桥段时按需抽样:
node scripts/aggregate-rank.js {outdir} --sample {题材/标签/书名词} --n 5,一次一个方向。命中条数含多榜重复,样本本数按同平台书名+作者去重。
作者提供
已有榜单文件就放进 {outdir} 聚合。作者给链接时,请他把页面内容复制过来或截图(番茄、起点有反爬,直接抓页面常拿不到)。把文字或截图整理成:首行 # {平台} · {榜单名},平台名只用 起点 / 番茄 / 晋江 / 七猫 / 刺猬猫,才能和脚本数据合并;每本一段 ### #{排名} {书名},下一行 *作者 · 题材 · 连载中 · 120万字 · 3.5万收藏*(热度写「数字+口径」,有标签再加 **标签:** a、b)。存进 {outdir} 后同样聚合。
内置知识
读 references/genre-trends.md,报告开头写明「以下分析基于历史题材候选,没有实时榜单校验,只能作为待验证的假设」,并列出需要复扫的榜单。
Phase 3:数据分析
以聚合结果为主,先按所选平台参考的「分析维度」看,再看通用维度:
- 题材分布:本数、占比与热度中位。番茄按题材等额采样(聚合会注明),本数是采样上限,题材冷热看热度中位和平台 P75。
- 新题材信号:新书榜、书库新书样本与多榜重合;同时采到新书榜和其他榜时,聚合才显示「新书榜」列。上次日期目录有
扫榜聚合.md时,按相同平台、榜单与筛选范围对比。 - 头部老书:月票、畅销、阅读榜上字数几百万、连载多年的书,代表这个题材的存量读者,不代表现在开新书能起来;判断新方向以新书榜、书库新书为主。
- 经典题材变化:老牌题材上升、稳定还是下降;没有上期数据就只写现状。
- 字数:字数分布与各题材字数中位。
- 书名模式:书名常见词 + 代表作书名。
- 简介卖点:标签热词 + 代表作简介。数据只有简介(聚合截到 30 字,采集截到 100 字),开篇怎么写留给拆文验证。
- 新元素:对候选方向抽样原始条目,标出新的人物设定、切入设定、桥段套路。
What ships with it
14 files beside SKILL.md in the same directory: the scripts, references and assets a skill reads on demand. Not counted in the per-session cost; read them before you install if any of them is executable.
- references/genre-trends.md 3.8 KB
- references/platform-ciweimao.md 1.7 KB
- references/platform-fanqie.md 2.8 KB
- references/platform-jjwxc.md 1.9 KB
- references/platform-qidian.md 3.2 KB
- references/platform-qimao.md 2.5 KB
- references/topic-decision.md 4.9 KB
- scripts/aggregate-rank.js 31 KB runs code
- scripts/cdp-utils.js 8.4 KB runs code
- scripts/ciweimao-rank-scraper.js 9.3 KB runs code
- scripts/fanqie-rank-scraper.js 26 KB runs code
- scripts/jjwxc-rank-scraper.js 16 KB runs code
- scripts/qidian-rank-scraper.js 48 KB runs code
- scripts/qimao-rank-scraper.js 35 KB runs code
What this file has done since we first saw it
Hashed on every crawl. A supply-chain change to an agent config is a question of when, not whether, so the history is kept rather than the latest state alone.
- 8d ago Changed · -23 lines 9c30fbc326aa
- 12d ago Changed · -5 lines 5235b62812f5
- 17d ago Changed · -5 lines · +12 tokens per session ef2c3b3ae448
- 29d ago Changed · -152 lines 88d46967faba
- 1mo ago Changed · +3 lines 5b56a6c0b330
- 1mo ago First seen · 343 lines · 61 tokens per session scan A aedbfc25b66d
story-long-scan is a skill published in the GitHub repository zenstory-ai/oh-story-dsh (629 stars, last pushed today), licensed MIT. It adds 73 tokens to every session and 2,631 once invoked, about $0.0003 per session on Opus 5.5. A static security scan graded it A with 0 findings. It is 100% identical to story-long-scan, differing in 0 lines, and is treated as a copy.
Other skills, from other repositories
story-deslop
A writing editor for Chinese web novels that detects writing patterns often associated with AI-generated text and makes the prose feel more natural.
story-long-analyze
A long-form fiction analysis workflow for breaking down a novel’s opening chapters, characters, pacing, turning points, relationships, and overall structure.
browser-cdp
Use this skill when you need to control a Chrome browser via CDP (Chrome DevTools Protocol) to reuse existing login sessions. Covers: launching Chrome in debug mode, opening URLs, waiting for page load, evaluating JavaScript, taking snapshots, and extracting auth tokens. Trigger phrases: browser automation, CDP…
workflow-manager
A writing workflow tracker for chapter-based projects. It records whether each chapter is being assembled, drafted, reviewed, confirmed, polished, or archived.
review-chapter
A six-part review of a manuscript chapter. It compares the chapter with the outline and reports quality, coverage, review status, and problems supported by evidence from the text.
revise-span
A revision workflow for changing selected passages in a manuscript. It shows the original and proposed text, then applies changes only after the author confirms them.