Open-source project
ExplosiveCoderflome/AI-Novel-Writing-Assistant avatar
ExplosiveCoderflome/AI-Novel-Writing-Assistant

AI-Novel-Writing-Assistant: an AI-native engine for finishing a full novel, not a chat box

面向长篇小说创作的 AI Native 开源系统,用 Agent、世界观、写法引擎、RAG 和整本生产工作流,帮助新手从一句灵感走到完整小说。AI-native engine for end-to-end novel creation — from idea to full chapters, with structured planning, worldbuilding, and agent-driven workflows.

3,047 stars577 forksTypeScriptNOASSERTION

At a glance

What is it?
A TypeScript monorepo that turns one sentence of inspiration into book-level planning, chapter production and RAG-backed continuity. Here is how the pipeline is wired, how to run it, and where it stops.
Who is it for?
Adopt it if you want the whole book pipeline in one place and are willing to run a pnpm monorepo or install the Windows desktop build. Do not adopt it if you only want autocomplete inside an existing editor, or if you need a non-Windows desktop package.
Can I use it commercially?
Check first. The repository uses a licence we do not classify automatically, so read its LICENSE file before any commercial use.
Is it still maintained?
Yes. The repository last received commits 6 days ago.
What is it written in?
Mainly TypeScript, according to GitHub's language statistics.

Answers come from the project's GitHub data, last synced on September 29, 2026, and from our analysis. They are not legal advice.

Editorial analysis

The problem: long novels drift, single-prompt tools do not plan

The README states the project's own diagnosis plainly: most AI writing tools work the same way, you type a prompt, you get a paragraph, you retry if you dislike it. That is tolerable for a short piece and falls apart over a full novel, because nothing holds the world, the cast and the earlier chapters together.

The stated target user is not the experienced author who already designs structure. It is the beginner who does not know how to write at all, and the developer who wants to study how an agent workflow behaves on a long task. The README says the priority is first getting the whole book finished, and only then making the prose finer. That ordering explains most of the design decisions below.

So the unit of work is not a paragraph. It is a book: direction, world, cast, volume strategy, chapter list, chapter execution, review, repair, and state flowing back into the next chapter.

Creative Hub, LangGraph agents and the production chain

The architecture is a pnpm workspace monorepo. The badges and the top-level entries describe React plus Vite on the client, Express plus Prisma on the server, SQLite as the default database, LangChain and LangGraph for the agent layer, Plate as the editor, and Qdrant for retrieval when you enable it. Shared types live in shared/, the marketing and docs site in site/, and an Electron shell in desktop/.

The central mechanism is what the README calls Creative Hub: a single place that carries conversation, follow-up questions, planning, tool calls, task state and turn summaries. A Planner, a Tool Registry, a Runtime, approval nodes and checkpoint recovery sit behind it. Natural-language intent is routed either to an auto-director stage or to a chapter task.

The production chain is the part worth understanding before you install anything. It runs from book-level direction, through macro story planning, the book's world, character preparation, volume strategy and volume skeleton, a pacing board, a chapter list, chapter refinement, chapter execution, review and repair. Every stage supports checkpoint recovery and swapping the model on a retry. The README notes that the single-chapter runtime, chapter execution and the whole-book batch pipeline converge on the same chain, so a batch run is not a separate code path from writing one chapter.

Two details show the chain is meant to survive interruption. In full-auto mode, the system stops when a model is unavailable, a quota is exhausted, repairs fail repeatedly, or a replan is required, instead of retrying forever, and it saves state so you can resume from that checkpoint. Separately, after each batch of chapters it confirms pending candidate characters, which promotes them into the official roster and triggers a rebuild, which is the project's stated answer to character drift later in the book.

RAG, the character ledger and what actually enters a prompt

Context selection is treated as a budget problem. The README says a chapter's generation context filters the character resource ledger down to the characters who appear in that chapter, rather than stuffing every character into the prompt. Confirmed resources and unconfirmed proposals are audited through different code paths, so the prose will not state an unconfirmed resource as established fact. That is a small decision with a large effect on continuity.

Retrieval runs on Qdrant. The README describes streaming, parallel indexing where embedding and Qdrant writes have a configurable concurrency, chunk hashes to deduplicate vectors on a rebuild, book-analysis output written into a facets index so recall can include analysis conclusions, and a retrieval trace on the backend so you can see why a hit was returned. Qdrant is optional: the README says the main chain runs on default SQLite, and you add Qdrant when you want retrieval.

There is a separate book-analysis workbench. Character dossiers come in four depths (brief, standard, deep, complete), and the deeper two backfill dimensions from the source text. A character appearance evolution feature scans appearing chapters at 25, 50, 75 and 100 percent coverage, records appearance, clothing, state and scene anchors per chapter, and generates stage images for one character from those snapshots. Extracted short appearance terms land in a pending area and merge into the dossier only after you tick them.

Install and run the first book from one sentence

The repository is a pnpm workspace pinned to pnpm 10.6.0, with Node engines of ^20.19.0, ^22.12.0 or >=24.0.0. The root scripts run a dependency check first, then start shared, server and client together. If you only want to use the product, the README points Windows users at the desktop build first.

bash
pnpm install
pnpm dev

The dev script starts the shared package, the Express server and the Vite client. The README and .env.example indicate the server listens on port 3000 and the client dev server on 5173; the desktop shell script waits for both ports before launching. Note the comment in .env.example: pnpm dev reads server/.env for the backend and client/.env or client/.env.local for the frontend, and the root file is a reference rather than the loaded entry point.

bash
cp .env.example server/.env

Then set at least one provider key. The example file lists OpenAI, DeepSeek, SiliconFlow, Anthropic, xAI, Kimi and GLM blocks with base URLs and default model names, and the README says planning, prose, review and book analysis can be routed to different models per task. SQLite is the default, so no database URL is required unless you uncomment the PostgreSQL line.

bash
pnpm db:migrate
pnpm dev:desktop

Run migrations before first use, and use dev:desktop if you want the Electron shell alongside the browser UI. The documented path for a first book is: enter one sentence of inspiration on the novel creation page, let the auto-director propose whole-book direction candidates, then go to project settings to fix genre, selling points, the intended reader feeling and the first-30-chapter promise. From there, macro planning, the book's world and character preparation fill in the main line, stage boundaries and cast; volume strategy and pacing split the current volume into a chapter list; then chapter execution writes, audits and repairs one chapter at a time. When you want speed, start the whole-book production task and watch status, failure reasons and feedback results. The README states the whole-book batch pipeline and single-chapter execution are the same chain.

Where it stops: model dependency, Windows bias and a thin licence story

Everything here depends on an external model provider. The chain has explicit stop conditions for an unavailable model or an exhausted quota, which is honest, but it also means a long unattended run is bounded by your provider's limits and your key's balance. There is no local model path described in the README.

The desktop build is Windows-only in the documentation. The README tells you to prefer Setup.exe from GitHub Releases, with a portable option for a USB stick or a temp directory. No macOS or Linux desktop package is mentioned. On other platforms you are running the monorepo from source.

The licence field is the other rough edge. The repository metadata reports NOASSERTION, while the root package.json declares AGPL-3.0-only, and LICENSE and NOTICE both exist at the top level. That is a network-copyleft licence, which matters if you intend to run a modified version as a service. This is a factual note, not legal advice; read LICENSE and NOTICE yourself.

Finally, the README itself says the derivative workshops (comics, short-drama adaptation) are not opened before the main chain works, because they consume chapters, characters and scenes the novel has already produced. If your interest is storyboarding rather than prose, the main chain is still the prerequisite.

Compared with Sudowrite and Novelcrafter, and with Ani Book Skill

Sudowrite and Novelcrafter are the names that come up in searches around this project. Both are commercial, hosted writing environments built around an author who is already writing and wants AI assistance inside that process. The difference in approach here is that the artifact is a production chain with checkpoints, a character ledger, a world manual, a style engine and a book-analysis workbench, and the README explicitly optimizes for a beginner finishing a whole book rather than for refining prose. A hosted tool asks you to trust its model choices and its storage; this one asks you to supply provider keys, run migrations and decide where data lives.

The project's own sibling is Ani Book Skill, which the README presents as a complementary entry point rather than a competitor. Use this repository when you want the visual workbench, model configuration, live run status and novel asset management. Use Ani Book Skill when you want to keep writing inside a Codex local workspace through files, stage artifacts and a skill. The trade is a GUI and a database against plain files in a coding agent.

Maintenance, upgrades and what the release history shows

The repository is not archived, and the last push was on 2026-09-04. The release list shows v0.4.19, v0.4.18 and v0.4.17, all dated 2026-09-02 to 2026-09-04, so the release cadence around that date was fast. The README's latest-update section for 2026-09-04 lists model routing becoming its own settings entry, per-vendor candidate models being hideable and restorable with the state persisted across restarts, DeepSeek V4 thinking depth options, and AI live view showing elapsed time, first-token time and input, output, thinking and total token counts. It also notes a fix for a memory leak in the LLM rate limiter, where old limiters are evicted when provider configuration changes.

Upgrade cost is mostly migration and configuration. The root scripts include db:migrate, db:restore, db:prune-snapshots, db:seed and db:studio, and .env.example exposes NOVEL_SNAPSHOT_RETENTION_COUNT, described as the number of automatic version snapshots kept per novel, with manual snapshots exempt from that limit. Some runtime parameters that used to live in .env, such as RAG concurrency and rate limits, have moved into the settings panel and take effect without a restart, which lowers the cost of tuning but means your .env is no longer the full record of runtime behaviour.

On licensing: the root package.json says AGPL-3.0-only while the repository metadata says NOASSERTION. If you plan to modify and host this, resolve that discrepancy against LICENSE and NOTICE before you build on it. No legal advice is offered here.

Editorial conclusion

Adopt it if you want the whole book pipeline in one place and are willing to run a pnpm monorepo or install the Windows desktop build. Do not adopt it if you only want autocomplete inside an existing editor, or if you need a non-Windows desktop package. Before you commit, check that the model provider you have a key for is in the routing list, that Node and pnpm match the engines field, and that you accept the AGPL-3.0-only terms of the root package.json.

Frequently asked questions

Which AI assistant is best for writing a book?

That depends on whether you want assistance while you write or a system that plans and produces the whole book. AI-Novel-Writing-Assistant is built for the second case: the README describes an auto-director that starts from one sentence of inspiration and produces direction, world, characters, volume strategy and chapter tasks, with a chapter chain that generates, reviews, repairs and feeds state back.

Is there an AI for writing novels?

Yes, and this repository is one. The README states it is an AI-native production system for long-form fiction, running on LangChain and LangGraph agents over a pnpm monorepo, with SQLite by default and Qdrant for retrieval when you enable it.

Is it legal to write a novel with AI?

The project documentation does not address the legality of AI-assisted authorship and this article cannot answer it. What it does document is licensing: the root package.json declares AGPL-3.0-only while repository metadata reports NOASSERTION, and LICENSE and NOTICE are present at the top level for you to read.

Can you tell if a novel is written by AI?

The README does not offer a detection claim. It does describe an anti-AI rule set inside the style engine, which participates in generation, detection and correction to reduce template feel, explanatory tone and vague phrasing.

What is AI-Novel-Writing-Assistant v2?

The root package.json names the workspace ai-novel-writing-assistant-v2, so v2 is the current monorepo. The README describes the active development line as Creative Hub, auto-director book opening, per-book world context, the whole-book production chain and the style engine, with Windows desktop builds at version 0.4.19.

Official sources

  1. ExplosiveCoderflome/AI-Novel-Writing-Assistant on GitHub
  2. Issues
  3. Project website
  4. README
  5. Releases
Add this badge to your README

If you maintain this project, the badge below links readers to this analysis and shows its maintenance status from the daily GitHub snapshot. Paste the markdown into your README; add ?metric=license or ?metric=stars to the image URL for a different field.

Add this badge to your README

markdown
[![Hysen Labs](https://hysenlabs.com/badge/explosivecoderflome-ai-novel-writing-assistant.svg)](https://hysenlabs.com/projects/explosivecoderflome-ai-novel-writing-assistant)