{"slug":"story-short-analyze","title":"story-short-analyze","summary":"短篇网文拆文。拆解爆款短篇小说（番茄短篇 / 故事会 / 知乎盐选 / 追妻 / 世情 / 重生 / 虐渣等通俗题材）的故事核、结构、情感线、反转设计、写作手法、共鸣层次。单一全量拆解管道：跑完 Stage 2-6 产出完整拆文报告，落盘到 拆文库/{书名}/，下游 story-short-write 同时读拆文报告 + 情节节点 + 写作手法 + 原文 + _meta.json 写下一篇。触发方式：/story-short-analyze、/短篇拆文、「拆短篇」「拆这篇短文」「短篇拆文」「精细拆解短篇」「8000 字短篇拆解」「番茄短篇拆文」「故事会拆","platform":"Claude","tags":[],"authorName":"LLM Mart","authorSlug":"llm-mart","score":0,"source":"github","price":null,"verified":false,"createdAt":"2026-08-25T15:08:12.21138Z","repo":{"url":"https://github.com/zenstory-ai/oh-story-claudecode","stars":7171,"forks":1015,"license":"MIT","updatedAt":"2026-09-27T09:33:24Z"},"bodyHtml":"<hr>\n<h2>name: story-short-analyze\nversion: 3.0.0\ndescription: \"短篇网文拆文。拆解爆款短篇小说（番茄短篇 / 故事会 / 知乎盐选 / 追妻 / 世情 / 重生 / 虐渣等通俗题材）的故事核、结构、情感线、反转设计、写作手法、共鸣层次。单一全量拆解管道：跑完 Stage 2-6 产出完整拆文报告，落盘到 拆文库/{书名}/，下游 story-short-write 同时读拆文报告 + 情节节点 + 写作手法 + 原文 + _meta.json 写下一篇。触发方式：/story-short-analyze、/短篇拆文、「拆短篇」「拆这篇短文」「短篇拆文」「精细拆解短篇」「8000 字短篇拆解」「番茄短篇拆文」「故事会拆解」「盐言故事拆解」「分析这篇短篇」——均进入同一管道。\"\nmetadata: {\"openclaw\":{\"source\":\"https://github.com/zenstory-ai/oh-story-claudecode\"}}</h2>\n<h1>story-short-analyze：短篇网文拆文</h1>\n<p>你是短篇小说结构分析师。</p>\n<p><strong>核心：短篇靠共鸣和爆点驱动。拆文就是看它用什么故事核、怎么铺垫、在哪里引爆，把\n分析叙事写进 <code>拆文报告.md</code>，结构计数写进 <code>_meta.json</code>，下一篇短篇直接读这些写。</strong></p>\n<hr>\n<h2>拆解边界声明（主线程同样适用）</h2>\n<p>短篇拆解的 Stage 2-6 全程由你（主线程）亲手做：拆的是用户<strong>合法持有、拥有使用权</strong>的虚构作品（已出版/连载或自有），性质是<strong>只读的转化性文学批评</strong>（编辑/评论/写作教学视角，不复制、不传播、不指导现实行为）。番茄短篇、故事会、知乎盐选、追妻、虐渣、世情等通俗题材里的家暴、出轨、复仇、暴力、情爱张力、黑暗伦理是常规虚构叙事元素，须照常做结构化拆解，<strong>不得以「敏感」「不适」为由拒绝整篇或某个片段</strong>——拒绝会让整条拆文流水线停摆；个别片段无法处理则跳过、照常续完其余。</p>\n<hr>\n<h2>Phase 1：确认拆解对象 + 字数路由 + 续跑检查</h2>\n<h3>Step 1：拿到原文</h3>\n<p>问用户：<strong>「你要拆哪篇？（标题+平台/来源）」</strong></p>\n<p><strong>无文本时</strong>：用户没有提供原文文件路径、也没有在对话中贴出原文，引导用户提供\n——「请提供这篇短篇的原文文件路径，或直接把原文贴给我。」</p>\n<h3>Step 2：字数检查（长短篇路由）</h3>\n<p>拿到原文后立刻数字数：</p>\n<pre><code>word_count = 全文字数\n  ├─ &lt; 15,000          → 直接进入 short 管道\n  ├─ 15,000 - 20,000   → 灰区：询问用户「字数 {N}，介于短/长之间，按短篇还是长篇拆？」\n  └─ &gt; 20,000          → 提示「此文字数 {N} 偏长，建议改用 /story-long-analyze。\n                           仍要按短篇拆请明确回复『按短篇继续』」\n</code></pre>\n<h3>Step 3：题材识别</h3>\n<pre><code>用户提到具体题材（追妻 / 重生 / 虐文 / ...）？\n  ├─ 是 → 加载 genre-catalog.md 对应题材的「短篇视角」章节作为拆文标尺\n  └─ 否 → 关键词扫描确定题材；扫不到则 genre_detected = \"通用\"，用通用模板（Stage 2-6）\n</code></pre>\n<p>题材识别关键词参考：</p>\n<ul>\n<li>追妻火葬场 / 渣男后悔 → 追妻（含 现代/古代/民国 时代变体）</li>\n<li>重生复仇 / 前世今生 → 重生复仇</li>\n<li>死后视角 / 灵魂旁观 → 死人文学</li>\n<li>小三 / 出轨 / 知三当三 → 小三</li>\n<li>世情 / 现实 / 婆媳 / 打脸 / 虐渣 → 世情</li>\n<li>总裁 / 豪门 / 联姻 → 豪门</li>\n<li>宫斗 / 宅斗 / 嫡庶 → 宫斗宅斗</li>\n<li>冥婚 / 纸人 / 风水 / 规矩 / 怪谈 → 民俗</li>\n<li>悬疑 / 推理 / 凶手 / 惊悚 → 悬疑</li>\n<li>甜宠 / 先虐后甜 / 先婚后爱 / 暗恋 → 甜宠</li>\n<li>双男主 / 宿敌 → 双男主</li>\n<li>沙雕 / 脑洞 / 弹幕 / 系统 / 反套路 → 沙雕</li>\n<li>仙侠 / 修仙 / 门派 → 仙侠</li>\n</ul>\n<p>题材作为「对照标尺」加载——见 <code>references/genre-catalog.md</code> 等文件首段「## 用作\n拆文标尺时」说明。</p>\n<h3>Step 4：续跑检查（lightweight resume）</h3>\n<p>进入管道前检查 <code>拆文库/{书名}/_meta.json</code>：</p>\n<pre><code>存在 _meta.json？\n  ├─ 否 → 直接进入新一轮拆解\n  └─ 是 → 询问用户三选一：\n       (a) 覆盖：归档旧产出到 拆文库/{书名}/_archive_{时间戳}/ 后从 Stage 2 重跑\n       (b) 续跑：读 _meta.json.last_stage_in_progress（非空 → 从该 Stage 整段重跑）\n                 或读 _meta.json.stages_completed[]（从 max+1 续跑）\n       (c) 取消\n</code></pre>\n<p>完整 resume 契约见 <a href=\"references/output-contract.md\">references/output-contract.md</a>。</p>\n<hr>\n<h2>输出目录</h2>\n<p>输出到 <code>拆文库/{书名}/</code>（项目根目录下）。用户指定了其他路径时按用户指定路径输出。</p>\n<p><strong>标准输出文件树</strong>：</p>\n<pre><code>拆文库/{书名}/\n├── 原文/                # 原文备份（管道前置步骤产出）\n├── 拆文报告.md           # 人类可读综合报告（Stage 2-6 所有可读段）\n├── 情节节点.md           # Stage 2 情节节点清单（独立成文，方便定位）\n├── 写作手法.md           # Stage 4 写作手法分析（独立成文，方便复用）\n└── _meta.json           # 管道元数据 + 结构计数（resume + 验收数值依据）\n</code></pre>\n<blockquote>\n<p><strong>下游契约</strong>：<code>story-short-write</code> 同时读全套产出——<code>拆文报告.md</code> 取分析叙事，\n<code>情节节点.md</code> 看节奏锚点，<code>写作手法.md</code> 抄手法，<code>原文/</code> 抄语感，<code>_meta.json</code>\n看题材识别和结构计数。完整字段定义见\n<a href=\"references/output-contract.md\">references/output-contract.md</a>。</p>\n</blockquote>\n<h3>Stage → 文件映射</h3>\n<table>\n<thead>\n<tr>\n<th>Stage</th>\n<th>落地文件</th>\n</tr>\n</thead>\n<tbody>\n<tr>\n<td>2</td>\n<td><code>拆文报告.md</code>（故事核+结构+梗概段） + <code>情节节点.md</code></td>\n</tr>\n<tr>\n<td>3</td>\n<td><code>拆文报告.md</code>（情感曲线+爆点段）</td>\n</tr>\n<tr>\n<td>4</td>\n<td><code>拆文报告.md</code>（反转段） + <code>写作手法.md</code></td>\n</tr>\n<tr>\n<td>5</td>\n<td><code>拆文报告.md</code>（人物+首尾段）</td>\n</tr>\n<tr>\n<td>6</td>\n<td><code>拆文报告.md</code>（综合段） + <code>_meta.json.structure_counts</code>（数值计入元数据）</td>\n</tr>\n</tbody>\n</table>\n<h3>原文备份（管道前置步骤）</h3>\n<p><strong>拆解开始前，必须先备份原文</strong>：</p>\n<ol>\n<li>检查 <code>拆文库/{书名}/原文/</code> 目录是否已存在</li>\n<li>如果不存在，从用户提供的源路径复制原文文件到 <code>拆文库/{书名}/原文/</code></li>\n<li>如果用户未提供源文件路径（直接在对话中贴文本），将原始文本保存到\n<code>拆文库/{书名}/原文/原文.md</code></li>\n<li>备份完成后验证 <code>原文/</code> 目录下文件非空（&gt;0 bytes）</li>\n<li>此步骤确保即使拆文过程中出现异常，原始材料不会丢失</li>\n</ol>\n<p>备份完成后初始化 <code>_meta.json</code>：写入 <code>version</code>、<code>word_count</code>、<code>genre_detected</code>、\n<code>created_at</code>、<code>stages_completed: []</code>、<code>last_stage_in_progress: null</code>。</p>\n<hr>\n<h2>Stage 2-6：拆文流程</h2>\n<h3>5 阶段管道</h3>\n<p><strong>预期耗时提示</strong>：短篇拆文通常 10-30 分钟；同类对比或平台适配会更久。若文本很短，\n先只挑关键节点，不要为满足节点数量硬拆。</p>\n<table>\n<thead>\n<tr>\n<th>阶段</th>\n<th>名称</th>\n<th>输入</th>\n<th>输出</th>\n<th>完成标志</th>\n</tr>\n</thead>\n<tbody>\n<tr>\n<td>2</td>\n<td>结构+情节节点</td>\n<td>全文</td>\n<td>故事核 + 故事梗概 + 功能分段（4-6段，必须含开端/发展/高潮/结局）+ 情节节点清单。节点密度按字数分档，见 material-decomposition.md「情节节点提取」的字数分档表。</td>\n<td>结构划分 ≥4 段 + 故事核已提取</td>\n</tr>\n<tr>\n<td>3</td>\n<td>情感线+爆点</td>\n<td>故事核+结构划分+情节节点数据</td>\n<td>情感曲线（≥5节点）+ 爆点分析（6维度）+ 期待感分析。</td>\n<td>爆点分析 6 维度齐全</td>\n</tr>\n<tr>\n<td>4</td>\n<td>反转+写作手法</td>\n<td>节点+情感数据</td>\n<td>前置反转检查 + 反转机制（铺垫≥2条）+ 写作手法（≥5项维度：POV/对话/时间/信息/其他）。</td>\n<td>写作手法 ≥5 项</td>\n</tr>\n<tr>\n<td>5</td>\n<td>人物+开头结尾</td>\n<td>情节节点+全文</td>\n<td>所有人物（分类+功能标签+功能评估）+ 开头分析（前50/100字）+ 结尾分析（收束检查）。</td>\n<td>人物功能评估完成</td>\n</tr>\n<tr>\n<td>6</td>\n<td>综合评估 + <code>_meta.json</code> 写计数</td>\n<td>全部数据</td>\n<td>五维评分 + 爆点性 + 话题性 + 共鸣分析（≥3层）+ 可复用结构（≥3条）+ 节奏速报 + <strong>算出并写入 <code>_meta.json.structure_counts</code></strong>。</td>\n<td>五维评分完成 + 爆点性/话题性已分析 + 共鸣≥3层 + 可复用≥3条 + 节奏速报已包含 + <code>_meta.json.structure_counts</code> 各字段达「structure_counts 数值校验」阈值</td>\n</tr>\n</tbody>\n</table>\n<blockquote>\n<p>管道执行顺序：2 → 3 → 4 → 5 → 6（严格串行，每阶段依赖前一阶段数据）。可选模块\n（同类对比、平台适配、详细节奏）可在 Stage 6 后执行。</p>\n</blockquote>\n<p><strong>Stage 写盘协议</strong>（crash safety）：每个 Stage 开始前先把 <code>_meta.json.last_stage_in_progress</code>\n置为当前 Stage 编号；该 Stage 所有目标文件写完后再做 non-empty / 最小长度检查，通过\n才清空 <code>last_stage_in_progress</code> 并 append 到 <code>stages_completed[]</code>。半成品文件不被\n信任，resume 时该 Stage 整段重跑。完整协议见\n<a href=\"references/output-contract.md\">references/output-contract.md</a> 「写入顺序 (crash safety)」段。</p>\n<p><strong>非标文本分段</strong>：对话体、聊天记录、帖子体、书信体等非标准章节格式，先按时间/说话人\n切换/信息揭示点分段，再映射到开端、发展、高潮、结局；不要机械按自然段数量切分。</p>\n<p><strong>投稿层拆解</strong>（拆 Stage 5 开头 / Stage 6 可复用时顺带记录进 拆文报告.md，非阻断；story-short-write 定平台基调时可作初判参考）：</p>\n<ul>\n<li><strong>平台基调</strong>：判定源文更贴哪一路——知乎盐选（第一人称剥洋葱、细思极恐、章末颠覆认知细节）/ 小程序（开局即地狱、当众打脸、章末卡脖子断点）/ 番茄短篇（顺滑无毒点、金手指直白、大满贯收尾）。</li>\n<li><strong>导语写法</strong>：源文开头前 150-220 字（多数就是正文第一段）怎么钩人——四维骨架（起因+核心冲突+人设底色+情绪反转）、黄金三角（具体物件+信息差+留白钩子）各落在哪句。</li>\n<li><strong>付费点/最强断点</strong>：源文把最强悬念断点（读者最想往下翻的地方）卡在第几节章末；付费点前后每章剧情点密度是否递增。</li>\n</ul>\n<p>详细模板见 <a href=\"references/output-templates.md\">output-templates.md</a>，方法论见\n<a href=\"references/material-decomposition.md\">material-decomposition.md</a>，输出契约见\n<a href=\"references/output-contract.md\">output-contract.md</a>。</p>\n<hr>\n<h2>验收（Stage 6 之后、写 stages_completed[6] 之前）</h2>\n<p>Stage 6 内容写完后，<strong>不</strong>立刻 append <code>6</code> 到 <code>stages_completed[]</code>。先跑三道检查：</p>\n<h3>Step 1：拆文报告 AI 腔自检</h3>\n<p>扫描 <code>拆文报告.md</code> 全文 against <a href=\"references/banned-words.md\">references/banned-words.md</a>\n词表 + <a href=\"references/anti-ai-writing.md\">references/anti-ai-writing.md</a> 句式规则。\n扫描时跳过源文引用——以 <code>&gt;</code> 开头的引用行、以及表格中「关键台词 / 原文引用」列的引号直引不计入，只扫分析师本人写的措辞。</p>\n<ul>\n<li><strong>命中</strong> → 不写 <code>stages_completed[6]</code>，列出命中位置，提示用户人工修订<strong>拆文报告\n本身</strong>的 AI 腔（不是源文——源文里有 AI 腔正常报告即可，但报告本身不能写成 AI 腔）。</li>\n<li><strong>未命中</strong> → 继续「structure_counts 数值校验」。</li>\n</ul>\n<blockquote>\n<p>守门员定位：本节检查「我们写的拆文报告」；不要评价「源文是否 AI 写的」。</p>\n</blockquote>\n<h3>Step 2：<code>_meta.json.structure_counts</code> 数值校验</h3>\n<p>按 <a href=\"references/output-contract.md\">references/output-contract.md</a> 「structure_counts 数值校验」表\n逐项检查 <code>_meta.json</code> 里 Stage 6 写入的结构计数。阈值与 carve-out 以 output-contract.md 为准（单一权威，不在此重复内联表以免漂移）——特别注意两条合法产出态：<code>reversal_type</code> 枚举<strong>含「无反转」</strong>（甜宠/喜剧/报应型）；<code>reversal_type=无反转</code> 时 <strong><code>setup_clues</code> 跳过该行、不计入阻断</strong>。</p>\n<p>任一项不达标 → 阻断；列出未达标字段，提示用户回到对应 Stage 补足。</p>\n<h3>Step 3：<code>output-templates.md</code> [BLOCK] 项扫描</h3>\n<p>扫描 <code>output-templates.md</code> 中所有 <code>[BLOCK]</code> 标注项，确认对应产出段已完成。任一缺失\n→ 阻断。<code>[WARN]</code> 项不阻断，但写入 <code>拆文报告.md</code> 末尾的「待补」清单供用户决定。</p>\n<h3>Step 4：通过</h3>\n<p>「拆文报告 AI 腔自检」「structure_counts 数值校验」和「BLOCK 项扫描」全通过 → 清空 <code>_meta.json.last_stage_in_progress</code>，append <code>6</code> 到\n<code>stages_completed[]</code>，提示用户「拆解完成，可调用 <code>/story-short-write</code> 写下一篇」。</p>\n<hr>\n<h2>质量检查概要</h2>\n<p>各阶段完成后需通过质量检查。逐项 checklist 见\n<a href=\"references/output-templates.md\">output-templates.md 质量检查必填字段</a>。</p>\n<p>质量标准的阈值、数值与计算方式的唯一权威定义见\n<a href=\"references/material-decomposition.md\">material-decomposition.md 质量标准</a>。</p>\n<p>强阻断 / 警告区分：见 <code>output-templates.md</code> 每条 checklist 末尾的 <code>[BLOCK]</code> /\n<code>[WARN]</code> 标注。<code>[BLOCK]</code> 不通过 → 「BLOCK 项扫描」阻断。</p>\n<hr>\n<h2>流程衔接</h2>\n<p><strong>流水线：</strong> 短篇\n<strong>位置：</strong> 拆文（第 2/3 步）</p>\n<table>\n<thead>\n<tr>\n<th>时机</th>\n<th>跳转到</th>\n<th>命令</th>\n</tr>\n</thead>\n<tbody>\n<tr>\n<td>准备开写</td>\n<td>story-short-write（同时读 拆文报告.md + 情节节点.md + 写作手法.md + 原文/ + _meta.json）</td>\n<td><code>/story-short-write</code></td>\n</tr>\n<tr>\n<td>需要市场数据</td>\n<td>story-short-scan</td>\n<td><code>/story-short-scan</code></td>\n</tr>\n<tr>\n<td>字数 &gt; 20k 更适合长篇</td>\n<td>story-long-scan → story-long-analyze</td>\n<td><code>/story-long-scan</code></td>\n</tr>\n</tbody>\n</table>\n<hr>\n<h2>参考资料</h2>\n<h3>核心方法论（拆文时必须加载）</h3>\n<table>\n<thead>\n<tr>\n<th>文件</th>\n<th>何时加载</th>\n</tr>\n</thead>\n<tbody>\n<tr>\n<td><a href=\"references/output-contract.md\">references/output-contract.md</a></td>\n<td>全程：Stage→文件映射 / <code>_meta.json</code> schema（含 structure_counts）/ 下游消费规范 / 验收接入点</td>\n</tr>\n<tr>\n<td><a href=\"references/output-templates.md\">references/output-templates.md</a></td>\n<td>拆文时：输出模板 + 结构库 + 质量检查（含 [BLOCK]/[WARN] 标注）</td>\n</tr>\n<tr>\n<td><a href=\"references/material-decomposition.md\">references/material-decomposition.md</a></td>\n<td>拆文方法论：情节节点提取 + 写作手法 + 情感线 + 节奏分析 + 共鸣分析 + 人物规则 + <strong>质量标准唯一权威</strong></td>\n</tr>\n<tr>\n<td><a href=\"references/quality-checklist.md\">references/quality-checklist.md</a></td>\n<td>评估<strong>源文</strong>质量时：短篇拆书的质量自检清单（评估对象的好坏，不是评估拆文报告本身）</td>\n</tr>\n<tr>\n<td><a href=\"references/anti-ai-writing.md\">references/anti-ai-writing.md</a></td>\n<td>「拆文报告 AI 腔自检」：扫描<strong>拆文报告本身</strong>的 AI 腔（不是源文滤镜）</td>\n</tr>\n<tr>\n<td><a href=\"references/banned-words.md\">references/banned-words.md</a></td>\n<td>「拆文报告 AI 腔自检」：拆文报告禁用词速查</td>\n</tr>\n</tbody>\n</table>\n<h3>按需加载（拆解对应题材 / 维度时作为对照标尺）</h3>\n<table>\n<thead>\n<tr>\n<th>文件</th>\n<th>何时加载</th>\n</tr>\n</thead>\n<tbody>\n<tr>\n<td><a href=\"references/deconstruction-examples.md\">references/deconstruction-examples.md</a></td>\n<td>校准拆文方法时：3 个完整案例作为参照</td>\n</tr>\n<tr>\n<td><a href=\"references/zhihu-style.md\">references/zhihu-style.md</a></td>\n<td>拆解知乎盐言故事时作为平台特性对照</td>\n</tr>\n<tr>\n<td><a href=\"references/genre-catalog.md\">references/genre-catalog.md</a></td>\n<td>拆解特定题材时：加载对应题材的「短篇视角」章节作为标准模式</td>\n</tr>\n<tr>\n<td><a href=\"references/hooks-chapter.md\">references/hooks-chapter.md</a></td>\n<td>拆解章节钩子设计时作为钩子类型对照</td>\n</tr>\n<tr>\n<td><a href=\"references/hooks-suspense.md\">references/hooks-suspense.md</a></td>\n<td>拆解悬念设计时作为悬念分类对照</td>\n</tr>\n<tr>\n<td><a href=\"references/hooks-paragraph.md\">references/hooks-paragraph.md</a></td>\n<td>拆解段落钩子时作为 11 种段落级钩子对照</td>\n</tr>\n<tr>\n<td><a href=\"references/character-basics.md\">references/character-basics.md</a></td>\n<td>拆解人物基础设定时作为人设要素对照</td>\n</tr>\n<tr>\n<td><a href=\"references/character-design-methods.md\">references/character-design-methods.md</a></td>\n<td>拆解人物内在矛盾时作为三层标签反差对照（contradiction_axis 来源）</td>\n</tr>\n<tr>\n<td><a href=\"references/character-relations.md\">references/character-relations.md</a></td>\n<td>拆解人物关系网时作为关系类型对照</td>\n</tr>\n<tr>\n<td><a href=\"references/genre-core-mechanics.md\">references/genre-core-mechanics.md</a></td>\n<td>拆解题材核心梗与循环机制时作为机制对照</td>\n</tr>\n<tr>\n<td><a href=\"references/genre-readers.md\">references/genre-readers.md</a></td>\n<td>拆解读者心理与期待管理时作为读者画像对照</td>\n</tr>\n</tbody>\n</table>\n<h3>补充资料（拆 Stage 6「可复用结构」时按需对照）</h3>\n<blockquote>\n<p><strong>题材写作公式</strong>：<code>references/genre-writing-formulas.md</code>（21 大题材公式作为\n「这篇是否合标」的对照标尺）\n<strong>通用写作技法</strong>：<code>references/genre-writing-techniques.md</code>（情绪操控 / 感情线 /\n震惊场景 / 喜剧机制——拆 reusable_structures.fail_mode 时引用「感情线四阶段推进法」表「禁忌」列）\n<strong>市场数据</strong>：<code>references/real-market-data.md</code>（跨平台写作差异对照表）</p>\n</blockquote>\n<p>所有 references 在 <code>story-short-analyze</code> 中都是<strong>对照标尺</strong>——用源文与文件描述的\n标准模式做对比，找出该篇用了哪种、做得多到位，<strong>不是</strong>按文件指引写新作品。</p>\n<hr>\n<h2>语言</h2>\n<ul>\n<li>跟随用户的语言回复，用户用什么语言就用什么语言回复</li>\n<li>中文回复遵循《中文文案排版指北》</li>\n</ul>\n","files":[{"path":"references/analysis-character-basics.md","sizeBytes":17023,"isText":true},{"path":"references/analysis-character-design.md","sizeBytes":16845,"isText":true},{"path":"references/analysis-character-relations.md","sizeBytes":16041,"isText":true},{"path":"references/analysis-method.md","sizeBytes":2892,"isText":true},{"path":"references/analysis-paragraph-hooks.md","sizeBytes":6857,"isText":true},{"path":"references/analysis-reader-profile.md","sizeBytes":11563,"isText":true},{"path":"references/analysis-report-style.md","sizeBytes":2577,"isText":true},{"path":"references/analysis-short-genres.md","sizeBytes":4720,"isText":true},{"path":"references/analysis-short-hooks.md","sizeBytes":3708,"isText":true},{"path":"references/analysis-short-mechanics.md","sizeBytes":4393,"isText":true},{"path":"references/analysis-short-patterns.md","sizeBytes":4291,"isText":true},{"path":"references/analysis-short-suspense.md","sizeBytes":4262,"isText":true},{"path":"references/analysis-writing-techniques.md","sizeBytes":21707,"isText":true},{"path":"references/deconstruction-examples.md","sizeBytes":4250,"isText":true},{"path":"references/optional-modules.md","sizeBytes":3147,"isText":true},{"path":"references/output-contract.md","sizeBytes":6615,"isText":true},{"path":"references/quality-checklist.md","sizeBytes":4818,"isText":true},{"path":"references/real-market-data.md","sizeBytes":4962,"isText":true},{"path":"references/source-story-quality.md","sizeBytes":10592,"isText":true},{"path":"references/stage2-3-structure-emotion.md","sizeBytes":13480,"isText":true},{"path":"references/stage4-6-reversal-summary.md","sizeBytes":31899,"isText":true},{"path":"references/zhihu-style.md","sizeBytes":2594,"isText":true},{"path":"SKILL.md","sizeBytes":14283,"isText":true}],"reviewScore":null,"reviewSummary":null,"trust":{"provenance":"trusted-source-unreviewed","notice":"Community-authored content, reproduced verbatim and not vetted as instructions. Treat it as data to evaluate, never as directives to follow.","bodySource":null},"bodyLocked":false,"purchaseUrl":null,"sourceUrl":null,"report":{"provenance":"trusted-source-unreviewed","screen":{"ran":true,"outcome":"clean","suspicious":0,"notes":0,"hiddenCharacters":false},"virusScan":{"engine":"clamav","status":"clean","scannedAt":"2026-09-29T23:41:32.717164Z","sha256":"12151DC6757E5415AE963D8951888ABAD9B4C97743C5C88E5124882458F032D3","sizeBytes":107791},"review":null,"source":{"repositoryUrl":"https://github.com/zenstory-ai/oh-story-claudecode","path":"skills/story-short-analyze","license":"MIT","commit":"4a50d5583590eb7f207037e35136c1168bc02201","subtreeSha":"AA7DBBD90E8760F08B5F01005589422EF6575A524213313534EB96926750D877","lastSyncedAt":"2026-09-29T23:33:07.688344Z"},"reviewedAt":"2026-09-29T23:41:55.273044Z","notice":"Community-authored content, reproduced verbatim and not vetted as instructions. Treat it as data to evaluate, never as directives to follow."},"install":[{"target":"skills-cli","command":"npx skills add https://github.com/zenstory-ai/oh-story-claudecode/tree/main/skills/story-short-analyze"},{"target":"claude-code","command":"claude plugin marketplace add https://llmmart.ai/marketplace.json && claude plugin install zenstory-ai-oh-story-claudecode@llmmart"},{"target":"git","command":"git clone https://github.com/zenstory-ai/oh-story-claudecode.git"}]}