
Story
- 8.9k installs
- 4.7k repo stars
- Updated July 27, 2026
- worldwonderer/oh-story-claudecode
Entry router for Chinese web novel toolbox - analyzes user intent from slash commands or natural language, dispatches to 11+ specialized skills (writing/analysis/scanning/publishing), manages multi-book project state, ch
About
A router skill that dispatches user requests to specialized web novel (网文) production tools. When developers or writers invoke /story, $story, or natural language triggers like "帮我写书", it analyzes intent and routes to skills for long-form writing, short-form writing, novel analysis (拆文), trending topic scanning (扫榜), AI style removal (去AI味), cover generation, or project setup. Supports multi-book project management, version update checks via GitHub releases API, and fallback lookup when dedicated agents (story-explorer, story-researcher) are unavailable. Works across Claude Code, Codex CLI, and OpenClaw runtimes with equivalent slash/dollar/natural language invocations.
- Routes 11+ intent types (writing, analyzing, scanning, style removal, cover art) to specialized skills via keyword match
- Manages multi-book projects with .active-book tracking and automated switching between 长篇/短篇 subdirectories
- Version checking fetches latest GitHub release via gh CLI or curl, compares semantic versions, prompts for npx skills ad
- Graceful agent fallback: when story-explorer/story-researcher unavailable, uses direct file grep/read with explicit fall
- Cross-runtime support with equivalent commands: /story (Claude/OpenCode), $story (Codex), /skill story (OpenClaw), plus
Story by the numbers
- 8,875 all-time installs (skills.sh)
- +771 installs in the week ending Jul 28, 2026 (Skillselion tracking)
- Ranked #92 of 16,659 AI & Agent Building skills by installs in the Skillselion catalog
- Security screen: MEDIUM risk (skills.sh audit)
- Data as of Jul 28, 2026 (Skillselion catalog sync)
story capabilities & compatibility
- Capabilities
- intent classification via keyword matching table · dynamic skill invocation across 3 runtime format · github release version comparison (semantic vers · multi book project state management · graceful agent fallback with annotation · project deployment detection via .story deployed · cross runtime command translation (/story < > $s
- Works with
- github
- Use cases
- orchestration · planning · copywriting · project management
- Platforms
- macOS · Linux · Windows
- Runs
- Runs locally
- Pricing
- Free
npx skills add https://github.com/worldwonderer/oh-story-claudecode --skill storyAdd your badge
Show developers this skill is listed on Skillselion. Paste this into your README.
| Installs | 8.9k |
|---|---|
| repo stars | ★ 4.7k |
| Security audit | 2 / 3 scanners passed |
| Last updated | July 27, 2026 |
| Repository | worldwonderer/oh-story-claudecode ↗ |
What it does
Route user requests to specialized web novel writing, analysis, scanning, and publishing skills in Chinese content production workflows.
Who is it for?
Chinese web novel production pipelines requiring unified access to 11+ specialized skills across Claude Code/Codex/OpenClaw runtimes; projects managing multiple books with state tracking; teams needing graceful fallback
Skip if: English-only content workflows (all keywords/routes are Chinese web novel specific); projects not using Claude Code/Codex/OpenClaw runtimes; single-purpose tools not needing routing logic.
When should I use this skill?
User starts with /story, $story, /网文 or says "我想写小说"/"帮我写书"/"检查更新"; needs to switch between multiple books in project; wants version update check; requires routing to specialized long-write/short-write/analyze/scan/deslo
What you get
Single /story entry point that interprets fuzzy user intent, routes to correct specialized skill, handles version updates via GitHub API, manages multi-book project switching, and gracefully degrades when agents offline.
- Routed skill invocation to correct specialized tool
- .active-book file updated for book switching
- Version comparison report with update prompt
By the numbers
- Routes 11+ distinct intent types to specialized skills
- Supports 3 runtime command formats (slash/dollar/natural language)
- Manages multi-book projects with single .active-book state file
Files
story:网文工具箱路由
你是网文工具箱的路由入口。用户的请求模糊时由你分发到具体 skill。
路由表
Codex CLI 中优先使用$story-*或/skills触发;Claude Code / OpenCode 继续使用/story-*;OpenClaw 可用/skill story-*或自然语言点名 skill。下表以 slash command 展示,Codex 可将/story-long-write等价替换为$story-long-write,OpenClaw 可将其等价替换为/skill story-long-write。
| 用户意图 | 关键词示例 | 路由到 |
|---|---|---|
| 写长篇 | 开书、写大纲、长篇、连载 | /story-long-write |
| 写短篇 | 短篇、盐言、一万字 | /story-short-write |
| 长篇拆文 | 拆文、分析这本书、黄金三章 | /story-long-analyze |
| 短篇拆文 | 拆短篇、分析这个故事 | /story-short-analyze |
| 长篇扫榜 | 长篇排行、什么火、起点/番茄/晋江 | /story-long-scan |
| 选题决策 | 写什么能爆、帮我选题、选题方向 | /story-long-scan |
| 短篇扫榜 | 短篇排行、知乎盐言排行 | /story-short-scan |
| 去 AI 味 | 去 AI 味、太 AI、去味 | /story-deslop |
| 封面 | 封面、封面图 | /story-cover |
| 环境部署 | 准备写书、搭环境、初始化 | /story-setup |
| 浏览器操控 | 浏览器、抓取、登录态 | /browser-cdp |
| 导入小说 | 导入、反向解析、导入小说、把我的书导进来 | /story-import |
| 检查/更新版本 | 检查更新、有新版本吗、升级、更新工具箱 | 见下方「版本更新检查」 |
| 切换/列出书目 | 切书、换书、列出我的书、我在写哪几本、切换项目 | 见下方「多书切换」 |
| 查故事资料 | 查角色、查伏笔、查进度、查设定、什么状态、写到哪了 | spawn story-explorer agent(结构化 prompt:项目目录:{dir}\n查询类型:{根据意图选择}\n查询参数:{用户查询});agent 不可用时见下方「查询降级」 |
| 查资料 | 查资料、帮我查资料、调研、搜索一下、搜一下 | spawn story-researcher agent;agent 不可用时见下方「查询降级」 |
路由流程
1. 分析用户请求,提取意图关键词 2. 匹配上表,找到对应的 skill 3. 如果能明确匹配,直接调用对应 skill(Claude/OpenCode 可用 Skill("skill-name") 或 slash command;Codex 用 $skill-name / /skills;OpenClaw 用 /skill skill-name 或自然语言点名) 4. 如果无法匹配,询问用户想做什么(从上表中选择) 5. 如果用户说"我想写小说"但未指定长篇/短篇,询问篇幅类型后再路由
查询降级
「查故事资料」「查资料」走 agent 前先做轻量可用性检查(路由只做这一层,不承担全局部署策略):当前不在子代理上下文、Agent/Task 工具可用、且 .claude/agents/{story-explorer|story-researcher}.md、.opencode/agents/{story-explorer|story-researcher}.md 或 .codex/agents/{story-explorer|story-researcher}.toml 存在 → 可尝试 spawn。任一不满足,或 Codex 运行时返回 unknown agent_type / 未暴露 custom-agent registry,则降级,不硬失败:
story-explorer不可用 → 主线程直接用 Read/Grep 从项目文件检索(角色状态/伏笔/进度/设定),回答前标注Fallback: agent unavailable -> direct lookup;项目尚未部署时提示先/story-setup(Codex 中用$story-setup)。story-researcher不可用 → 主线程用现有检索/回答能力完成,或提示用户改用/browser-cdp采集,同样标注Fallback: agent unavailable -> direct lookup。
项目状态感知
路由前先检查当前项目状态:
- 无项目目录(没有包含
追踪/或设定/的书名目录): - 如果用户要写作,下一步是先运行
/story-setup初始化环境(Codex 中用$story-setup) - 如果用户要扫榜/拆文,直接路由
- 已有项目:检查
.story-deployed标记,如未部署则先运行/story-setup(Codex 中用$story-setup)
多书切换
用户想切换或查看在写的书时(一个项目可同时有多本):
1. 在项目根查找所有书目录:包含 追踪/ 或 设定/ 子目录的目录(含 长篇/、短篇/ 下的子目录)。 2. 列出书名,并标出当前 .active-book 指向的那本。 3. 让用户选择,把所选书的相对路径写入项目根 .active-book(覆盖原内容)。 4. 只发现一本时直接确认为活跃书,无需询问。
版本更新检查
用户问"有没有新版本""检查更新""升级"时执行。只通知,更不更新由用户定,不自动安装。
1. 当前版本:读本 skill 同目录的 VERSION 文件;缺失则视为未知。 2. 最新版本:优先 gh release view --json tagName,name,url -R worldwonderer/oh-story-claudecode 取 tagName;无 gh 用 curl -fsS --max-time 5 https://api.github.com/repos/worldwonderer/oh-story-claudecode/releases/latest 取 .tag_name(jq 或 grep)。查不到 → 告知"暂时拉不到最新版本,可手动看 Releases",不报错。 3. 比较:去掉 v 前缀按语义版本比(major.minor.patch)。gh release 默认取 latest 稳定版,不含 pre-release。 4. 告知:
- 已最新 → 「已是最新版 vX.Y.Z」。
- 有新版 → 列出 当前 vA → 最新 vB + Releases/CHANGELOG(能拿到 release notes 就附本次要点),再用 AskUserQuestion 问「现在更新吗?」:
- 选更新 → 跑
npx skills add worldwonderer/oh-story-claudecode -y -g(-g全局,去掉则只更当前目录);完成后提示:已部署过的项目在项目根重跑/story-setup(Codex 中用$story-setup)同步 hooks/agents/references,并新开一个会话让 agents 重新注册。 - 选先不 → 不动,告知随时可再来。
Related skills
FAQ
How does routing work when user intent is unclear?
Extracts keywords, matches routing table (11 intent types), asks user to clarify from listed options if no match found, then calls corresponding skill via Skill() function or slash command depending on runtime.
What happens when story-explorer agent is unavailable?
Falls back to direct file lookup using Read/Grep on project files (角色状态/伏笔/进度/设定), annotates response with 'Fallback: agent unavailable -> direct lookup', prompts /story-setup if project not deployed.
How do version updates work?
Reads local VERSION file, fetches latest GitHub release via gh CLI or curl API, compares semantic versions (strips v prefix), asks user permission via AskUserQuestion, runs npx skills add -y -g if approved, reminds user to re-run /story-setup and start new session.
Is Story safe to install?
skills.sh reports 2 of 3 security scanners passed. Review the Security Audits panel on this page before installing in production.