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-covergit 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-cover)<a href="https://agentmods.dev/skills/zenstory-ai/oh-story-claudecode/story-cover"><img src="https://agentmods.dev/badge/skills/zenstory-ai/oh-story-claudecode/story-cover/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-cover"><img src="https://agentmods.dev/badge/skills/zenstory-ai/oh-story-claudecode/story-cover.svg" alt="Reviewed on agentmods" width="80" height="20"></a>- Socket pass
- Snyk warn
- NVIDIA SkillSpector warn
SkillSpector: 6 findings, up to high
These are SkillSpector’s own severities. On a checked sample its high-severity flags on skills were ~96% false positives — a documented command, a public API, a “never do X” rule — so we show them as a caution to read, not a verdict. Why →
- high Tool Misuse · line 232 Tool calls are chained to bypass individual safety checks or escalate capabilities beyond what any single tool call would allow.Fix: Limit tool chaining depth and validate the output of each tool before passing it to the next. Require explicit user approval for multi-step chains.
- high Tool Misuse · line 232 Tool calls are chained to bypass individual safety checks or escalate capabilities beyond what any single tool call would allow.Fix: Limit tool chaining depth and validate the output of each tool before passing it to the next. Require explicit user approval for multi-step chains.
- medium Data Exfiltration · line 25 Data is being sent to an external URL. This could be legitimate telemetry or data exfiltration. Manual review is recommended.Fix: Verify the destination URL is trusted and necessary. Remove or replace with documented APIs. Ensure no secrets, tokens, or PII are transmitted.
- medium Data Exfiltration · line 165 Data is being sent to an external URL. This could be legitimate telemetry or data exfiltration. Manual review is recommended.Fix: Verify the destination URL is trusted and necessary. Remove or replace with documented APIs. Ensure no secrets, tokens, or PII are transmitted.
- medium Data Exfiltration · line 218 Data is being sent to an external URL. This could be legitimate telemetry or data exfiltration. Manual review is recommended.Fix: Verify the destination URL is trusted and necessary. Remove or replace with documented APIs. Ensure no secrets, tokens, or PII are transmitted.
- medium Data Exfiltration · line 186 Data is being sent to an external URL. This could be legitimate telemetry or data exfiltration. Manual review is recommended.Fix: Verify the destination URL is trusted and necessary. Remove or replace with documented APIs. Ensure no secrets, tokens, or PII are transmitted.
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.00093 | $0.04917 |
| Opus 5 | $0.00046 | $0.02459 |
| Sonnet 5 | $0.00019 | $0.00983 |
| Haiku 4.5 | $0.00009 | $0.00492 |
Grade A, and why
story-cover scanned grade A with 1 finding 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 13d 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.
Makes network callslowCapability
Not a fault in itself. Listed so you know the mod talks to something, and to what.
metadata: {"openclaw":{"requires":{"env":["GPT_IMAGE_API_KEY"],"bins":["curl","jq","base64"]},"primaryEnv":"GPT_IMAGE_API_KEY","source":"https://github.com/zenstory-ai/oh-story-claudecode"}} Copies of this mod
1 near-identical copy found in the catalogue:
- story-cover — 100% identical, 0 lines differ
How it starts
The opening of the file, as written. The whole thing — 328 lines — stays where its author put it; the contents beside it link to each section on GitHub.
story-cover:小说封面生成
你是小说封面设计师。根据书名和题材,调用 GPT-Image-2 一次性生成包含书名和作者名的完整封面。
核心原则:封面是读者的第一印象,一眼传达题材和氛围。
生成通路
- Codex 内置(优先):当前 Codex CLI 会话可调用
$imagegen/image_gen时,直接生成并落盘;计入 Codex 通用用量,无需OPENAI_API_KEY或GPT_IMAGE_API_KEY,也不运行curl。story-cover自行调用工具,不让用户另开命令。 - API 回退:仅在会话没有内置工具或用户明确指定 API 时使用,需要
GPT_IMAGE_API_KEY。工具缺失不等于 Codex 订阅不支持生图;内置调用失败时先报告错误,不静默切换到可能收费的 API。
输出参数与 API 回退环境变量
| 变量 | 必填 | 默认 | 说明 |
|---|---|---|---|
GPT_IMAGE_API_KEY |
API 回退必填 | — | OpenAI 或兼容代理的 API Key;Codex 内置通路不用 |
GPT_IMAGE_BASE_URL |
https://api.openai.com/v1 |
兼容代理时改这个 | |
GPT_IMAGE_MODEL |
gpt-image-2 |
仅在测试新模型时覆盖 | |
GPT_IMAGE_SIZE |
1024x1536 |
API 回退的目标比例提示(番茄 3:4→768x1024,默认 2:3→1024x1536)。官方 gpt-image-2 认任意 16 倍数尺寸(比例≤3:1),但很多中转代理会忽略 size、按预设返回约 2:3(已实测)——平台尺寸不靠它,由「导出平台上传尺寸」步骤兜底 |
|
UPLOAD_SIZE |
— | 平台固定上传像素(番茄 600x800);设置后由「导出平台上传尺寸」步骤居中裁剪+缩放出上传版(不变形、不依赖出图尺寸) |
|
BOOK_DIR |
✅ | — | 输出目录,建议 ./covers/<书名> |
REF_IMAGE |
— | 参考图本地路径或 URL;内置通路先把图片载入会话,API 回退走 images/edits 图生图 |
生成流程
Step 1:收集信息
必填:书名、作者名(笔名)、目标平台、输出目录 BOOK_DIR(建议 ./covers/<书名>;API 回退用环境变量,内置通路直接使用当前任务值)
选填:参考图 REF_IMAGE(本地路径或 URL,设置后切换到图生图)、风格偏好、尺寸
书名和笔名是封面必需信息:缺任一必须先用 AskUserQuestion 问用户补全,不得编造或留空。
按目标平台定封面尺寸:番茄上传 600×800 是 3:4(不是 2:3),出图比例不对、平台二次裁剪就会切掉书名/笔名。
| 平台 | 上传尺寸 | 比例 | 生成 GPT_IMAGE_SIZE(尽量) |
|---|---|---|---|
| 番茄小说 | 600×800 | 3:4 | 768x1024 |
| 其他平台(默认竖版) | 按平台规格 | 2:3 | 1024x1536 |
内置通路把目标比例写进提示词;API 回退再 export GPT_IMAGE_SIZE(很多代理会忽略、返回约 2:3)。平台有固定上传像素时设置 UPLOAD_SIZE(番茄 600x800)。平台尺寸最终由「导出平台上传尺寸」步骤居中裁剪+缩放保证,不依赖实际出图尺寸。 平台与题材风格见 references/cover-styles.md。
Step 2:题材判定
扫描书名(必要时简介)中的关键词,对照 references/cover-styles.md 的「题材推断规则」表选定题材。
- 单题材命中 → 直接采用
- 多题材命中 → 按优先级取一:仙侠 > 西幻 > 古言 > 现言 > 都市 > 悬疑 > 科幻 > 历史 > 灵异 > 轻小说
- 零命中 → 默认
都市
Step 3:构建提示词
提示词 = 文字层 + 风格层 + 画面层,全部用英文编写。
What ships with it
1 file 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.
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.
- 13d ago First seen · 328 lines · 93 tokens per session scan A 2b3ecdd28867
story-cover is a skill published in the GitHub repository zenstory-ai/oh-story-claudecode (6,780 stars, last pushed today), licensed MIT. It adds 93 tokens to every session and 4,917 once invoked, about $0.0005 per session on Opus 5. A static security scan graded it A with 1 finding (makes network calls). 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-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.
outline-refinement
A planning tool for long-form novels that breaks each chapter into a detailed sequence of scenes, information, required events, forbidden events, clues, and an ending hook.