Atlas / Skills / lingfengqaq / Webnovel Init

Webnovel InitSAFE

skills/lingfengqaq/webnovel-init

基于 Claude Code 的长篇网文辅助创作系统,解决 AI 写作中的「遗忘」和「幻觉」问题,支持 200 万字量级 连载创作。

Verdict
SAFE
Grade
B
Trust score
89 /100
Version
—
Hosts
—
License
GPL-3.0
Stars
7,593
01

Overview

基于 Claude Code 的长篇网文辅助创作系统,解决 AI 写作中的「遗忘」和「幻觉」问题,支持 200 万字量级 连载创作。

Read from source at commit ee23e2991f50OBSERVED · 2026-10-21
Advertisement
02

What it tells the agent

The instruction file, verbatim from the audited commit — this is the text the model reads, and the surface the audit's instruction layer examines. Quoted here so you can judge it without cloning anything.

---
name: webnovel-init
description: 深度初始化网文项目。通过分阶段交互收集完整创作信息,生成可直接进入规划与写作的项目骨架与约束文件。
allowed-tools: Read Write Edit Grep Bash Agent AskUserQuestion WebSearch WebFetch
argument-hint: "[书名或灵感(可选)]"
---

# 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:-$PWD}"

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:金手指与兑现机制

必收:金手指类型(可为"无金手指")、名称/系统名(无则留空)、风格、可见度、不可逆代价(必须有代价或明确"无+理由")、成长节奏。
条件必收:系统流给系统性格+升级节奏;重生给重生时间点+记忆完整度;传承/器灵给辅助边界+出手限制。

### Step 5:世界观与力量规则

必收:世界规模(单城/多域/大陆/多界)、力量体系类型、势力格局、社会阶层与资源分配。
题材相关:货币体系与兑换规则、宗门/组织层级、境界链与小境界。

### Step 6:创意约束包(差异化核心)

流程:
1. 汇总 Step 1.5 已确认的灵感来源:原创想法、参考拆书结果、市场趋势、题材模板或反套路库。
2. 基于题材映射加载反套路库(最多 2 个主相关库)。
3. 生成 2-3 套创意包,每套含:一句话卖点、反套路规则 1 条、硬约束 2-3 条、主角缺陷驱动一句话、反派镜像一句话、开篇钩子。
4. 三问筛选:为什么这题材必须这么写?换常规主角会不会塌?卖点能否一句话讲清且不撞模板?
5. 展示五维评分(详见 `references/creativity/creativity-constraints.md` 的 `8.1 五维评分`)辅助决策。
6. 用户选择最终方案,或拒绝并给出原因。

备注:
- 若用户要求"贴近当下市场",可触发外部检索并标注时间戳。
- 若使用了参考拆解,展示候选时必须标明参考来源、转换方式、不可复制项和差异化要求;用户未明确确认前,不写入 `idea_bank.json` 或任何生成项目文件。

### Step 7:一致性复述与最终确认

必须输出"初始化摘要草案"并让用户确认:故事核(题材/一句话故事/核心冲突)、主角核(欲望/缺陷)、金手指核(能力与代价)、世界核(规模/力量/势力)、创意约束核(反套路+硬约束)。

确认规则:用户未明确确认,不执行生成;用户仅改局部,回到对应 Step 最小重采集。

## 充分性闸门(必须通过)

未满足以下条件前,禁止执行 `webnovel.py init`:

1. 书名、题材(可复合)已确定。
2.
03

Trust audit

SAFEgrade B · trust 89/100 Nothing in the source contradicts what it says it does. Grade A is reserved for packages that have also passed the behavioural sandbox.

LayerWhat it checksResult
L0Provenance & inventoryPASS
L1Static analysis of the codeNA
L2Instruction surface (what it tells the agent)PASS
L3Class-specific surfacePASS
L4Behavioural (sandbox)SKIPPED

What the source does

Filesystem
none-observed
Network
none-observed
Shell
none-observed
Dependencies
pinned
Secrets in source
none-found

Findings (0)

No findings outside the package's declared scope.

Gates applied: no_behavioural_pass.

Audited 2026-10-21 · audit v0.4.1 · source sha ee23e2991f50full audit observations/trust-audit/skill/lingfengqaq__webnovel-init.json · Report an issue / request a re-scan
04

Audit history

Every audit this skill has had.

DateSourceVerdictGradeScoreChange
2026-10-21ee23e2991f50SAFEB89first audit
05

Questions

What does the webnovel-init — lingfengqaq/webnovel-writer skill do?

基于 Claude Code 的长篇网文辅助创作系统,解决 AI 写作中的「遗忘」和「幻觉」问题,支持 200 万字量级 连载创作。

Is webnovel-init — lingfengqaq/webnovel-writer safe to install?

The audit found nothing in the source that contradicts what it says it does, and graded it B (89/100). Grade A is held back for packages that have also passed a sandboxed behavioural run, which is why a clean skill reads B.

What can webnovel-init — lingfengqaq/webnovel-writer access on my machine?

The audit observed no filesystem, network or shell use at all in its source.

How current is this page?

The grade is for one exact copy of the source (ee23e2991f50), read on 2026-10-21. The repository is watched, and a new audit runs when it changes — this is the first audit.

Add this badge to your README

Shows this page's audit result and links back to it. It updates when the audit does.

ModelsAtlas audit badge

Markdown
[![ModelsAtlas audit: Webnovel Init](https://modelsatlas.com/skills/lingfengqaq/webnovel-init/badge.svg)](https://modelsatlas.com/skills/lingfengqaq/webnovel-init/)

Not your listing, or something out of date? Claim or update your listing.

Advertisement