Núcleo de Memoria para Novelas (网文创作记忆核心)
Resumen
Este es el sistema nervioso central del ecosistema de habilidades para escritura de novelas. Cada otro skill de novela lee y escribe en el directorio _novel/ creado y mantenido por este skill.
Estructura del Proyecto
Cuando ejecutas init-novel (o en el primer uso), este skill crea la siguiente estructura bajo el directorio de trabajo del usuario:
_novel/ # Directorio raíz del proyecto (compartido por todos los skills)
├── MANIFEST.yaml # Metadatos del proyecto: título, autor, género, estado actual
├── CHANGELOG.md # Registro de cambios de configuración principal (con versiones)
│
├── world/ # Configuración del mundo
│ ├── _index.yaml # Índice del mundo (lista de categorías: sistemas de poder, facciones, geografía, etc.)
│ ├── geography.md # Configuración geográfica
│ ├── power-system.md # Configuración del sistema de poder
│ ├── factions.md # Configuración de facciones/poderes
│ ├── timeline.md # Línea de tiempo
│ └── rules.md # Reglas del mundo (magia/tecnología/sociedad, etc.)
│
├── characters/ # Gestión de personajes
│ ├── _index.yaml # Índice de personajes (incluye resumen de estado actual)
│ ├── _relationships.yaml # Mapa de relaciones entre personajes
│ ├── _status.yaml # Tabla de estado en tiempo real de personajes (se actualiza automáticamente en cada cambio)
│ └── cards/ # Fichas de personajes individuales
│ ├── char-001-ZhangSan.md
│ └── ...
│
├── plot/ # Gestión de la trama
│ ├── outline.md # Esquema general de la novela
│ ├── act-arcs.md # Estructura de volúmenes/arcos
│ ├── progress.yaml # Registro de progreso de la trama (estado de cada capítulo, recuento de palabras, fechas)
│ └── beats/ # Tarjetas de ritmo narrativo
│ └── ...
│
├── chapters/ # Gestión de capítulos
│ ├── _index.yaml # Índice de capítulos (incluye personajes que aparecen y eventos clave por capítulo)
│ ├── ch-001.md # Texto del capítulo 1 / esquema del capítulo
│ └── ...
│
├── foreshadow/ # Gestión de presagios
│ ├── _master-list.yaml # Tabla maestra de estado de presagios (ubicación de siembra → ubicación de resolución)
│ ├── _pending.yaml # Presagios pendientes de resolver (generados automáticamente)
│ └── _resolved.yaml # Presagios resueltos (archivados automáticamente)
│
├── materials/ # Biblioteca de materiales
│ ├── _used.yaml # Registro de materiales usados (para evitar repeticiones)
│ └── library/ # Texto original o referencias de materiales
│ └── ...
│
├── forbidden/ # Lista de tabúes
│ └── _checklist.yaml # Lista global de tabúes (de aplicación obligatoria)
│
└── _meta/ # Metadatos
├── revisions/ # Registro de modificaciones de configuración principal
│ ├── rev-2026-07-19-001.md
│ └── ...
└── snapshots/ # Instantáneas periódicas
└── ...
Instrucciones de Flujo de Trabajo
Paso 1: Inicialización (Primer uso)
python scripts/init-novel.py --dir <ruta-del-proyecto>
Modo interactivo: ejecuta sin opciones para responder a las preguntas sobre el nombre de la novela, género, etc.
Paso 2: Validación Previa a la Escritura (Antes de cada escritura)
SIEMPRE ejecuta esto antes de escribir cualquier contenido nuevo:
python scripts/validate.py --dir _novel
Esto verifica:
- Todos los personajes referenciados existen en
characters/_index.yaml - Todas las facciones/ubicaciones mencionadas existen en
world/_index.yaml - El estado de los personajes está actualizado
- No se viola ningún elemento de la lista de tabúes en
forbidden/_checklist.yaml - No hay conflictos de presagios (misma semilla plantada dos veces sin resolución)
- No hay violaciones de reutilización de materiales en
materials/_used.yaml - Consistencia en las relaciones de personajes (A→B coincide con B→A)
- Consistencia en la línea de tiempo (sin conflictos de fechas)
Si la validación falla, corrige los problemas antes de continuar.
Paso 3: Instantánea de Estado (Consultar estado actual)
python scripts/status-report.py --dir _novel [--type summary|full|character|foreshadow|plot]
El valor predeterminado es summary. Esto proporciona una visión general rápida de:
- Progreso actual del capítulo
- Estados activos de los personajes
- Número de presagios pendientes
- Cambios recientes en la configuración
- Próximos plazos (si los hay)
Paso 4: Registrar Cambios (Registro de modificaciones de configuración principal)
Siempre que se modifique una configuración principal (regla del mundo, antecedentes de personajes, sistema de poder, etc.), SIEMPRE registra el cambio:
python scripts/log-revision.py --dir _novel --subject "<elemento-cambiado>" --summary "<qué cambió>" --reason "<por qué>"
Esto crea un registro de revisión con fecha en _meta/revisions/ y lo añade a CHANGELOG.md.
Paso 5: Actualizar Estado de Personajes (Actualización de estado de personajes)
Después de escribir cada capítulo, ejecuta:
python scripts/update-status.py --dir _novel --chapter <número-de-capítulo>
Esto automáticamente:
- Actualiza
characters/_status.yaml(ubicación, HP/lesiones, estado mental, nivel de poder, relaciones) - Actualiza
plot/progress.yaml(capítulo completado, recuento de palabras, eventos clave) - Actualiza
materials/_used.yaml(escenas/elementos usados en este capítulo) - Verifica
foreshadow/_pending.yamlen busca de presagios resueltos y los archiva automáticamente
Convenciones de Formato de Datos
Todos los skills del ecosistema siguen estas convenciones:
_index.yaml (Índice de personajes/mundo)
items:
- id: char-001
name: Zhang San
type: character # o faction|location|power-system
status: active # active|inactive|deceased|hidden
tags: [protagonista, fuego]
ref: characters/cards/char-001-ZhangSan.md
_relationships.yaml
relationships:
- from: char-001
to: char-002
type: maestro-discípulo # maestro-discípulo|enemigo|amante|aliado|soberano-súbdito|etc.
description: Zhang San toma a Li Si como discípulo en el volumen 3
chapter-set: 30
status: current # current|past|broken
_status.yaml (Estado en tiempo real de personajes)
char-001:
name: Zhang San
location: Ciudad Tianyun
hp: 85 # 0-100 o descripción específica
mental: tranquilo # tranquilo|ansioso|enfadado|colapsado|etc.
power-level: Etapa de Consolidación Media
cultivation: 75% # Progreso de avance
inventory: [Espada de Fuego Oscuro, Píldoras de Curación x3]
tags: [recuperándose de lesiones, portador de pista clave]
last-updated: ch-030
_master-list.yaml (Tabla maestra de presagios)
foreshadows:
- id: fs-001
seed: El origen del colgante de jade de Zhang San es desconocido
planted-at: ch-005
category: trasfondo
importance: core # core|major|minor
expected-resolve: ch-080~ch-100
status: pending # pending|resolved|abandoned
resolved-at: null
notes: Insinúa que Zhang San está relacionado con una antigua secta
forbidden/_checklist.yaml
taboos:
- category: configuración
rule: El sistema de poder no puede incluir tecnología moderna
severity: fatal # fatal|warning|soft
detail: A menos que sea un mundo especial, no se pueden introducir armas de fuego/dispositivos electrónicos
- category: personajes
rule: El protagonista no puede tener más de dos ventajas especiales
severity: warning
materials/_used.yaml
used-materials:
- id: mat-001
description: Encuentro en un acantilado peligroso para obtener una herencia
first-used: ch-012
reuse-count: 0
category: giro argumental
notes: Giro argumental clásico de encuentro fortuito, evitar repetir
Reglas Críticas
- Siempre valida antes de escribir — nunca te saltes el Paso 2.
- Siempre registra los cambios de configuración principal — nunca modifiques una configuración de personaje/mundo sin registrarlo.
- Actualiza el estado después de cada capítulo — un estado desactualizado invalida todos los skills dependientes.
- El directorio
_novel/es la única fuente de verdad — todos los skills deben leer desde aquí. - NUNCA edites manualmente
_meta/revisions/o_meta/snapshots/— utiliza los scripts proporcionados. - La lista de tabúes se aplica con el validador con severidad
fatal— las violaciones bloquean la escritura.