Chinese Novel Writing System
leenbj/novel-creator-skill
Guides long-form Chinese novel writing from a rough idea through outlines, chapter drafts and quality gates, with file-based memory for a story meant to reach 300万字.
Guides a short web novel from a target emotion to a finished draft in phases, with required reading at each stage and design files that carry decisions between conversations.
SKILL.md written in Chinese; this summary is our English description.
$ npx skills add zenstory-ai/oh-story-claudecode --skill story-short-write -a claude-codeProject install by default; add -g for ~/.claude/skills/.
$ gh skill install zenstory-ai/oh-story-claudecode story-short-write --agent claude-codeProject scope by default; add --scope user for a personal install. Needs GitHub CLI 2.90.0 or later (public preview).
$ git clone --depth 1 https://github.com/zenstory-ai/oh-story-claudecode.git skills-src && mkdir -p .claude/skills && cp -r skills-src/skills/story-short-write .claude/skills/story-short-write && rm -rf skills-srcUse ~/.claude/skills/ instead of .claude/skills for a personal install. The folder must contain SKILL.md.
Claude Code skills documentation · loads skills from .claude/skills/
Install the "story-short-write" agent skill from https://github.com/zenstory-ai/oh-story-claudecode/tree/main/skills/story-short-write into .claude/skills/story-short-write/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "story-short-write", then confirm the skill loads.Claude Code copies the folder itself, the same result as the manual copy. Check what it changed before you commit it.
$skill-installer install https://github.com/zenstory-ai/oh-story-claudecode/tree/main/skills/story-short-writeType this inside Codex. $skill-installer <name> installs a curated skill from openai/skills. The installer writes to $CODEX_HOME/skills (default ~/.codex/skills). Restart Codex if the skill does not show up.
$ npx skills add zenstory-ai/oh-story-claudecode --skill story-short-write -a codexProject install goes to .agents/skills/; add -g for ~/.codex/skills/.
$ gh skill install zenstory-ai/oh-story-claudecode story-short-write --agent codexProject scope by default (.agents/skills/); add --scope user for a personal install.
$ git clone --depth 1 https://github.com/zenstory-ai/oh-story-claudecode.git skills-src && mkdir -p .agents/skills && cp -r skills-src/skills/story-short-write .agents/skills/story-short-write && rm -rf skills-srcUse ~/.agents/skills/ instead of .agents/skills for a personal install.
Codex skills documentation · loads skills from .agents/skills/
Install the "story-short-write" agent skill from https://github.com/zenstory-ai/oh-story-claudecode/tree/main/skills/story-short-write into .agents/skills/story-short-write/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "story-short-write", then confirm the skill loads.Codex copies the folder itself, the same result as the manual copy. Check what it changed before you commit it.
$ npx skills add zenstory-ai/oh-story-claudecode --skill story-short-write -a cursorProject install goes to .agents/skills/; add -g for ~/.cursor/skills/.
$ gh skill install zenstory-ai/oh-story-claudecode story-short-write --agent cursorProject scope by default (.agents/skills/); add --scope user for a personal install.
$ git clone --depth 1 https://github.com/zenstory-ai/oh-story-claudecode.git skills-src && mkdir -p .cursor/skills && cp -r skills-src/skills/story-short-write .cursor/skills/story-short-write && rm -rf skills-srcUse ~/.cursor/skills/ instead of .cursor/skills for a personal install.
Cursor skills documentation · loads skills from .cursor/skills/, .agents/skills/, .claude/skills/, .codex/skills/
Install the "story-short-write" agent skill from https://github.com/zenstory-ai/oh-story-claudecode/tree/main/skills/story-short-write into .cursor/skills/story-short-write/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "story-short-write", then confirm the skill loads.Cursor copies the folder itself, the same result as the manual copy. Check what it changed before you commit it.
$ gemini skills install https://github.com/zenstory-ai/oh-story-claudecode.git --path skills/story-short-write--scope user (default) or --scope workspace; --path is the subfolder of the repo that holds the skill; --consent skips the security confirmation prompt.
$ npx skills add zenstory-ai/oh-story-claudecode --skill story-short-write -a gemini-cliProject install goes to .agents/skills/; add -g for ~/.gemini/skills/.
$ gh skill install zenstory-ai/oh-story-claudecode story-short-write --agent gemini-cliProject scope by default (.agents/skills/); add --scope user for a personal install.
$ git clone --depth 1 https://github.com/zenstory-ai/oh-story-claudecode.git skills-src && mkdir -p .gemini/skills && cp -r skills-src/skills/story-short-write .gemini/skills/story-short-write && rm -rf skills-srcUse ~/.gemini/skills/ instead of .gemini/skills for a personal install, then run /skills reload.
Gemini CLI skills documentation · loads skills from .gemini/skills/, .agents/skills/
Install the "story-short-write" agent skill from https://github.com/zenstory-ai/oh-story-claudecode/tree/main/skills/story-short-write into .gemini/skills/story-short-write/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "story-short-write", then confirm the skill loads.Gemini CLI copies the folder itself, the same result as the manual copy. Check what it changed before you commit it.
$ gh skill install zenstory-ai/oh-story-claudecode story-short-writeInstalls for Copilot at project scope by default; add --scope user for a personal install. Preview a skill first with gh skill preview. Needs GitHub CLI 2.90.0 or later (public preview).
$ npx skills add zenstory-ai/oh-story-claudecode --skill story-short-write -a github-copilotProject install goes to .agents/skills/; add -g for ~/.copilot/skills/.
$ git clone --depth 1 https://github.com/zenstory-ai/oh-story-claudecode.git skills-src && mkdir -p .github/skills && cp -r skills-src/skills/story-short-write .github/skills/story-short-write && rm -rf skills-srcUse ~/.copilot/skills/ instead of .github/skills for a personal install. Commit .github/skills so cloud agent and code review can use it.
GitHub Copilot skills documentation · loads skills from .github/skills/, .claude/skills/, .agents/skills/
Install the "story-short-write" agent skill from https://github.com/zenstory-ai/oh-story-claudecode/tree/main/skills/story-short-write into .github/skills/story-short-write/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "story-short-write", then confirm the skill loads.GitHub Copilot copies the folder itself, the same result as the manual copy. Check what it changed before you commit it.
$ npx skills add zenstory-ai/oh-story-claudecode --skill story-short-write -a opencodeOpenCode documents no install command of its own. Project install goes to .agents/skills/; add -g for ~/.config/opencode/skills/.
$ gh skill install zenstory-ai/oh-story-claudecode story-short-write --agent opencodeProject scope by default (.agents/skills/); add --scope user for a personal install.
$ git clone --depth 1 https://github.com/zenstory-ai/oh-story-claudecode.git skills-src && mkdir -p .opencode/skills && cp -r skills-src/skills/story-short-write .opencode/skills/story-short-write && rm -rf skills-srcUse ~/.config/opencode/skills/ instead of .opencode/skills for a personal install.
OpenCode skills documentation · loads skills from .opencode/skills/, .claude/skills/, .agents/skills/
Install the "story-short-write" agent skill from https://github.com/zenstory-ai/oh-story-claudecode/tree/main/skills/story-short-write into .opencode/skills/story-short-write/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "story-short-write", then confirm the skill loads.OpenCode copies the folder itself, the same result as the manual copy. Check what it changed before you commit it.
story-short-writeGuides a short web novel from a target emotion to a finished draft in phases, with required reading at each stage and design files that carry decisions between conversations.
The skill treats a short story as a vehicle for one target emotion, such as regret, a shocking twist, catharsis, warmth or lingering dread, and everything on the page must serve it. Work moves through phases: fix the emotion and genre, design the story core, characters, twists and paywall points, write the body, then revise. Each phase has a required reading list of reference files that must be read in full before any story file is created or changed. The instructions and genre guides are written in Chinese, for Chinese-language fiction.
Decisions pass between phases only through files on disk, such as a settings file and a section outline, so body writing can start in a fresh conversation without rereading the design method. Genre guides cover ten styles including revenge, sweet romance, suspense, folk horror and household intrigue. Rules include one core pivot per story, a hook in the first three sentences, a lingering ending, and cutting any sentence that moves neither plot nor feeling. Drafting and polishing can go to project subagents, with a fallback to writing alone when they are missing.
5 steps, taken from the step headings in SKILL.md.
Read from SKILL.md and the folder at commit 2cf7be6. It shows what the files ask for, not the result of running them.
Pre-approves nothing: there is no allowed-tools line, so your agent's usual permission prompts apply.
From allowed-tools in the SKILL.md frontmatter.
Ships 1 file in scripts/, which the agent can run.
Shell commands in SKILL.md call:
nodeFrom the folder's file list and the shell code blocks in SKILL.md.
No URLs in SKILL.md.
From URLs in SKILL.md, links to its own repository left out.
Names no API keys, tokens, secrets or passwords.
From names ending in _API_KEY, _TOKEN, _SECRET, _KEY or _PASSWORD in SKILL.md.
Short Web Novel Writer loads about 1.4k tokens when it runs, and up to ~100k if it reads all its reference files. Until then it costs about 25 tokens; SKILL.md has 312 words of instructions outside code blocks.
Estimates: characters ÷ 4, the usual rule of thumb; real counts depend on the model's tokenizer. Scripts and assets cost tokens only if the agent reads them.
The automated check found no risky patterns in SKILL.md.
Automated static check — not a guarantee. Review scripts before installing. It scans the text of SKILL.md for risky patterns (piping downloads into a shell, reading credential files, hidden Unicode, destructive commands); the scripts in this folder are not scanned.
The full file from zenstory-ai/oh-story-claudecode at commit 2cf7be6, republished under its MIT licence (© zenstory-ai). 312 words, ~1,411 tokens.
.claude/skills/story-short-write/SKILL.md (or your agent's skills folder). This skill also uses 47 other files; get the full folder from GitHub.你是短篇网文写作执行器。从构思到成稿,完成一篇完整的短篇小说。
执行规则:短篇以情绪为目标,所有内容为情绪服务。
短篇按作者时刻加载:每个时刻只读自己的文件,后一时刻只靠落盘文件接上前一时刻。创建或修改故事文件前,先判断当前时刻并完整读取它的必读项(分块直到 EOF;rg 检索或局部摘读不算读完)。只读本 SKILL.md 不算完成门禁。
| 时刻 | 作者确认什么 | 读什么 | 落盘 |
|---|---|---|---|
| 定情绪(Phase 1) | 读者读完的感觉、题材方向 | 本文件 | 进构思时写入 设定.md |
| 构思(Phase 2) | 故事核、人物、反转、付费点 | ① references/workflow-design.md + references/writing-workflow.md、references/submission-craft.md、references/short-craft.md、references/short-reversal.md ② 核心 10 题材读一个精确的 references/genre-styles/{题材}.md,冷门题材读 references/genre-writing-formulas.md ③ 有反派或真相揭露设计时读 references/villain-and-reveal.md,不适用时在设计校验区写明原因 | 设定.md、小节大纲.md |
| 写正文(Phase 3–4) | 成稿 | Phase 3 写正文前完整读取 references/workflow-draft.md,按其「写前加载」读写作手法;Phase 4 精修前完整读取 references/workflow-revision.md | 正文.md |
构思必读项在第一次写入 设定.md / 小节大纲.md 前读完。任一必需路径不存在、不可读或题材尚未解析到唯一 reference 时,立即停止,报告准确路径/待定项,不得创建或修改故事产物。不要把“已读 references”的回执写进故事文件;选出的题材招式、反转计算等应用证据写进正常设计字段。每个时刻按当前任务完整回读,不得用早先读过代替。
交接只靠落盘:作者在对话里定下的字数、平台、人称、偏好、红线和否掉的方案,构思交付前写进 设定.md;写正文只读两份设计文件与本时刻的写作手法,不重读构思方法论,也不回翻对话。
换上下文:构思读得最多。构思汇报末尾建议作者新开一个对话说「写正文」;作者要在本对话接着写也照做。新对话里两份设计文件已通过构思完成门禁时,直接进入写正文。
Agent 只查当前端 canonical 目录(Claude
.claude/agents、OpenCode.opencode/agents、Codex.codex/agentsTOML、Antigravity.agents/agents),不跨端误判。Claude 用subagent_type,OpenCode 用subagent的agent,Codex 用agent_type,Antigravity 用invoke_subagent+TypeName。主会话自己写正文、去味是常态,不报;作者明确要交给写作助手而能力/文件缺失、unknown agent 或 ZCode 3.3.4 时,由主会话接手并一句白话告诉作者(如「写作助手用不了,由我直接写」),Fallback: project custom agents unavailable -> solo原文只写进汇报最后一行「技术备注:」。Spawn 版本提示(不阻断 spawn):先读取项目根
.story-deployed的agents_version。与本版agents_version: 34不一致时(标记缺失、字段缺失/非整数、小于或大于 34)照常按文件存在性检查并 spawn,同时用一句白话提示作者「写作助手是旧版,运行 /story-setup 后新开对话」,Notice: agents bundle 版本不匹配(项目 {N},本版 34)原文写进技术备注行;大于 34 时额外提示先更新 oh-story-claudecode,不要用本地旧版 setup 降级覆盖。只有 agent 文件缺失、或运行时不暴露 custom agent 时才降级 solo/direct,Fallback: ... -> solo同样只进技术备注行。
文风裁决:正文写作、改写或审稿前先读 references/style-resolution.md,加载本书文风并形成 style_resolution;无作者记忆也执行。当前请求、本书文风和 active 偏好按维度覆盖通用 references;同一裁决交给后续执行者。
除了上面的执行规则,构思和写作时遵循:
short-craft.mdscripts/author_memory_commit.py query --workspace {工作区} --book-root {项目目录} --kind prose_style --kind story_design [--genre {题材}] [--workflow 短篇] 把输出的 lines 原样交正文/改写 agent 作自然倾向,不逐条追求命中,不牺牲连贯、节奏和字数;硬门禁、当前请求和本篇设定优先;没装下的交稿时用原话告诉作者。长期声明在收尾用 record 写入并回传回执,细则见 references/author-memory.md。从项目根及上一级往下 3 层找到 短篇扫榜结论.md(多份取最新)时先读其「选题匹配」,排第一的方向带着目标情绪当候选问作者;过了复扫日期就提醒可能过期。
问用户:「你想让读者读完什么感觉?有没有想写的题材方向或灵感?」
用户已说清读者读完的感觉 → 直接进入 Phase 2;只给了题材或梗、没说情绪 → 从下表带一个推荐情绪问一句,作者点头再进。
如果用户只有模糊想法 → 帮用户做情绪选择:
| 情绪类型 | 适合场景 | 难度 | 市场热度 | 常配题材包 |
|---|---|---|---|---|
| 意难平 | 虐恋、遗憾、错过 | 中 | 🔥🔥🔥 | 追妻火葬场 / 甜宠(先虐后甜) |
| 反转震撼 | 悬疑、身份错位 | 高 | 🔥🔥🔥 | 悬疑 / 沙雕脑洞(反套路) |
| 爽感释放 | 打脸、逆袭 | 低 | 🔥🔥 | 世情打脸 / 复仇打脸 / 总裁豪门 / 宅斗宫斗(古代上位) |
| 治愈温暖 | 成长、亲情、友情 | 中 | 🔥🔥 | 甜宠 / 双男主(救赎线) |
| 细思极恐 | 悬疑、心理 | 高 | 🔥 | 悬疑 / 民俗怪谈 |
| 共鸣感动 | 现实、职场、婚姻 | 中 | 🔥🔥🔥 | 世情打脸(共鸣模式) / 追妻火葬场(小三文学) |
存在本篇 对标/、项目根 拆文库/ 或用户提供参考小说时,先完整读取 references/benchmark-recall.md,执行对标发现、排除本书续写基线、题材匹配与召回。无外部对标时仍按原题材包执行。
完整步骤见 references/workflow-design.md。按首屏「写前必读」读完后执行;两份设计文件通过其中的 Phase 2 完成门禁,才可进入 Phase 3。
进入正文写作前,完整读取 references/workflow-draft.md,执行交付参数锁定、写前验收与逐场景写作;只做构思或精修时不加载。
小节完整性流程:
小节大纲.md 检查批准内容是否落地、因果与下一步是否读得懂、感知/反应是否提供新信息、伏笔/物件是否按计划出现。node scripts/check-ai-patterns.js --check --fail-on=blocking 正文.md 无 blocking 命中;其余提示先通读,确属问题再改node scripts/check-degeneration.js --check 正文.md 无 blocking 退化命中(复读/截断/工程词泄漏)不通过 → 回退补足,不得进入精修。
精修或质量自检前,完整读取 references/workflow-revision.md,按其职责分工去味、查一致性、做最终扫描与交付验收;只做构思时不加载。
流水线: 短篇 位置: 写作(第 3/3 步)
有参考小说想对标 → /story-short-analyze(存入 拆文库/{书名}/);写完去 AI 味 → /story-deslop;想自检 → Phase 4 流程 + references/short-prose-quality.md;要市场方向 → /story-short-scan;设定太大适合长篇 → /story-long-write。
阶段必读项按首屏「写前必读」执行;其他资料按 参考索引 的加载条件选用。
© zenstory-ai, MIT. Rendered from Markdown: HTML in the file is shown as text, images as links, and headings moved down two levels. Raw file
SKILL.md and 47 other files (scripts, references) in skills/story-short-write of zenstory-ai/oh-story-claudecode.
Open the folder on GitHubat commit 2cf7be6
We found 2 copies of this SKILL.md (exact, near-identical or edited) in other folders, from 1 other GitHub owner. This page covers the copy in zenstory-ai/oh-story-claudecode, which our catalogue first saw on October 7, 2026.
Short Web Novel Writer next to the 5 skills that share the most tags, products or categories with it. Stars are the repository's; “used in” counts other GitHub owners with a copy.
| Skill | Stars | Used in | Tokens | Auto-check | Licence | Repo updated |
|---|---|---|---|---|---|---|
| Short Web Novel Writer this skillzenstory-ai/oh-story-claudecode | 7.4k | 1 repos | ~1.4k | Automated safety check: Pass | MIT | |
| Chinese Novel Writing Systemleenbj/novel-creator-skill | 671 | — | ~3.9k | Automated safety check: Pass | None | |
| Chinese Novelist Chapter WriterPenglongHuang/chinese-novelist-skill | 3.3k | — | ~491 | Automated safety check: Warn | MIT | |
| Sun-Style Restrained Narrative WritingKKKKhazix/sun-style-writing | 403 | — | ~1.7k | Automated safety check: Pass | MIT | |
| Long Story AnalysisNarcooo/inkos | 10k | — | ~364 | Automated safety check: Pass | AGPL-3.0 | |
| Short Web Fiction Writeruu201/character-arc | 583 | — | ~3.7k | Automated safety check: Pass | MIT |
leenbj/novel-creator-skill
Guides long-form Chinese novel writing from a rough idea through outlines, chapter drafts and quality gates, with file-based memory for a story meant to reach 300万字.
PenglongHuang/chinese-novelist-skill
Writes long Chinese novels chapter by chapter through guided questions, outlining, drafting with cliffhangers and automatic validation, with resumable projects.
KKKKhazix/sun-style-writing
Writes Chinese first-person nonfiction in a restrained plain-description style: short sentences, exact numbers, objects that carry feeling and silence at the peak.
Narcooo/inkos
Breaks down a full novel or long sample into story mechanisms and style traits the agent can reuse as craft, without copying names or wording.
uu201/character-arc
Walks an agent through writing a complete short web novel in Chinese, starting from the emotion the reader should feel and building around one twist.
UfukNode/Noustiny
Grades whether a downstream story beat still holds after an upstream insertion, returning a strict JSON verdict of still_valid, needs_rewrite or must_delete.
zenstory-ai/oh-story-claudecode
Drives a Chrome window over the DevTools Protocol with the agent-browser CLI, so the agent can reuse your logged-in sessions, read pages and pull tokens.
zenstory-ai/oh-story-claudecode
Reviews Chinese web-novel text with several reviewer agents in parallel, falling back to a single-agent pass, and reports structure, character, prose and setting problems with fixes.
zenstory-ai/oh-story-claudecode
Scans popular short web-fiction rankings on Chinese platforms such as Dianzhong and Heiyan to surface trending emotional hooks, themes and topic candidates with an expiry warning.
zenstory-ai/oh-story-claudecode
Routes a Chinese web-novel writing request to the matching tool in a 13-skill toolbox, covers author habit memory, and can launch a local dashboard for browsing a project.
zenstory-ai/oh-story-claudecode
Rewrites AI-sounding Chinese web novel text so it reads naturally, changing as little as possible and keeping plot, names and numbers intact.
zenstory-ai/oh-story-claudecode
Reverse-imports an existing novel, half-finished or complete, into the standard project structure so story-long-write or story-short-write can continue it.
Categories
Guides a short web novel from a target emotion to a finished draft in phases, with required reading at each stage and design files that carry decisions between conversations. The skill treats a short story as a vehicle for one target emotion, such as regret, a shocking twist, catharsis, warmth or lingering dread, and everything on the page must serve it. Work moves through phases: fix the emotion and genre, design the story core, characters, twists and paywall points, write the body, then revise.
Short Web Novel Writer fits situations like: writing a complete short web novel from first idea to draft; designing the core twist, characters and outline of a short story; polishing a short draft so the opening hooks and the ending lingers; choosing a genre style such as sweet romance, revenge or suspense.
Run `npx skills add zenstory-ai/oh-story-claudecode --skill story-short-write -a claude-code`. Or copy the skill folder (skills/story-short-write in zenstory-ai/oh-story-claudecode) into .claude/skills/story-short-write in your project. Claude Code loads it when a task matches its description.
Run `npx skills add zenstory-ai/oh-story-claudecode --skill story-short-write -a codex`. Or copy the skill folder (skills/story-short-write in zenstory-ai/oh-story-claudecode) into .agents/skills/story-short-write in your project. Codex loads it when a task matches its description.
Cursor, Gemini CLI, GitHub Copilot and OpenCode also load SKILL.md folders. With the skills CLI, run `npx skills add zenstory-ai/oh-story-claudecode --skill story-short-write -a cursor` (or -a gemini-cli, github-copilot or opencode for the others). To copy it by hand, put the folder in .cursor/skills/story-short-write, .gemini/skills/story-short-write, .github/skills/story-short-write and .opencode/skills/story-short-write in your project.
Going by SKILL.md and its folder, Short Web Novel Writer needs the command-line tools its instructions call (node). Our summary lists: Optional helper agents installed with /story-setup.
SKILL.md contains no URLs. Any network use would come from the scripts or tools the agent runs. This is read from the text; nothing was executed.
Our automated static check of SKILL.md found no risky patterns, such as piping downloads into a shell, reading credential files or hidden Unicode. It is not a guarantee. The check reads SKILL.md only: the scripts in the folder are not scanned, so read them before running anything.
Short Web Novel Writer is published under the MIT licence (the repository's licence). It allows redistribution, so the full SKILL.md is shown on this page.
About 1.4k tokens (SKILL.md is roughly 5.6k characters). Agents keep only the skill's name and description in context until a task matches; then they load SKILL.md in full. Its references folder adds about 99k tokens, read only when the agent opens those files.
Skills that share tags, products or a category with Short Web Novel Writer: Chinese Novel Writing System (leenbj/novel-creator-skill, 671 stars), Chinese Novelist Chapter Writer (PenglongHuang/chinese-novelist-skill, 3.3k stars), Sun-Style Restrained Narrative Writing (KKKKhazix/sun-style-writing, 403 stars) and Long Story Analysis (Narcooo/inkos, 10k stars). The comparison table on this page puts their stars, adoption, token cost, safety result and licence side by side.
zenstory-ai (a GitHub organization) maintains it in zenstory-ai/oh-story-claudecode, which has 7,424 GitHub stars. The repository holds 13 skills in this directory. The repository was last updated on October 10, 2026.
Source: zenstory-ai/oh-story-claudecode on GitHub. Facts on this page come from the repository at the commit we read; the author's words are quoted as theirs.