Skip to content
Agentmart
Submit a tool

webnovel-init

深度初始化网文项目。通过分阶段交互收集完整创作信息,生成可直接进入规划与写作的项目骨架与约束文件。

Skill by ricky-theseus

IndexedGPL-3.0★ 76
Write a review

Install

Works with Claude Code. Read the repository before you give any tool access to your data.

npx agentmarket install skill/ricky-theseus-webnovel-init

Asks which of your tools to add it to (Claude Code, Codex, Cursor, VS Code, Windsurf, Gemini CLI, Claude Desktop) and shows the change first. See https://agentmart.dev/cli.

Get the weekly diff

The weekly diff: one email a week with new agent tools, notable updates and grade changes, plus security alerts for tools you follow. Double opt-in, one-click unsubscribe.

We use your email only for this newsletter. Privacy

About

深度初始化网文项目。通过分阶段交互收集完整创作信息,生成可直接进入规划与写作的项目骨架与约束文件。

No reviews yet. Installed it? Reviews come from verified installers only. How reviews work

Permissions

What this skill can do and what it asks for, from its SKILL.md. Checked Oct 25, 2026.

Tools
No tools found
Secrets
None asked for
Install scripts
None found

Network hosts it talks to 1

  • codeload.github.com · found in install command

Files it touches

  • ~/.claude/skills/webnovel-init

Tools it pre-approves 9

From allowed-tools in SKILL.md: the agent may use these without asking you each time.

  • Read
  • Write
  • Edit
  • Grep
  • Bash
  • Agent
  • AskUserQuestion
  • WebSearch
  • WebFetch

What's inside

Skill name
webnovel-init
Description
深度初始化网文项目。通过分阶段交互收集完整创作信息,生成可直接进入规划与写作的项目骨架与约束文件。
License
GPL-3.0
Allowed tools
Read, Write, Edit, Grep, Bash, Agent, AskUserQuestion, WebSearch, WebFetch
Instructions
320 lines in SKILL.md · view on GitHub

Before installing

  • Pre-approves any shell command

Agent Skills spec issues

  • name: "webnovel-init" does not match folder "init"

Files (18)

  • SKILL.md
  • anti-trope-game.md · references/creativity/
  • anti-trope-rules-mystery.md · references/creativity/
  • anti-trope-urban.md · references/creativity/
  • anti-trope-xianxia.md · references/creativity/
  • creative-combination.md · references/creativity/
  • creativity-constraints.md · references/creativity/
  • inspiration-collection.md · references/creativity/
  • market-positioning.md · references/creativity/
  • selling-points.md · references/creativity/
  • genre-tropes.md · references/
  • init-collection-schema.md · references/
  • system-data-flow.md · references/
  • character-design.md · references/worldbuilding/
  • faction-systems.md · references/worldbuilding/
  • power-systems.md · references/worldbuilding/
  • setting-consistency.md · references/worldbuilding/
  • world-rules.md · references/worldbuilding/

SKILL.md (first lines)

# Project Initialization (Deep Mode)

## 目标

- 结构化交互收集足够信息,避免"先生成再返工"。
- 产出可落地骨架:`.webnovel/state.json`、`设定集/*`、`大纲/总纲.md`、`.webnovel/idea_bank.json`、`.story-system/MASTER_SETTING.json`。
- 保证后续 `/webnovel-plan` 与 `/webnovel-write` 可直接运行。

## 执行原则

1. 先收集,再生成;未过充分性闸门,不执行 `webnovel.py init`。
2. 分波次提问,每轮只问"当前缺失且会阻塞下一步"的信息;用户已明确的不重复问,冲突让用户裁决。
3. 参考书拆解只返回结构化结果;用户确认前不得写入 `idea_bank.json`、`.story-system`、`设定集`、`大纲`、`正文`、`.webnovel/state.json` 或任何 canon/read model 文件。

## 引用加载策略

路径说明:`references/` 指 `skills/webnovel-init/references/`;`../../references/` 指共享 references。详细采集字段见 `references/init-collection-schema.md`(按需区段读,逐项收集,必填项以「充分性闸门」为准)。

| Step | Trigger | Reference |
|------|---------|-----------|
| Step 1 | always | `references/system-data-flow.md`、`references/genre-tropes.md` |
| 题材/卖点采集 | always | `../../references/genre-profiles.md`(只读当前 genre 段) |
| 角色卡顿 | 人物扁平 | `references/worldbuilding/character-design.md` |
| 世界观/力量 | 按需 | `references/worldbuilding/faction-systems.md`、`references/worldbuilding/power-systems.md`、`references/worldbuilding/world-rules.md`、`references/worldbuilding/setting-consistency.md` |
| 创意约束 | Step 6 | `references/creativity/creativity-constraints.md`(区段:采集读 `## 一、创意包 Schema (Idea Package)`、`## 六、硬约束驱动创意 (Hard Constraints)`、`## 八、评分系统 (Scoring System)`,评分展示读 `### 8.1 五维评分`)、`references/creativity/selling-points.md`(区段:`## 9. 核心卖点定位模板` 骨架,按需补 `### 1.3 核心卖点黄金公式`、`## 7. 实战检查清单`);复合题材读 `creative-combination.md`;卡顿读 `inspiration-collection.md`;题材命中读 `anti-trope-*.md` |
| 命名 | 开始命名 | `python -X utf8 "${SCRIPTS_DIR}/reference_search.py" --skill init --table 命名规则 --query "{命名对象} {题材}" --genre {题材}` |

按需读取上述长细则(创意约束、反套路库、世界观设计指南、卖点模板),不内联其条目。

## 工具策略

- `Read/Grep`:读项目上下文与参考文件。
- `Bash`:执行 `webnovel.py init`、文件存在性检查、最小验证。
- `Agent`:拆分并行子任务;Step 1.5 用户选择参考书拆解作灵感来源时调用 `webnovel-writer:deconstruction-agent`。
- `AskUserQuestion`:关键分歧裁决、候选选择、最终确认。
- `WebSearch`/`WebFetch`:仅在用户要求市场趋势/平台风向、创意约束需时间敏感依据、或题材信息明显不确定时使用,先 search 后 fetch 核验。

## 交互流程(Deep)

### Step 1:预检与上下文加载

环境设置(bash 命令执行前):
```bash
export WORKSPACE_ROOT="${CLAUDE_PROJECT_DIR:-${OPENCODE_PROJECT_DIR:-$PWD}}"

export CLAUDE_PLUGIN_ROOT="${CLAUDE_PLUGIN_ROOT:-${OPENCODE_PLUGIN_ROOT:-}}"

if [ -z "${CLAUDE_PLUGIN_ROOT}" ] || [ ! -d "${CLAUDE_PLUGIN_ROOT}/scripts" ]; then
  echo "ERROR: 未设置 CLAUDE_PLUGIN_ROOT 或缺少目录: ${CLAUDE_PLUGIN_ROOT}/scripts" >&2
  exit 1
fi
export SCRIPTS_DIR="${CLAUDE_PLUGIN_ROOT}/scripts"
```

必须做:
- 确认当前目录可写;确认入口脚本 `${SCRIPTS_DIR}/webnovel.py` 存在(仅支持插件目录)。
- 初始化前不要用 `where` 把 `WORKSPACE_ROOT` 解析成书项目根;新项目尚不存在时 `where` 可能命中旧指针或旧项目。
- 只打印工作区与脚本目录,确认生成目标将在工作区下的书名安全化子目录中。
- 加载最小参考:`references/system-data-flow.md`、`references/genre-tropes.md`;`templates/genres/` 仅在选定题材后按需读取。

输出:进入 Deep 采集前的"已知信息清单"和"待收集清单"。

### Step 1.5:灵感来源询问(可选)

进入故事核采集前,必须先用 `AskUserQuestion` 或直接提问确认用户是否提供灵感来源。不要默认拆书,也不要把参考作品当作必填项。

建议询问:

```text
你这本书的灵感来源想从哪里开始?可以直接说原创想法,也可以提供参考作品做拆书提炼。若要拆书,请给参考书名+平台,并尽量提供章节摘录或文本路径;没有参考也可以直接跳过。
```

可接受来源:原创想法、参考作品拆书(书名/平台/章节摘录/文本路径)、市场趋势、题材模板/反套路库/已有脑洞片段。

当用户选择参考作品拆书且提供文本路径或章节摘录时,必须使用 `Agent` 工具调用 `webnovel-writer:deconstruction-agent`,不得由 init 主流程口头替代拆解结果。

```text
Use the Agent tool to run `webnovel-writer:deconstruction-agent`.

Prompt: reference_title={reference_title}; reference_source={reference_source}; reference_text_path={reference_text_path}; reference_text_excerpt={reference_text_excerpt}; analysis_mode={quick|deep|auto}; init_goal={当前初始化故事方向或空}; target_genre={题材或空}。只返回 init_reference_research JSON 对象,不写任何文件,不创建目录,不写 .story-system、.webnovel、设定集、大纲、正文、idea_bank.json、state.json 或任何 canon/read model 文件。
```

调用后主流程必须记录一份 `SubagentRun` 汇总(仅供最终报告使用,不写入 canon):

```json
{
  "name": "deconstruction-agent",
  "user_label": "参考作品拆解",
  "status": "completed | partial | failed | skipped",
  "problems": [],
  "auto_handled": [],
  "needs_user_action": false,
  "duration_ms": 0,
  "outputs": []
}
```

`quality.passed=false`、`confidence < 0.85`、输入不足、文本不可读、降级 quick mode 或输出不完整时,必须写入 `problems`,并让最终报告进入“建议确认 / 必须处理”。

处理规则:
- 只有书名/平台、无文本或摘录时,先问能否提供摘录/路径;不能提供则把参考书仅作"方向线索",不得编造其黄金三章、角色、设定或剧情事实。
- 接收返回的 `init_reference_research` JSON 后,只使用 `reader_promise`、`opening_hook_patterns`、`cool_point_loops`、`protagonist_patterns`、`antagonist_pressure_patterns`、`pacing_notes`、`borrowable_structures`、`differentiation_requirements`、`init_candidates`、`quality`。
- 先检查 `quality`:`quality.passed=false`、`confidence < 0.85` 或 `warnings` 非空时,不得把候选折叠进创意约束包,只能把风险和需补充材料展示给用户确认。
- `do_not_copy` 和 `canon_contamination_warnings` 必须进入已知信息清单,作为后续创意生成红线。
- Step 2-6 只能使用用户确认过、并已变形为本书差异化表达的模式;禁止把参考书角色、设定、组织、地点、金手指、剧情事实原样写入生成项目文件。

### Step 2:故事核与商业定位

必收:书名、题材(支持 A+B 复合)、目标规模(总字数或总章数)、一句话故事、核心冲突、目标读者/平台。

canonical 题材集合(写入 `project_info.genre`):都市、玄幻、仙侠、奇幻、科幻、历史、悬疑、游戏、古言、现言、幻言、年代、种田、快穿、衍生。

可自由输入细分 preset / 套路 / 形式,初始化脚本会映射到 canonical 并按 taxonomy 加载模板(示例:修仙、系统流、规则怪谈、宫斗宅斗、电竞、末世)。优先让用户自由描述再二次结构化确认;卡住时给 2-4 个候选方向。

### Step 3:角色骨架与关系冲突

必收:主角姓名、主角欲望、主角缺陷(会害他付代价)、主角结构(单/多主角)、感情线配置(无/单女主/多女主)、反派分层(小/中/大)与镜像对抗一句话。可选:主角原型标签、多主角分工。

### Step 4:金手指与兑现机制

From ricky-theseus/DaisyWriter, GPL-3.0.

More from ricky-theseus/DaisyWriter

Signals

Stars
76
Forks
5
Open issues
0
Last commit (this folder)
Jul 8, 2026 (3 months ago)

From GitHub (fetched Oct 24, 2026).

Details

License
GPL-3.0
First seen
Oct 24, 2026
Last checked
Oct 24, 2026

More from ricky-theseus

Cite this page

webnovel-init skill. Agent Mart. https://agentmart.dev/skills/ricky-theseus-webnovel-init (last updated 2026-10-24)