Draft-ScriptA VS Code extension for long-form fiction writing. Draft-Script combines a lightweight Markdown workflow with novel-focused tools: manuscript navigation, writing notes, story tracking, custom AI workflows, and project dashboards. The manuscript remains the source of truth. Everything else can be rebuilt from the text. No locked project format. No database-first writing system. No all-in-one platform trying to take over your workflow. Just Markdown, generated indexes, and tools that stay out of the way. Why Draft-Script ExistsDraft-Script was built to support active long-form writing projects after years of trying different tools and workflows. The goal was a lightweight, text-first environment where writers keep full control over their manuscripts and data. Most features were added to solve real problems during the writing process:
Draft-Script continues to evolve through daily use on active manuscripts. Core IdeaDraft-Script treats your Markdown files as the source of truth and builds generated indexes around them. Indexes cover:
Generated data can be deleted and rebuilt at any time. Author decisions and overrides are stored separately. FeaturesFeatures are split into two groups: those that work without any AI, and DSM -- the AI-powered story monitoring system. Without AINovel NavigatorBrowse chapters, jump between scenes, and keep large manuscripts organized. The navigator lists all Markdown files and their headings in a tree. Each item shows a live word count badge. Chapter headings display a scan status icon when DSM is active:
Chapter ManagementCommands for inserting, moving, and renumbering chapters in multi-file manuscripts.
All commands update chapter numbers in YAML front matter automatically. Available from the right-click menu on Navigator file items. Chapter Focus Mode & Typewriter ModeChapter Focus Mode controls how the Navigator opens chapters:
Toggle with the target icon in the Navigator toolbar, or via the Command Palette. Typewriter Mode keeps the cursor vertically centered as you type, scrolling the text upward like paper through a typewriter. Disabled by default -- toggle via Novel StatisticsA sidebar panel showing word count, unique words, character count, estimated pages, estimated lines, and reading time. The panel is cursor-aware: it automatically switches between novel-wide and chapter-level stats based on where the cursor is. Lock it to a specific scope using the toolbar lock icon. Characters Panel & Character HoverLists all characters from the Canon Editor with mention counts across the novel. Add characters manually via Canon Editor → New, or they are populated automatically after DSM analysis. Expand any character to see a per-chapter breakdown. Hover over any character name in the editor to see that character's description and aliases as a tooltip -- without switching panels.
Writing NotesAttach private notes to any selected passage in the manuscript.
RepetitionA sidebar panel that analyzes word and phrase frequency across the novel or current chapter. Helps identify overused words and repeated phrasing. Click any phrase to jump to its next occurrence in the text. Quality of Life
DSM -- Draft Script MonitorDSM is the AI-powered part of Draft-Script. It analyzes chapter text using an LLM and extracts structured indexes -- characters, locations, threads, continuity, timeline, and more. Everything passes through a review step before anything is written to disk. All DSM features require an LLM provider (GitHub Copilot, OpenAI, Ollama, or Mock for offline testing). DSM can be disabled entirely with one setting -- all non-AI features remain unaffected. Story TrackingExtract and maintain searchable indexes from the manuscript text using an LLM. Tracks per chapter, then aggregates across the novel:
Each indexed item includes appearance counts, chapter history, and one-click navigation back to the manuscript. Thread TrackingTrack story threads as lifecycle records across the novel. Thread statuses: open, active, changed, resolved, uncertain. Thread types: mystery, promise, risk, task, question, conflict, system. DSM records how each thread progresses, stalls, or resolves across chapters. Suggested resolutions, review flags, and parent/sub-thread relationships are supported. Continuity TrackingMaintain generated continuity notes for facts future chapters must respect. Types: state, resource, construction, technology, relationship, promise, risk, population, logistics. Notes are generated from the manuscript and linked back to the original passage as evidence. Timeline & Time IndexTrack the story's temporal structure across chapters. DSM extracts:
Use the time index in dashboards to inspect seasonal movement, duration estimates, and gaps between chapters. SignalsTrack recurring narrative patterns across the novel with configurable semantic labels. Define signals in the Canon Editor (e.g. Signals feed into the Story Navigator and custom dashboards for pattern-level views of the manuscript. Canon EditorA full editor for all canon data.
Each entity card lists every chapter where that entity was detected. Click any chapter number to jump to the exact reference passage. Story NavigatorA popup panel for searching and browsing all DSM indexes. Search mode -- type any term to search across all indexes at once: threads, continuity, characters, locations, objects, groups, and timeline. Results show type and status badges and chapter appearance chips. Click any chip to jump directly to the reference passage in the manuscript. Browse mode -- explore a single index type using the tab bar (Threads, Continuity, Characters, Locations, Objects, Groups, Timeline, Signals). A text filter input narrows results as you type. Threads and Continuity also support type and status pill filters. The Signals tab lists signals sorted by frequency and expands to show linked entities and chapters. Custom Prompt RunnerDefine reusable prompts as plain Markdown files with a YAML header. Run them on any chapter from the Navigator right-click menu or the Command Palette. Prompts can receive context from DSM indexes -- active threads, continuity notes, timeline, characters, and more -- letting custom workflows work with the manuscript structure instead of isolated text. Prompt types: developmental editing, beta reading, continuity checking, pacing analysis, translation, character sheets, encyclopedia generation, publishing exports, or any project-specific workflow. Writer prompts -- mark a prompt with Four commands share the same prompt picker:
Custom DashboardsBuild dashboard views from DSM indexes using JSON profile files. Widgets available: stat cards, status lists, bar lists, warning lists, thread lifecycle views, continuity tables, and timeline summaries. Multiple dashboard panels can be open simultaneously. Profiles are stored as JSON in Built-in profiles: threads, timeline, characters, continuity.
Preset examples in Mark as ScannedRight-click a chapter heading in the Navigator -- DSM: Mark as Scanned -- to reset the orange sync indicator without re-running analysis. Use this when a chapter changes in a way that does not affect the indexes: a corrected typo, a reformatted paragraph, an added blank line. AI Is OptionalDSM requires an LLM provider:
All DSM features can be disabled with a single setting:
The manuscript, notes, navigation, statistics, characters, and repetition panels remain fully usable without AI. Philosophy
Documentation
SupportDraft-Script is developed in spare time and released as open source. If Draft-Script helps you finish a story, catch continuity issues, or save time while writing, your support helps keep the project moving. Support Draft-Script on Patreon DisclaimerDraft-Script is provided as-is, without warranty of any kind. Always keep backups of your manuscripts and project files. Draft-Script is designed to work with plain text files and rebuildable indexes, but you are responsible for your own data, backups, publishing decisions, and use of AI-generated outputs. See the MPL-2.0 license for the full warranty and liability terms. LicenseDraft-Script is licensed under the Mozilla Public License 2.0 (MPL-2.0). |



