← all repositories
lingfengQAQ/webnovel-writer

A CMS for AI novelists, because LLMs forget who died in chapter 3

A Claude Code plugin that adds memory, consistency checks, and RAG retrieval so AI assistants can write million-word web serials without hallucinating plot holes.

webnovel-writer
Velocity · 7d
+31
★ / day
Trend
steady
star history

What it does

Webnovel Writer is a Claude Code plugin that turns the editor into a long-form fiction co-author. It initializes a structured project, plans volumes and chapters, writes prose, and runs automated reviews — all while maintaining a canonical story state so the model doesn’t contradict itself across hundreds of chapters.

The interesting bit

The system treats the novel like a database with a write-ahead log. .story-system/ is the source of truth; .webnovel/* is a read-only projection rebuilt from accepted chapter commits. There’s even a “追读力” (reader-retention) tracker that monitors hooks, cool-points, and narrative debt — metrics borrowed from Chinese web-novel platforms and applied to an LLM pipeline.

Key highlights

  • RAG context injection: Embeddings + reranking (defaults to ModelScope and Jina AI) retrieve relevant lore before each writing session, with BM25 fallback.
  • 37 built-in genre templates to bootstrap worldbuilding and tone.
  • Memory loop: Pre-write injection of summaries and post-write consolidation into a scratchpad, explicitly addressing the “goldfish LLM” problem.
  • Read-only dashboard (/webnovel-dashboard) for browsing entity graphs, chapter status, and runtime health without local Node builds.
  • Agent model overrides: Per-agent frontmatter lets you assign cheaper/faster models to specific tasks while keeping the main session on a strong model.

Caveats

  • Setup is nontrivial: you need Claude Code, a separate Python environment, and valid API keys for both embedding and reranking services before you can write a sentence.
  • The “200万字” claim is aspirational; the README doesn’t cite completed works or benchmarks at that scale.
  • Windows terminal encoding was only fixed in v5.5.3, so earlier versions may have had edge-case issues.

Verdict

Worth a look if you’re seriously trying to AI-author long serial fiction and have hit the usual wall of drifting characters and forgotten prophecies. Skip it if you just want a chatbot to spit out a short story — this is infrastructure, not a toy.

heatdrop uses Google Analytics to see which pages get read — nothing else. Your call. How we handle data.