story-cover

story-cover is a skill for Claude Code, Codex from zenstory-ai/oh-story-claudecode. It costs 93 tokens per session (4,917 once invoked), scanned A, original, MIT.

A novel-cover generator that creates a cover with the book title and author name. It chooses a visual style from the book information and can use Codex's image-generation tool.

In plain words
What is it for?
Making Chinese web-novel covers, including platform-sized exports and optional reference-image-based designs.
Why use it?
It turns basic book details into a cover image without requiring you to design the artwork manually.

Skill for Claude CodeCodex

Written for Claude Code and Codex: shipped in a Claude Code plugin, but also reads ~/.codex or $CODEX_HOME. Also seen: names the AskUserQuestion tool; mentions Codex; built for openclaw.

Part of the oh-story plugin — 13 skills, 13 commands shipped together

not rated 6.8krepo +249 today A scan Socket: passSnyk: warnSkillSpector: warn 93 tokens original MIT

Good fit Making Chinese web-novel covers, including platform-sized exports and optional reference-image-based designs.

Compare 6 skills from other repositories ↓
Install with agentmods
npx agentmods add skills/zenstory-ai/oh-story-claudecode/story-cover
About the project

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.

zenstory-ai/oh-story-claudecode · 6,780 stars · on GitHub · zenstory.ai

Install

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.

Any agent
npx skills add zenstory-ai/oh-story-claudecode --skill story-cover
Clone the repo
git clone --depth 1 https://github.com/zenstory-ai/oh-story-claudecode

Made for: Claude Code, Codex.

Or install oh-story, the plugin that ships this one along with the rest of its 13 skills, 13 commands.

Its marketplace also offers this one on its own, as the plugin story-cover/plugin install story-cover after adding the marketplace above.

Wrote 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.

agentmods badge for story-cover

README.md
[![agentmods](https://agentmods.dev/badge/skills/zenstory-ai/oh-story-claudecode/story-cover/github.svg)](https://agentmods.dev/skills/zenstory-ai/oh-story-claudecode/story-cover)
Your own site
<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.

agentmods 80×15 button for story-cover

Your own site · 80×15
<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>
Per session 93 Skills are progressive disclosure: only the name and description are preloaded; the body loads when the skill is used.
When invoked 4,917 The whole file, excluding the scripts and references it only reads on demand.
Security scan A 1 finding. A grade says what 26 rules found in the file — not that it is safe. Third-party audits
  • Socket pass 24 Aug 2026
  • Snyk warn 24 Aug 2026
  • NVIDIA SkillSpector warn 7 Sept 2026
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.
How audits are shown
Origin original No closer match found in the catalogue.
Token cost

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.

ModelPer sessionOnce 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

Measured 13d ago against content hash 2b3ecdd28867, method: parsed. Prices are Anthropic first-party input rates as of 2026-09-12, from the pricing page.

Security

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"}}
Origin

Copies of this mod

1 near-identical copy found in the catalogue:

skills/story-cover/SKILL.md · 328 lines

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_KEYGPT_IMAGE_API_KEY,也不运行 curlstory-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:构建提示词

提示词 = 文字层 + 风格层 + 画面层,全部用英文编写。

Read the full file on GitHub · 328 lines

Files

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.

Changes

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.

  1. 13d ago First seen · 328 lines · 93 tokens per session scan A 2b3ecdd28867

Subscribe to this mod's changes

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.

Related

Other skills, from other repositories