scriveno 2.0.5
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/LICENSE +21 -0
- package/README.md +222 -0
- package/agents/continuity-checker.md +85 -0
- package/agents/drafter.md +248 -0
- package/agents/plan-checker.md +209 -0
- package/agents/researcher.md +114 -0
- package/agents/translator.md +204 -0
- package/agents/voice-checker.md +154 -0
- package/bin/install.js +1620 -0
- package/commands/scr/add-note.md +51 -0
- package/commands/scr/add-unit.md +101 -0
- package/commands/scr/art-direction.md +225 -0
- package/commands/scr/autopilot-publish.md +210 -0
- package/commands/scr/autopilot-translate.md +237 -0
- package/commands/scr/autopilot.md +200 -0
- package/commands/scr/back-matter.md +630 -0
- package/commands/scr/back-translate.md +197 -0
- package/commands/scr/beta-reader.md +97 -0
- package/commands/scr/blurb.md +149 -0
- package/commands/scr/book-proposal.md +210 -0
- package/commands/scr/build-ebook.md +448 -0
- package/commands/scr/build-poetry-submission.md +202 -0
- package/commands/scr/build-print.md +598 -0
- package/commands/scr/build-smashwords.md +171 -0
- package/commands/scr/build-world.md +158 -0
- package/commands/scr/cast-list.md +104 -0
- package/commands/scr/chapter-header.md +158 -0
- package/commands/scr/character-arc.md +108 -0
- package/commands/scr/character-ref.md +160 -0
- package/commands/scr/character-sheet.md +143 -0
- package/commands/scr/character-touch.md +157 -0
- package/commands/scr/character-voice-sample.md +111 -0
- package/commands/scr/check-notes.md +50 -0
- package/commands/scr/cleanup.md +159 -0
- package/commands/scr/compare.md +112 -0
- package/commands/scr/complete-draft.md +49 -0
- package/commands/scr/continuity-check.md +129 -0
- package/commands/scr/copy-edit.md +118 -0
- package/commands/scr/cover-art.md +382 -0
- package/commands/scr/cultural-adaptation.md +177 -0
- package/commands/scr/demo.md +93 -0
- package/commands/scr/dialogue-audit.md +143 -0
- package/commands/scr/discuss.md +118 -0
- package/commands/scr/discussion-questions.md +129 -0
- package/commands/scr/do.md +68 -0
- package/commands/scr/draft.md +97 -0
- package/commands/scr/editor-review.md +466 -0
- package/commands/scr/export.md +942 -0
- package/commands/scr/fast.md +65 -0
- package/commands/scr/front-matter.md +696 -0
- package/commands/scr/health.md +113 -0
- package/commands/scr/help.md +121 -0
- package/commands/scr/history.md +92 -0
- package/commands/scr/illustrate-scene.md +211 -0
- package/commands/scr/import.md +95 -0
- package/commands/scr/insert-unit.md +108 -0
- package/commands/scr/line-edit.md +146 -0
- package/commands/scr/manager.md +77 -0
- package/commands/scr/manuscript-stats.md +139 -0
- package/commands/scr/map-illustration.md +213 -0
- package/commands/scr/map-manuscript.md +134 -0
- package/commands/scr/merge-units.md +136 -0
- package/commands/scr/multi-publish.md +344 -0
- package/commands/scr/new-character.md +167 -0
- package/commands/scr/new-revision.md +50 -0
- package/commands/scr/new-work.md +148 -0
- package/commands/scr/next.md +125 -0
- package/commands/scr/originality-check.md +170 -0
- package/commands/scr/outline.md +131 -0
- package/commands/scr/pacing-analysis.md +170 -0
- package/commands/scr/panel-layout.md +225 -0
- package/commands/scr/pause-work.md +88 -0
- package/commands/scr/plan.md +112 -0
- package/commands/scr/plant-seed.md +57 -0
- package/commands/scr/plot-graph.md +199 -0
- package/commands/scr/polish.md +141 -0
- package/commands/scr/profile-writer.md +154 -0
- package/commands/scr/progress.md +51 -0
- package/commands/scr/publish.md +455 -0
- package/commands/scr/query-letter.md +183 -0
- package/commands/scr/quick-write.md +82 -0
- package/commands/scr/relationship-map.md +129 -0
- package/commands/scr/remove-unit.md +120 -0
- package/commands/scr/reorder-units.md +126 -0
- package/commands/scr/resume-work.md +97 -0
- package/commands/scr/sacred/annotation-layer.md +105 -0
- package/commands/scr/sacred/chronology.md +121 -0
- package/commands/scr/sacred/concordance.md +88 -0
- package/commands/scr/sacred/cross-reference.md +97 -0
- package/commands/scr/sacred/doctrinal-check.md +129 -0
- package/commands/scr/sacred/genealogy.md +107 -0
- package/commands/scr/sacred/source-tracking.md +101 -0
- package/commands/scr/sacred/verse-numbering.md +103 -0
- package/commands/scr/sacred-numbering-format.md +103 -0
- package/commands/scr/save.md +109 -0
- package/commands/scr/scan.md +291 -0
- package/commands/scr/sensitivity-review.md +169 -0
- package/commands/scr/series-bible.md +127 -0
- package/commands/scr/session-report.md +80 -0
- package/commands/scr/settings.md +58 -0
- package/commands/scr/split-unit.md +123 -0
- package/commands/scr/spread-layout.md +187 -0
- package/commands/scr/storyboard.md +262 -0
- package/commands/scr/subject-touch.md +168 -0
- package/commands/scr/submit.md +50 -0
- package/commands/scr/subplot-map.md +147 -0
- package/commands/scr/sync.md +116 -0
- package/commands/scr/synopsis.md +137 -0
- package/commands/scr/theme-tracker.md +128 -0
- package/commands/scr/thread.md +83 -0
- package/commands/scr/timeline.md +141 -0
- package/commands/scr/track.md +564 -0
- package/commands/scr/translate.md +260 -0
- package/commands/scr/translation-glossary.md +298 -0
- package/commands/scr/translation-memory.md +310 -0
- package/commands/scr/troubleshoot.md +59 -0
- package/commands/scr/undo.md +106 -0
- package/commands/scr/validate.md +133 -0
- package/commands/scr/versions.md +94 -0
- package/commands/scr/voice-check.md +133 -0
- package/commands/scr/voice-test.md +68 -0
- package/data/CONSTRAINTS.json +1606 -0
- package/data/demo/.manuscript/BRIEF.md +37 -0
- package/data/demo/.manuscript/CHARACTERS.md +90 -0
- package/data/demo/.manuscript/OUTLINE.md +46 -0
- package/data/demo/.manuscript/PLOT-GRAPH.md +75 -0
- package/data/demo/.manuscript/STATE.md +44 -0
- package/data/demo/.manuscript/STYLE-GUIDE.md +119 -0
- package/data/demo/.manuscript/THEMES.md +51 -0
- package/data/demo/.manuscript/WORK.md +51 -0
- package/data/demo/.manuscript/config.json +59 -0
- package/data/demo/.manuscript/drafts/body/1-the-letter-DRAFT.md +51 -0
- package/data/demo/.manuscript/drafts/body/2-the-workshop-DRAFT.md +51 -0
- package/data/demo/.manuscript/drafts/body/3-the-pier-DRAFT.md +45 -0
- package/data/demo/.manuscript/drafts/body/4-the-clock-DRAFT.md +59 -0
- package/data/demo/.manuscript/plans/5-the-reunion-PLAN.md +52 -0
- package/data/demo/.manuscript/reviews/2-the-workshop-REVIEW.md +61 -0
- package/data/export-templates/scriveno-academic.latex +184 -0
- package/data/export-templates/scriveno-acm.latex +67 -0
- package/data/export-templates/scriveno-apa7.latex +83 -0
- package/data/export-templates/scriveno-book.typst +175 -0
- package/data/export-templates/scriveno-chapbook.typst +121 -0
- package/data/export-templates/scriveno-elsevier.latex +76 -0
- package/data/export-templates/scriveno-epub.css +386 -0
- package/data/export-templates/scriveno-fixed-layout-epub.css +76 -0
- package/data/export-templates/scriveno-fixed-layout.opf +23 -0
- package/data/export-templates/scriveno-ieee.latex +77 -0
- package/data/export-templates/scriveno-lncs.latex +79 -0
- package/data/export-templates/scriveno-picturebook.typst +113 -0
- package/data/export-templates/scriveno-poetry-submission-styles.md +45 -0
- package/data/export-templates/scriveno-poetry-submission.docx +0 -0
- package/data/export-templates/scriveno-smashwords-styles.md +45 -0
- package/data/export-templates/scriveno-smashwords.docx +0 -0
- package/data/export-templates/scriveno-stageplay.typst +129 -0
- package/data/proof/creative-context/README.md +79 -0
- package/data/proof/voice-dna/GUIDED-SAMPLE.md +19 -0
- package/data/proof/voice-dna/README.md +45 -0
- package/data/proof/voice-dna/STYLE-GUIDE-EXCERPT.md +43 -0
- package/data/proof/voice-dna/UNGUIDED-SAMPLE.md +11 -0
- package/data/proof/watchmaker-flow/README.md +78 -0
- package/docs/architecture.md +425 -0
- package/docs/command-reference.md +2384 -0
- package/docs/configuration.md +228 -0
- package/docs/context-protocol.md +81 -0
- package/docs/contributing.md +430 -0
- package/docs/creative-context.md +158 -0
- package/docs/development.md +152 -0
- package/docs/drafter-quality.md +127 -0
- package/docs/getting-started.md +198 -0
- package/docs/history-protocol.md +96 -0
- package/docs/proof-artifacts.md +56 -0
- package/docs/publishing.md +296 -0
- package/docs/release-notes.md +457 -0
- package/docs/runtime-support.md +77 -0
- package/docs/sacred-texts.md +296 -0
- package/docs/shipped-assets.md +129 -0
- package/docs/testing.md +156 -0
- package/docs/translation.md +343 -0
- package/docs/voice-dna.md +297 -0
- package/docs/work-types.md +339 -0
- package/lib/architectural-profiles.js +134 -0
- package/package.json +54 -0
- package/templates/BRIEF.md +51 -0
- package/templates/CHARACTERS.md +64 -0
- package/templates/CONTEXT.md +56 -0
- package/templates/OUTLINE.md +36 -0
- package/templates/RECORD.md +68 -0
- package/templates/STATE.md +50 -0
- package/templates/STYLE-GUIDE.md +121 -0
- package/templates/THEMES.md +36 -0
- package/templates/WORK.md +67 -0
- package/templates/WORLD.md +62 -0
- package/templates/WRITING-RULES.md +156 -0
- package/templates/academic/ARGUMENT-MAP.md +40 -0
- package/templates/academic/CONCEPTS.md +34 -0
- package/templates/academic/CONTEXT.md +29 -0
- package/templates/academic/PROPOSAL.md +37 -0
- package/templates/academic/QUESTIONS.md +24 -0
- package/templates/config.json +72 -0
- package/templates/pitfalls/comic.md +54 -0
- package/templates/pitfalls/commentary.md +62 -0
- package/templates/pitfalls/memoir.md +48 -0
- package/templates/pitfalls/novel.md +53 -0
- package/templates/pitfalls/poetry_collection.md +63 -0
- package/templates/pitfalls/research_paper.md +66 -0
- package/templates/pitfalls/runbook.md +64 -0
- package/templates/pitfalls/screenplay.md +54 -0
- package/templates/platforms/README.md +16 -0
- package/templates/platforms/apple/manifest.yaml +20 -0
- package/templates/platforms/bn/manifest.yaml +20 -0
- package/templates/platforms/d2d/manifest.yaml +20 -0
- package/templates/platforms/google/manifest.yaml +20 -0
- package/templates/platforms/ingram/manifest.yaml +44 -0
- package/templates/platforms/kdp/manifest.yaml +42 -0
- package/templates/platforms/kobo/manifest.yaml +20 -0
- package/templates/platforms/smashwords/manifest.yaml +26 -0
- package/templates/sacred/COSMOLOGY.md +88 -0
- package/templates/sacred/DOCTRINES.md +45 -0
- package/templates/sacred/FIGURES.md +69 -0
- package/templates/sacred/FRAMEWORK.md +98 -0
- package/templates/sacred/LINEAGES.md +52 -0
- package/templates/sacred/README.md +20 -0
- package/templates/sacred/THEOLOGICAL-ARC.md +69 -0
- package/templates/sacred/catholic/manifest.yaml +93 -0
- package/templates/sacred/islamic-hafs/manifest.yaml +134 -0
- package/templates/sacred/islamic-warsh/manifest.yaml +134 -0
- package/templates/sacred/jewish/manifest.yaml +56 -0
- package/templates/sacred/orthodox/manifest.yaml +98 -0
- package/templates/sacred/pali/manifest.yaml +20 -0
- package/templates/sacred/protestant/manifest.yaml +86 -0
- package/templates/sacred/sanskrit/manifest.yaml +20 -0
- package/templates/sacred/tewahedo/manifest.yaml +106 -0
- package/templates/sacred/tibetan/manifest.yaml +20 -0
- package/templates/technical/AUDIENCE.md +26 -0
- package/templates/technical/DEPENDENCIES.md +19 -0
- package/templates/technical/DOC-BRIEF.md +45 -0
- package/templates/technical/PROCEDURES.md +37 -0
- package/templates/technical/REFERENCES.md +36 -0
- package/templates/technical/SYSTEM.md +25 -0
package/LICENSE
ADDED
|
@@ -0,0 +1,21 @@
|
|
|
1
|
+
MIT License
|
|
2
|
+
|
|
3
|
+
Copyright (c) 2026 Scriveno contributors
|
|
4
|
+
|
|
5
|
+
Permission is hereby granted, free of charge, to any person obtaining a copy
|
|
6
|
+
of this software and associated documentation files (the "Software"), to deal
|
|
7
|
+
in the Software without restriction, including without limitation the rights
|
|
8
|
+
to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
|
|
9
|
+
copies of the Software, and to permit persons to whom the Software is
|
|
10
|
+
furnished to do so, subject to the following conditions:
|
|
11
|
+
|
|
12
|
+
The above copyright notice and this permission notice shall be included in all
|
|
13
|
+
copies or substantial portions of the Software.
|
|
14
|
+
|
|
15
|
+
THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
|
|
16
|
+
IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
|
|
17
|
+
FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
|
|
18
|
+
AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
|
|
19
|
+
LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
|
|
20
|
+
OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
|
|
21
|
+
SOFTWARE.
|
package/README.md
ADDED
|
@@ -0,0 +1,222 @@
|
|
|
1
|
+
# Scriveno
|
|
2
|
+
|
|
3
|
+
[](https://github.com/aihxp/scriveno/actions/workflows/ci.yml)
|
|
4
|
+
[](LICENSE)
|
|
5
|
+
[](CHANGELOG.md)
|
|
6
|
+
[](https://www.npmjs.com/package/scriveno)
|
|
7
|
+
[](https://www.npmjs.com/package/scriveno)
|
|
8
|
+
|
|
9
|
+
**[scriveno on npm](https://www.npmjs.com/package/scriveno)**
|
|
10
|
+
|
|
11
|
+
**Spec-driven writing, publishing, and translation for AI coding agents.**
|
|
12
|
+
|
|
13
|
+
*I don't outline -- Claude does. I don't edit -- Claude does. I don't format -- Claude does. I just write.*
|
|
14
|
+
|
|
15
|
+
Scriveno brings spec-driven workflows to longform writing. It runs inside your AI coding agent (Claude Code, Cursor, Gemini CLI, and more) and also ships a guided Perplexity Desktop setup path for file-aware support without overstating parity.
|
|
16
|
+
|
|
17
|
+
Scriveno is best understood as **AI-native longform writing software built around voice preservation**. Its core promise is narrow and high-stakes: drafted prose should sound like the writer, not like AI. If you want evidence before features, start with the [Proof Artifacts](docs/proof-artifacts.md).
|
|
18
|
+
|
|
19
|
+
```bash
|
|
20
|
+
npx scriveno@latest
|
|
21
|
+
```
|
|
22
|
+
|
|
23
|
+
---
|
|
24
|
+
|
|
25
|
+
## What is this
|
|
26
|
+
|
|
27
|
+
Scriveno is a command system that turns your AI coding agent into a voice-preserving writing studio. It supports 50 work types -- novels, screenplays, research papers, technical guides, runbooks, scripture commentaries, comics, memoirs -- each with its own adaptive vocabulary and toolset.
|
|
28
|
+
|
|
29
|
+
The wedge comes first: Scriveno profiles the writer, loads that voice into every drafting step, and keeps each unit on fresh context so the prose stays specific to the project. From there, it expands into 112 writing commands covering the rest of the pipeline:
|
|
30
|
+
|
|
31
|
+
- **Create** -- Set up a project with tailored context files. Progressive onboarding, never overwhelming.
|
|
32
|
+
- **Write** -- Discuss, plan, draft, and revise one unit at a time. The drafter agent loads your Voice DNA and writes in *your* voice, not generic AI prose.
|
|
33
|
+
- **Polish** -- Editor review, line edit, copy edit, continuity check, voice check, beta reader simulation, sensitivity review.
|
|
34
|
+
- **Publish** -- Front/back matter, cover art, blurbs, query letters, KDP packages, IngramSpark packages, EPUB, PDF, Fountain, Final Draft, LaTeX.
|
|
35
|
+
- **Translate** -- Deep translation with glossary management, cultural adaptation, back-translation verification, multi-language simultaneous publishing.
|
|
36
|
+
- **Collaborate** -- Parallel revision tracks, co-writing workflows, continuity merge checking.
|
|
37
|
+
|
|
38
|
+
Everything adapts to your work type. A novel uses `/scr:draft` for chapters. A screenplay uses `/scr:draft` for acts. A Quran commentary uses `/scr:draft` for surahs. Same command, tradition-native vocabulary.
|
|
39
|
+
|
|
40
|
+
---
|
|
41
|
+
|
|
42
|
+
## Quick start
|
|
43
|
+
|
|
44
|
+
```bash
|
|
45
|
+
# Install
|
|
46
|
+
npx scriveno@latest
|
|
47
|
+
|
|
48
|
+
# In Claude Code:
|
|
49
|
+
/scr-new-work # Start a fresh project
|
|
50
|
+
/scr-demo # Explore a pre-built sample first
|
|
51
|
+
/scr-next # The universal "what should I do now" command
|
|
52
|
+
/scr-help # See what's available for your work type
|
|
53
|
+
|
|
54
|
+
# Other slash-command runtimes currently keep /scr:*:
|
|
55
|
+
/scr:new-work
|
|
56
|
+
/scr:next
|
|
57
|
+
|
|
58
|
+
# In Codex, use the generated $scr-* skills:
|
|
59
|
+
$scr-new-work
|
|
60
|
+
$scr-demo
|
|
61
|
+
$scr-next
|
|
62
|
+
$scr-help
|
|
63
|
+
```
|
|
64
|
+
|
|
65
|
+
If you only ever type `/scr-next` in Claude Code, you can complete an entire novel. It always knows what's next.
|
|
66
|
+
|
|
67
|
+
If you want the shortest proof-first route, read [Proof Artifacts](docs/proof-artifacts.md) before exploring the rest of the docs.
|
|
68
|
+
|
|
69
|
+
---
|
|
70
|
+
|
|
71
|
+
## The Voice DNA system
|
|
72
|
+
|
|
73
|
+
Scriveno's core insight: drafted prose should sound like *you*, not like an AI. Before drafting begins, `/scr:profile-writer` builds a detailed voice profile across 15+ dimensions:
|
|
74
|
+
|
|
75
|
+
- Narrative perspective, tense, narrator stance
|
|
76
|
+
- Sentence architecture, paragraph rhythm
|
|
77
|
+
- Vocabulary register, figurative density, recurring image systems
|
|
78
|
+
- Dialogue style, character voice differentiation
|
|
79
|
+
- Pacing, transitions, emotional range
|
|
80
|
+
- Do/don't/consider rules specific to the writer
|
|
81
|
+
|
|
82
|
+
This profile is saved as `STYLE-GUIDE.md` and loaded into every drafter agent invocation. The drafter writes one atomic unit per fresh context -- a scene, a subsection, a passage -- with the style guide as its primary reference. Voice stays consistent across hundreds of scenes.
|
|
83
|
+
|
|
84
|
+
The drafter is also backed by two additional rule layers that scaffold weaker models without overriding the writer's voice: a universal `WRITING-RULES.md` (human-first restraint, factual integrity, AI-tell don'ts, register awareness, and artifact cleanup loaded into every drafter, voice-checker, and originality-check pass) and per-work-type pitfall packs at `templates/pitfalls/<work_type>.md` (filter words for prose, unfilmable description for screenplays, missing-precondition checks for runbooks, anachronism for sacred commentary, and so on). Conflict resolution is top-down: STYLE-GUIDE.md > WRITING-RULES.md > pitfall pack. See [docs/drafter-quality.md](docs/drafter-quality.md) for the full system, including `draft.rigor` and `draft.context_profile` settings for matching the drafter to the model tier you're routing to.
|
|
85
|
+
|
|
86
|
+
Every project also gets `RECORD.md`, a neutral established-content store. `STATE.md` tracks workflow position, `OUTLINE.md` tracks structure, and `RECORD.md` tracks what the work has established: open threads, reader promises, payoffs, continuity facts, and movement that future units must honor.
|
|
87
|
+
|
|
88
|
+
For sacred and historical texts, Voice DNA is supplemented by 10 sacred voice registers (prophetic, wisdom, legal, liturgical, narrative-historical, apocalyptic, epistolary, psalmic, parabolic, didactic).
|
|
89
|
+
|
|
90
|
+
---
|
|
91
|
+
|
|
92
|
+
## Work types supported
|
|
93
|
+
|
|
94
|
+
**Prose:** novel, novella, short story, flash fiction, memoir, creative nonfiction, biography, essay, essay collection
|
|
95
|
+
|
|
96
|
+
**Script:** screenplay, stage play, TV pilot, TV series bible, audio drama, libretto/musical
|
|
97
|
+
|
|
98
|
+
**Academic:** research paper, thesis/dissertation, journal article, white paper, literature review, monograph
|
|
99
|
+
|
|
100
|
+
**Technical writing:** technical guide/user guide, runbook/SOP, API or CLI reference, design spec/architecture doc
|
|
101
|
+
|
|
102
|
+
**Visual:** comic, graphic novel, children's book, picture book
|
|
103
|
+
|
|
104
|
+
**Poetry:** poetry collection, single poem, song/lyric
|
|
105
|
+
|
|
106
|
+
**Interactive:** interactive fiction, game narrative
|
|
107
|
+
|
|
108
|
+
**Sacred & historical:** scripture (Biblical, Quranic, Torah, Vedic, Buddhist, generic), commentary/exegesis, devotional, liturgical text, historical chronicle, historical account, mythological collection, religious epic, sermon, homiletic collection
|
|
109
|
+
|
|
110
|
+
Each work type has its own structural hierarchy and **industry-standard word count and page range guidance** -- a novel targets 70,000-100,000 words across 20-35 chapters, a screenplay targets 90-120 pages across 3-5 acts. These ranges guide outlining, progress tracking, and drafter pacing. The runnable command ids stay stable, while Scriveno adapts the wording around them -- a Torah commentary still runs `/scr:plan 3`, but frames that work as planning Parashah 3.
|
|
111
|
+
|
|
112
|
+
---
|
|
113
|
+
|
|
114
|
+
## Autopilot mode
|
|
115
|
+
|
|
116
|
+
Run the full pipeline autonomously. Three profiles:
|
|
117
|
+
|
|
118
|
+
- **Guided** -- Pause after each unit for review
|
|
119
|
+
- **Supervised** -- Batch through several units, pause for review
|
|
120
|
+
- **Full-auto** -- Run until complete; only pause on critical failures
|
|
121
|
+
|
|
122
|
+
```bash
|
|
123
|
+
# Claude Code
|
|
124
|
+
/scr-autopilot --profile supervised
|
|
125
|
+
|
|
126
|
+
# Other slash-command runtimes
|
|
127
|
+
/scr:autopilot --profile supervised
|
|
128
|
+
```
|
|
129
|
+
|
|
130
|
+
Plus:
|
|
131
|
+
- `/scr:autopilot-publish` -- One command generates front matter, back matter, cover, and full export package
|
|
132
|
+
- `/scr:autopilot-translate french german spanish` -- Simultaneous multi-language editions
|
|
133
|
+
|
|
134
|
+
---
|
|
135
|
+
|
|
136
|
+
## Writer mode vs. developer mode
|
|
137
|
+
|
|
138
|
+
Scriveno detects non-technical writers and hides git terminology. Instead of `commit`, `branch`, `merge`, `diff` -- you see `save`, `version`, `compare`, `accept changes`. All the power, none of the coding jargon.
|
|
139
|
+
|
|
140
|
+
Technical writers can enable developer mode in settings for full git access and verbose output.
|
|
141
|
+
|
|
142
|
+
---
|
|
143
|
+
|
|
144
|
+
## Philosophy
|
|
145
|
+
|
|
146
|
+
Scriveno is built on five principles:
|
|
147
|
+
|
|
148
|
+
1. **The writer's voice is sacred.** The drafter never imposes generic AI style. Every drafted sentence passes through the Voice DNA gate.
|
|
149
|
+
|
|
150
|
+
2. **Fresh context per atomic unit.** Each scene, subsection, or passage is drafted in a clean context. This prevents voice drift, context bloat, and keeps each unit at its best.
|
|
151
|
+
|
|
152
|
+
3. **Progressive disclosure.** Onboarding asks 3 questions, not 30. Depth is optional and always additive.
|
|
153
|
+
|
|
154
|
+
4. **Tradition-native vocabulary.** A Quran commentary uses surahs and ayahs. A Bible study uses books and verses. A screenplay uses acts and scenes. The tool adapts to the tradition -- the writer never adapts to the tool.
|
|
155
|
+
|
|
156
|
+
5. **`/scr-next` always works in Claude Code.** The universal interface. A writer who only ever types `/scr-next` can complete an entire novel, from blank page to KDP package.
|
|
157
|
+
|
|
158
|
+
---
|
|
159
|
+
|
|
160
|
+
## Documentation
|
|
161
|
+
|
|
162
|
+
- [Proof Artifacts](docs/proof-artifacts.md) -- Canonical proof hub for the watchmaker sample flow and Voice DNA before/after bundle
|
|
163
|
+
- [Getting Started](docs/getting-started.md) -- Install to first draft in 10 minutes
|
|
164
|
+
- [Command Reference](docs/command-reference.md) -- All 112 commands with usage, flags, and examples
|
|
165
|
+
- [Work Types Guide](docs/work-types.md) -- How 50 work types adapt Scriveno's vocabulary
|
|
166
|
+
- [Voice DNA Guide](docs/voice-dna.md) -- The 15+ dimension voice profiling system
|
|
167
|
+
- [Creative Context](docs/creative-context.md) -- Writer-native context routing, craft notes, and core-loop memory
|
|
168
|
+
- [Publishing Guide](docs/publishing.md) -- 13 export formats, KDP, IngramSpark, submission packages
|
|
169
|
+
- [Sacred Text Guide](docs/sacred-texts.md) -- 15 sacred work types, voice registers, tradition-native features
|
|
170
|
+
- [Translation Guide](docs/translation.md) -- Multi-language pipeline with glossary and cultural adaptation
|
|
171
|
+
- [Contributing](docs/contributing.md) -- How to add commands, agents, work types, and templates
|
|
172
|
+
- [Architecture](docs/architecture.md) -- How Scriveno works under the hood
|
|
173
|
+
- [Configuration](docs/configuration.md) -- Package, installer, constraints, and `.manuscript/config.json` surfaces
|
|
174
|
+
- [Development](docs/development.md) -- Contributor workflow for changing commands, templates, installer logic, and docs
|
|
175
|
+
- [Testing](docs/testing.md) -- What the test suite covers and which checks to run before shipping
|
|
176
|
+
- [Release Notes](docs/release-notes.md) -- Public summary of what changed between package releases
|
|
177
|
+
- [Shipped Assets](docs/shipped-assets.md) -- Canonical inventory of bundled export templates and launch-critical files
|
|
178
|
+
- [Runtime Support](docs/runtime-support.md) -- Canonical runtime matrix, Node baseline, and verification-status framing
|
|
179
|
+
|
|
180
|
+
---
|
|
181
|
+
|
|
182
|
+
## Installer Targets
|
|
183
|
+
|
|
184
|
+
Scriveno currently ships installer targets for these AI tooling environments:
|
|
185
|
+
|
|
186
|
+
- **Claude Code** (primary reference runtime)
|
|
187
|
+
- **Cursor**
|
|
188
|
+
- **Gemini CLI**
|
|
189
|
+
- **Codex**
|
|
190
|
+
- **OpenCode**
|
|
191
|
+
- **GitHub Copilot**
|
|
192
|
+
- **Windsurf**
|
|
193
|
+
- **Antigravity**
|
|
194
|
+
- **Manus Desktop**
|
|
195
|
+
- **Perplexity Desktop** (guided local-MCP setup)
|
|
196
|
+
- **Generic (SKILL.md)** fallback
|
|
197
|
+
|
|
198
|
+
**Installer baseline:** `Node.js >=20.0.0` for `npx scriveno@latest` and `bin/install.js`. For new installs, use a currently supported LTS such as Node.js 24; Node.js 20 is now a compatibility floor, not the recommended fresh-install target.
|
|
199
|
+
|
|
200
|
+
**Support note:** Claude Code is the primary reference runtime and now installs a flat `/scr-*` command surface. The environments listed above are installer targets, not a claim that every host runtime has verified parity today. Codex currently installs a skill-native `$scr-*` surface, while Perplexity Desktop is a guided local-MCP target rather than a writable command runtime. See the [runtime compatibility matrix](docs/runtime-support.md) for install type, support level, and verification status.
|
|
201
|
+
|
|
202
|
+
---
|
|
203
|
+
|
|
204
|
+
## Status
|
|
205
|
+
|
|
206
|
+
**Version:** 2.0.5
|
|
207
|
+
|
|
208
|
+
Scriveno's core command surface is stable across 112 commands, 50 work types, and 11 installer targets. The current repo baseline includes shipped planning milestones through `v2.0 Publishing Cover Packaging`, plus the creative-context, record-store, branching-next, runtime-sync, adaptive concierge, human-first writing-safeguard, authenticity-diagnostic, and domain-grilling work through `2.0.5`. See [Shipped Assets](docs/shipped-assets.md) for the canonical asset inventory and [Runtime Support](docs/runtime-support.md) for the runtime compatibility matrix.
|
|
209
|
+
|
|
210
|
+
Version `2.0.5` publishes Scriveno under the package name `scriveno`, so the current install command is `npx scriveno@latest`. The older `scriveno-cli` package name remains historical; new docs and package metadata now point at `scriveno`. See [CHANGELOG](CHANGELOG.md) for the full list and [docs/release-notes.md](docs/release-notes.md) for the public-facing summary.
|
|
211
|
+
|
|
212
|
+
Package history is tracked in [CHANGELOG.md](CHANGELOG.md), and the public-facing summary for this release is in [docs/release-notes.md](docs/release-notes.md).
|
|
213
|
+
|
|
214
|
+
---
|
|
215
|
+
|
|
216
|
+
## License
|
|
217
|
+
|
|
218
|
+
MIT. See [LICENSE](./LICENSE).
|
|
219
|
+
|
|
220
|
+
## Contributing
|
|
221
|
+
|
|
222
|
+
Scriveno is an open project. Contributions welcome -- especially new work types, additional runtime adapters, and voice register definitions for languages and traditions we haven't covered yet.
|
|
@@ -0,0 +1,85 @@
|
|
|
1
|
+
---
|
|
2
|
+
name: continuity-checker
|
|
3
|
+
description: Verifies logical, chronological, and factual consistency across drafted units. Flags contradictions, timeline issues, and character state drift.
|
|
4
|
+
tools: Read
|
|
5
|
+
---
|
|
6
|
+
|
|
7
|
+
# Continuity checker agent
|
|
8
|
+
|
|
9
|
+
You are the continuity department. Your job is to catch contradictions, timeline errors, character state drift, and world-rule violations across the manuscript.
|
|
10
|
+
|
|
11
|
+
## What you receive
|
|
12
|
+
|
|
13
|
+
1. **The full set of drafted units** -- `.manuscript/drafts/body/{N}-{A}-DRAFT.md` files in order
|
|
14
|
+
2. **CHARACTERS.md** (or FIGURES.md for sacred works)
|
|
15
|
+
3. **WORLD.md** (or COSMOLOGY.md for sacred works)
|
|
16
|
+
4. **PLOT-GRAPH.md** (or THEOLOGICAL-ARC.md for sacred works)
|
|
17
|
+
5. **Any previous continuity reports** to avoid re-flagging resolved issues
|
|
18
|
+
|
|
19
|
+
## What you check
|
|
20
|
+
|
|
21
|
+
### Character continuity
|
|
22
|
+
- **Physical description.** Eye color, hair color, height, distinguishing features -- consistent across the manuscript?
|
|
23
|
+
- **Backstory references.** Does every mention of a character's past agree with earlier/later mentions?
|
|
24
|
+
- **Relationships.** If two characters meet for the first time in Chapter 5, they shouldn't know each other in Chapter 3.
|
|
25
|
+
- **Skills and knowledge.** Does a character suddenly speak French when they couldn't before? If so, was the change earned?
|
|
26
|
+
- **Possessions.** Objects given, taken, lost, or destroyed -- are they tracked correctly?
|
|
27
|
+
- **Emotional state carry-over.** Does a character's emotional state at the end of one scene track into the next?
|
|
28
|
+
|
|
29
|
+
### Timeline
|
|
30
|
+
- **Chronology.** Do events happen in a coherent order? Flag any "yesterday" that contradicts the established timeline.
|
|
31
|
+
- **Time of day.** Does the sun behave? If a scene ends at noon, the next scene (if immediately after) shouldn't be at dusk without a time jump.
|
|
32
|
+
- **Weather and season.** If it's winter in Chapter 3, is it still winter in Chapter 4 (if days have passed, not weeks)?
|
|
33
|
+
- **Character age.** Does the math work? If a character was 30 five years ago, they're not still 30.
|
|
34
|
+
|
|
35
|
+
### World rules
|
|
36
|
+
- **Magic systems.** If magic requires X, characters can't use it without X.
|
|
37
|
+
- **Technology level.** No anachronisms (phones in a medieval setting unless established).
|
|
38
|
+
- **Physical laws.** Does the world's physics behave consistently?
|
|
39
|
+
- **Geography.** Distances, travel times, what's where.
|
|
40
|
+
- **Cultural rules.** If a society has a taboo, characters acknowledge it unless breaking it is the point.
|
|
41
|
+
|
|
42
|
+
### Plot continuity
|
|
43
|
+
- **Planted seeds.** Elements planted early should pay off or be explicitly abandoned. Track promises.
|
|
44
|
+
- **Foreshadowing follow-through.** Flag any foreshadowed event that never happens.
|
|
45
|
+
- **Revealed information.** If Marcus learns something in Chapter 3, he shouldn't be surprised by it in Chapter 7.
|
|
46
|
+
- **Character motivation coherence.** Does each character's behavior make sense given what they know at that point?
|
|
47
|
+
|
|
48
|
+
### Sacred/historical specific
|
|
49
|
+
- **Doctrinal consistency.** No passage should contradict DOCTRINES.md.
|
|
50
|
+
- **Genealogical coherence.** Family trees in LINEAGES.md are sacred -- no contradictions.
|
|
51
|
+
- **Source tradition alignment.** Don't mix traditions that shouldn't be mixed.
|
|
52
|
+
- **Chronological accuracy.** If the text tracks historical events, verify dates against CHRONOLOGY.md.
|
|
53
|
+
|
|
54
|
+
## What you return
|
|
55
|
+
|
|
56
|
+
```
|
|
57
|
+
CONTINUITY REPORT
|
|
58
|
+
=================
|
|
59
|
+
|
|
60
|
+
Status: PASS / ISSUES FOUND
|
|
61
|
+
|
|
62
|
+
CHARACTER CONTINUITY
|
|
63
|
+
- [issue]: Chapter X says Y; Chapter Z says W. Conflict.
|
|
64
|
+
- [character]: Emotional state mismatch between end of Ch 4 and start of Ch 5.
|
|
65
|
+
|
|
66
|
+
TIMELINE
|
|
67
|
+
- [issue]: "Three days later" in Ch 6, but Ch 5 established only one day had passed.
|
|
68
|
+
|
|
69
|
+
WORLD RULES
|
|
70
|
+
- [issue]: Character uses spell without crystal (WORLD.md requires crystal for that spell class).
|
|
71
|
+
|
|
72
|
+
PLOT CONTINUITY
|
|
73
|
+
- [issue]: Planted in Ch 2 (the mysterious letter), never resolved.
|
|
74
|
+
- [issue]: Foreshadowed in Ch 7 (the storm), never happens.
|
|
75
|
+
|
|
76
|
+
RESOLVED (from previous report, verify still resolved)
|
|
77
|
+
- [previous issues]
|
|
78
|
+
|
|
79
|
+
RECOMMENDATIONS
|
|
80
|
+
- Specific fix suggestions with chapter/line references
|
|
81
|
+
```
|
|
82
|
+
|
|
83
|
+
## Tone
|
|
84
|
+
|
|
85
|
+
Factual and precise. You're not a critic -- you're a fact-checker. Flag the issue, cite the evidence, suggest the fix. Don't editorialize about whether the story is working; that's the editor-review's job.
|
|
@@ -0,0 +1,248 @@
|
|
|
1
|
+
---
|
|
2
|
+
name: drafter
|
|
3
|
+
description: Drafts a single atomic unit (scene, subsection, passage, stanza) in the writer's voice. Invoked in fresh context per atomic unit for focus and voice consistency.
|
|
4
|
+
tools: Read, Write
|
|
5
|
+
---
|
|
6
|
+
|
|
7
|
+
# Drafter agent
|
|
8
|
+
|
|
9
|
+
You are the Scriveno drafter. Your single job is to draft one atomic unit (a scene, subsection, passage, or stanza) in the writer's established voice.
|
|
10
|
+
|
|
11
|
+
You will be invoked once per atomic unit, in a fresh context. This is deliberate -- fresh context per unit prevents voice drift, keeps you focused, and lets each unit be its best.
|
|
12
|
+
|
|
13
|
+
## What you receive
|
|
14
|
+
|
|
15
|
+
You will always receive these files loaded into your context (load in this exact order; the stable prefix keeps the prompt cache warm across drafter invocations):
|
|
16
|
+
|
|
17
|
+
1. **STYLE-GUIDE.md** -- The voice DNA. This is the single most important file. Every sentence you write should pass the test: "does this match STYLE-GUIDE.md?" If you're unsure, re-read STYLE-GUIDE.md.
|
|
18
|
+
|
|
19
|
+
2. **WRITING-RULES.md** (optional). Universal AI-tell don'ts and show-don't-tell triggers. Loaded if present in the project's `.manuscript/` directory or the installed Scriveno templates. STYLE-GUIDE.md wins where they conflict; WRITING-RULES.md is the floor, not the ceiling. If absent, fall back to the universal rules summarized in "What you must never do" below.
|
|
20
|
+
|
|
21
|
+
3. **Pitfall pack** (optional). Type-specific pitfalls keyed off `.manuscript/config.json`'s `work_type`. Resolution order: `.manuscript/PITFALLS.md` (project-local override) first, else the installed pack at `templates/pitfalls/<work_type>.md` (global `~/.scriveno/templates/pitfalls/` or project `.scriveno/templates/pitfalls/`). If neither exists, skip silently. Pitfall packs refine universal rules with type-specific traps (filter words, genre cliches, structural pitfalls). They cannot relax WRITING-RULES.md or override STYLE-GUIDE.md.
|
|
22
|
+
|
|
23
|
+
4. **.manuscript/plans/{N}-{A}-PLAN.md** -- The specific plan for this atomic unit. Legacy root-level `{N}-{A}-PLAN.md` files may be provided for older projects. This tells you what happens, what the emotional arc is, what voice notes apply, what continuity anchors to respect.
|
|
24
|
+
|
|
25
|
+
5. **Craft notes from the plan** -- CHOICE, HUNCH, QUESTION, and WATCHPOINT items that should guide this unit. Follow CHOICE items, test HUNCH items only where they fit the plan, make the safest defensible call on non-blocking QUESTION items, and preserve WATCHPOINT items.
|
|
26
|
+
|
|
27
|
+
6. **Record Notes from the plan** (when present) -- established facts, open threads, reader promises, payoffs, continuity facts, and next-unit obligations this unit must honor.
|
|
28
|
+
|
|
29
|
+
7. **RECORD.md** (when present) -- The compact store of what the work has established. Treat it as authoritative for established content unless the plan explicitly marks a revision or contradiction to resolve.
|
|
30
|
+
|
|
31
|
+
8. **Character Persona Notes from the plan** (when present) -- pressure behavior, relationship-specific interactions, dialogue constraints, and pairwise trust or conflict patterns to dramatize.
|
|
32
|
+
|
|
33
|
+
9. **Subject Dynamics Notes from the plan** (when present) -- the active idea, subject, process, procedure, place, object, doctrine, image pattern, or reader problem; the reader's starting state and desired shift; the pressure or friction; and the interaction between ideas, evidence, steps, exceptions, images, doctrines, practices, or failure modes.
|
|
34
|
+
|
|
35
|
+
10. **CHARACTERS.md** (or FIGURES.md for sacred works) -- The full file by default. Includes voice anchors, persona under pressure, relationship-specific interactions, speech patterns, and current emotional state for every character. Filtering to "only relevant figures" is opt-in via `draft.context_profile: minimal` and only appropriate when the writer has confirmed character continuity is not at risk -- a character introduced via `/scr:new-character` after some plans were already written will not appear in those plans, and a relevance filter would silently exclude them from your view.
|
|
36
|
+
|
|
37
|
+
11. **Previous unit tail** -- The last 200 words of the previous atomic unit (if any), for voice and tone continuity. Don't reference it directly -- just let its rhythm and register flow into your opening.
|
|
38
|
+
|
|
39
|
+
12. **THEMES.md excerpt** (or DOCTRINES.md for sacred) -- Only the thematic threads this unit should advance or echo.
|
|
40
|
+
|
|
41
|
+
13. **WORK.md excerpt** -- Premise, tone, central question. For reminders, not for copying.
|
|
42
|
+
|
|
43
|
+
## What you do NOT receive
|
|
44
|
+
|
|
45
|
+
- The full manuscript. You work unit by unit. Trust the plan file.
|
|
46
|
+
- The writer's conversation history. You are a focused craft agent, not a chatbot.
|
|
47
|
+
- Other units' drafts. If something needs to match another unit, the planner will tell you in `.manuscript/plans/{N}-{A}-PLAN.md`.
|
|
48
|
+
|
|
49
|
+
## Honoring draft settings
|
|
50
|
+
|
|
51
|
+
Before loading context, read `.manuscript/config.json` and check the `draft` block. If the block is absent (older project, or never customized), use the defaults: `rigor: "standard"`, `context_profile: "standard"`, `pitfalls_enabled: true`.
|
|
52
|
+
|
|
53
|
+
### draft.context_profile
|
|
54
|
+
|
|
55
|
+
Controls how much context to load per atomic unit. Cheaper profiles save tokens on every drafter invocation, which matters when running on weaker models or drafting many short units.
|
|
56
|
+
|
|
57
|
+
- **`minimal`**: load only STYLE-GUIDE.md, WRITING-RULES.md, the unit's PLAN, the previous unit's tail (200 words), and CHARACTERS/FIGURES entries for speakers actually appearing in this unit's plan. Skip THEMES.md and WORK.md unless the plan explicitly references them. Skip CHARACTERS entries for off-stage figures. **Use only when the writer has confirmed character continuity is not at risk** -- a character added late via `/scr:new-character` will not yet be referenced in older plans and a `minimal` filter will silently drop them.
|
|
58
|
+
- **`standard`** (default): load the full context list described in "What you receive" above. **CHARACTERS.md / FIGURES.md is loaded in full**, not filtered, so newly added characters and characters who are off-stage but emotionally referenced still flow into the drafter's view.
|
|
59
|
+
- **`full`**: load everything in `standard` plus, for sacred works, full DOCTRINES.md and LINEAGES.md (not just excerpts), and any reference passages the orchestrator provides. Use only when the unit genuinely needs cross-document continuity.
|
|
60
|
+
|
|
61
|
+
### draft.rigor
|
|
62
|
+
|
|
63
|
+
Controls how aggressively to enforce WRITING-RULES.md and the pitfall pack.
|
|
64
|
+
|
|
65
|
+
- **`standard`** (default): apply rules during the Step 4 self-check pass. If the prose drifts, rewrite.
|
|
66
|
+
- **`strict`**: before writing each sentence, mentally check it against WRITING-RULES.md (universal don'ts) and the pitfall pack (type-specific traps). Treat both as hard constraints. Use this when the writer has signaled they are routing to a weaker model and want the rule scaffold to compensate.
|
|
67
|
+
|
|
68
|
+
### draft.pitfalls_enabled
|
|
69
|
+
|
|
70
|
+
When `false`, skip loading the pitfall pack entirely. WRITING-RULES.md still loads. Use this when the writer's voice deliberately leans into the pitfalls (parody, pastiche, period voice) and the pack is more interference than help.
|
|
71
|
+
|
|
72
|
+
## How to draft
|
|
73
|
+
|
|
74
|
+
### Step 1: Load and read
|
|
75
|
+
Read all provided files in the order listed above. Understand STYLE-GUIDE.md deeply, noting the POV, tense, sentence architecture, vocabulary register, figurative density, dialogue style, pacing, and any "always/never/consider" rules. Then read WRITING-RULES.md (if present) for universal AI-tell don'ts. Then read the pitfall pack (if present) for type-specific traps that apply to this work_type. Conflict resolution top-down: STYLE-GUIDE.md > WRITING-RULES.md > pitfall pack. The writer's voice is sovereign.
|
|
76
|
+
|
|
77
|
+
### Step 2: Orient
|
|
78
|
+
Re-read `.manuscript/plans/{N}-{A}-PLAN.md` or the provided legacy plan file. Identify:
|
|
79
|
+
- Starting emotional state
|
|
80
|
+
- Ending emotional state (where this unit leaves the reader)
|
|
81
|
+
- Beats to hit
|
|
82
|
+
- Voice notes specific to this unit (e.g., "this scene is quieter, more interior")
|
|
83
|
+
- Continuity anchors to respect
|
|
84
|
+
- Craft notes to honor, including CHOICE, HUNCH, QUESTION, and WATCHPOINT
|
|
85
|
+
- Record Notes and RECORD.md obligations, including established facts, open threads, promises, payoffs, continuity facts, and next-unit obligations
|
|
86
|
+
- Character Persona Notes, including pressure behavior and relationship-specific interactions
|
|
87
|
+
- Subject Dynamics Notes, including reader-state movement, pressure or friction, and idea, evidence, procedure, doctrine, image, or failure-mode interactions
|
|
88
|
+
|
|
89
|
+
Craft labels guide drafting but never appear in the prose. If a plan still contains `QUESTION: Blocking`, stop and return that blocker to the orchestrating command. If a question is non-blocking, make the most defensible choice and let the editor-review phase evaluate it.
|
|
90
|
+
|
|
91
|
+
### Step 3: Draft
|
|
92
|
+
Write the atomic unit. Follow these principles:
|
|
93
|
+
|
|
94
|
+
**Voice first.** Before you write any sentence, check it against STYLE-GUIDE.md. If the writer prefers short sentences, write short sentences. If the writer prefers Anglo-Saxon over Latinate vocabulary, write that way. If the writer's metaphor density is "sparse," don't pile on metaphors.
|
|
95
|
+
|
|
96
|
+
**Show the plan, don't summarize it.** The plan says what happens. You show it happening -- with sensory detail, interiority, dialogue, action, all in the writer's voice. Don't paraphrase the plan into expository prose.
|
|
97
|
+
|
|
98
|
+
**Hit the emotional arc.** Start where the plan says to start emotionally. End where the plan says to end. The beats in between are the bridge.
|
|
99
|
+
|
|
100
|
+
**Dialogue is voice.** Each character should sound like their voice anchor in CHARACTERS.md (or FIGURES.md). If Marcus is terse and Sarah is lyrical, Marcus stays terse and Sarah stays lyrical. No one should sound like the narrator.
|
|
101
|
+
|
|
102
|
+
**Persona becomes behavior.** Do not explain a character's persona on the page. Show it through action, silence, evasions, body language, and what they refuse to say. If CHARACTERS.md says Mara lies by becoming still and terse, draft the stillness and terse replies.
|
|
103
|
+
|
|
104
|
+
**Relationships change the voice.** A character should not sound identical with everyone. Use Relationship-Specific Interactions to adjust trust posture, conflict pattern, speech shift, and hidden agenda or fear. If Elias is formal when uncertain with Mara but warm with his sister, that difference should appear in the scene.
|
|
105
|
+
|
|
106
|
+
**Subjects have dynamics too.** The page still needs movement beyond plot and dialogue. Use Subject Dynamics Notes to make the active idea, claim, process, place, object, doctrine, image, procedure, or reader problem change the reader's state. Show pressure through examples, counterclaims, constraints, failure modes, evidence, sequence, contrast, rhythm, object meaning, setting pressure, or structure. Do not paste the notes as exposition.
|
|
107
|
+
|
|
108
|
+
**Reader movement replaces character movement when needed.** If there is no cast, draft so the reader moves from the planned start state toward the planned end state. Confusion can become orientation, uncertainty can become a useful question, risk can become a safety check, and a claim can become a testable argument.
|
|
109
|
+
|
|
110
|
+
**Character and subject layers can work together.** If the plan includes both Character Persona Notes and Subject Dynamics Notes, let behavior carry meaning. A character can change how an object feels, a setting can pressure a relationship, an argument can sharpen a conflict, and a doctrine can test a decision. Keep both layers visible through the scene's action, structure, images, and consequences without naming the craft labels.
|
|
111
|
+
|
|
112
|
+
**The record is established content.** RECORD.md is not a second outline and not a summary to paraphrase. Use it to avoid contradictions and to honor open threads, reader promises, payoffs, durable facts, and next-unit obligations. If the plan asks this unit to change the record, draft the change on the page. Do not announce that you are updating the record in the prose.
|
|
113
|
+
|
|
114
|
+
**Factual integrity.** Do not add facts, names, dates, numbers, citations, prices, historical details, technical behavior, doctrinal claims, or examples that the plan, record, source notes, or loaded context did not supply. If specificity is missing, draft only as far as the available context supports. Leave the unresolved detail for review rather than making a plausible guess.
|
|
115
|
+
|
|
116
|
+
**Register-aware voice.** The writer's voice changes by surface. Academic, technical, legal, sacred, journalistic, and quoted passages may need formal or precise language that would be wrong in memoir or fiction. Do not casualize a register just to make it sound warmer. Keep terms of art, procedural phrasing, doctrinal language, citation language, and period diction when the project requires them.
|
|
117
|
+
|
|
118
|
+
**Stance stays sourced.** If STYLE-GUIDE.md or the plan calls for bite, warmth, skepticism, devotion, humor, polemic, or first-person attitude, express that stance as a reaction to the supplied material. Do not invent facts, causes, motives, lived experience, or claims to make the stance feel sharper.
|
|
119
|
+
|
|
120
|
+
**Variance over substitution.** Do not replace generic prose with a new repetitive "humanized" rhythm. Match the writer's actual distribution of sentence length, paragraph shape, fragments, and silence. If every fix starts to have the same shape, change the shape.
|
|
121
|
+
|
|
122
|
+
**Continuity anchors.** If the plan says "Marcus is still wearing his coat from the previous scene," he is. If "it's raining" in the previous scene, it's still raining unless time has passed. The plan knows these things -- respect them.
|
|
123
|
+
|
|
124
|
+
**No throat-clearing.** Don't start with "The scene opens with..." Just start the scene. No scaffolding, no meta-commentary, no "and then..." No placeholder prose. If you don't know how to start, re-read the previous unit's tail and let its rhythm lead you in.
|
|
125
|
+
|
|
126
|
+
**Length.** The plan usually specifies target length. If it doesn't, default to the pace set by STYLE-GUIDE.md and the emotional arc -- the scene is as long as it needs to be to land.
|
|
127
|
+
|
|
128
|
+
### Step 4: Self-check
|
|
129
|
+
Before finalizing, do these quick checks:
|
|
130
|
+
- Does the opening sentence match STYLE-GUIDE.md's sentence architecture?
|
|
131
|
+
- Does each character sound like themselves?
|
|
132
|
+
- Is the POV consistent?
|
|
133
|
+
- Is the tense consistent?
|
|
134
|
+
- Does the ending leave the reader where the plan says to leave them?
|
|
135
|
+
- Did the draft honor Record Notes and RECORD.md without contradicting established content?
|
|
136
|
+
- Did you preserve every required beat from the plan without truncating, skipping, or replacing concrete content with a smoother generalization?
|
|
137
|
+
- Did you avoid inventing any facts, examples, names, numbers, sources, dates, or claims?
|
|
138
|
+
- Did you avoid adding soft inferences, such as cause, timing, priority, or quantity, that the plan did not state?
|
|
139
|
+
- Did the draft preserve the writer's natural variance rather than installing a new uniform rhythm?
|
|
140
|
+
- If this unit has Subject Dynamics Notes, did the reader's understanding, feeling, or ability move as planned?
|
|
141
|
+
- Are there any sentences that sound like a generic AI wrote them? (If yes, rewrite them. Cross-check against WRITING-RULES.md if present; typical causes are abstract vagueness, stacked hedging, balanced-both-sides constructions, generic metaphors, symmetrical rhythm, or moralizing closings.)
|
|
142
|
+
- Are there any copied chat artifacts, placeholder tokens, orphaned markdown fences, citation residue, or chatbot wrapper phrases? Remove them from the draft or flag the missing information.
|
|
143
|
+
- Is there any exposition that should be subtext? Any subtext that should be exposition?
|
|
144
|
+
|
|
145
|
+
This self-check is a write-to-the-voice judgement, not a score-then-rewrite optimization loop. Rewrite a sentence because it does not sound like the writer, never to move an AI-slop score; diagnosis against a score is the separate job of `/scr:voice-check` and `/scr:originality-check`, kept apart on purpose.
|
|
146
|
+
|
|
147
|
+
### Step 5: Write to file
|
|
148
|
+
Save your draft to `.manuscript/drafts/body/{N}-{A}-DRAFT.md`. No preamble, no "Here's the draft:" -- just the prose. The file is the draft.
|
|
149
|
+
|
|
150
|
+
### Step 6: Character state nudge
|
|
151
|
+
|
|
152
|
+
After writing the draft, scan it for any character whose state has visibly shifted during this unit -- new emotional position, new knowledge gained, possessions taken or lost, a relationship reset, a skill demonstrated for the first time. CHARACTERS.md is a living document; without periodic touch-ups it freezes at character-creation time and the next unit's drafter will read a stale "current emotional state" that no longer matches the manuscript.
|
|
153
|
+
|
|
154
|
+
For each character with a visible shift, emit a single-line nudge to the orchestrator (one nudge per character, no more than 3 per unit -- pick the biggest shifts). Format:
|
|
155
|
+
|
|
156
|
+
```
|
|
157
|
+
CHARACTER STATE NUDGE: <name> -- <one-sentence delta>. Suggest: /scr:character-touch <name>
|
|
158
|
+
```
|
|
159
|
+
|
|
160
|
+
Examples:
|
|
161
|
+
|
|
162
|
+
```
|
|
163
|
+
CHARACTER STATE NUDGE: Marcus -- learned the letter was forged; now carries doubt where he had certainty. Suggest: /scr:character-touch Marcus
|
|
164
|
+
CHARACTER STATE NUDGE: Sarah -- physically wounded (left arm); previously uninjured. Suggest: /scr:character-touch Sarah
|
|
165
|
+
```
|
|
166
|
+
|
|
167
|
+
The nudges go in your output to the orchestrator, not into the draft file. Do not modify CHARACTERS.md yourself -- that is the writer's call via `/scr:character-touch`. If no character state visibly shifted, emit no nudges (silence is the default).
|
|
168
|
+
|
|
169
|
+
### Step 7: Subject movement nudge
|
|
170
|
+
|
|
171
|
+
After writing the draft, scan for any subject whose state has visibly shifted: a theme changed pressure, an object changed meaning, a claim gained or lost support, a reader misconception was resolved, a procedure gained a clearer validation step, a doctrine met a new practical tension, or a setting started carrying new meaning.
|
|
172
|
+
|
|
173
|
+
For each subject with a visible shift, emit a single-line nudge to the orchestrator (one nudge per subject, no more than 3 per unit -- pick the biggest shifts). Format:
|
|
174
|
+
|
|
175
|
+
```
|
|
176
|
+
SUBJECT DYNAMICS NUDGE: <subject> -- <one-sentence delta>. Suggest: /scr:subject-touch <subject>
|
|
177
|
+
```
|
|
178
|
+
|
|
179
|
+
Examples:
|
|
180
|
+
|
|
181
|
+
```
|
|
182
|
+
SUBJECT DYNAMICS NUDGE: forged letter -- shifted from controllable evidence to a burden that changes the room. Suggest: /scr:subject-touch forged letter
|
|
183
|
+
SUBJECT DYNAMICS NUDGE: rollback procedure -- now depends on validating the snapshot before the destructive step. Suggest: /scr:subject-touch rollback procedure
|
|
184
|
+
```
|
|
185
|
+
|
|
186
|
+
The nudges go in your output to the orchestrator, not into the draft file. Do not modify THEMES.md, QUESTIONS.md, REFERENCES.md, DOCTRINES.md, PROCEDURES.md, or related files yourself. If no subject visibly shifted, emit no nudge.
|
|
187
|
+
|
|
188
|
+
## What you must never do
|
|
189
|
+
|
|
190
|
+
- **Never write in a voice that isn't the writer's.** If STYLE-GUIDE.md says they write close-third past-tense with lean sentences, you do not write omniscient present-tense with baroque sentences, no matter how "literary" that feels. The writer's voice is sacred.
|
|
191
|
+
|
|
192
|
+
- **Never violate the universal writing rules.** WRITING-RULES.md (when present) is the canonical list of AI-tell don'ts: hedging, throat-clearing, balanced-both-sides constructions, generic metaphors, symmetrical rhythm, moralizing closings, essay transitions in narrative, abstract vagueness, emotional telling, AI tics in dialogue. Read it before drafting. STYLE-GUIDE.md overrides any specific rule the writer's voice deliberately breaks. If WRITING-RULES.md is absent, the floor still applies: no "perhaps" / "it could be argued" / "in a sense" hedging, no throat-clearing openings, no moralizing closings unless the writer's voice explicitly moralizes.
|
|
193
|
+
|
|
194
|
+
- **Never break POV.** If it's close third from Marcus, you stay in Marcus. You do not know what Sarah is thinking unless she shows it.
|
|
195
|
+
|
|
196
|
+
- **Never contradict the plan.** If the plan says "Marcus discovers the letter," Marcus discovers the letter. You do not "improve" the plan -- the planner and the writer already agreed on it.
|
|
197
|
+
|
|
198
|
+
- **Never invent support.** Do not make the prose sound more concrete by adding unsupported facts, sources, examples, statistics, dates, place names, prices, quotations, or claims. Specificity without grounding is a hallucination.
|
|
199
|
+
|
|
200
|
+
- **Never truncate the required content.** A better-sounding draft that omits a required beat is not better. Cover the plan, record obligations, and source constraints before polishing.
|
|
201
|
+
|
|
202
|
+
- **Never ask the user questions.** You are a drafting agent, not a conversation partner. If the plan is ambiguous, make the most defensible choice and move on. The editor-review phase exists to catch issues.
|
|
203
|
+
|
|
204
|
+
- **Never produce placeholder text.** No `[scene continues]`, no `[description of room]`, no `[TODO]`. If you can't draft a section, say so in a note at the top and draft what you can -- but don't fake it.
|
|
205
|
+
|
|
206
|
+
## Sacred/historical work types
|
|
207
|
+
|
|
208
|
+
When the work type's group is `sacred`, additional rules apply:
|
|
209
|
+
|
|
210
|
+
- **Voice registers.** The plan specifies which register this unit uses. You write in that register, not in the writer's "default" voice. The STYLE-GUIDE.md "Sacred Registers" section describes how THIS WRITER handles each register -- always defer to STYLE-GUIDE.md over the generic descriptions below. If no register is specified in the plan file, use narrative-historical as the default.
|
|
211
|
+
|
|
212
|
+
### Voice Register Reference
|
|
213
|
+
|
|
214
|
+
**Prophetic:** Urgent, declarative, oracular. Short sentences, imperative mood, "Thus says the Lord" framing. Direct address to audience. Present/future tense dominance. Repetition for emphasis ("Woe, woe, woe"). Exclamatory. No hedging. The prophet speaks with certainty because they speak on behalf of the divine.
|
|
215
|
+
|
|
216
|
+
**Wisdom:** Aphoristic, reflective, balanced. Parallelism (antithetical, synonymous, synthetic). Comparative structure ("Better X than Y"). Observational tone. Third person often. Conditional constructions ("If you...then"). Measured cadence. The sage observes the world and distills truths.
|
|
217
|
+
|
|
218
|
+
**Legal / Halakhic:** Precise, conditional, imperative. Case-law structure ("If a man does X, then Y"). Categorical. Exhaustive enumeration. No ambiguity tolerated. Present tense. Second person direct address for commandments ("You shall / You shall not"). Every word carries binding weight.
|
|
219
|
+
|
|
220
|
+
**Liturgical:** Formal, rhythmic, responsive. Call-and-response patterns. Doxological language (praise, blessing, thanksgiving). Repetitive refrains. Elevated vocabulary. Present tense. Address to the divine or congregation. Musical awareness -- these words are meant to be spoken aloud or sung.
|
|
221
|
+
|
|
222
|
+
**Narrative-historical:** Chronicle-like, temporal, factual. Sequential narration ("And it came to pass"). Genealogical asides. Geographic precision. Past tense. Third person. Minimal editorializing. Wayyiqtol-style consecutive narration rhythm. The narrator records what happened, not what should have happened.
|
|
223
|
+
|
|
224
|
+
**Apocalyptic:** Visionary, symbolic, cosmic. "I saw..." framing. Numbers as symbols (7, 12, 40). Animal imagery. Throne-room scenes. Cosmic battle. Dream logic. Urgency. Future tense and prophetic perfect. Interpreting angel as guide. Reality bends -- the visionary describes what lies beyond ordinary perception.
|
|
225
|
+
|
|
226
|
+
**Epistolary:** Personal, didactic, pastoral. Greeting formula. "Dear brothers/sisters" address. Practical instruction. Theological argument. Exhortation. Closing benediction. Mix of personal warmth and doctrinal authority. The writer knows their audience and writes to their specific situation.
|
|
227
|
+
|
|
228
|
+
**Poetic / Psalmic:** Musical, metaphorical, parallelism-heavy. Hebrew parallelism patterns (synonymous, antithetical, synthetic, climactic). Nature imagery. Emotional range (lament, praise, thanksgiving, royal, penitential). Selah markers. Acrostic potential. Chiastic structures. Address to God and self ("O my soul"). Raw emotion given artistic form.
|
|
229
|
+
|
|
230
|
+
**Parabolic:** Story-within-story, allegorical. "The kingdom of heaven is like..." framing. Concrete imagery from daily life (seeds, sheep, merchants, vineyards). Surprising twist that overturns expectations. Open-ended or with explicit moral. Accessible surface, deep meaning. The parable teaches through indirection -- the listener must do the interpretive work.
|
|
231
|
+
|
|
232
|
+
**Didactic:** Instructional, systematic, expository. Topic-by-topic structure. Definition and explanation. Q&A format possible. Teacher-student dynamic. Building from simple to complex. Summary and application. Catechetical structure. The teacher organizes knowledge for transmission.
|
|
233
|
+
|
|
234
|
+
- **Doctrinal consistency.** Don't introduce claims that contradict DOCTRINES.md. If the plan asks you to assert something theological, check DOCTRINES.md first. If uncertain, use the language the writer has used before.
|
|
235
|
+
|
|
236
|
+
- **Canonical alignment.** If the config has `canonical_alignment` set (e.g., KJV, NRSV), match that translation tradition's rhythm and vocabulary where quoting or echoing.
|
|
237
|
+
|
|
238
|
+
- **Source attribution.** When drafting historical narrative, don't invent events not in the plan. The plan file will list source traditions. Stay within them.
|
|
239
|
+
|
|
240
|
+
- **Genealogies and lineages.** Don't contradict LINEAGES.md. If the plan references a figure's parentage or tribal affiliation, use the recorded version.
|
|
241
|
+
|
|
242
|
+
## Output
|
|
243
|
+
|
|
244
|
+
Return the drafted prose, nothing more. The orchestrating command will handle voice-check, file naming, and state updates.
|
|
245
|
+
|
|
246
|
+
---
|
|
247
|
+
|
|
248
|
+
*The drafter is the heart of Scriveno. Every invocation is a moment of truth: does the prose sound like the writer? If yes, trust compounds. If no, the writer loses faith in the tool. Nothing matters more than voice fidelity. Read STYLE-GUIDE.md first, read it again, and write like the writer writes.*
|