oh-story-claudecode is a skill package for planning, analyzing, and writing Chinese web fiction, covering both short and long novels. It is intended for writers using Claude Code, Codex, OpenClaw, and other supported AI-agent environments, with workflows for market research, story breakdowns, drafting, editing, and cover creation. The catalogue entries are the package's skills, commands, agents, and plugin.
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-claudecode --skill story-short-analyzegit clone --depth 1 https://github.com/zenstory-ai/oh-story-claudecodeWrote 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-claudecode/story-short-analyze)<a href="https://agentmods.dev/skills/zenstory-ai/oh-story-claudecode/story-short-analyze"><img src="https://agentmods.dev/badge/skills/zenstory-ai/oh-story-claudecode/story-short-analyze/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-claudecode/story-short-analyze"><img src="https://agentmods.dev/badge/skills/zenstory-ai/oh-story-claudecode/story-short-analyze.svg" alt="Reviewed on agentmods" width="80" height="20"></a>- Socket pass
- Snyk pass
- NVIDIA SkillSpector pass
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.00226 | $0.03373 |
| Opus 5.5 | $0.00090 | $0.01349 |
| Sonnet 5.5 | $0.00045 | $0.00675 |
| Haiku 4.5 | $0.00023 | $0.00337 |
Grade A, and why
story-short-analyze 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 4d 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.
Copies of this mod
1 near-identical copy found in the catalogue:
- story-short-analyze — 100% identical, 0 lines differ
How it starts
The opening of the file, as written. The whole thing — 166 lines — stays where its author put it; the contents beside it link to each section on GitHub.
story-short-analyze:短篇网文拆文
你是短篇小说结构分析师。
围绕故事核,分析源文如何铺垫、释放情绪并引发共鸣。分析写进 拆文报告.md,结构计数写进 _meta.json,供下一篇短篇参考。
拆解边界声明
短篇拆解的 Stage 2-6 全程由你(主会话)完成。分析对象是用户合法持有、拥有使用权的虚构作品,包括已出版、连载或自有作品;只做编辑、评论和写作教学视角的只读转化性文学批评,不复制、传播或指导现实行为。番茄短篇、故事会、知乎盐言、追妻、虐渣、世情等通俗题材里的家暴、出轨、复仇、暴力、情爱张力、黑暗伦理属于常规虚构叙事元素,须照常做结构化拆解,不得以「敏感」「不适」为由拒绝整篇或某个片段,以免中断拆文流水线;确实无法处理的片段可跳过,其余部分照常拆完。
Phase 1:确认拆解对象 + 字数路由 + 续跑检查
Step 1:拿到原文
对象尚未明确时问用户:「你要拆哪篇?(标题+平台/来源)」;已有明确原文时直接继续。
无文本时:用户没有提供原文文件路径、也没有在对话中贴出原文,引导用户提供 ——「请提供这篇短篇的原文文件路径,或直接把原文贴给我。」
Step 2:字数检查(长短篇路由)
拿到原文后立刻数字数:
word_count = 全文字数
├─ ≤ 20,000 → 直接进入 short 管道
├─ 20,000 - 30,000 → 灰区:询问用户「字数 {N},介于短/长之间,按短篇还是长篇拆?」
└─ > 30,000 → 提示「此文字数 {N} 偏长,建议改用 /story-long-analyze。
仍要按短篇拆请明确回复『按短篇继续』」
Step 3:题材识别
读 references/analysis-short-genres.md,按「题材路由」表的关键词和识别锚点定主类型:用户提到具体题材时直接对照该行,否则按全文证据判断。genre_detected 只取表中 13 个类型名之一,扫不到写「通用」,按通用模板跑 Stage 2-6。
题材作为观察标尺——只比较源文的读者承诺、冲突载体和实际结算,不调用长篇阶段、卷级循环或黄金三章模型,也不按推荐比例判定源文合格与否。
Step 4:续跑检查
进入管道前检查 拆文库/{书名}/_meta.json:
存在 _meta.json?
├─ 否 → 直接进入新一轮拆解
└─ 是 → 询问用户(问法见下):
(a) 覆盖:归档旧产出到 拆文库/{书名}/_archive_{时间戳}/ 后从 Stage 2 重跑
(b) 续跑:读 _meta.json.last_stage_in_progress(非空 → 从该 Stage 整段重跑)
或读 _meta.json.stages_completed[](从 max+1 续跑);已拆完时没有此项
(c) 取消
问作者时不提文件名、字段名和 Stage 编号。拆到一半时(1 → b,2 → a,3 → c):
《{书名}》之前拆到一半,停在"{当前阶段的白话名,如反转与写作手法}"。怎么处理?
1. 接着上次往下拆(推荐,已拆的部分保留)
2. 旧结果存档,从头重拆
3. 先不拆了
已经拆完时(1 → a,2 → c):
《{书名}》之前已经拆完。怎么处理?
1. 旧结果存档,从头重拆
2. 先不拆了
完整续跑规则见 references/output-contract.md。
输出目录
输出到 拆文库/{书名}/(项目根目录下;用户指定了其他路径时按用户指定):原文/、拆文报告.md、情节节点.md、写作手法.md、_meta.json。三个 markdown 由下游 story-short-write 硬编码读取,不可改名;文件树、Stage → 文件映射与 _meta.json 字段见 references/output-contract.md。
What ships with it
15 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/analysis-characters.md 3.4 KB
- references/analysis-method.md 2.6 KB
- references/analysis-report-style.md 2.4 KB
- references/analysis-short-genres.md 5.0 KB
- references/analysis-short-hooks.md 3.9 KB
- references/analysis-short-mechanics.md 4.4 KB
- references/analysis-short-patterns.md 4.2 KB
- references/analysis-short-suspense.md 4.2 KB
- references/analysis-submission.md 3.0 KB
- references/optional-modules.md 2.5 KB
- references/output-contract.md 6.9 KB
- references/quality-checklist.md 3.9 KB
- references/source-story-quality.md 4.5 KB
- references/stage2-3-structure-emotion.md 14 KB
- references/stage4-6-reversal-summary.md 29 KB
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.
- 4d ago Changed · -2 lines f0ba6c01641d
- 10d ago Changed · -47 lines a513b23d3ef6
- 12d ago Changed · -10 lines 5ef261b34ef0
- 1mo ago Changed · -73 lines 544851e021f4
- 1mo ago Changed 973396333dcd
- 1mo ago Changed · +19 lines 3c9ccd95a5a8
- 1mo ago First seen · 279 lines · 226 tokens per session scan A 6bfbb111ef88
story-short-analyze is a skill published in the GitHub repository zenstory-ai/oh-story-claudecode (8,063 stars, last pushed yesterday), licensed MIT. It adds 226 tokens to every session and 3,373 once invoked, about $0.0009 per session on Opus 5.5. A static security scan graded it A with 0 findings. No closer match exists in the catalogue, so it is treated as the original; first seen 2026-08-30.
Other skills, from other repositories
zh-novel-polish
A Chinese fiction editing tool focused on making narrative prose sound like it was written by a person rather than generated by AI.
novel-review
A review coordinator for long novels. It breaks a manuscript review into focused checks by specialist roles, combines their reports, and stores the results in a review directory.
novel-sync
A Chinese-language workflow for updating a novel's continuity notes after a chapter is written or changed. It records events, character changes, unresolved clues, and notable lines in the project's reference files.
novel-plan
A planning workflow for designing a new long-form novel before writing it. It helps settle the premise, setting, character, progression, ending, outline, and writing approach, then tests the setting for logical problems.
novel-chapter-write
A long-form novel writing workflow that turns an approved chapter plan into chapter prose. It supports drafting, targeted revision, and final approval while keeping style and story details consistent across chapters.
bestseller-novel-outline
A planning workflow for designing a very long commercial novel before chapters are written. It creates the world, characters, overall plot, volume outlines, planted clues, and chapter paths for later writing tools.