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
|
@@ -0,0 +1,171 @@
|
|
|
1
|
+
---
|
|
2
|
+
description: Build a Smashwords/D2D-compliant DOCX from the manuscript.
|
|
3
|
+
argument-hint: "[--skip-validate]"
|
|
4
|
+
---
|
|
5
|
+
|
|
6
|
+
# /scr:build-smashwords -- Smashwords/D2D DOCX Build Pipeline
|
|
7
|
+
|
|
8
|
+
Assemble the manuscript and produce a Smashwords Style Guide-compliant DOCX for submission to Draft2Digital (D2D) or direct Smashwords upload. Uses `scriveno-smashwords.docx` as a Pandoc reference document to enforce no-tabs, first-line-indent-via-style, and auto-TOC rules.
|
|
9
|
+
|
|
10
|
+
## Usage
|
|
11
|
+
|
|
12
|
+
```
|
|
13
|
+
/scr:build-smashwords [--skip-validate]
|
|
14
|
+
```
|
|
15
|
+
|
|
16
|
+
**Flags:**
|
|
17
|
+
`--skip-validate` Skip the scaffold marker pre-flight check (not recommended).
|
|
18
|
+
|
|
19
|
+
## Instruction
|
|
20
|
+
|
|
21
|
+
You are a **manuscript build specialist** for Smashwords/D2D DOCX output.
|
|
22
|
+
|
|
23
|
+
---
|
|
24
|
+
|
|
25
|
+
### STEP 1: LOAD CONTEXT
|
|
26
|
+
|
|
27
|
+
Load the following project files:
|
|
28
|
+
|
|
29
|
+
- `.manuscript/config.json` -- to get `work_type`, title, author, language, and project settings
|
|
30
|
+
- Scriveno's installed/shared `CONSTRAINTS.json` -- to check `exports` section for format availability
|
|
31
|
+
|
|
32
|
+
**Check format availability:**
|
|
33
|
+
|
|
34
|
+
Look up `build-smashwords` in `CONSTRAINTS.json` under the `commands` section. Check if the work type group is in the `available` list: `["prose", "visual"]`.
|
|
35
|
+
|
|
36
|
+
If not available:
|
|
37
|
+
> This command is not available for [work_type] projects. The Smashwords DOCX build is available for: prose and visual work types. Poets should use `/scr:build-poetry-submission` instead.
|
|
38
|
+
|
|
39
|
+
Then **stop**.
|
|
40
|
+
|
|
41
|
+
---
|
|
42
|
+
|
|
43
|
+
### STEP 1.5: VALIDATE MANUSCRIPT
|
|
44
|
+
|
|
45
|
+
**Check for scaffold markers in `.manuscript/drafts/`.**
|
|
46
|
+
|
|
47
|
+
Scan all `.md` files in `.manuscript/drafts/` for:
|
|
48
|
+
- Lines containing `[Fill in`
|
|
49
|
+
- Lines containing `[Delete if not applicable:]`
|
|
50
|
+
- Lines containing `Alternate 1:` or `Alternate 2:`
|
|
51
|
+
- Files with more than one `# ` (top-level H1) heading
|
|
52
|
+
|
|
53
|
+
**If `--skip-validate` was passed:**
|
|
54
|
+
> **Warning: Validate gate skipped (`--skip-validate`). Your manuscript may contain unresolved scaffold markers.**
|
|
55
|
+
|
|
56
|
+
Proceed to STEP 2.
|
|
57
|
+
|
|
58
|
+
**If markers are found:**
|
|
59
|
+
> **Build blocked: unresolved scaffold markers found.**
|
|
60
|
+
>
|
|
61
|
+
> [list each as: `path/to/file.md:LINE_NUMBER: marker text`]
|
|
62
|
+
>
|
|
63
|
+
> **Fix:** Run `/scr:cleanup --apply` to remove scaffold markers, then re-run this build command.
|
|
64
|
+
|
|
65
|
+
Then **stop**.
|
|
66
|
+
|
|
67
|
+
---
|
|
68
|
+
|
|
69
|
+
### STEP 1.6: FRONT-MATTER GATE
|
|
70
|
+
|
|
71
|
+
Follow /scr:build-ebook STEP 1.6a-1.6b (scaffold exclusion and GENERATE auto-refresh).
|
|
72
|
+
Use the resulting scaffold exclusion list in STEP 3 assembly.
|
|
73
|
+
|
|
74
|
+
---
|
|
75
|
+
|
|
76
|
+
### STEP 2: CHECK PREREQUISITES
|
|
77
|
+
|
|
78
|
+
Check for Pandoc:
|
|
79
|
+
```bash
|
|
80
|
+
command -v pandoc >/dev/null 2>&1
|
|
81
|
+
```
|
|
82
|
+
|
|
83
|
+
If not found:
|
|
84
|
+
> **Pandoc is required for Smashwords DOCX build but is not installed.**
|
|
85
|
+
> - macOS: `brew install pandoc`
|
|
86
|
+
> - Linux: `sudo apt install pandoc`
|
|
87
|
+
> - Windows: `choco install pandoc`
|
|
88
|
+
|
|
89
|
+
Then **stop**.
|
|
90
|
+
|
|
91
|
+
Check that the reference document exists:
|
|
92
|
+
|
|
93
|
+
If `data/export-templates/scriveno-smashwords.docx` does not exist:
|
|
94
|
+
> **Smashwords reference document missing at `data/export-templates/scriveno-smashwords.docx`.**
|
|
95
|
+
> Re-install Scriveno or restore the file from the repository.
|
|
96
|
+
|
|
97
|
+
Then **stop**.
|
|
98
|
+
|
|
99
|
+
---
|
|
100
|
+
|
|
101
|
+
### STEP 3: ASSEMBLE MANUSCRIPT
|
|
102
|
+
|
|
103
|
+
Follow the same assembly steps as `/scr:build-ebook` STEP 3a-3e:
|
|
104
|
+
- Read OUTLINE.md for document order
|
|
105
|
+
- Scan front matter (scaffold-excluded)
|
|
106
|
+
- Read body drafts in OUTLINE.md order
|
|
107
|
+
- Scan back matter
|
|
108
|
+
- Concatenate to `.manuscript/output/assembled-manuscript.md`
|
|
109
|
+
- Generate `.manuscript/output/metadata.yaml`
|
|
110
|
+
|
|
111
|
+
---
|
|
112
|
+
|
|
113
|
+
### STEP 4: BUILD SMASHWORDS DOCX
|
|
114
|
+
|
|
115
|
+
```bash
|
|
116
|
+
pandoc .manuscript/output/assembled-manuscript.md \
|
|
117
|
+
-o .manuscript/output/smashwords.docx \
|
|
118
|
+
--reference-doc=data/export-templates/scriveno-smashwords.docx \
|
|
119
|
+
--metadata-file=.manuscript/output/metadata.yaml \
|
|
120
|
+
--toc \
|
|
121
|
+
--toc-depth=2
|
|
122
|
+
```
|
|
123
|
+
|
|
124
|
+
**Smashwords compliance notes applied automatically by the reference doc:**
|
|
125
|
+
- First-line indent comes from the Normal paragraph style (not tabs or spaces)
|
|
126
|
+
- No custom headers/footers -- removed by reference doc style
|
|
127
|
+
- Auto-generated TOC field (Word-compatible) via `--toc`
|
|
128
|
+
|
|
129
|
+
**Post-build reminder:**
|
|
130
|
+
> **Smashwords submission checklist:**
|
|
131
|
+
> 1. Open `smashwords.docx` and verify no tab characters (Find/Replace `^t` -- result should be zero matches)
|
|
132
|
+
> 2. Confirm all body text uses the Normal paragraph style with first-line indent
|
|
133
|
+
> 3. Confirm the auto-TOC updates when you open the document (Word: right-click TOC -> Update Field)
|
|
134
|
+
> 4. Submit via https://www.smashwords.com/upload or Draft2Digital upload portal
|
|
135
|
+
|
|
136
|
+
---
|
|
137
|
+
|
|
138
|
+
### STEP 5: REPORT
|
|
139
|
+
|
|
140
|
+
Show:
|
|
141
|
+
```
|
|
142
|
+
OK Smashwords DOCX built -> .manuscript/output/smashwords.docx ({file_size})
|
|
143
|
+
```
|
|
144
|
+
|
|
145
|
+
Get file size with:
|
|
146
|
+
```bash
|
|
147
|
+
ls -lh .manuscript/output/smashwords.docx | awk '{print $5}'
|
|
148
|
+
```
|
|
149
|
+
|
|
150
|
+
## Response Contract
|
|
151
|
+
|
|
152
|
+
Every writer-facing response must end with one to four next-command suggestions. Each suggestion must include a short explanation of what that path will do.
|
|
153
|
+
|
|
154
|
+
Use this format:
|
|
155
|
+
|
|
156
|
+
```markdown
|
|
157
|
+
Next commands:
|
|
158
|
+
- `/scr:...`: One short sentence explaining what this path will do.
|
|
159
|
+
- `/scr:...`: One short sentence explaining what this alternate path will do.
|
|
160
|
+
```
|
|
161
|
+
|
|
162
|
+
If exactly one path is clearly best, provide one suggestion. If two, three, or four useful paths exist, show them as alternatives. Do not force a linear path when the writer has a real choice.
|
|
163
|
+
|
|
164
|
+
If the writer seems unsure or no specific next command is obvious, include this default option:
|
|
165
|
+
|
|
166
|
+
```markdown
|
|
167
|
+
Next commands:
|
|
168
|
+
- `/scr:next`: Inspect the project state and choose the right next step.
|
|
169
|
+
```
|
|
170
|
+
|
|
171
|
+
If the command stops because a prerequisite is missing, suggest the command that fixes the prerequisite. Keep every explanation practical and writer-facing.
|
|
@@ -0,0 +1,158 @@
|
|
|
1
|
+
---
|
|
2
|
+
description: Generate or refine the world document through progressive questioning.
|
|
3
|
+
argument-hint: "[--area <area>]"
|
|
4
|
+
---
|
|
5
|
+
|
|
6
|
+
# /scr:build-world -- Progressive World Building
|
|
7
|
+
|
|
8
|
+
Generate or refine the world document through structured progressive questioning.
|
|
9
|
+
|
|
10
|
+
## Usage
|
|
11
|
+
```
|
|
12
|
+
/scr:build-world [--area <area>]
|
|
13
|
+
```
|
|
14
|
+
|
|
15
|
+
**Areas:** `geography`, `culture`, `technology`, `rules`, `history`
|
|
16
|
+
|
|
17
|
+
For technical work types, reinterpret `--area` as:
|
|
18
|
+
- `geography` -> system boundaries and deployment shape
|
|
19
|
+
- `culture` -> audience, ownership, and operating norms
|
|
20
|
+
- `technology` -> stack, tooling, and interface surface
|
|
21
|
+
- `rules` -> supported constraints, permissions, and safety boundaries
|
|
22
|
+
- `history` -> change history, prior decisions, and known incidents
|
|
23
|
+
|
|
24
|
+
## Instruction
|
|
25
|
+
|
|
26
|
+
You are building the world document. Load:
|
|
27
|
+
- `.manuscript/config.json` (to get `work_type`)
|
|
28
|
+
- Scriveno's installed/shared `CONSTRAINTS.json` (global `~/.scriveno/data/CONSTRAINTS.json` or project `.scriveno/data/CONSTRAINTS.json`) (to check `file_adaptations` and `commands.build-world.adapted`)
|
|
29
|
+
- `WORK.md` (genre, tone, setting context)
|
|
30
|
+
- Existing world file from `.manuscript/` if it exists (WORLD.md / COSMOLOGY.md / CONTEXT.md per `file_adaptations`)
|
|
31
|
+
|
|
32
|
+
Determine adapted terminology from CONSTRAINTS.json:
|
|
33
|
+
- Default: "build world", generates `WORLD.md`
|
|
34
|
+
- Sacred: "build cosmology" (renamed via CONSTRAINTS.json), generates `COSMOLOGY.md`
|
|
35
|
+
- Academic: generates `CONTEXT.md`
|
|
36
|
+
- Technical: "map system", generates `SYSTEM.md`
|
|
37
|
+
|
|
38
|
+
---
|
|
39
|
+
|
|
40
|
+
### INITIAL MODE (no existing world file)
|
|
41
|
+
|
|
42
|
+
<world_build_initial>
|
|
43
|
+
The writer has no world document yet. Ask 3-5 seed questions (D-05) to establish the foundation.
|
|
44
|
+
|
|
45
|
+
For technical work types, ask instead:
|
|
46
|
+
1. "Who is this document for, and what are they trying to accomplish?"
|
|
47
|
+
2. "What system, service, or workflow does it describe?"
|
|
48
|
+
3. "What prerequisites or access does the reader need before they can follow it?"
|
|
49
|
+
4. "Which environment, platform, or version boundaries matter?"
|
|
50
|
+
5. "What can go wrong if the reader misunderstands this guidance?"
|
|
51
|
+
|
|
52
|
+
Otherwise use the default questions:
|
|
53
|
+
1. **Scale:** "What's the scale of your world? A single city, a region, a continent, a planet, or something larger?"
|
|
54
|
+
|
|
55
|
+
2. **Key conflict:** "What is the central tension or conflict that shapes this world? (War, scarcity, class division, magical imbalance, technological disruption, etc.)"
|
|
56
|
+
|
|
57
|
+
3. **Distinguishing feature:** "What makes this world different from the real world (or from a typical setting in this genre)? What's the one thing a reader would remember?"
|
|
58
|
+
|
|
59
|
+
4. **Time period feel:** "What era or time period does this world feel like? (Medieval, industrial, modern, far-future, timeless, or a specific blend?)"
|
|
60
|
+
|
|
61
|
+
5. **Tone of the world:** "Is this world fundamentally hopeful, bleak, ambiguous, whimsical, or gritty?"
|
|
62
|
+
|
|
63
|
+
Wait for answers. Do not proceed until the writer responds.
|
|
64
|
+
|
|
65
|
+
After receiving answers, generate an initial world/system document using the appropriate template (`templates/WORLD.md` or `templates/technical/SYSTEM.md`). Populate each section with what can be inferred from the seed answers:
|
|
66
|
+
- Geography: scale, key locations implied by the setting
|
|
67
|
+
- Culture: social dynamics implied by the conflict
|
|
68
|
+
- Technology/Magic: tech level from time period, any magic from distinguishing feature
|
|
69
|
+
- Rules/Laws: governance implied by conflict and culture
|
|
70
|
+
- History: backstory that would lead to the current state
|
|
71
|
+
|
|
72
|
+
For technical work types, translate those buckets into:
|
|
73
|
+
- system scope and boundaries
|
|
74
|
+
- operating context and ownership
|
|
75
|
+
- tooling, interfaces, and environment assumptions
|
|
76
|
+
- permissions, constraints, and failure conditions
|
|
77
|
+
- change history and prior decisions
|
|
78
|
+
|
|
79
|
+
Mark sections that need more detail with `<!-- needs refinement -->` comments.
|
|
80
|
+
|
|
81
|
+
Save the file to `.manuscript/WORLD.md` (or adapted name).
|
|
82
|
+
|
|
83
|
+
Commit: `world: create initial world document`
|
|
84
|
+
|
|
85
|
+
After saving, suggest: "Your world document is started. Refine any section with `/scr:build-world --area <area>`."
|
|
86
|
+
</world_build_initial>
|
|
87
|
+
|
|
88
|
+
---
|
|
89
|
+
|
|
90
|
+
### REFINE MODE (--area flag)
|
|
91
|
+
|
|
92
|
+
<world_build_refine>
|
|
93
|
+
The writer wants to deepen one section. Load the existing world file.
|
|
94
|
+
|
|
95
|
+
Based on the `--area` value, drill deeper into that section with targeted questions:
|
|
96
|
+
|
|
97
|
+
**geography:**
|
|
98
|
+
- "Describe the terrain around {key location}. Mountains, rivers, forests, deserts?"
|
|
99
|
+
- "How do people travel between locations? What routes are dangerous?"
|
|
100
|
+
- "What natural resources exist? What's scarce?"
|
|
101
|
+
|
|
102
|
+
**culture:**
|
|
103
|
+
- "What social classes exist? How rigid are the boundaries?"
|
|
104
|
+
- "What do people celebrate? What rituals mark major life events?"
|
|
105
|
+
- "What languages or dialects exist? Any that are forbidden or dying?"
|
|
106
|
+
|
|
107
|
+
**technology:**
|
|
108
|
+
- "What's the most advanced technology/magic in common use?"
|
|
109
|
+
- "What's rare or forbidden? Who controls access?"
|
|
110
|
+
- "What are the costs or consequences of using it?"
|
|
111
|
+
|
|
112
|
+
**rules:**
|
|
113
|
+
- "Who enforces the laws? How corrupt or fair is the system?"
|
|
114
|
+
- "What crimes are punished harshly? What's tolerated that shouldn't be?"
|
|
115
|
+
- "Are there different laws for different classes or regions?"
|
|
116
|
+
|
|
117
|
+
**history:**
|
|
118
|
+
- "What event in the last 100 years most shaped the current world?"
|
|
119
|
+
- "What ancient conflict is still unresolved?"
|
|
120
|
+
- "What does the general population believe about their history vs. what's actually true?"
|
|
121
|
+
|
|
122
|
+
After the writer answers, update the relevant section in the world file with richer detail. Preserve existing content -- add to it, don't replace.
|
|
123
|
+
|
|
124
|
+
Commit: `world: refine {area} section`
|
|
125
|
+
</world_build_refine>
|
|
126
|
+
|
|
127
|
+
---
|
|
128
|
+
|
|
129
|
+
### Edge Cases
|
|
130
|
+
|
|
131
|
+
- **Invalid --area value:** List valid areas: geography, culture, technology, rules, history
|
|
132
|
+
- **Sacred work type:** Use "build cosmology" terminology; questions adapt to cosmological themes (divine geography, spiritual hierarchy, sacred history)
|
|
133
|
+
- **Academic work type:** Use "build context" terminology; questions focus on intellectual landscape, institutional setting, field dynamics
|
|
134
|
+
- **Technical work type:** Use "map system" terminology; questions focus on system boundaries, operating context, dependencies, and supported environments
|
|
135
|
+
- **World file already comprehensive:** Acknowledge it looks thorough and ask if there's a specific aspect to explore further
|
|
136
|
+
|
|
137
|
+
## Response Contract
|
|
138
|
+
|
|
139
|
+
Every writer-facing response must end with one to four next-command suggestions. Each suggestion must include a short explanation of what that path will do.
|
|
140
|
+
|
|
141
|
+
Use this format:
|
|
142
|
+
|
|
143
|
+
```markdown
|
|
144
|
+
Next commands:
|
|
145
|
+
- `/scr:...`: One short sentence explaining what this path will do.
|
|
146
|
+
- `/scr:...`: One short sentence explaining what this alternate path will do.
|
|
147
|
+
```
|
|
148
|
+
|
|
149
|
+
If exactly one path is clearly best, provide one suggestion. If two, three, or four useful paths exist, show them as alternatives. Do not force a linear path when the writer has a real choice.
|
|
150
|
+
|
|
151
|
+
If the writer seems unsure or no specific next command is obvious, include this default option:
|
|
152
|
+
|
|
153
|
+
```markdown
|
|
154
|
+
Next commands:
|
|
155
|
+
- `/scr:next`: Inspect the project state and choose the right next step.
|
|
156
|
+
```
|
|
157
|
+
|
|
158
|
+
If the command stops because a prerequisite is missing, suggest the command that fixes the prerequisite. Keep every explanation practical and writer-facing.
|
|
@@ -0,0 +1,104 @@
|
|
|
1
|
+
---
|
|
2
|
+
description: Display the roster of all characters with roles and brief descriptions.
|
|
3
|
+
---
|
|
4
|
+
|
|
5
|
+
# /scr:cast-list -- Character Roster
|
|
6
|
+
|
|
7
|
+
Display the complete roster of all characters in the work.
|
|
8
|
+
|
|
9
|
+
## Usage
|
|
10
|
+
```
|
|
11
|
+
/scr:cast-list
|
|
12
|
+
```
|
|
13
|
+
|
|
14
|
+
## Instruction
|
|
15
|
+
|
|
16
|
+
You are presenting the character roster. Load:
|
|
17
|
+
- `.manuscript/config.json` (to get `work_type`)
|
|
18
|
+
- Scriveno's installed/shared `CONSTRAINTS.json` (global `~/.scriveno/data/CONSTRAINTS.json` or project `.scriveno/data/CONSTRAINTS.json`) (to check `file_adaptations` and `commands.cast-list.adapted`)
|
|
19
|
+
|
|
20
|
+
Determine the correct characters file from `file_adaptations`:
|
|
21
|
+
- Default: `CHARACTERS.md`
|
|
22
|
+
- Academic work types: `CONCEPTS.md`
|
|
23
|
+
- Sacred work types: `FIGURES.md`
|
|
24
|
+
|
|
25
|
+
Load the adapted characters file from `.manuscript/`.
|
|
26
|
+
|
|
27
|
+
Determine adapted terminology:
|
|
28
|
+
- Default: "cast list", "characters"
|
|
29
|
+
- Sacred: "figures list", "figures" (renamed via CONSTRAINTS.json)
|
|
30
|
+
- Academic: "concepts list", "concepts"
|
|
31
|
+
|
|
32
|
+
---
|
|
33
|
+
|
|
34
|
+
### DISPLAY ROSTER
|
|
35
|
+
|
|
36
|
+
<cast_list_display>
|
|
37
|
+
Parse all character entries from the characters file.
|
|
38
|
+
|
|
39
|
+
Present a formatted table grouped by role category:
|
|
40
|
+
|
|
41
|
+
**Protagonists**
|
|
42
|
+
| Name | Arc Type | Status | Summary |
|
|
43
|
+
|------|----------|--------|---------|
|
|
44
|
+
| {name} | {Change/Growth/Fall/Steadfast/Flat} | {active/deceased/mentioned} | {1-line summary} |
|
|
45
|
+
|
|
46
|
+
**Antagonists**
|
|
47
|
+
| Name | Arc Type | Status | Summary |
|
|
48
|
+
|------|----------|--------|---------|
|
|
49
|
+
|
|
50
|
+
**Supporting Characters**
|
|
51
|
+
| Name | Arc Type | Status | Summary |
|
|
52
|
+
|------|----------|--------|---------|
|
|
53
|
+
|
|
54
|
+
**Mentioned / Off-stage**
|
|
55
|
+
| Name | Arc Type | Status | Summary |
|
|
56
|
+
|------|----------|--------|---------|
|
|
57
|
+
|
|
58
|
+
Determine role category from each character's "Role" field:
|
|
59
|
+
- Protagonist, main character, hero -> Protagonists
|
|
60
|
+
- Antagonist, villain, opposition -> Antagonists
|
|
61
|
+
- Supporting, mentor, love interest, foil, comic relief, sidekick -> Supporting Characters
|
|
62
|
+
- Mentioned, referenced, deceased (with no active role), off-stage -> Mentioned / Off-stage
|
|
63
|
+
- If role is ambiguous, place in Supporting Characters
|
|
64
|
+
|
|
65
|
+
After the table, show summary stats:
|
|
66
|
+
- Total characters: {N}
|
|
67
|
+
- By status: {active} active, {deceased} deceased, {mentioned} mentioned
|
|
68
|
+
- Characters missing voice anchors: {list of names without voice data}
|
|
69
|
+
|
|
70
|
+
If no characters exist:
|
|
71
|
+
- "No characters yet. Run `/scr:new-character <name>` to create your first character."
|
|
72
|
+
</cast_list_display>
|
|
73
|
+
|
|
74
|
+
---
|
|
75
|
+
|
|
76
|
+
### Edge Cases
|
|
77
|
+
|
|
78
|
+
- **Empty characters file:** Direct to new-character command
|
|
79
|
+
- **Characters with incomplete profiles:** Include in roster but mark with indicator (e.g., "[incomplete]")
|
|
80
|
+
- **Sacred work type:** Use "figures" terminology, group by role adapted to sacred context (prophet, disciple, angel, etc.)
|
|
81
|
+
- **Academic work type:** Use "concepts" terminology, group by function (thesis, antithesis, supporting argument, counterpoint)
|
|
82
|
+
|
|
83
|
+
## Response Contract
|
|
84
|
+
|
|
85
|
+
Every writer-facing response must end with one to four next-command suggestions. Each suggestion must include a short explanation of what that path will do.
|
|
86
|
+
|
|
87
|
+
Use this format:
|
|
88
|
+
|
|
89
|
+
```markdown
|
|
90
|
+
Next commands:
|
|
91
|
+
- `/scr:...`: One short sentence explaining what this path will do.
|
|
92
|
+
- `/scr:...`: One short sentence explaining what this alternate path will do.
|
|
93
|
+
```
|
|
94
|
+
|
|
95
|
+
If exactly one path is clearly best, provide one suggestion. If two, three, or four useful paths exist, show them as alternatives. Do not force a linear path when the writer has a real choice.
|
|
96
|
+
|
|
97
|
+
If the writer seems unsure or no specific next command is obvious, include this default option:
|
|
98
|
+
|
|
99
|
+
```markdown
|
|
100
|
+
Next commands:
|
|
101
|
+
- `/scr:next`: Inspect the project state and choose the right next step.
|
|
102
|
+
```
|
|
103
|
+
|
|
104
|
+
If the command stops because a prerequisite is missing, suggest the command that fixes the prerequisite. Keep every explanation practical and writer-facing.
|
|
@@ -0,0 +1,158 @@
|
|
|
1
|
+
---
|
|
2
|
+
description: Generate decorative chapter header/ornament design prompts.
|
|
3
|
+
argument-hint: "[--style <style>] [--chapter <ref>]"
|
|
4
|
+
---
|
|
5
|
+
|
|
6
|
+
# /scr:chapter-header -- Chapter Header & Ornament Design
|
|
7
|
+
|
|
8
|
+
Generate a structured prompt for decorative chapter openers, ornamental dividers, and header illustrations.
|
|
9
|
+
|
|
10
|
+
## Usage
|
|
11
|
+
```
|
|
12
|
+
/scr:chapter-header [--style <style>] [--chapter <ref>]
|
|
13
|
+
```
|
|
14
|
+
|
|
15
|
+
**Style options:** `floral`, `geometric`, `art-deco`, `gothic`, `minimalist`, `ornate`, `hand-drawn`, `woodcut`, `custom`
|
|
16
|
+
|
|
17
|
+
## Instruction
|
|
18
|
+
|
|
19
|
+
You are generating a decorative chapter header/ornament design prompt. Load:
|
|
20
|
+
- `.manuscript/config.json` (to get `work_type`, `genre`)
|
|
21
|
+
- Scriveno's installed/shared `CONSTRAINTS.json` (global `~/.scriveno/data/CONSTRAINTS.json` or project `.scriveno/data/CONSTRAINTS.json`) (to check `commands.chapter-header` availability)
|
|
22
|
+
- `ART-DIRECTION.md` from `.manuscript/` if it exists (for style consistency)
|
|
23
|
+
- `OUTLINE.md` from `.manuscript/` if `--chapter` flag is provided (to get chapter title/theme)
|
|
24
|
+
|
|
25
|
+
### Work Type Availability
|
|
26
|
+
|
|
27
|
+
Check CONSTRAINTS.json:
|
|
28
|
+
- **Available:** prose, sacred
|
|
29
|
+
- **Hidden:** script, academic, visual, poetry, interactive, speech_song
|
|
30
|
+
|
|
31
|
+
If the current work type is hidden, respond:
|
|
32
|
+
*"The `chapter-header` command is designed for prose books and sacred texts. Your {work_type} project doesn't typically use chapter header ornaments."*
|
|
33
|
+
|
|
34
|
+
### Determine Default Style
|
|
35
|
+
|
|
36
|
+
If no `--style` flag is provided, derive the default from genre:
|
|
37
|
+
- **Fantasy/Epic:** `ornate` (flowing filigree, mythical creatures, sword-and-shield motifs)
|
|
38
|
+
- **Literary fiction:** `minimalist` (thin rules, subtle typography ornaments, small fleurons)
|
|
39
|
+
- **Romance:** `floral` (roses, vines, hearts, delicate botanical elements)
|
|
40
|
+
- **Thriller/Mystery:** `art-deco` (bold geometric lines, angular patterns)
|
|
41
|
+
- **Horror/Gothic:** `gothic` (gargoyles, thorns, dark botanical, skull motifs)
|
|
42
|
+
- **Historical:** `woodcut` (period-appropriate woodblock print style)
|
|
43
|
+
- **Sacred:** `geometric` (arabesque patterns, mandala elements, sacred geometry, tradition-appropriate motifs)
|
|
44
|
+
- **Children's:** `hand-drawn` (whimsical, playful line art)
|
|
45
|
+
- **Sci-fi:** `minimalist` (clean lines, circuit-like patterns, futuristic geometry)
|
|
46
|
+
- **Default fallback:** `minimalist`
|
|
47
|
+
|
|
48
|
+
### Chapter-Specific Content
|
|
49
|
+
|
|
50
|
+
If `--chapter` flag is provided with a chapter reference (number or title):
|
|
51
|
+
1. Load OUTLINE.md and find the matching chapter
|
|
52
|
+
2. Extract the chapter's title, themes, and key events
|
|
53
|
+
3. Incorporate thematic elements into the ornament design:
|
|
54
|
+
- A battle chapter: crossed swords, shields, war imagery woven into the ornament
|
|
55
|
+
- A romance scene: intertwined flowers, hearts, delicate motifs
|
|
56
|
+
- A death/funeral: wilting flowers, hourglasses, somber symbols
|
|
57
|
+
- A journey/travel: compass roses, winding paths, maps
|
|
58
|
+
- A revelation/discovery: opening doors, light rays, keys, eyes
|
|
59
|
+
- A celebration: goblets, laurels, musical instruments, stars
|
|
60
|
+
|
|
61
|
+
If no `--chapter` flag, generate a generic ornament design suitable for any chapter in this book.
|
|
62
|
+
|
|
63
|
+
### Generate Structured Prompt
|
|
64
|
+
|
|
65
|
+
Output a structured illustration prompt following the D-01 format:
|
|
66
|
+
|
|
67
|
+
```markdown
|
|
68
|
+
# Chapter Header Design: {Book Title or "Generic"}
|
|
69
|
+
|
|
70
|
+
{If chapter-specific: "## For Chapter {ref}: {chapter title}"}
|
|
71
|
+
|
|
72
|
+
## Subject
|
|
73
|
+
{Ornamental design description. Specify motifs, symbols, and decorative elements relevant to the book's genre and theme (or chapter-specific theme if --chapter provided). Example: "An ornate horizontal ornament featuring intertwined oak branches with small acorns, a central medallion containing a compass rose, flanked by symmetrical scrollwork."}
|
|
74
|
+
|
|
75
|
+
## Composition
|
|
76
|
+
- **Format:** Horizontal banner, centered on page
|
|
77
|
+
- **Dimensions:** Full text block width (typically 4.25" for a 6x9 trim)
|
|
78
|
+
- **Height:** 1-2 inches (proportional to page size)
|
|
79
|
+
- **Chapter number/title space:** {Describe where chapter number and title integrate -- centered below the ornament, within a central cartouche, superimposed on the design, etc.}
|
|
80
|
+
- **Symmetry:** {Bilateral symmetry for formal styles, asymmetric for hand-drawn/whimsical}
|
|
81
|
+
|
|
82
|
+
## Style: {selected style name}
|
|
83
|
+
{Detailed style description:}
|
|
84
|
+
- **Line weight:** {Thin and delicate / Bold and heavy / Variable / etc.}
|
|
85
|
+
- **Detail level:** {Intricate with fine details / Clean and simple / Moderately detailed}
|
|
86
|
+
- **Character:** {Formal and elegant / Rustic and handcrafted / Playful and whimsical / Solemn and reverent}
|
|
87
|
+
{Reference specific artistic traditions or periods if relevant}
|
|
88
|
+
|
|
89
|
+
## Color Palette
|
|
90
|
+
{Many chapter headers are monochrome for practical print reasons}
|
|
91
|
+
- **Primary:** {Single color -- black, dark brown, deep blue, etc., or match ART-DIRECTION.md}
|
|
92
|
+
- **Approach:** {Monochrome (recommended for cost-effective printing) / Two-color / Full color}
|
|
93
|
+
- **If full color:** {List 3-4 colors that match the book's palette from ART-DIRECTION.md}
|
|
94
|
+
|
|
95
|
+
## Repeating Elements
|
|
96
|
+
{If generating headers for multiple chapters, define the consistent elements:}
|
|
97
|
+
- **Fixed elements:** {Border style, corner motifs, overall shape -- same every chapter}
|
|
98
|
+
- **Variable elements:** {Central motif changes per chapter theme, specific symbols swap in/out}
|
|
99
|
+
- **Unity:** All headers should feel like a cohesive set from the same book
|
|
100
|
+
|
|
101
|
+
## Technical Specs
|
|
102
|
+
- **Width:** Match page text block width ({trim_width} minus margins)
|
|
103
|
+
- **Height:** 1.0-2.0 inches (250-500 px at 300 DPI)
|
|
104
|
+
- **Resolution:** 300 DPI (print-ready)
|
|
105
|
+
- **Background:** Transparent (PNG) -- will be placed on book page
|
|
106
|
+
- **Format:** PNG with transparency or high-contrast SVG for vector scaling
|
|
107
|
+
- **Color space:** Grayscale or CMYK for print (avoid RGB-only colors)
|
|
108
|
+
```
|
|
109
|
+
|
|
110
|
+
### Save Output
|
|
111
|
+
|
|
112
|
+
Save the generated prompt to:
|
|
113
|
+
- Generic: `.manuscript/illustrations/chapter-headers/chapter-header-prompt.md`
|
|
114
|
+
- Chapter-specific: `.manuscript/illustrations/chapter-headers/chapter-{ref}-header-prompt.md`
|
|
115
|
+
|
|
116
|
+
Where `{ref}` is the chapter number or hyphenated title reference.
|
|
117
|
+
|
|
118
|
+
Create the directory path if it does not exist.
|
|
119
|
+
|
|
120
|
+
Commit: `illustration: generate chapter header design prompt`
|
|
121
|
+
|
|
122
|
+
After saving, suggest:
|
|
123
|
+
- "Chapter header prompt saved. Use this with any AI image tool or share with your designer."
|
|
124
|
+
- "For a cohesive set, generate headers for each chapter with `--chapter` to include thematic elements."
|
|
125
|
+
- "Ensure visual consistency with `/scr:art-direction` before generating illustrations."
|
|
126
|
+
|
|
127
|
+
---
|
|
128
|
+
|
|
129
|
+
### Edge Cases
|
|
130
|
+
|
|
131
|
+
- **No OUTLINE.md when --chapter used:** "No outline found. Run `/scr:plan` to create your outline, or describe the chapter theme and I'll design the header around that."
|
|
132
|
+
- **Chapter ref not found in outline:** "Chapter {ref} not found in outline. Available chapters: {list}. Or describe the chapter theme directly."
|
|
133
|
+
- **Sacred work type:** Adapt ornament suggestions to tradition-appropriate motifs (Islamic: geometric/arabesque, no figurative imagery; Christian: crosses, vine/branch motifs, illuminated manuscript style; Jewish: Star of David, menorah, olive branches; Buddhist: lotus, dharma wheel; generic sacred: sacred geometry, light motifs)
|
|
134
|
+
- **--style custom:** Ask the writer to describe their desired ornament style, then build the prompt around their description
|
|
135
|
+
- **ART-DIRECTION.md exists:** Style and color sections MUST reference it; override genre defaults with art direction established choices
|
|
136
|
+
|
|
137
|
+
## Response Contract
|
|
138
|
+
|
|
139
|
+
Every writer-facing response must end with one to four next-command suggestions. Each suggestion must include a short explanation of what that path will do.
|
|
140
|
+
|
|
141
|
+
Use this format:
|
|
142
|
+
|
|
143
|
+
```markdown
|
|
144
|
+
Next commands:
|
|
145
|
+
- `/scr:...`: One short sentence explaining what this path will do.
|
|
146
|
+
- `/scr:...`: One short sentence explaining what this alternate path will do.
|
|
147
|
+
```
|
|
148
|
+
|
|
149
|
+
If exactly one path is clearly best, provide one suggestion. If two, three, or four useful paths exist, show them as alternatives. Do not force a linear path when the writer has a real choice.
|
|
150
|
+
|
|
151
|
+
If the writer seems unsure or no specific next command is obvious, include this default option:
|
|
152
|
+
|
|
153
|
+
```markdown
|
|
154
|
+
Next commands:
|
|
155
|
+
- `/scr:next`: Inspect the project state and choose the right next step.
|
|
156
|
+
```
|
|
157
|
+
|
|
158
|
+
If the command stops because a prerequisite is missing, suggest the command that fixes the prerequisite. Keep every explanation practical and writer-facing.
|