Model or dataset
iLearn-Lab/NovelClaw avatar
iLearn-Lab/NovelClaw

NovelClaw: A FastAPI Writing Workspace Where Chapter Memory Is an Editable File

Dynamic-memory-first collaborative AI framework for long-form story generation, chapter planning, and coherent narrative writing

370 stars54 forksPythonMIT

At a glance

What is it?
NovelClaw turns long-form fiction into an inspectable workspace with sessions, storyboards, manuscript surfaces and editable memory banks. The README is explicit about what it is not: a one-shot prompt wrapper. The interesting question is what that costs you in setup and maintenance.
Who is it for?
Adopt NovelClaw if you are writing serialized or chapter-by-chapter fiction and you want the story state to live in files you can open and edit rather than inside a prompt you keep re-pasting. Do not adopt it if you want a single generation call, or if you cannot run two local services on ports 8010 and 8012.
Can I use it commercially?
Yes. MIT is a permissive licence: you can use, modify and sell software built on it, as long as you keep its copyright and licence notices.
Is it still maintained?
Yes. The repository last received commits 107 days ago.
What is it written in?
Mainly Python, according to GitHub's language statistics.

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

DEEP OPEN-SOURCE ANALYSIS

The problem NovelClaw names: story state scattered across temporary prompts

The README draws a direct contrast in a comparison table. A typical fiction tool, it says, treats long-form writing as one large prompt, hides execution state behind opaque generation, and leaves story state scattered across temporary prompts. NovelClaw's stated alternative is an ongoing workspace with sessions and run inspection, where manuscript surfaces, world and character views, and memory banks stay inside the workspace. The target reader is named too: authors and builders who want stronger continuity, clearer iteration surfaces, and more direct control over chapter-level progress. That is a narrower audience than the topic list (agent, rag, multi-agent, web-novels) might suggest. This is not a general-purpose agent framework. The README states plainly that the sustained long-form writing experience is concentrated in NovelClaw itself, while Portal provides a public entry path and MultiAgent offers what it calls an optional faster ideation lane. If you are building an agent pipeline rather than writing a novel, the repository's framing points you at the wrong component.

What the architecture actually exposes: sessions, runs, and a progress log

The mechanism visible in the README is a separation between the writing surface and the execution record. Work is organized into ongoing sessions, and each run leaves artifacts the author can inspect: worker output, a file named progress.log, chapter files, downloads, and job detail views. The README lists runtime artifacts as a first-class section of the documentation, which tells you the project treats generation output as material to review rather than a final answer to accept. Alongside that sit the manuscript surfaces: storyboards, manuscript views, style panels, world panels, character surfaces, and editable memory banks. The claim in the visual tour is that drafting, review and memory control are treated as a continuing workspace rather than a one-pass generation event. The memory element is the part worth noting. Because the banks are described as editable, continuity is not something the model is trusted to reconstruct on every chapter; it is something you can correct between runs. The README does not describe the retrieval or embedding layer behind those banks, so how the memory is selected at draft time cannot be confirmed from the supplied material.

Getting it running: two ports, a batch file, and a mode selector

The local path is short. The README gives a single command for Windows: .\START_LOCAL.bat. The entry point is http://127.0.0.1:8010/select-mode, and from there you continue into http://127.0.0.1:8012/dashboard for the main workspace. Two ports, two services. The README explains the split in the workflow section: you start from /select-mode so the bundle remains cleanly separated from what it calls the old private auth flow. That is a deliberate packaging decision, and it means the mode selector is not decoration. The repository also points to RUN_LOCAL_WEB.md for a startup guide, DEPLOYMENT.md for server notes, and WHAT_IS_SAFE_FOR_GITHUB.md for a packaging checklist, plus a Chinese README at README.zh-CN.md. Python 3.10 or later is the stated requirement, and FastAPI is the framework named in the badges and topics. There is also a hosted instance at colong-idea-studio.cloud, which the README offers as the fastest online entry point. I have not run any of this, so I cannot tell you how long the batch file takes or what it prints on a machine without the right Python version.

The GitHub-safe packaging is a design constraint, not a feature list

One of the more unusual things here is how much of the repository is about what not to publish. The README links WHAT_IS_SAFE_FOR_GITHUB.md as a checklist, mentions safe env templates, and frames the mode selector as a boundary between the public bundle and a private auth flow. The comparison table even lists mixed local leftovers in public bundles as a failure mode NovelClaw addresses. For a project of this kind, that is a reasonable thing to care about, because writing workspaces accumulate API keys, draft text and user data in predictable places. But it also tells you the public repository is a curated subset. Portal and MultiAgent are described as parts of the same bundle, and the README is careful to say the main long-form control surface remains NovelClaw. If you are evaluating the project by reading the repository, expect the writing workspace to be the part that is fully present and the surrounding pieces to be thinner.

Where NovelClaw is the wrong tool

The failure mode is structural rather than incidental. NovelClaw assumes you are working on something long enough that continuity, chapter monitoring and memory revision pay for themselves. The README's own framing supports that reading: repeated return through sessions, storyboard views, manuscript review and chapter monitoring is presented as the point. If your task is a single short story, a one-off piece of copy, or a scene you will not revisit, the session model and the run artifacts are overhead with nothing to amortize them against. The second boundary is operational. The local flow depends on two services on ports 8010 and 8012, and the repository ships a START_LOCAL.bat, which is a Windows-oriented entry point. The README does not document a macOS or Linux equivalent in the material provided, so if you are not on Windows you should treat the local setup as unverified until you read RUN_LOCAL_WEB.md. Third, the project has no releases retrieved, and the README does not describe a versioning or migration story for the memory bank format. If you pour a novel's worth of continuity into that format, you are trusting a schema the documentation does not pin down.

How this differs from a plain RAG-over-your-draft setup

The obvious alternative is to keep your manuscript in a text editor or a git repository and query it with a general retrieval pipeline. That approach is more flexible and has no server to run, but it leaves the writing loop untouched: you still assemble context by hand, and continuity lives in whatever you happened to retrieve. NovelClaw's difference is that the retrieval target is a maintained artifact rather than a folder of chapters. The memory banks are editable, the chapter output is inspectable, and progress.log plus job detail views give you a record of what each run did. The trade is control versus convenience. A hand-rolled pipeline lets you choose the embedding model, the chunking strategy and the prompt template. NovelClaw makes those choices for you, and the supplied material does not document how to change them. If your continuity problem is unusual enough that you need to tune retrieval, the framework will fight you. If your continuity problem is ordinary and you mainly want to see and correct the state between chapters, the workspace is the more direct answer.

Maintenance, licensing, and what to check before you commit a manuscript

The license is MIT, which is permissive and places few obligations on how you use or redistribute the code. It does not speak to the text you generate, the model you point the workspace at, or the terms of any hosted instance you use, and none of that is legal advice. On maintenance, the repository is not archived and the last push recorded is 2026-05-31, so the project is active as of that date. No releases were retrieved, which means there is no tagged version to pin to and no changelog to read before upgrading. For a tool that stores story state, that is the practical risk: an update can change how memory banks are read or written, and you would be diffing commits to find out. The concrete next step before you commit real work is to run the local preview, enter at /select-mode, open the dashboard on port 8012, and put one chapter through the full loop: draft it, inspect progress.log, edit a memory bank entry, then draft the next chapter and check whether your edit is reflected. That single test tells you more about whether the dynamic-memory claim holds for your genre than any description of the architecture will.

Editorial conclusion

Adopt NovelClaw if you are writing serialized or chapter-by-chapter fiction and you want the story state to live in files you can open and edit rather than inside a prompt you keep re-pasting. Do not adopt it if you want a single generation call, or if you cannot run two local services on ports 8010 and 8012. Before committing a manuscript to it, verify the memory-bank format against your own continuity needs and confirm what the MIT license leaves you responsible for in your own deployment.

Official sources

  1. iLearn-Lab/NovelClaw on GitHub
  2. Issues
  3. License: MIT
  4. Project website
  5. README
Community notes

Community notes