Agent skill · AI & Agents

story-setup

网文写作工具集基础设施部署。为 Claude Code / OpenCode / Codex / ZCode / OpenClaw / Reasonix 提供内置适配;Web AI / 通用 Agent 可走 skills + AGENTS.md 文件模式。触发方式:/story-setup、$story-setup、「准备写书」「帮我搭一下环境」「配置写作项目」。

pitechen592★ · +23/wk · 2 repos on radarProfile →
claude-codeships scriptsMIT
Install
npx skills add worldwonderer/oh-story-claudecode --skill story-setup --agent claude-code

Same command for any agent — swap --agent for codex, cursor, copilot.

Facts
Files in the skill folder: 146
SKILL.md size: 32 KB
Bundled scripts: yes
Version: 1.2.7
Path: skills/story-setup/SKILL.md
Open the folder on GitHub →
Where it comes from
Stars: 5,024
Language: JavaScript
Read our review of the source →

Weekly change comes from our own snapshots, not the repository page — it measures attention, not adoption.

Review
written from the skill's own SKILL.md · Aug 5, 2026

What it does

You are a story-setup deployment agent. It installs the web fiction tooling infrastructure into the user project directory, adapting for multiple CLIs (Claude Code, OpenCode, Codex, ZCode, OpenClaw, Reasonix) or a generic Web AI mode. It merges with existing configurations rather than replacing them.

How it works

Phase 1: Detect project state. It checks for prior deployment (.story-deployed) and various existing configurations across different toolchains (opencode, codex, zcode, openclaw, reasonix). If multiple environments are present, it prompts user to select a target environment. Phase 2: Deploy infrastructure. It performs a series of steps that are idempotent and repeatable:

  • Copy or merge several templates and references into the project (CLAUDE.md, hooks, rules, agents, and agent references).
  • Merge opencode.json using a specific patch strategy that preserves user settings while adding story-hooks plugin entries.
  • Deploy CLAUDE.md by templating and merging according to a defined strategy.
  • Copy hooks recursively to .claude/hooks/, ensuring required lib/ scripts exist and are executable as needed.
  • Copy rules to .claude/rules/ and agents to .claude/agents/; agent files are managed and may be overwritten during upgrades.
  • For Codex deployments, validate and copy codex agents and references, and ensure specific read-only or upgrading behaviors.
  • For OpenCode deployments, optionally detect and configure models, cache prior models, and select models through a multi-step, hierarchical user prompt (low/mid/high tiers) with validation and fallback behaviors.
  • Ensure agent references and documentation paths are correctly mirrored under the project structure, preserving the instruction set hierarchy.

Only applies changes if absent; otherwise merges are performed to preserve user configuration.

When to use it

Use when you want to deploy the web fiction tooling infrastructure into a user project. Triggering methods include specific commands listed in the skill description. The deployment is conditional on user prompts for target environment and deployment location, and it proceeds with an idempotent, merge-focused approach.

What it can touch

  • CLAUDE.md at project root
  • .claude/hooks/ and lib/ within hooks
  • .claude/rules/ and .claude/agents/
  • .claude/settings.local.json
  • .story-deployed sentinel file
  • opencode.json (via patch and merge)
  • .opencode, .codex, .zcode, and other environment-specific directories as applicable
  • AGENTS.md in environment-specific paths (opencode/codex/openclaw/reasonix/generic)
  • skills/story-setup/references/* populated into project paths

Caveats

  • Deployment is non-destructive to existing user config (merge instead of replace).
  • Some steps rely on user prompts to select target environments and models.
  • opencode.json merging preserves user fields while adding plugin entries; failed merges or missing files are surfaced via prompts.
  • Codex/OpenCode model configuration steps depend on environment and may require interactive confirmation.
  • Specific compatibility notes exist for certain platforms (e.g., ZCode, OpenClaw) regarding agent deployment and references; follow prompts to ensure proper behavior.
From the SKILL.md

# story-setup:网文写作工具集基础设施部署 你是写作基础设施部署器。将网文写作工具集部署到用户项目目录:已适配的 CLI 走专用 hooks/agents/config;NarraFork、Web AI、自定义 Agent 等环境走通用文件模式。 **执行铁律:不覆盖用户已有配置,合并而非替换。** --- ## Phase 1:检测项目状态 1. 检查当前目录是否已部署过(存在 `.story-deployed`) - `agents_version` 缺失、非整数或小于 `22` → 标记为待更新,继续执行当前部署 - `agents_version: 22` → 使用 AskUserQuestion 确认是否重新部署 - `agents_version` 大于 `22` → 当前 story-setup 比项目部署旧;停止以避免降级覆盖,提示先更新 oh-story-claudecode,不写任何部署文件 2. 检查是否有书名目录(包含 `追踪/` 子目录的目录,或用户自定义结构) - 有 → 识别为长篇项目,显示当前项目信息 - 无 → 识别为新项目或短篇项目 3. 检查 `.claude/settings.local.json` 是否存在 - 存在 → 读取现有配置,后续合并 - 不存在 → 后续创建新文件 4. 检查 `.active-book` 文件是否存在 - 存在 → 显示当前活跃书目 - 不存在 → 跳过 5. 检查 `opencode.json` 或 `.opencode/` 是否存在 - 存在 → 识别为 opencode 项目,`target_cli = opencode` - 不存在 → 跳过 6. 检查 `.codex/`、`.codex/config.toml`、`.codex/agents/`、`.codex/hooks.json`、`AGENTS.md` 中的 Codex 段 - 存在 → 识别为 Codex 项目,`target_cli = codex` - 不存在 → 跳过 7. 检查 `.zcode/`、`.zcode/config.json`、`zcode.json`、`.zcode/skills/`、`.zcode/commands/`、`AGENTS.md` 中的 ZCode 段 - 存在 → 识别为 ZCode 项目,`target_cli = zcode` - 不存在 → 跳过 8. 检查 `openclaw.json`、`.openclaw/`、`.agents/skills/`、`AGENTS.md` 中的 OpenClaw 段,或 `skills/*/SKILL.md` 中的 `metadata.openclaw` - 存在 → 识别为 OpenClaw 项目,`target_cli =

What's inside
Steps it walks through
  1. Phase 1:检测项目状态
  2. Phase 2:部署基础设施
  3. Step 1:部署清单(机械可检查)
  4. opencode.json 合并算法
  5. Step 2:部署 CLAUDE.md
  6. Step 3:部署 Hooks
  7. Step 4:部署 Rules
  8. Step 5:部署 Agents
  9. Step 6:部署 Session State 模板
  10. Step 7:合并 Hooks 注册到 settings.local.json
  11. Codex hooks.json 合并算法(targetcli 含 codex 时)
  12. ZCode 部署算法(targetcli 含 zcode 时)
  13. OpenClaw skills-only 部署算法(targetcli 含 openclaw 时)
  14. Reasonix skills-only 部署算法(targetcli 含 reasonix 时)
Ships with 24 files
  • UPGRADING.md
  • references/agent-references/anti-ai-writing.md
  • references/agent-references/banned-words.md
  • references/agent-references/character-basics.md
  • references/agent-references/character-design-methods.md
  • references/agent-references/character-relations.md
  • references/agent-references/dialogue-mastery.md
  • references/agent-references/emotional-arc-design.md
  • references/agent-references/emotional-methods.md
  • references/agent-references/format-and-structure.md
  • references/agent-references/genre-catalog.md
  • references/agent-references/genre-core-mechanics.md
  • references/agent-references/genre-prose-cards.md
  • references/agent-references/genre-prose-cards/东方仙侠.md
  • references/agent-references/genre-prose-cards/传统玄幻.md
  • references/agent-references/genre-prose-cards/历史古代.md
  • references/agent-references/genre-prose-cards/历史脑洞.md
  • references/agent-references/genre-prose-cards/双男主.md
  • references/agent-references/genre-prose-cards/古言脑洞.md
  • references/agent-references/genre-prose-cards/古风世情.md
  • references/agent-references/genre-prose-cards/女频悬疑.md
  • references/agent-references/genre-prose-cards/女频种田.md
  • references/agent-references/genre-prose-cards/宫斗宅斗.md
  • references/agent-references/genre-prose-cards/年代.md
first 24 of 146
More from oh-story-claudecode
All skills →
About this skill
What does the story-setup skill do?

网文写作工具集基础设施部署。为 Claude Code / OpenCode / Codex / ZCode / OpenClaw / Reasonix 提供内置适配;Web AI / 通用 Agent 可走 skills + AGENTS.md 文件模式。触发方式:/story-setup、$story-setup、「准备写书」「帮我搭一下环境」「配置写作项目」。

How do I install it?

Run `npx skills add worldwonderer/oh-story-claudecode --skill story-setup --agent claude-code` — it drops the skill into your project so the agent can pick it up. Swap the --agent value for codex, cursor or copilot if you use one of those.

Where does this skill come from?

From worldwonderer/oh-story-claudecode, a repository with 5,024 stars. We read it straight from the repository tree rather than a submitted listing, so what you see here is what is actually published.

Is a popular skill a good skill?

Not necessarily. Stars measure attention, not adoption — a repository can trend for a week and be abandoned. That is why we show the weekly change from our own snapshots next to the total, instead of a single flattering number.

Keep going