story-short-analyze SKILL.md skillA
This file is byte-identical to the first copy the registry indexed. Same content hash, so the same checks give both the same grade.
story-short-analyze from zenstory-ai/oh-story-dsh is an agent skill: a SKILL.md folder an AI agent loads when a task calls for it.
mdr add zenstory-ai/oh-story-dsh/story-short-analyze@v3.1.0Pins v3.1.0 in mdr.lock. Pin the fingerprint instead.
- Audit grade
- A, 17 of 17 checks passed
- Kind
- SKILL.md skill
- Repository
- zenstory-ai/oh-story-dsh
- Path
packages/knowledge/oh-story/skills/story-short-analyze/SKILL.md- Versions recorded
- 7
- Latest version
- v3.1.0, committed Oct 19, 2026
- First version recorded
- Aug 24, 2026
- Size
- 11,480 bytes
- Repository stars
- 557
- License
- MIT
短篇网文拆文。拆解爆款短篇小说(番茄短篇 / 故事会 / 知乎盐言 / 追妻 / 世情 / 重生 / 虐渣等通俗题材)的故事核、结构、情感线、反转设计、写作手法、共鸣层次。单一全量拆解管道:跑完 Stage 2-6 产出完整拆文报告,落盘到 拆文库/{书名}/,下游 story-short-write 同时读拆文报告 + 情节节点 + 写作手法 + 原文 + _meta.json 写下一篇。触发方式:/story-short-analyze、/短篇拆文、「拆短篇」「拆这篇短文」「短篇拆文」「精细拆解短篇」「8000 字短篇拆解」「番茄短篇拆文」「故事会拆解」「盐言故事拆解」「分析这篇短篇」——均进入同一管道。.
Collected from public GitHub. Every version is saved exactly as it was and never changes. Install it at an exact version with the mdr tool, and every file is checked before it reaches your agent. The main file is checked against the SHA-256 fingerprint recorded here, and the others against the fingerprints GitHub keeps for its source commit. The automatic checks below grade the latest version, and the same checks always give the same file the same grade.
What the file says
# 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](references/analysis-short-genres.md),按「题材路由」表的关键词和识别锚点定主类型:用户提到具体题材时直接对照该行,否则按全文证据判断。`genre_detected` 只取表中 13 个类型名之一,扫不到写「通用」,按通用模板跑 Stage 2-6。
题材作为观察标尺——只比较源文的读者承诺、冲突载体和实际结算,不调用长篇阶段、卷级循环或黄金三章模型,也不按推荐比例判定源文合格与否。
### Step 4:续跑检查
进入管道前检查 `拆文库/{书名}/_meta.json`:
```
存在 _meta.json?
├─ 否 → 直接进入新一轮拆解
…Read the whole file at its exact version.
How to install
mdr add zenstory-ai/oh-story-dsh/story-short-analyze@sha256:f0ba6c01641dc20eThe line at the top of this page pins the label v3.1.0, which is what most people want. This one pins the sha256 fingerprint of the contents instead, so it survives a label being moved. Either way the exact version is written to mdr.lock, and mdr install downloads and checks those contents again, so it installs them exactly or stops with an error.
[](https://markdownregistry.com/a/art_24kr2rrxivqrnmwj)
3 badge image fetches in 30 days. What the badge shows.
Versions
The registry has recorded 7 versions of this file, between Aug 24, 2026 and Oct 19, 2026, about one every 9 days.
| version | committed | commit | size | audit | |
|---|---|---|---|---|---|
| v3.1.0 latest | 2026-10-19 | 8ff6019 | 11,480 B | A | view · diff |
| v3.1.0 | 2026-10-15 | 215a6fa | 13,953 B | A | view · diff |
| v3.1.0 | 2026-09-28 | 58dbe10 | 14,283 B | A | view · diff |
| v3.1.0 | 2026-09-26 | 9e56c87 | 18,114 B | A | view · diff |
| v3.1.0 | 2026-09-02 | 3503397 | 17,296 B | A | view · diff |
| v3.1.0 | 2026-08-29 | b211cf5 | 17,299 B | A | view · diff |
| v3.0.0 | 2026-08-24 | 09a9362 | 17,009 B | A | view |
Audit of the latest version
- pass: Frontmatter block present
- pass: Frontmatter declares a name
- pass: Frontmatter declares a description
- pass: Size between 200 bytes and 200 KB (11480 bytes)
- pass: No zero-width or bidi control characters
- pass: No instruction hidden inside an HTML comment
- pass: No link to an exfiltration or paste host
- pass: No credential-shaped string
- pass: No instruction to send local credentials anywhere
- pass: No text hidden with inline styles
- pass: No prompt-injection phrasing
- pass: No curl or wget piped into a shell
- pass: No recursive delete of root, home or parent
- pass: No instruction to read or print local credentials
- pass: No base64 blob over 200 characters
- pass: No link to a raw IP address
- pass: No script tag
Source
zenstory-ai/oh-story-dsh · 557 stars · license MIT · pushed 2026-10-19 · branch main
API
GET https://markdownregistry.com/api/v1/artifacts/art_24kr2rrxivqrnmwj GET https://markdownregistry.com/api/v1/resolve?ref=zenstory-ai/oh-story-dsh/story-short-analyze GET https://markdownregistry.com/api/v1/blob/f0ba6c01641dc20ec68e4e44e9521ae1fc4c9948afe32418eb0e65c8fd0ebba3
Your AI assistant does the legwork. You hear about the deals worth your word. Hand yours the standing instructions at modelranch.com and it joins the network that reads files like this one.
Guides: the SKILL.md format and its required fields · what to check before you install a skill · how to pin a skill to an exact version · where to find agent skills · keeping a team on the same skills · which agent file does what.
More from zenstory-ai/oh-story-dsh
Every file in zenstory-ai/oh-story-dsh