Skip to content

Releases: DankerMu/novel-writer-plugin

v3.2.0 — Voice Persona Decoupling + Pipeline Hardening

17 Apr 02:26
e97e410

Choose a tag to compare

重点改动

🎭 Voice Persona 去硬编码 (#79)

把说书人 DNA 从 ChapterWriter / API Writer 提示词迁移到 style-profile.json.voice_persona

  • 5 个新字段(narrator_role / protagonist_voice_tone / dialogue_tag_preferences / rhetoric_preferences_voice / rhythm_accelerators)+ voice_lock 回退控制
  • 4 个预置 voice:snarky-storyteller / austere-narrator / empathetic-observer / epic-chronicler
  • /novel:start Step B 新增 voice 选择(4 预置 + 自定义)
  • 老项目零行为变化:未配置 voice_persona 时自动 fallback 到 snarky DNA

🔄 Pipeline 重构

  • Targeted revision 并行化:QJ/CC recheck 模式无交叉依赖,并行调度(~35-45K tokens)
  • Trivial revision scope (#2c02c68):单维度边缘失败跳过 recheck,直接 force_passed(~15-20K tokens)
  • Summarizer 移至 gate 后:仅成功通过的章节生成摘要,避免无效计算
  • CW align-draft 校准 (#94c98ac):API Writer 后增加一致性修复 pass
  • Cross-storyline 泄漏检测合并入 CC Track 5

🔍 评估增强

  • Track 6 跨章节逻辑审查 (#4a91203):CC 读取最近 3 章正文,检测硬矛盾与剧情漏洞
  • POV 知识边界检查:检测专名/信息泄漏到 POV 角色不应知晓的叙述中
  • 对话比例软约束

⚙️ Codex 评估管线优化

  • 文件 staging 到项目目录(避免绝对路径泄漏)
  • Codex-first dispatch + Opus fallback 统一
  • prompts 和 lint 脚本路径修复

🛠️ 工程改进

  • Manifest 组装 LLM → Python 脚本 (#f8255c1):确定性 + 可审计
  • Context planning 重构为 task-agent orchestration
  • Checkpoint recovery 提取到 references
  • API Writer 默认模型切换至 gemini-3.1-pro-preview
  • 章节契约启发式解析放宽,密度调降

升级路径

项目状态 行为
无 voice_persona 字段 运行时自动注入 snarky DNA — 零行为变化
voice_persona 已配置 提示词使用配置的 voice
voice_lock=true + 空字段 提示词指示模型从 style-samples.md 自感受 voice

文件变更摘要

24 commits since v3.1.0 — 详见 Compare view

v3.1.0 — delta schema, context delegation, flash model

13 Apr 08:41

Choose a tag to compare

Changes

delta.json schema enforcement

  • codex-eval.py: full structural validation — chapter/base_state_version/storyline_id required, ops path depth/whitelist/foreshadow detail, canon_hints entry structure (type/hint/confidence/evidence) with value domain checks

Revision routing fix

  • Explicit prohibition: revision sub-pipeline must use ChapterWriter, not API Writer
  • Constraint added in both SKILL.md and gate-decision.md

Context assembly delegation

  • Step 2 fully delegated to Task agent (sonnet) — orchestrator no longer reads source files
  • All agent manifests split to per-agent files: staging/manifests/chapter-{C:03d}-{agent}.json
  • Orchestrator performs lightweight structural check only (~500 tokens vs ~3-5K)
  • Revision re-invokes assembler with revision_state parameter

API Writer model

  • Default model changed to gemini-3-flash-preview

eval_backend default

  • New projects and checkpoint default: codex (was opus)
  • All eval_backend annotations in SKILL.md updated accordingly

v3.0.0 — Codex 评估管线

13 Apr 05:04

Choose a tag to compare

Breaking Changes

  • 新项目默认使用 eval_backend: "codex"(Codex CLI 作为评估后端)
  • 已有项目不受影响(eval_backend 缺失等同 "opus"

M10: Codex 化评估管线

将 Summarizer / QualityJudge / ContentCritic / 滑窗一致性校验从 Claude Code Task(opus) 迁移至 Codex CLI。Codex 具备完整文件读写和 Bash 执行能力,行为与现有 Opus agent 同构,绕过 Claude Code 工程向系统提示词。

M10.1 基础设施 (#73, PR #76)

  • scripts/codex-eval.py — 双模式工具(--agent 组装 task content / --validate 校验 staging 输出)
  • prompts/codex-{summarizer,quality-judge,content-critic,sliding-window}.md — 4 个 Codex prompt
  • eval/schema/continuity-report.schema.json — 滑窗报告 JSON Schema
  • skills/continue/SKILL.md — eval_backend 分支(Step 1/2/3/5a/8)

M10.2 校准验证 (#74, PR #77)

  • scripts/run-codex-calibration.sh — 批量 Codex 评估编排
  • scripts/lib/calibrate_codex.py — 四维校准(Codex QJ vs Human / CC vs Human / Codex vs Opus / Summarizer ops)
  • 门控阈值决策逻辑:r≥0.85 且 |bias|<0.3 → 保持;r≥0.85 且 |bias|≥0.3 → 调整;r<0.85 → 回退

M10.3 正式启用 (#75, PR #78)

  • 新项目默认 eval_backend: "codex"
  • CLAUDE.md 架构文档全面更新
  • docs/runbooks/codex-calibration.md — 校准流程 runbook
  • docs/runbooks/codex-eval-troubleshooting.md — 故障排查 runbook
  • checkpoint 损坏重建最小字段集增加 eval_backend

其他变更

  • M8 熵控系统 Epic 关闭(#58,子任务 #59/#60/#61 已全部完成)
  • #36 安全加固关闭(agent 合并后大部分已失效)
  • CLAUDE.md agent 计数修正(7→6)
  • Quick Start checkpoint 初始化补 schema_version: 2

v2.6.0 — Revision Loop Optimization + API Writer Style Injection

13 Apr 03:38
a477deb

Choose a tag to compare

What's New

Revision Loop Optimization (M9.2)

修订回环从全量重跑(~90K tokens)优化为按严重程度分级:

档位 条件 子流水线 Token
targeted 无严重违规、overall ≥ 3.0 CW(targeted) → SR(lite) → Sum(patch) → QJ/CC(recheck) ~35-45K
full 有严重违规或 overall < 3.0 全量(不变) ~90K

大部分 revise 场景 token 消耗降低 50-60%

新增 Agent 参数(均可选,向后兼容):

  • recheck_mode (QJ/CC) — 仅复检失分维度,沿用通过维度分数
  • patch_mode (Summarizer) — diff < 30% 时增量更新摘要/状态
  • lite_mode (StyleRefiner) — 仅处理修改段落
  • revision_scope (ChapterWriter) — targeted 时输出 revision-diff JSON

安全机制:QJ/CC 均支持 recheck_escalated 升级,通读时发现修订引入新问题则自动降级为 full。Checkpoint 持久化 revision_scope/failed_dimensions/failed_tracks 确保中断恢复精确还原修订模式。

API Writer Style Directive Injection

style-profile.json 的量化指标(dialogue_ratioregister_mixingavg_sentence_length 等)从原始 JSON 提取为显式中文写作指令,注入 ## 写作指令 section。从源头解决对话密度不足导致的 QJ 打回问题。

示例:dialogue_ratio: 0.35对话占比目标: 30-40%,低于25%视为不合格

Files Changed (12 files, +444/-13)

  • skills/continue/references/gate-decision.md — 门控输出增强 + 分级回环 + checkpoint 持久化
  • skills/continue/SKILL.md — 修订子流水线 5a/5b 分支 + 恢复路径
  • agents/quality-judge.md — recheck_mode + escalation
  • agents/content-critic.md — recheck_mode + escalation
  • agents/summarizer.md — patch_mode
  • agents/style-refiner.md — lite_mode
  • agents/chapter-writer.md — revision_scope + revision-diff
  • scripts/api-writer.py — extract_style_directives()
  • CLAUDE.md — 架构文档
  • openspec/changes/m9-revision-loop-optimization/ — 提案

Full Changelog: v2.5.0...v2.6.0

v2.0.0 — 5-Agent Architecture + Anti-Zhuque Detection

02 Mar 07:52

Choose a tag to compare

架构:9 Agent → 5 Agent 整合

  • WorldBuilder 吸收 CharacterWeaver + StyleAnalyzer(Mode 4-8)
  • ChapterWriter 吸收 StyleRefiner(Phase 2 内化)
  • QualityJudge 吸收 AudienceEval(Track 3 内化)
  • 3 步流水线:CW → Sum → QJ
  • 全 Agent Opus 统一

反朱雀统计特征检测

  • 7 指标风格自然度评分 — 句长标准差、段落长度 CV、叙述连接词密度、修饰词重复等,三区范围判定(人类/过渡/AI)
  • 统计分布目标 §2.8 — 6 维度 ChapterWriter 内隐参照
  • 人性化技法工具箱 §2.9 — 12 种技法随机采样,零配额设计
  • 黑名单 45→82 词 — 新增 narration_connector(叙述禁/对话允)、paragraph_opener、smooth_transition
  • lint-blacklist.sh — narration_only 中文引号奇偶校验
  • ChapterWriter C16-C18 + Phase 2 步骤 6.5/6.6
  • QualityJudge 扩展 anti_ai 输出(statistical_profile + detected_humanize_techniques)
  • 人性化技法跨章追踪(humanize_drought)

核心设计原则:零固定配额 — 配额本身是可检测的新模式。所有改动使用统计范围和随机采样。

Full Changelog: v1.9.0...v2.0.0

v1.9.0 — AudienceEval 读者视角评估

02 Mar 05:21

Choose a tag to compare

M7:AudienceEval 读者视角评估

  1. AudienceEval Agent — 第 9 个 Agent,以第一人称读者视角评估章节吸引力;4 套平台 persona(番茄碎片阅读者/起点付费追更者/晋江情感投入者/通用普通读者)
  2. 6 维度读者评分 — continue_reading / hook_effectiveness / skip_urge / confusion / empathy / freshness,权重因平台而异
  3. 跳读检测 — 标注 1-3 个最可能被读者跳过的段落(severity: high/medium)
  4. 情感弧线 — 逐段采样情绪强度,分类弧线形状(V型/上升型/下降型/W型/平坦型等)
  5. 平台信号 — 番茄(读完率/三日留存/追更冲动)、起点(首订/均订/月票)、晋江(留评/CP感/营养液)+ 第一人称一句话读后感
  6. 参与门控 — 黄金三章 engagement<3.0 → revise;普通章 pass+engagement<2.5 → polish;失败降级到仅 QJ 门控
  7. Dashboard 读者参与度 — 新增读者参与度区块(6 维度均值、跳读警告、弧线分布、平台信号趋势、读后感)
  8. Python venv 隔离 — 所有 scripts/*.sh 优先使用 .venv/bin/python3

v1.8.1 — Python venv isolation

01 Mar 16:16

Choose a tag to compare

All scripts/*.sh now use a project-local .venv/ for Python isolation.

  • Scripts resolve .venv/bin/python3 first, fallback to system python3
  • Added requirements.txt (stdlib-only, for future third-party deps)
  • .venv/ added to .gitignore
  • CLAUDE.md documents setup convention

v1.8.0 — M5/M6 + Full Review

01 Mar 15:58

Choose a tag to compare

M5:上下文质量增强

  1. L1/L2 canon_status 生命周期 — 世界规则和角色契约支持 established / planned / deprecated 三态,ChapterWriter 仅以 established 为硬约束
  2. 平台写作指南 — 新增 templates/platforms/{fanqie,qidian,jinjiang}.md,含节奏密度、章末钩子、设定展示、情感线、对话密度等平台差异化参数;style-profile.json 新增 platform 字段,编排器条件加载
  3. excitement_type 爽点标注 — L3 章节契约新增爽点类型(reversal/face_slap/power_up/reveal/cliffhanger/setup),QualityJudge pacing 维度叠加爽点落地评估,setup 章使用铺垫有效性替代标准
  4. 用户文档docs/user/quick-start.md + migration-guide.md

M6:黄金三章 + 受众评估

  1. Step F0 迷你卷规划 — 快速起步阶段为前 3 章生成 L3 契约 + 故事线调度 + 伏笔计划,试写获得与正式写作相同的 Spec-Driven 支撑
  2. 题材→爽点映射表 — 6 大题材(玄幻/都市/科幻/历史/悬疑/言情)各自的黄金三章 excitement_type 分配规则
  3. 题材特定黄金三章标准 — 各题材差异化评审标准 + Genre×Platform 无效/少见组合 WARNING
  4. 平台硬门(Ch001-003) — 番茄(200 字登场+冲突、章末钩子、反转/打脸/升级)、起点(体系存在感、immersion≥3.5)、晋江(行为展现人设、CP lead 登场、情感基调、style_naturalness≥3.5),任一 fail 强制 revise
  5. 平台加权评分 — 三大平台各维度乘数,overall_weighted = Σ(score_i × multiplier_i) / Σ(multiplier_i),门控决策使用加权分

Review 修复

  1. Manifest Mode 架构统一 — 全插件从 <DATA> 注入改为路径引用,Agent 按需 Read;start/SKILL.md 重构(497→216 行,Steps A-G 提取到 quick-start-workflow.md)
  2. 门控标签双枚举 — QJ 输出 recommendation(pass/polish/revise/review/rewrite),编排器映射为 gate_decision(pass/polish/revise/pause_for_user/pause_for_user_force_rewrite)
  3. StyleAnalyzer 工具修正 — 移除无效 SDK 工具,reference 模式改用 MCP 降级路径
  4. 角色语癖降频 — 从强制每角色口头禅改为可选、每 3-5 章偶现,优先用说话风格区分角色
  5. 标点限频规则 — 破折号≤1/千字、省略号≤2/千字、感叹号≤3/千字;对话统一中文双引号
  6. 元数据补全 — marketplace.json 版本同步 0.2.0、MIT LICENSE、CI 覆盖 agents/skills 目录 + JSON 校验、eval schema enum 化