Novel Memory Core (网文创作记忆核心)
Overview
This is the central nervous system of the novel-writing skill ecosystem. Every other novel skill reads from and writes to the _novel/ directory created and maintained by this skill.
Project Structure
When you run init-novel (or on first use), this skill creates the following structure under the user's working directory:
_novel/ # 项目根目录(所有 skill 共享)
├── MANIFEST.yaml # 项目元信息:书名、作者、类型、当前状态
├── CHANGELOG.md # 核心设定变更日志(版本留痕)
│
├── world/ # 世界观设定
│ ├── _index.yaml # 世界观索引(力量体系、阵营、地理等类别清单)
│ ├── geography.md # 地理设定
│ ├── power-system.md # 力量体系设定
│ ├── factions.md # 阵营/势力设定
│ ├── timeline.md # 时间线
│ └── rules.md # 世界规则(魔法/科技/社会等)
│
├── characters/ # 人物管理
│ ├── _index.yaml # 人物索引(含当前状态摘要)
│ ├── _relationships.yaml # 人物关系图谱
│ ├── _status.yaml # 人物实时状态表(每次更新自动刷新)
│ └── cards/ # 单人人物卡
│ ├── char-001-张三.md
│ └── ...
│
├── plot/ # 剧情管理
│ ├── outline.md # 全书大纲
│ ├── act-arcs.md # 卷/幕结构
│ ├── progress.yaml # 剧情进度台账(每章状态、字数、日期)
│ └── beats/ # 情节节拍卡
│ └── ...
│
├── chapters/ # 章节管理
│ ├── _index.yaml # 章节索引(含每章人物出场、关键事件)
│ ├── ch-001.md # 第一章正文/章纲
│ └── ...
│
├── foreshadow/ # 伏笔管理
│ ├── _master-list.yaml # 伏笔状态总表(埋设位置→回收位置)
│ ├── _pending.yaml # 待回收伏笔(自动生成)
│ └── _resolved.yaml # 已回收伏笔(自动归档)
│
├── materials/ # 素材库
│ ├── _used.yaml # 已用素材记录(防重复)
│ └── library/ # 素材原文或引用
│ └── ...
│
├── forbidden/ # 禁忌清单
│ └── _checklist.yaml # 全局禁忌清单(强制执行)
│
└── _meta/ # 元数据
├── revisions/ # 核心设定修改留痕
│ ├── rev-2026-07-19-001.md
│ └── ...
└── snapshots/ # 阶段性快照
└── ...
Workflow Instructions
Step 1: Initialize (首次使用)
python scripts/init-novel.py --dir <project-path>
Interactive mode: run without flags to answer prompts for novel name, genre, etc.
Step 2: Pre-Write Validation (每次创作前)
ALWAYS run this before writing any new content:
python scripts/validate.py --dir _novel
This checks:
- All referenced characters exist in characters/_index.yaml
- All mentioned factions/locations exist in world/_index.yaml
- Character status is up to date
- No taboo items from forbidden/_checklist.yaml are violated
- No foreshadowing conflicts (same seed planted twice without resolution)
- No material reuse violations from materials/_used.yaml
- Character relationship consistency (A→B matches B→A)
- Timeline consistency (no date conflicts)
If validation fails, fix issues before proceeding.
Step 3: Status Snapshot (查看当前状态)
python scripts/status-report.py --dir _novel [--type summary|full|character|foreshadow|plot]
Default is summary. This gives a quick overview of:
- Current chapter progress
- Active character statuses
- Pending foreshadowing count
- Recent setting changes
- Upcoming deadlines (if any)
Step 4: Log Changes (核心设定修改留痕)
Whenever a core setting is modified (world rule, character background, power system, etc.), ALWAYS log the change:
python scripts/log-revision.py --dir _novel --subject "<changed-item>" --summary "<what changed>" --reason "<why>"
This creates a dated revision record in _meta/revisions/ and appends to CHANGELOG.md.
Step 5: Update Character Status (人物状态更新)
After writing each chapter, run:
python scripts/update-status.py --dir _novel --chapter <chapter-number>
This automatically:
- Updates characters/_status.yaml (location, HP/injury, mental state, power level, relationships)
- Updates plot/progress.yaml (chapter complete, word count, key events)
- Updates materials/_used.yaml (scenes/elements used in this chapter)
- Checks foreshadow/_pending.yaml for resolved foreshadowing and auto-archives
Data Format Conventions
All skills in the ecosystem follow these conventions:
_index.yaml (人物/世界观索引)
items:
- id: char-001
name: 张三
type: character # or faction|location|power-system
status: active # active|inactive|deceased|hidden
tags: [主角, 火系]
ref: characters/cards/char-001-张三.md
_relationships.yaml
relationships:
- from: char-001
to: char-002
type: 师徒 # 师徒|宿敌|恋人|盟友|君臣|etc.
description: 张三在第三卷收李四为徒
chapter-set: 30
status: current # current|past|broken
_status.yaml (人物实时状态)
char-001:
name: 张三
location: 天云城
hp: 85 # 0-100 或具体描述
mental: 平稳 # 平稳|焦虑|愤怒|崩溃|etc.
power-level: 筑基中期
cultivation: 75% # 突破进度
inventory: [玄火剑, 疗伤丹x3]
tags: [受伤恢复中, 关键线索持有者]
last-updated: ch-030
_master-list.yaml (伏笔总表)
foreshadows:
- id: fs-001
seed: 张三的玉佩来历不明
planted-at: ch-005
category: 身世
importance: core # core|major|minor
expected-resolve: ch-080~ch-100
status: pending # pending|resolved|abandoned
resolved-at: null
notes: 暗示张三与上古宗门有关
forbidden/_checklist.yaml
taboos:
- category: 设定
rule: 力量体系不允许出现现代科技
severity: fatal # fatal|warning|soft
detail: 除非特殊世界观,否则不得引入枪械/电子设备
- category: 人物
rule: 主角不能同时拥有两个以上金手指
severity: warning
materials/_used.yaml
used-materials:
- id: mat-001
description: 悬崖遇险获传承
first-used: ch-012
reuse-count: 0
category: 桥段
notes: 经典奇遇桥段,避免重复使用
Critical Rules
- Always validate before writing — never skip Step 2.
- Always log core setting changes — never modify a character/world setting without logging.
- Update status after every chapter — stale status = invalidates all dependent skills.
- The _novel/ directory is the single source of truth — all skills must read from here.
- NEVER manually edit _meta/revisions/ or _meta/snapshots/ — use the provided scripts.
- Taboo list is enforced by the validator with fatal severity — violations block writing.