Story Multi-Perspective Review
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.
给 AI 短剧出美术设定集(场景 + 叙事道具):场景的设计意图、一致性锚点、光照时段变体、 空景提示词;道具的戏剧功能、状态变体、尺度参照、白底无手提示词。
$ npx skills add eternityspring/shuohao-skills --skill novel-art -a claude-codeProject install by default; add -g for ~/.claude/skills/.
$ gh skill install eternityspring/shuohao-skills novel-art --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/eternityspring/shuohao-skills.git skills-src && mkdir -p .claude/skills && cp -r skills-src/skills/novel-art .claude/skills/novel-art && 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 "novel-art" agent skill from https://github.com/eternityspring/shuohao-skills/tree/main/skills/novel-art into .claude/skills/novel-art/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "novel-art", 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/eternityspring/shuohao-skills/tree/main/skills/novel-artType 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 eternityspring/shuohao-skills --skill novel-art -a codexProject install goes to .agents/skills/; add -g for ~/.codex/skills/.
$ gh skill install eternityspring/shuohao-skills novel-art --agent codexProject scope by default (.agents/skills/); add --scope user for a personal install.
$ git clone --depth 1 https://github.com/eternityspring/shuohao-skills.git skills-src && mkdir -p .agents/skills && cp -r skills-src/skills/novel-art .agents/skills/novel-art && rm -rf skills-srcUse ~/.agents/skills/ instead of .agents/skills for a personal install.
Codex skills documentation · loads skills from .agents/skills/
Install the "novel-art" agent skill from https://github.com/eternityspring/shuohao-skills/tree/main/skills/novel-art into .agents/skills/novel-art/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "novel-art", 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 eternityspring/shuohao-skills --skill novel-art -a cursorProject install goes to .agents/skills/; add -g for ~/.cursor/skills/.
$ gh skill install eternityspring/shuohao-skills novel-art --agent cursorProject scope by default (.agents/skills/); add --scope user for a personal install.
$ git clone --depth 1 https://github.com/eternityspring/shuohao-skills.git skills-src && mkdir -p .cursor/skills && cp -r skills-src/skills/novel-art .cursor/skills/novel-art && 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 "novel-art" agent skill from https://github.com/eternityspring/shuohao-skills/tree/main/skills/novel-art into .cursor/skills/novel-art/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "novel-art", 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/eternityspring/shuohao-skills.git --path skills/novel-art--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 eternityspring/shuohao-skills --skill novel-art -a gemini-cliProject install goes to .agents/skills/; add -g for ~/.gemini/skills/.
$ gh skill install eternityspring/shuohao-skills novel-art --agent gemini-cliProject scope by default (.agents/skills/); add --scope user for a personal install.
$ git clone --depth 1 https://github.com/eternityspring/shuohao-skills.git skills-src && mkdir -p .gemini/skills && cp -r skills-src/skills/novel-art .gemini/skills/novel-art && 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 "novel-art" agent skill from https://github.com/eternityspring/shuohao-skills/tree/main/skills/novel-art into .gemini/skills/novel-art/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "novel-art", 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 eternityspring/shuohao-skills novel-artInstalls 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 eternityspring/shuohao-skills --skill novel-art -a github-copilotProject install goes to .agents/skills/; add -g for ~/.copilot/skills/.
$ git clone --depth 1 https://github.com/eternityspring/shuohao-skills.git skills-src && mkdir -p .github/skills && cp -r skills-src/skills/novel-art .github/skills/novel-art && 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 "novel-art" agent skill from https://github.com/eternityspring/shuohao-skills/tree/main/skills/novel-art into .github/skills/novel-art/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "novel-art", 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 eternityspring/shuohao-skills --skill novel-art -a opencodeOpenCode documents no install command of its own. Project install goes to .agents/skills/; add -g for ~/.config/opencode/skills/.
$ gh skill install eternityspring/shuohao-skills novel-art --agent opencodeProject scope by default (.agents/skills/); add --scope user for a personal install.
$ git clone --depth 1 https://github.com/eternityspring/shuohao-skills.git skills-src && mkdir -p .opencode/skills && cp -r skills-src/skills/novel-art .opencode/skills/novel-art && 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 "novel-art" agent skill from https://github.com/eternityspring/shuohao-skills/tree/main/skills/novel-art into .opencode/skills/novel-art/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "novel-art", 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.
novel-art给 AI 短剧出美术设定集(场景 + 叙事道具):场景的设计意图、一致性锚点、光照时段变体、 空景提示词;道具的戏剧功能、状态变体、尺度参照、白底无手提示词。
Novel Art is an agent skill from eternityspring/shuohao-skills. 给 AI 短剧出美术设定集(场景 + 叙事道具):场景的设计意图、一致性锚点、光照时段变体、 空景提示词;道具的戏剧功能、状态变体、尺度参照、白底无手提示词。 产出 art.json + Markdown + 单页评审报告(含导出 JSON)。 为 AI 生成而设计,不是实拍——环境和道具都是生成资产,交付的是让它们跨集长一样的一致性方案; 10 道质量门全部由脚本确定性检查(锚点 3–5、无人无手、白底可抠、尺度短语、提示词英文……)。 有 novel-outline 的 outline.json 就用 seed 预填场景清单与出现集。 零依赖、零 API key、不出图——交付的是提示词,出图在下游。 Use when asked to 场景设定、出场景、环境设定集、场景一致性、scene bibles for AI short drama。
Its SKILL.md is about 1.1k tokens, which your agent loads only when the skill is triggered. The skill folder holds 20 other files, including scripts, reference files and assets (for example `README.en.md`, `README.md` and `examples/渡口-art.json`).
It sits in Writing & Content, covering Creative writing and fiction. The repository describes itself as: AI 短剧制作的 skill 集合:拆角色、排大纲、出场景与道具设定、写剧本、切分镜 | Agent skills for AI short-drama production — character bibles, adaptation outlines, art bibles, screenplays, storyboards. Runs in… The licence is Apache-2.0.
5 steps, taken from the step headings in SKILL.md.
Read from SKILL.md and the folder at commit c27ea0e. It shows what the files ask for, not the result of running them.
Pre-approves these tools, so the agent can use them without asking each time:
ReadWriteBashTaskGlobFrom allowed-tools in the SKILL.md frontmatter.
Ships 2 files in scripts/ (JavaScript), 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.
Novel Art loads about 1.1k tokens when it runs, and up to ~20k if it reads all its reference files. Until then it costs about 97 tokens; SKILL.md has 184 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 noted patterns worth knowing about, such as sudo or a known installer.
allowed-tools: Read, Write, Bash, Task, GlobAutomated 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 eternityspring/shuohao-skills at commit c27ea0e, republished under its Apache-2.0 licence (© eternityspring). 184 words, ~1,084 tokens.
.claude/skills/novel-art/SKILL.md (or your agent's skills folder). This skill also uses 14 other files; get the full folder from GitHub.给 AI 短剧出美术设定集:场景 + 叙事道具。前提刻在骨子里:这是 AI 生成,不是实拍——没有堪景搭景置景采买,环境和道具都是要被生成几十次还得长一样的资产,所以交付物全部围绕一致性:
| 交付 | 解决什么 |
|---|---|
| 一致性锚点(每景 3–5 个) | 观众靠它认场景,QC 靠它核对生成镜头有没有漂 |
| 光照时段变体 | AI 换时段是重新生成不是重新打灯,每个状态落成完整提示词 |
| 空景出图提示词 | 环境和角色是两层资产,参考图里混进人,一致性全毁 |
| 变体机制(variantOf) | 生成新景便宜,但变体复用母场景资产更一致 |
| 道具状态变体 | 皮箱的合上与打开是两张参考图——道具有状态弧,场景没有 |
| 道具尺度参照 | AI 经常把手持道具画成家具尺寸,提示词必须带尺度短语 |
| 道具白底无手 | 道具图要被贴进各种镜头,必须可抠;拿着道具的手是最常见污染 |
{baseDir} = 本文件所在目录。脚本 {baseDir}/scripts/novel-art.mjs,零依赖,node 直接跑。
边界(不做的事):不做分镜、不写剧本、不管角色(novel-characters 的活)、不排大纲(novel-outline 的活)。道具只收叙事道具(有特写、跨集、承载剧情的,通常 3–8 件)——场景陈设归场景锚点,一次性手部道具镜头级提示词解决,都不单独建资产。
三种输入,优先级从高到低:
有 cast.json(novel-characters 的产出)也带上——校验「提示词不含角色名」要用。
node {baseDir}/scripts/novel-art.mjs seed <outline.json> > <workdir>/art.json确定性搬运:场景 id/名称/主场景标记/出现集/承载爽点,带复用方案的场景会有 seedNote 提示做成变体。这些事实不要让模型重新想一遍。
没有 outline.json 就自己按 references/schema.md 建清单。
每个场景一份,能并发就并发。每份任务拿到:
{baseDir}/references/scene-pass.md 和 {baseDir}/references/schema.md(读它们,照着做)核心要求都在 scene-pass.md 里,最重的三条:锚点要可画可认可核对(「补丁船篷」是锚点,「陈旧的氛围」是形容词);光照状态从分集反推,不写用不上的全家桶;能做变体就别开新景。
叙事道具优先吃大纲:outline.json 从 1.1.0 起带 props,seed 会把道具表连同「承载什么」「托起哪几个爽点」「哪几集出现」一起搬过来,这一层只填设计字段(尺度、锚点、状态变体、白底提示词)。大纲没有 props 就从原文提取,那时这步是模型的活:只收有特写、跨集出现、承载剧情的,通常 3–8 件,跟主角数量一个量级。每件按 references/prop-pass.md 填:戏剧功能、锚点、状态变体、尺度、白底无手提示词。皮箱这种「跟人走的道具」就该在这——塞进场景锚点和角色画像都不对。
node {baseDir}/scripts/novel-art.mjs validate <art.json> --cast <cast.json>10 道质量门全是代码。场景 + 共用 6 道:锚点 3–5、光照状态 ≥1、无人、提示词全英文、不含角色名(给了 --cast 才查)、变体引用完整。道具专属 4 道:状态 ≥1、尺度短语写进提示词、反向词禁手、设定图纯白背景。
有违规逐条修,改完重跑,直到通过。
cd <输出目录>
node {baseDir}/scripts/novel-art.mjs render <剧名>-art.json --md > <剧名>-art.md
node {baseDir}/scripts/novel-art.mjs render <剧名>-art.json --html > art-report.html报告界面默认中文;用户要英文界面就加 --lang en(或在 art.json 顶层写 "lang": "en",--lang 优先)。render 默认去 art.json 同级的 images/<slug>-sheet.png 找图(场景和道具都找),图在别处就用 --images <目录> 指过去——本 skill 不产生这些文件,下游出完图重跑一次 render 就能嵌进报告。报告含:KPI 带、场景清单、场景设定卡、道具清单、道具设定卡(锚点核对表 / 状态变体 / 提示词包全带复制按钮)、质量门面板、导出 JSON(下载的就是 art.json 原样)。
汇报一句话说清:几个场景(主场景/变体各几)、几件道具、锚点总数、报告路径;没过的门明说。
不要说「已出图」——这一步不存在了,交付的是提示词。
最终落地:
<输出目录>/
├── <剧名>-art.json
├── <剧名>-art.md
├── art-report.html ← 双击就能开
└── images/ ← 本 skill 不写这个目录
└── <slug>-sheet.png ← 下游出完图放这儿,render 会捡起来novel-outline → outline.json (什么:结构与分集)
novel-characters → cast.json (谁:角色资产)
novel-art → art.json (哪里 + 手里拿的:美术资产)seed 吃 outline.json 的场景与道具两块(大纲没有 props 时道具留空,模型从原文提取),--cast 吃 cast.json。三份 JSON 各自的报告都带导出按钮,改完都能喂回各自的 render/validate。
--lang,默认中文、或跟 art.json 的 lang 字段);出图提示词永远英文image.sheet 是给下游的版面指令,版面规格见 references/sheet.mdnode {baseDir}/scripts/selftest.mjs151 项断言,不调模型、不花额度。10 道质量门每一道都有击穿用例。改完脚本先跑这个。
{baseDir}/examples/渡口-art.json:《渡口》三场景 + 两件叙事道具(旧皮箱、县衙旧砚)的完整设定,全部质量门通过(含对着 novel-characters 样例 cast 的角色名检查)。当质量基准,也是自测夹具。
© eternityspring, Apache-2.0. 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 14 other files (scripts, references, assets) in skills/novel-art of eternityspring/shuohao-skills.
Open the folder on GitHubat commit c27ea0e
Novel Art 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 |
|---|---|---|---|---|---|---|
| Novel Art this skilleternityspring/shuohao-skills | 4.3k | — | ~1.1k | Automated safety check: Notes | Apache-2.0 | |
| Story Multi-Perspective Reviewzenstory-ai/oh-story-claudecode | 7.4k | 3 repos | ~3k | Automated safety check: Pass | MIT | |
| Short Web Fiction Trend Scanzenstory-ai/oh-story-claudecode | 7.4k | 2 repos | ~1.2k | Automated safety check: Pass | MIT | |
| InkOS Creative HarnessNarcooo/inkos | 10k | 1 repos | ~1.1k | Automated safety check: Pass | AGPL-3.0 | |
| SepiaNanako0129/sepia | 3k | — | ~3.6k | Automated safety check: Pass | MIT | |
| Story Toolbox Routerzenstory-ai/oh-story-claudecode | 7.4k | — | ~1.7k | Automated safety check: Pass | MIT |
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.
Narcooo/inkos
Drives long-form fiction, scripts, storyboards, interactive films and long-document translation through InkOS, with every change made by a typed action.
Nanako0129/sepia
Make AI-generated writing read as human-written, in fiction and in professional prose.
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.
Tomsawyerhu/Chinese-WebNovel-Skill
用于根据一段中文小说简介,规划、起稿、续写、改写中文网文。重点覆盖选材、构思、分卷、章纲、开头、节奏、章末、模仿检索、去 AI 味。
eternityspring/shuohao-skills
从小说或短故事里拆出角色表、人物画像、形象提示词、音色提示词, 其中形象提示词含一张角色设定图的完整版面指令(左半身像 + 右全身三视图 + 细节条), 产出 JSON + Markdown + 可交互的 report.html。
eternityspring/shuohao-skills
把一本小说改编成短剧大纲五件套:改编说明、人物表、爽点表、分集梗概、资产清单, 产出 outline.json + Markdown + 单页评审报告(KPI 带、关键决策、爽点时间轴、调度矩阵、场景概览、质量门)。
eternityspring/shuohao-skills
给任何故事里的角色真出参考图(小说改编、自己原创的故事、单独设计一个角色都行,不需要小说原文): 一段话描述角色,拆成分层字段、补全后确认, 先出一张正面全身锚点,其余视图(大头照、90° 侧面、背面、细节、45° 大头照)都只参考这张锚点, 按需分档出图。每张图带标识、可单独重出,重出后自动标出哪些图过期。
eternityspring/shuohao-skills
给 AI 短剧写剧本:把 novel-outline 的分集梗概落成结构化的场次 + 节拍流(动作节拍与台词行交替), 台词逐句带说话人与语气,时长逐集按语速确定性折算。产出 script.json + Markdown + 单页评审报告 (时长仪表 / 分集剧本 / 场次总表 / 按角色聚合的台词本,含导出 JSON)。
eternityspring/shuohao-skills
给 AI 短剧出分镜:三层结构——段(一次视频生成,≤15 秒)→ 分镜(段内 2–5 秒的剪切,认领剧本节拍) → 分镜图(每切一张关键帧:主分镜图钉 0.00 秒,子分镜图钉各自切点)。
Categories
给 AI 短剧出美术设定集(场景 + 叙事道具):场景的设计意图、一致性锚点、光照时段变体、 空景提示词;道具的戏剧功能、状态变体、尺度参照、白底无手提示词。. Novel Art is an agent skill from eternityspring/shuohao-skills.
Novel Art fits situations like: asked to 场景设定、出场景、环境设定集、场景一致性、scene bibles for AI short drama; tasks that involve Creative writing and fiction.
Run `npx skills add eternityspring/shuohao-skills --skill novel-art -a claude-code`. Or copy the skill folder (skills/novel-art in eternityspring/shuohao-skills) into .claude/skills/novel-art in your project. Claude Code loads it when a task matches its description.
Run `npx skills add eternityspring/shuohao-skills --skill novel-art -a codex`. Or copy the skill folder (skills/novel-art in eternityspring/shuohao-skills) into .agents/skills/novel-art 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 eternityspring/shuohao-skills --skill novel-art -a cursor` (or -a gemini-cli, github-copilot or opencode for the others). To copy it by hand, put the folder in .cursor/skills/novel-art, .gemini/skills/novel-art, .github/skills/novel-art and .opencode/skills/novel-art in your project.
Going by SKILL.md and its folder, Novel Art needs JavaScript for the scripts in its folder and the command-line tools its instructions call (node). Our summary lists: Node.js. Its frontmatter pre-approves these tools: Read, Write, Bash, Task, Glob.
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 notes only (pre-approves every shell command (allowed-tools: bash)), nothing it rates as a warning. 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.
Novel Art is published under the Apache-2.0 licence (the repository's licence). It allows redistribution, so the full SKILL.md is shown on this page.
About 1.1k tokens (SKILL.md is roughly 4.3k 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 19k tokens, read only when the agent opens those files.
Skills that share tags, products or a category with Novel Art: Story Multi-Perspective Review (zenstory-ai/oh-story-claudecode, 7.4k stars), Short Web Fiction Trend Scan (zenstory-ai/oh-story-claudecode, 7.4k stars), InkOS Creative Harness (Narcooo/inkos, 10k stars) and Sepia (Nanako0129/sepia, 3k stars). The comparison table on this page puts their stars, adoption, token cost, safety result and licence side by side.
eternityspring (a GitHub user) maintains it in eternityspring/shuohao-skills, which has 4,285 GitHub stars. The repository holds 6 skills in this directory. The repository was last updated on October 8, 2026.
Source: eternityspring/shuohao-skills on GitHub. Facts on this page come from the repository at the commit we read; the author's words are quoted as theirs.