A world-building and narrative simulation engine for fiction writers.
InterroGate is a tool that helps you stress-test your world, interrogate your characters, and maintain consistency across a complex narrative — without writing your story for you.
What is InterroGate?
InterroGate is a local application that connects to Anthropic's Claude AI and uses everything you know about your story world as its operating context. You give it your characters, your timeline, your factions, your locations — and it uses that information to answer questions, voice your characters, and render scenes that are consistent with your established canon.
It is built around a single principle: the writer is the only creative authority. InterroGate does not generate story content, make narrative decisions, or invent canon. What it does is act as an intelligent sounding board that knows your world as well as you do — and can respond from within it.
Think of it less like an AI writing assistant and more like a collaborator who has memorised your entire series bible and is available at any hour to run scenarios, speak in your characters' voices, and check whether a planned scene makes sense given what's already established.
What it does
InterroGate organises its capabilities into four core activities:
What it doesn't do
This matters as much as what it does. InterroGate is deliberately limited in scope — and the limitations are design choices, not gaps.
- ✕ It doesn't write your novel. InterroGate is a simulation engine, not a drafting tool. Its output is context, exploration, and consistency-checking. Your prose is yours.
- ✕ It doesn't generate story content. Simulate, Interrogate, and Observe responses are analytical and exploratory. They are not scenes, not chapters, not copy-paste material. The World Builder explicitly prohibits AI generation — you type your own world data.
- ✕ It doesn't make creative decisions. The AI does not choose what should happen, who should die, what the story means, or where the narrative should go. It only reasons within the world you have defined. You remain the author.
- ✕ It doesn't replace the writer. Nothing in InterroGate removes the writer from the process. Every piece of world data in the system was written by you. Every decision about what to accept, reject, or use is yours. The AI is a tool — a sophisticated one, but a tool.
The three-tier model
Every time you interact with InterroGate, the AI is working from three layers of knowledge. Understanding this makes the system much more predictable and useful.
In practice: you build your canon over time, use the brainstorm tier to think through new additions, and set scene context when you want the AI to reason from a specific narrative moment. The system handles merging these layers — you just use them.
The canon pipeline
The canon pipeline is how ideas move from the AI said something interesting to this is now an established fact in my world.
Generative AI output is never automatically canon. Nothing the AI says becomes part of your world without you explicitly deciding it should. The pipeline enforces this:
- 01 The AI produces output in a Simulate, Interrogate, or Observe session. You notice something — a detail, an implication, a character response — that feels true and worth keeping.
- 02 You flag it for review. One click sends that text to the Canon Review panel in the sidebar. It sits there waiting — it has no effect on the world yet.
- 03 You review and edit. In the Canon Review panel, you can edit the flagged content before approving it. Often the raw AI output needs to be shaped into a clean statement of fact.
- 04 You approve or dismiss. Approving saves the item to your permanent canon log and includes it in all future context. Dismissing removes it with no effect.
- 05 You materialise it. Approved items in the log can then be folded back into the structured world bible files and character JSON files at your pace. This step is deliberate — it keeps the canon tidy and under your control.
Workspaces
InterroGate supports multiple isolated world contexts called workspaces. Each workspace is a completely separate environment — its own characters, world bible, prose library, and session history. Switching between workspaces in the sidebar reloads the entire world context instantly with no data bleed between worlds.
This lets you maintain multiple projects in parallel (or run a reference world alongside your original work), or use a published fiction world for testing and practice while keeping your original work in a separate, private workspace.
New workspaces can be bootstrapped from Project Gutenberg texts using the command-line import tool — a single command downloads the text, detects the story boundary, and runs three Claude extraction passes to produce a complete set of character files and world bible data. A --prose-only mode does the same without Claude (no API cost) and just sets up the prose library, ready to explore.
Prose Library
The Library is a persistent vault for actual written prose — scenes, chapters, fragments. It is deliberately separate from the world bible: the world bible holds intent and canon; the Library holds what has actually been written. Nothing in the Library is injected into the AI's context unless you explicitly choose to do so.
Library entries can be added by pasting text, uploading a .txt or .docx file, or saving a session transcript directly as a Library entry. Chapter detection is automatic — upload a full text file and InterroGate splits it at heading boundaries and shows you the chapters before committing. Gutenberg-formatted texts (double blank lines between paragraphs) are rendered correctly.
The Library is per-workspace, survives all reset operations ("New Story" does not touch it), and is fully searchable across titles and prose content.
Who it's for
InterroGate is built for anyone working with a complex web of facts, people, timelines, and relationships — where internal consistency matters and where being able to test logic before committing to it saves time. The primary use case is fiction, but the underlying capability maps directly to non-fiction domains that share the same structural problem.
The philosophy
InterroGate was built from a specific conviction about what AI should and should not do in a creative writing workflow.
There is a meaningful difference between AI as a consistency engine and AI as a creative agent. The first is useful to writers. The second tends to undermine them — replacing the writer's voice, generating content that is plausible but hollow, and slowly shifting authorial responsibility away from the human.
InterroGate takes the first position firmly. It is a pressure-tester, a world-mirror, a character simulator. It knows your world and can reason from within it. What it cannot do — and is deliberately prevented from doing — is make creative decisions or generate content you would put directly into your manuscript.
This is why the World Builder has no AI generation. This is why the canon pipeline requires your approval at every step. This is why Simulate, Interrogate, and Observe outputs are framed as analytical responses, not prose to be lifted. The friction is intentional. The writer's voice remains the writer's.
Getting started
There are two paths: bootstrapping from a public-domain text (the fastest way to see the full system in action), or building your own world from scratch.
Path A — Gutenberg Bootstrap
-
01
Run the import tool.
From the command line:
python3 tools/gutenberg_import.py --story "Silver Blaze" --next-story "The Adventure of the Cardboard Box" --output workspaces/silver_blaze. This downloads the text, extracts the story, and runs three Claude passes to produce characters and world bible data. Add--prose-onlyto skip the Claude extraction (free, no API cost) and just set up the prose library. - 02 Switch to the workspace. In the sidebar, click the workspace switcher and select your new workspace. InterroGate reloads with the extracted world context and auto-imports the prose into the Library.
- 03 Start interrogating. Select a character in Interrogate mode and ask them about the events of the story. Select "YOU ARE" to play a character yourself and conduct a direct interrogation. The extracted world data gives the AI a solid foundation from the first question.
Path B — Original World
-
01
Create a workspace.
Create a folder in
workspaces/with your project name and add ameta.jsonfile:{"display_name": "Your World"}. Switch to it in the sidebar. -
02
Add your world bible data.
Create JSON files in the workspace's
world_bible/directory covering your timeline, factions, geography, and concepts. Add character files tocharacters/. The format is flexible — even rough notes formatted as JSON produce useful results. Click "Reload" in the sidebar to pull in changes without restarting. - 03 Start interrogating. Switch to Interrogate mode, select a character, and ask them something. The quality of responses is directly proportional to the quality of the world data you've provided. Start simple and refine as you go.
Tips for better results
- Write your character files as if the AI will read them — because it will. Clear, specific descriptions of psychology, speech patterns, and knowledge limits produce far more consistent character voices than vague summaries.
- Use the Scene Context panel before a session involving a specific narrative moment. Setting timeline position and scene description focuses the AI on exactly the context you're working in, rather than reasoning from the whole timeline at once.
- Save sessions when you've reached a useful working state. Session files capture everything — conversation history, scene context, brainstorm items. Coming back to an interesting thread later is much easier if you've saved.
- Export regularly. The ZIP backup export is your primary safety net. Run it before any significant world bible changes, before any reset operation, and periodically as a general practice. The files are small and the export is fast.
- Use the Canon Review panel actively, not as an afterthought. The best use of the pipeline is capturing specific, precise observations — not whole AI responses, but the individual claims within them that you want to hold as true.
Limitations
InterroGate is a first-generation tool in active development. These are the current practical limitations you should be aware of: