scriveno 2.0.10 → 2.0.12
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/README.md +11 -6
- package/commands/scr/new-work.md +1 -1
- package/commands/scr/sacred-numbering-format.md +2 -2
- package/data/CONSTRAINTS.json +1 -1
- package/data/demo/.manuscript/plans/5-the-reunion-PLAN.md +1 -1
- package/docs/command-reference.md +2 -0
- package/docs/configuration.md +10 -1
- package/docs/contributing.md +11 -2
- package/docs/development.md +36 -2
- package/docs/getting-started.md +6 -3
- package/docs/proof-artifacts.md +7 -0
- package/docs/quick-proof.md +174 -0
- package/docs/release-checklist.md +117 -0
- package/docs/release-notes.md +74 -0
- package/docs/route-graph.md +1 -1
- package/docs/runtime-support.md +13 -0
- package/docs/sacred-texts.md +1 -1
- package/docs/shipped-assets.md +3 -0
- package/docs/starter-sets.md +74 -0
- package/docs/testing.md +18 -3
- package/package.json +4 -2
- package/scripts/check-writing-policy.js +86 -0
- package/templates/config.json +1 -1
- package/templates/sacred/DOCTRINES.md +1 -1
- package/templates/sacred/LINEAGES.md +1 -1
package/README.md
CHANGED
|
@@ -2,13 +2,15 @@
|
|
|
2
2
|
|
|
3
3
|
[](https://github.com/aihxp/scriveno/actions/workflows/ci.yml)
|
|
4
4
|
[](LICENSE)
|
|
5
|
-
[](CHANGELOG.md)
|
|
6
6
|
[](https://www.npmjs.com/package/scriveno)
|
|
7
7
|
[](https://www.npmjs.com/package/scriveno)
|
|
8
8
|
[](docs/runtime-support.md#shared-auto-invoke-engine)
|
|
9
9
|
[](docs/auto-invoke-policy.md)
|
|
10
10
|
[](docs/runtime-support.md#runtime-smoke-and-agent-checks)
|
|
11
11
|
[](docs/auto-invoke-policy.md#safe-apply-and-audit-commands)
|
|
12
|
+
[](docs/quick-proof.md)
|
|
13
|
+
[](docs/starter-sets.md)
|
|
12
14
|
|
|
13
15
|
**[scriveno on npm](https://www.npmjs.com/package/scriveno)**
|
|
14
16
|
|
|
@@ -18,7 +20,7 @@
|
|
|
18
20
|
|
|
19
21
|
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.
|
|
20
22
|
|
|
21
|
-
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).
|
|
23
|
+
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 [Quick Proof](docs/quick-proof.md), then inspect the [Proof Artifacts](docs/proof-artifacts.md).
|
|
22
24
|
|
|
23
25
|
```bash
|
|
24
26
|
npx scriveno@latest
|
|
@@ -72,7 +74,7 @@ $scr-help
|
|
|
72
74
|
|
|
73
75
|
If you only ever type `/scr-next` in Claude Code, you can complete an entire novel. It always knows what's next.
|
|
74
76
|
|
|
75
|
-
If you want the shortest proof-first route, read [Proof
|
|
77
|
+
If you want the shortest proof-first route, read [Quick Proof](docs/quick-proof.md) before exploring the rest of the docs. If you want a small command path for your goal, use [Starter Sets](docs/starter-sets.md).
|
|
76
78
|
|
|
77
79
|
---
|
|
78
80
|
|
|
@@ -190,6 +192,8 @@ Scriveno is built on five principles:
|
|
|
190
192
|
## Documentation
|
|
191
193
|
|
|
192
194
|
- [Proof Artifacts](docs/proof-artifacts.md) -- Canonical proof hub for the watchmaker sample flow and Voice DNA before/after bundle
|
|
195
|
+
- [Quick Proof](docs/quick-proof.md) -- 10-minute proof-first route through install checks, the demo, and the next draft
|
|
196
|
+
- [Starter Sets](docs/starter-sets.md) -- Small command paths for drafting, polishing, publishing, translation, sacred commentary, and repair
|
|
193
197
|
- [Getting Started](docs/getting-started.md) -- Install to first draft in 10 minutes
|
|
194
198
|
- [Command Reference](docs/command-reference.md) -- All 112 commands with usage, flags, and examples
|
|
195
199
|
- [Work Types Guide](docs/work-types.md) -- How 50 work types adapt Scriveno's vocabulary
|
|
@@ -205,6 +209,7 @@ Scriveno is built on five principles:
|
|
|
205
209
|
- [Route Graph Audit](docs/route-graph.md) -- Generated route graph, automation lanes, and priority fixtures
|
|
206
210
|
- [Development](docs/development.md) -- Contributor workflow for changing commands, templates, installer logic, and docs
|
|
207
211
|
- [Testing](docs/testing.md) -- What the test suite covers and which checks to run before shipping
|
|
212
|
+
- [Release Checklist](docs/release-checklist.md) -- Local, npm, GitHub, and fresh-install release verification
|
|
208
213
|
- [Release Notes](docs/release-notes.md) -- Public summary of what changed between package releases
|
|
209
214
|
- [Shipped Assets](docs/shipped-assets.md) -- Canonical inventory of bundled export templates and launch-critical files
|
|
210
215
|
- [Runtime Support](docs/runtime-support.md) -- Canonical runtime matrix, Node baseline, and verification-status framing
|
|
@@ -235,11 +240,11 @@ Scriveno currently ships installer targets for these AI tooling environments:
|
|
|
235
240
|
|
|
236
241
|
## Status
|
|
237
242
|
|
|
238
|
-
**Version:** 2.0.
|
|
243
|
+
**Version:** 2.0.12
|
|
239
244
|
|
|
240
|
-
|
|
245
|
+
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, domain-grilling, installer-marker cleanup, cross-runtime agent metadata, visible automation status, the shared `scriveno status --project .` auto-invoke engine, route-intelligence lanes, safe apply reporting, runtime smoke checks, agent availability checks, route graph audits, the full audit repair pass through `2.0.11`, and the first-run proof surface in `2.0.12`. See [Quick Proof](docs/quick-proof.md) for the fastest proof path, [Shipped Assets](docs/shipped-assets.md) for the canonical asset inventory, and [Runtime Support](docs/runtime-support.md) for the runtime compatibility matrix.
|
|
241
246
|
|
|
242
|
-
|
|
247
|
+
Version `2.0.12` publishes Scriveno under the package name `scriveno`, so the current install command is `npx scriveno@latest`. The older `scriveno-cli` package name is historical and was unpublished during the rename, so npm cannot attach a deprecation notice to it while it has no active registry record. The older `scriven-cli` package remains on npm only as a deprecated legacy name that points users to `scriveno`. Do not treat either legacy package name as active unless a deliberate compatibility shim is republished. See [CHANGELOG](CHANGELOG.md) for the full list and [docs/release-notes.md](docs/release-notes.md) for the public-facing summary.
|
|
243
248
|
|
|
244
249
|
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).
|
|
245
250
|
|
package/commands/scr/new-work.md
CHANGED
|
@@ -69,7 +69,7 @@ Always create `RECORD.md` from `templates/RECORD.md` without renaming it. It is
|
|
|
69
69
|
Write `.manuscript/config.json` by starting from `templates/config.json` and filling the project-specific values. The generated config must include the shared settings blocks that later commands read:
|
|
70
70
|
```json
|
|
71
71
|
{
|
|
72
|
-
"scriveno_version": "2.0.
|
|
72
|
+
"scriveno_version": "2.0.12",
|
|
73
73
|
"work_type": "<chosen>",
|
|
74
74
|
"group": "<group>",
|
|
75
75
|
"command_unit": "<unit>",
|
|
@@ -3,14 +3,14 @@ description: "Show verse numbering format for the active sacred tradition."
|
|
|
3
3
|
argument-hint: "[--example <text>]"
|
|
4
4
|
---
|
|
5
5
|
|
|
6
|
-
# /scr:sacred-
|
|
6
|
+
# /scr:sacred-numbering-format -- Tradition Verse Numbering Reference
|
|
7
7
|
|
|
8
8
|
Show the verse numbering format for the active sacred tradition. Reads the tradition profile from the project's config and displays the numbering system with example citations.
|
|
9
9
|
|
|
10
10
|
## Usage
|
|
11
11
|
|
|
12
12
|
```
|
|
13
|
-
/scr:sacred-
|
|
13
|
+
/scr:sacred-numbering-format [--example <text>]
|
|
14
14
|
```
|
|
15
15
|
|
|
16
16
|
If `--example <text>` is provided, format the given text as a citation in the tradition's numbering system.
|
package/data/CONSTRAINTS.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"$schema": "./constraints.schema.json",
|
|
3
|
-
"version": "2.0.
|
|
3
|
+
"version": "2.0.12",
|
|
4
4
|
"description": "Scriveno constraint system: work types, command availability, exports, and dependencies. Every command checks this file at runtime.",
|
|
5
5
|
"_notes": {
|
|
6
6
|
"sacred_keys": "Sacred subcommands live at commands/scr/sacred/<name>.md and run as /scr:sacred:<name>. Their CONSTRAINTS keys use the sacred:<name> form so /scr:help can render the runnable slash-command path directly. The sacred-numbering-format entry is a separate flat command (commands/scr/sacred-numbering-format.md) that surfaces the active tradition's numbering format. It used to be named sacred-verse-numbering, which collided with sacred:verse-numbering at install time -- both flattened to scr-sacred-verse-numbering. Renamed in v1.6.x; the installer now refuses to install when two sources share a flat skill name."
|
|
@@ -49,4 +49,4 @@ Close third (Elias), past tense. Intimate distance. The narrator stays inside El
|
|
|
49
49
|
- Elias's established speech patterns from previous scenes
|
|
50
50
|
|
|
51
51
|
---
|
|
52
|
-
*This is a planning document. Draft with /scr:draft
|
|
52
|
+
*This is a planning document. Draft with /scr:draft 5.*
|
|
@@ -4,6 +4,8 @@ Scriveno has **112 commands** organized into **14 categories**. Commands adapt a
|
|
|
4
4
|
|
|
5
5
|
Commands marked with **adaptive terminology** change how Scriveno talks about your work type's `command_unit` in `.manuscript/config.json`, while keeping the runnable command id stable. Commands marked with **group adaptation** have different labels for specific work type groups (academic, sacred, etc.).
|
|
6
6
|
|
|
7
|
+
This page covers writer-facing `/scr:*` commands. Package-level audit commands live in the `scriveno` CLI: `scriveno status --project . --apply-safe`, `scriveno sync --check`, `scriveno smoke`, `scriveno agents`, and `scriveno routes`. See [Auto-Invoke Policy](auto-invoke-policy.md), [Runtime Support](runtime-support.md), and [Route Graph Audit](route-graph.md) for those surfaces.
|
|
8
|
+
|
|
7
9
|
## Table of Contents
|
|
8
10
|
|
|
9
11
|
1. [Core](#core) -- The main workflow: create, discuss, plan, draft, review, submit
|
package/docs/configuration.md
CHANGED
|
@@ -57,7 +57,7 @@ When a writer runs `/scr:new-work`, Scriveno creates `.manuscript/config.json`.
|
|
|
57
57
|
|
|
58
58
|
```json
|
|
59
59
|
{
|
|
60
|
-
"scriveno_version": "2.0.
|
|
60
|
+
"scriveno_version": "2.0.12",
|
|
61
61
|
"work_type": "<chosen>",
|
|
62
62
|
"group": "<group>",
|
|
63
63
|
"command_unit": "<unit>",
|
|
@@ -217,6 +217,15 @@ And for release-facing changes, also run:
|
|
|
217
217
|
npm run release:check
|
|
218
218
|
```
|
|
219
219
|
|
|
220
|
+
When configuration changes touch runtime paths, route logic, agent prompts, sync behavior, or installed audit surfaces, also run:
|
|
221
|
+
|
|
222
|
+
```bash
|
|
223
|
+
scriveno sync --check
|
|
224
|
+
scriveno smoke --json
|
|
225
|
+
scriveno agents --json
|
|
226
|
+
scriveno routes --json
|
|
227
|
+
```
|
|
228
|
+
|
|
220
229
|
## Related docs
|
|
221
230
|
|
|
222
231
|
- [Getting Started](getting-started.md)
|
package/docs/contributing.md
CHANGED
|
@@ -2,7 +2,7 @@
|
|
|
2
2
|
|
|
3
3
|
Scriveno is a pure skill system -- markdown files that AI agents read and execute. There is no compiled code, no build step, no runtime dependencies. Contributing means adding or editing markdown files and updating the central constraint registry.
|
|
4
4
|
|
|
5
|
-
This guide walks you through extending Scriveno: adding commands, agents, work types, templates, and export formats. Each section is self-contained -- jump to what you need.
|
|
5
|
+
This guide walks you through extending Scriveno: adding commands, agents, work types, templates, and export formats. Each section is self-contained -- jump to what you need. For release operations, use [Release Checklist](release-checklist.md).
|
|
6
6
|
|
|
7
7
|
## File Structure Overview
|
|
8
8
|
|
|
@@ -379,8 +379,14 @@ When a package release changes the public story, update the release docs alongsi
|
|
|
379
379
|
- `CHANGELOG.md` -- package-level release history
|
|
380
380
|
- `docs/release-notes.md` -- public-facing summary of what changed and why it matters
|
|
381
381
|
- `README.md` -- current version/status blurb when the release changes the headline positioning
|
|
382
|
+
- `docs/quick-proof.md` -- proof-first first-run route when install, demo, or proof expectations change
|
|
383
|
+
- `docs/starter-sets.md` -- goal-based command paths when command positioning changes
|
|
384
|
+
- `docs/release-checklist.md` -- publish workflow when release validation changes
|
|
382
385
|
- `docs/shipped-assets.md` -- canonical inventory when bundled docs, templates, proof assets, or trust-critical files change
|
|
383
386
|
- `docs/command-reference.md` -- command contract reference when command behavior or flags change
|
|
387
|
+
- `docs/auto-invoke-policy.md` -- proactive routing, safe apply, local-helper, and agent-spawn policy
|
|
388
|
+
- `docs/runtime-support.md` -- runtime matrix, install-surface checks, and agent availability claims
|
|
389
|
+
- `docs/route-graph.md` -- route graph, automation lanes, and priority fixtures when route logic changes
|
|
384
390
|
- `templates/*/README.md` and `data/proof/*/README.md` -- shipped profile and proof documentation when those assets change
|
|
385
391
|
- `.planning/` milestone summary files -- only when the release closes out milestone work or changes the archive story
|
|
386
392
|
|
|
@@ -391,7 +397,10 @@ When a package release changes the public story, update the release docs alongsi
|
|
|
391
397
|
3. Update `docs/release-notes.md` with a concise explanation of what changed, why, and how it was verified
|
|
392
398
|
4. Run `npm test`
|
|
393
399
|
5. Run `npm run release:check`
|
|
394
|
-
6.
|
|
400
|
+
6. For runtime, installer, agent, sync, or route-intelligence changes, run `scriveno sync --check`, `scriveno smoke --json`, `scriveno agents --json`, and `scriveno routes --json`
|
|
401
|
+
7. For docs, prompts, command markdown, release notes, and README changes, run `npm run policy:check`
|
|
402
|
+
8. Follow [Release Checklist](release-checklist.md) before publishing
|
|
403
|
+
9. Publish only after the docs and package metadata tell the same story
|
|
395
404
|
|
|
396
405
|
## Code Style
|
|
397
406
|
|
package/docs/development.md
CHANGED
|
@@ -106,6 +106,12 @@ Run the release gate before publishing:
|
|
|
106
106
|
npm run release:check
|
|
107
107
|
```
|
|
108
108
|
|
|
109
|
+
Run the writing-policy gate directly when changing docs, prompts, commands, release notes, or public copy:
|
|
110
|
+
|
|
111
|
+
```bash
|
|
112
|
+
npm run policy:check
|
|
113
|
+
```
|
|
114
|
+
|
|
109
115
|
Start the installer locally:
|
|
110
116
|
|
|
111
117
|
```bash
|
|
@@ -120,6 +126,21 @@ node bin/install.js --runtime codex --global --developer --silent
|
|
|
120
126
|
|
|
121
127
|
The writer-facing form of this maintenance operation is `/scr:sync`.
|
|
122
128
|
|
|
129
|
+
For a full cross-runtime refresh from this checkout, use:
|
|
130
|
+
|
|
131
|
+
```bash
|
|
132
|
+
node bin/install.js --runtimes claude-code,cursor,gemini-cli,codex,opencode,copilot,windsurf,antigravity,manus,perplexity-desktop,generic --global --developer --silent
|
|
133
|
+
```
|
|
134
|
+
|
|
135
|
+
After installation, the shared audit commands should pass:
|
|
136
|
+
|
|
137
|
+
```bash
|
|
138
|
+
scriveno sync --check
|
|
139
|
+
scriveno smoke --json
|
|
140
|
+
scriveno agents --json
|
|
141
|
+
scriveno routes --json
|
|
142
|
+
```
|
|
143
|
+
|
|
123
144
|
## Docs and release workflow
|
|
124
145
|
|
|
125
146
|
Docs are part of the shipped product. If you change visible behavior, update every affected documentation surface in the same pass: root docs, files under `docs/`, proof READMEs, template READMEs, and command markdown that exposes user-facing contracts.
|
|
@@ -128,9 +149,15 @@ For release-oriented documentation surfaces, the main files are:
|
|
|
128
149
|
|
|
129
150
|
- `README.md`
|
|
130
151
|
- `CHANGELOG.md`
|
|
152
|
+
- `docs/quick-proof.md`
|
|
153
|
+
- `docs/starter-sets.md`
|
|
154
|
+
- `docs/release-checklist.md`
|
|
131
155
|
- `docs/release-notes.md`
|
|
132
156
|
- `docs/shipped-assets.md`
|
|
133
157
|
- `docs/command-reference.md`
|
|
158
|
+
- `docs/auto-invoke-policy.md`
|
|
159
|
+
- `docs/runtime-support.md`
|
|
160
|
+
- `docs/route-graph.md`
|
|
134
161
|
- `templates/*/README.md` when shipped profiles or templates change
|
|
135
162
|
- `.planning/` milestone summaries when you are still using the GSD planning layer
|
|
136
163
|
|
|
@@ -140,8 +167,10 @@ A good pre-ship pass for Scriveno changes is:
|
|
|
140
167
|
|
|
141
168
|
1. run the targeted tests for the touched surface
|
|
142
169
|
2. run `npm test`
|
|
143
|
-
3. run `npm run
|
|
144
|
-
4.
|
|
170
|
+
3. run `npm run policy:check` for docs, command, agent, prompt, and release-note changes
|
|
171
|
+
4. run `npm run release:check` for package-facing changes
|
|
172
|
+
5. run the proactive audit commands when routing, runtime, installer, or agent surfaces changed
|
|
173
|
+
6. review trust-sensitive docs for runtime, asset, and support claims
|
|
145
174
|
|
|
146
175
|
## Related docs
|
|
147
176
|
|
|
@@ -149,4 +178,9 @@ A good pre-ship pass for Scriveno changes is:
|
|
|
149
178
|
- [Configuration](configuration.md)
|
|
150
179
|
- [Testing](testing.md)
|
|
151
180
|
- [Contributing](contributing.md)
|
|
181
|
+
- [Quick Proof](quick-proof.md)
|
|
182
|
+
- [Release Checklist](release-checklist.md)
|
|
183
|
+
- [Auto-Invoke Policy](auto-invoke-policy.md)
|
|
184
|
+
- [Runtime Support](runtime-support.md)
|
|
185
|
+
- [Route Graph Audit](route-graph.md)
|
|
152
186
|
- [Release Notes](release-notes.md)
|
package/docs/getting-started.md
CHANGED
|
@@ -2,7 +2,7 @@
|
|
|
2
2
|
|
|
3
3
|
Go from zero to a drafted scene in under 10 minutes. This guide walks you through installation, project setup, and your first draft.
|
|
4
4
|
|
|
5
|
-
Want evidence first? Start with [Proof Artifacts](proof-artifacts.md). The watchmaker sample flow and the Voice DNA before/after bundle give you the fastest way to inspect what Scriveno actually proves today.
|
|
5
|
+
Want evidence first? Start with [Quick Proof](quick-proof.md), then continue to [Proof Artifacts](proof-artifacts.md). The watchmaker sample flow and the Voice DNA before/after bundle give you the fastest way to inspect what Scriveno actually proves today.
|
|
6
6
|
|
|
7
7
|
## Prerequisites
|
|
8
8
|
|
|
@@ -63,7 +63,7 @@ This creates a pre-built short story project -- a retired watchmaker who receive
|
|
|
63
63
|
|
|
64
64
|
Explore at your own pace. When you're ready to start your own work, run `/scr-demo --clear` to clean up.
|
|
65
65
|
|
|
66
|
-
If you want a curated reading path instead of jumping straight into the demo files, open [Proof
|
|
66
|
+
If you want a curated reading path instead of jumping straight into the demo files, open [Quick Proof](quick-proof.md) first. It maps the install checks, runtime command shapes, watchmaker demo, and next draft into one 10-minute path.
|
|
67
67
|
|
|
68
68
|
## Step 3: Start Your Project
|
|
69
69
|
|
|
@@ -204,11 +204,14 @@ Beyond the core workflow, Scriveno offers:
|
|
|
204
204
|
- **Versions** -- `/scr-save`, `/scr-history`, `/scr-versions`, `/scr-compare`
|
|
205
205
|
- **Navigation** -- `/scr-help`, `/scr-next`, `/scr-pause-work`
|
|
206
206
|
|
|
207
|
-
For the full command list, see [Command Reference](command-reference.md).
|
|
207
|
+
For small goal-based paths, use [Starter Sets](starter-sets.md). For the full command list, see [Command Reference](command-reference.md).
|
|
208
208
|
|
|
209
209
|
If you want the trust surfaces around installation and shipping details, continue with:
|
|
210
210
|
|
|
211
211
|
- [Runtime Support](runtime-support.md) -- installer targets, support levels, and verification status
|
|
212
|
+
- [Quick Proof](quick-proof.md) -- proof-first first-run path through install, demo, and next draft
|
|
213
|
+
- [Starter Sets](starter-sets.md) -- small command sets by writing goal
|
|
212
214
|
- [Auto-Invoke Policy](auto-invoke-policy.md) -- status engine, visible automation, and agent-spawn boundaries
|
|
215
|
+
- [Route Graph Audit](route-graph.md) -- generated route graph, automation lanes, and priority fixtures
|
|
213
216
|
- [Shipped Assets](shipped-assets.md) -- what the npm package actually includes on the trust-critical surface
|
|
214
217
|
- [Release Notes](release-notes.md) -- what changed in the latest package release
|
package/docs/proof-artifacts.md
CHANGED
|
@@ -4,10 +4,13 @@ This document is the canonical index of Scriveno's proof layer. It points to con
|
|
|
4
4
|
|
|
5
5
|
## Start Here
|
|
6
6
|
|
|
7
|
+
- Read **Quick Proof** if you want one 10-minute route through installation checks, demo inspection, runtime command shapes, and the next draft command.
|
|
7
8
|
- Read the **Watchmaker Sample Flow** if you want one end-to-end writing workflow from setup through drafts, review, and next step.
|
|
8
9
|
- Read **Voice DNA** if you want the shortest possible proof of how style guidance changes output on the same brief.
|
|
9
10
|
- Read **Creative Context** if you want to see one craft choice travel through discuss, plan, draft, and review artifacts.
|
|
10
11
|
|
|
12
|
+
**Fast path:** [Quick Proof](quick-proof.md)
|
|
13
|
+
|
|
11
14
|
## Watchmaker Sample Flow
|
|
12
15
|
|
|
13
16
|
**What it proves:** Scriveno ships one credible writing workflow from setup context through drafted outcome, review evidence, and next-step continuity.
|
|
@@ -52,5 +55,9 @@ Read the bundle in order if you want to inspect sentence rhythm, metaphor select
|
|
|
52
55
|
## Related Trust Docs
|
|
53
56
|
|
|
54
57
|
- [Shipped Assets](shipped-assets.md) -- canonical inventory of the trust-critical files Scriveno actually bundles
|
|
58
|
+
- [Quick Proof](quick-proof.md) -- 10-minute proof-first path through install checks, the demo, and the next draft
|
|
59
|
+
- [Starter Sets](starter-sets.md) -- small command sets by writing goal
|
|
55
60
|
- [Runtime Support](runtime-support.md) -- canonical runtime matrix and installer-baseline framing
|
|
61
|
+
- [Auto-Invoke Policy](auto-invoke-policy.md) -- proactive status, safe apply, local-helper, and agent-spawn boundaries
|
|
62
|
+
- [Route Graph Audit](route-graph.md) -- generated route graph, automation lanes, and priority fixtures
|
|
56
63
|
- [Release Notes](release-notes.md) -- summary of what changed in the latest package release
|
|
@@ -0,0 +1,174 @@
|
|
|
1
|
+
# Quick Proof
|
|
2
|
+
|
|
3
|
+
This is the shortest proof-first path through Scriveno. It is meant for a fresh user who wants to see real shipped artifacts, a demo manuscript, runtime expectations, and the first practical commands before reading the full manual.
|
|
4
|
+
|
|
5
|
+
## What This Proves
|
|
6
|
+
|
|
7
|
+
- Scriveno ships inspectable proof bundles, not only feature claims.
|
|
8
|
+
- The watchmaker demo includes real manuscript state, drafts, review notes, and a planned next unit.
|
|
9
|
+
- Voice DNA changes output on the same brief, with guided and unguided samples side by side.
|
|
10
|
+
- Runtime behavior is explicit: Claude Code is the primary reference runtime, Codex uses generated `$scr-*` skills, standard slash-command targets use `/scr:*`, and guided targets document their local setup path.
|
|
11
|
+
- The public CLI can audit installed surfaces with `scriveno smoke --json`.
|
|
12
|
+
|
|
13
|
+
## 10-Minute Route
|
|
14
|
+
|
|
15
|
+
### 1. Install
|
|
16
|
+
|
|
17
|
+
```bash
|
|
18
|
+
npx scriveno@latest
|
|
19
|
+
```
|
|
20
|
+
|
|
21
|
+
For a source checkout while developing Scriveno itself:
|
|
22
|
+
|
|
23
|
+
```bash
|
|
24
|
+
node bin/install.js --runtimes claude-code,cursor,gemini-cli,codex,opencode,copilot,windsurf,antigravity,manus,perplexity-desktop,generic --global --developer --silent
|
|
25
|
+
```
|
|
26
|
+
|
|
27
|
+
### 2. Check The Installed Surface
|
|
28
|
+
|
|
29
|
+
```bash
|
|
30
|
+
scriveno status --project .
|
|
31
|
+
scriveno smoke --json
|
|
32
|
+
scriveno agents --json
|
|
33
|
+
scriveno routes --json
|
|
34
|
+
```
|
|
35
|
+
|
|
36
|
+
Expected result: the commands report installed surfaces, agent prompt availability, route lanes, and any manual gates. They do not mutate manuscript files.
|
|
37
|
+
|
|
38
|
+
### 3. Open The Demo
|
|
39
|
+
|
|
40
|
+
Claude Code:
|
|
41
|
+
|
|
42
|
+
```text
|
|
43
|
+
/scr-demo
|
|
44
|
+
```
|
|
45
|
+
|
|
46
|
+
Standard slash-command runtimes:
|
|
47
|
+
|
|
48
|
+
```text
|
|
49
|
+
/scr:demo
|
|
50
|
+
```
|
|
51
|
+
|
|
52
|
+
Codex:
|
|
53
|
+
|
|
54
|
+
```text
|
|
55
|
+
$scr-demo
|
|
56
|
+
```
|
|
57
|
+
|
|
58
|
+
Then inspect the shipped files:
|
|
59
|
+
|
|
60
|
+
- [data/demo/.manuscript/WORK.md](../data/demo/.manuscript/WORK.md)
|
|
61
|
+
- [data/demo/.manuscript/STYLE-GUIDE.md](../data/demo/.manuscript/STYLE-GUIDE.md)
|
|
62
|
+
- [data/demo/.manuscript/STATE.md](../data/demo/.manuscript/STATE.md)
|
|
63
|
+
- [data/demo/.manuscript/drafts/body/1-the-letter-DRAFT.md](../data/demo/.manuscript/drafts/body/1-the-letter-DRAFT.md)
|
|
64
|
+
- [data/demo/.manuscript/drafts/body/2-the-workshop-DRAFT.md](../data/demo/.manuscript/drafts/body/2-the-workshop-DRAFT.md)
|
|
65
|
+
- [data/demo/.manuscript/reviews/2-the-workshop-REVIEW.md](../data/demo/.manuscript/reviews/2-the-workshop-REVIEW.md)
|
|
66
|
+
- [data/demo/.manuscript/plans/5-the-reunion-PLAN.md](../data/demo/.manuscript/plans/5-the-reunion-PLAN.md)
|
|
67
|
+
|
|
68
|
+
### 4. Read The Proof Bundle
|
|
69
|
+
|
|
70
|
+
Start here:
|
|
71
|
+
|
|
72
|
+
- [data/proof/watchmaker-flow/README.md](../data/proof/watchmaker-flow/README.md)
|
|
73
|
+
- [data/proof/voice-dna/README.md](../data/proof/voice-dna/README.md)
|
|
74
|
+
- [data/proof/creative-context/README.md](../data/proof/creative-context/README.md)
|
|
75
|
+
|
|
76
|
+
The fastest comparison is the Voice DNA pair:
|
|
77
|
+
|
|
78
|
+
- [data/proof/voice-dna/UNGUIDED-SAMPLE.md](../data/proof/voice-dna/UNGUIDED-SAMPLE.md)
|
|
79
|
+
- [data/proof/voice-dna/GUIDED-SAMPLE.md](../data/proof/voice-dna/GUIDED-SAMPLE.md)
|
|
80
|
+
|
|
81
|
+
### 5. Ask For The Next Unit
|
|
82
|
+
|
|
83
|
+
The demo includes a planned but undrafted fifth unit. Use the command shape for your host:
|
|
84
|
+
|
|
85
|
+
Claude Code:
|
|
86
|
+
|
|
87
|
+
```text
|
|
88
|
+
/scr-draft 5
|
|
89
|
+
/scr-editor-review 5
|
|
90
|
+
```
|
|
91
|
+
|
|
92
|
+
Standard slash-command runtimes:
|
|
93
|
+
|
|
94
|
+
```text
|
|
95
|
+
/scr:draft 5
|
|
96
|
+
/scr:editor-review 5
|
|
97
|
+
```
|
|
98
|
+
|
|
99
|
+
Codex:
|
|
100
|
+
|
|
101
|
+
```text
|
|
102
|
+
$scr-draft 5
|
|
103
|
+
$scr-editor-review 5
|
|
104
|
+
```
|
|
105
|
+
|
|
106
|
+
### 6. Ask Scriveno What To Do Next
|
|
107
|
+
|
|
108
|
+
Claude Code:
|
|
109
|
+
|
|
110
|
+
```text
|
|
111
|
+
/scr-next
|
|
112
|
+
```
|
|
113
|
+
|
|
114
|
+
Standard slash-command runtimes:
|
|
115
|
+
|
|
116
|
+
```text
|
|
117
|
+
/scr:next
|
|
118
|
+
```
|
|
119
|
+
|
|
120
|
+
Codex:
|
|
121
|
+
|
|
122
|
+
```text
|
|
123
|
+
$scr-next
|
|
124
|
+
```
|
|
125
|
+
|
|
126
|
+
Terminal:
|
|
127
|
+
|
|
128
|
+
```bash
|
|
129
|
+
scriveno status --project .
|
|
130
|
+
```
|
|
131
|
+
|
|
132
|
+
## Example Transcript
|
|
133
|
+
|
|
134
|
+
These transcript blocks show the expected shape, not a promise that every host prints identical phrasing.
|
|
135
|
+
|
|
136
|
+
```text
|
|
137
|
+
> /scr-demo
|
|
138
|
+
Created the watchmaker demo project.
|
|
139
|
+
Next: inspect STYLE-GUIDE.md, read the first draft, then run /scr-next.
|
|
140
|
+
```
|
|
141
|
+
|
|
142
|
+
```text
|
|
143
|
+
> scriveno status --project .
|
|
144
|
+
Recommended next command: /scr:next
|
|
145
|
+
Candidate agents: drafter, voice-checker
|
|
146
|
+
Candidate local helpers: scan, save
|
|
147
|
+
Manual gates: writer approval before publishing or overwriting exports
|
|
148
|
+
```
|
|
149
|
+
|
|
150
|
+
```text
|
|
151
|
+
> /scr:draft 5
|
|
152
|
+
Loaded STYLE-GUIDE.md and the plan for unit 5.
|
|
153
|
+
Drafted the next atomic unit in fresh context.
|
|
154
|
+
Next: /scr:editor-review 5
|
|
155
|
+
```
|
|
156
|
+
|
|
157
|
+
## Runtime Expectations
|
|
158
|
+
|
|
159
|
+
Use [Runtime Support](runtime-support.md) as the canonical matrix. The short version:
|
|
160
|
+
|
|
161
|
+
- Claude Code is the primary reference runtime.
|
|
162
|
+
- Codex installs generated `$scr-*` skills, mirrored commands, agent prompts, and `.toml` agent metadata.
|
|
163
|
+
- Cursor, Gemini CLI, OpenCode, GitHub Copilot, Windsurf, and Antigravity install command directories plus agent prompts.
|
|
164
|
+
- Manus Desktop and the generic fallback install bundled skill manifests.
|
|
165
|
+
- Perplexity Desktop is a guided local-MCP setup target, not a writable command runtime.
|
|
166
|
+
|
|
167
|
+
No runtime claim here should be read as host-runtime parity proof. The repo proves install surfaces and package artifacts; host parity still needs per-host verification.
|
|
168
|
+
|
|
169
|
+
## Where To Go Next
|
|
170
|
+
|
|
171
|
+
- [Starter Sets](starter-sets.md) for small command paths by writing goal
|
|
172
|
+
- [Getting Started](getting-started.md) for the complete first-project walkthrough
|
|
173
|
+
- [Proof Artifacts](proof-artifacts.md) for the proof hub
|
|
174
|
+
- [Runtime Support](runtime-support.md) for installation and support levels
|
|
@@ -0,0 +1,117 @@
|
|
|
1
|
+
# Release Checklist
|
|
2
|
+
|
|
3
|
+
This checklist is the package-release path for Scriveno maintainers. It is designed to verify the source checkout, the package tarball, the installed runtime surfaces, the published npm package, and the GitHub release.
|
|
4
|
+
|
|
5
|
+
## 1. Confirm A Clean Baseline
|
|
6
|
+
|
|
7
|
+
```bash
|
|
8
|
+
git status --short --branch
|
|
9
|
+
npm view scriveno version
|
|
10
|
+
```
|
|
11
|
+
|
|
12
|
+
Choose the next package version from npm, not from memory.
|
|
13
|
+
|
|
14
|
+
## 2. Run Local Gates
|
|
15
|
+
|
|
16
|
+
```bash
|
|
17
|
+
npm run release:check
|
|
18
|
+
npm audit --omit=dev --json
|
|
19
|
+
node bin/install.js routes --json
|
|
20
|
+
node bin/install.js agents --json
|
|
21
|
+
node bin/install.js smoke --json
|
|
22
|
+
node bin/install.js sync --check --json
|
|
23
|
+
git diff --check
|
|
24
|
+
```
|
|
25
|
+
|
|
26
|
+
Also scan text files for the repo writing policy:
|
|
27
|
+
|
|
28
|
+
```bash
|
|
29
|
+
node scripts/check-writing-policy.js
|
|
30
|
+
```
|
|
31
|
+
|
|
32
|
+
If that script does not exist in a checkout yet, run the equivalent local policy scan used by the release operator.
|
|
33
|
+
|
|
34
|
+
## 3. Clear Previous Local Installs
|
|
35
|
+
|
|
36
|
+
Before validating a release candidate, clear Scriveno-owned install surfaces so stale files cannot hide installer defects.
|
|
37
|
+
|
|
38
|
+
```bash
|
|
39
|
+
rm -rf "$HOME/.scriveno"
|
|
40
|
+
rm -rf "$HOME/.codex/commands/scr"
|
|
41
|
+
rm -rf "$HOME/.cursor/commands/scr"
|
|
42
|
+
rm -rf "$HOME/.gemini/commands/scr"
|
|
43
|
+
rm -rf "$HOME/.gemini/antigravity/commands/scr"
|
|
44
|
+
rm -rf "$HOME/.config/opencode/commands/scr"
|
|
45
|
+
rm -rf "$HOME/.github/commands/scr"
|
|
46
|
+
rm -rf "$HOME/.windsurf/commands/scr"
|
|
47
|
+
rm -rf "$HOME/.manus/skills/scriveno"
|
|
48
|
+
npm cache clean --force
|
|
49
|
+
```
|
|
50
|
+
|
|
51
|
+
Then reinstall from the checkout:
|
|
52
|
+
|
|
53
|
+
```bash
|
|
54
|
+
npm install -g .
|
|
55
|
+
scriveno --runtimes claude-code,cursor,gemini-cli,codex,opencode,copilot,windsurf,antigravity,manus,perplexity-desktop,generic --global --developer --silent
|
|
56
|
+
scriveno smoke --json
|
|
57
|
+
```
|
|
58
|
+
|
|
59
|
+
## 4. Pack The Candidate
|
|
60
|
+
|
|
61
|
+
```bash
|
|
62
|
+
mkdir -p dist
|
|
63
|
+
npm pack --pack-destination dist
|
|
64
|
+
```
|
|
65
|
+
|
|
66
|
+
Inspect the tarball name and confirm the version matches `package.json`.
|
|
67
|
+
|
|
68
|
+
## 5. Commit And Tag
|
|
69
|
+
|
|
70
|
+
```bash
|
|
71
|
+
git status --short
|
|
72
|
+
git add README.md CHANGELOG.md docs package.json package-lock.json data templates commands .planning test
|
|
73
|
+
git commit -m "Release scriveno X.Y.Z"
|
|
74
|
+
git tag vX.Y.Z
|
|
75
|
+
```
|
|
76
|
+
|
|
77
|
+
Keep the commit message plain and version-specific.
|
|
78
|
+
|
|
79
|
+
## 6. Publish To npm
|
|
80
|
+
|
|
81
|
+
```bash
|
|
82
|
+
npm publish --access public
|
|
83
|
+
npm view scriveno version
|
|
84
|
+
```
|
|
85
|
+
|
|
86
|
+
The published version must match `package.json` and the tag.
|
|
87
|
+
|
|
88
|
+
## 7. Push Git And Create GitHub Release
|
|
89
|
+
|
|
90
|
+
```bash
|
|
91
|
+
git push origin main
|
|
92
|
+
git push origin vX.Y.Z
|
|
93
|
+
gh release create vX.Y.Z dist/scriveno-X.Y.Z.tgz --title "Scriveno X.Y.Z" --notes-file /tmp/scriveno-release-notes.md
|
|
94
|
+
```
|
|
95
|
+
|
|
96
|
+
The release notes should summarize the user-facing change, docs updated, tests run, and npm verification.
|
|
97
|
+
|
|
98
|
+
## 8. Verify From Published npm
|
|
99
|
+
|
|
100
|
+
```bash
|
|
101
|
+
npm install -g scriveno@latest
|
|
102
|
+
scriveno --version
|
|
103
|
+
scriveno --runtimes claude-code,cursor,gemini-cli,codex,opencode,copilot,windsurf,antigravity,manus,perplexity-desktop,generic --global --developer --silent
|
|
104
|
+
scriveno smoke --json
|
|
105
|
+
```
|
|
106
|
+
|
|
107
|
+
This is the final proof that a fresh user can install the same package that was released.
|
|
108
|
+
|
|
109
|
+
## 9. Final State
|
|
110
|
+
|
|
111
|
+
```bash
|
|
112
|
+
git status --short --branch
|
|
113
|
+
gh release view vX.Y.Z
|
|
114
|
+
npm view scriveno version
|
|
115
|
+
```
|
|
116
|
+
|
|
117
|
+
The final state should show a clean worktree, a visible GitHub release, and npm latest aligned to the new version.
|
package/docs/release-notes.md
CHANGED
|
@@ -2,6 +2,80 @@
|
|
|
2
2
|
|
|
3
3
|
This document is the public-facing summary of what changed between package releases. For package history, see the root [CHANGELOG](../CHANGELOG.md).
|
|
4
4
|
|
|
5
|
+
## 2.0.12 - 2026-05-16
|
|
6
|
+
|
|
7
|
+
### What changed
|
|
8
|
+
|
|
9
|
+
- Scriveno now ships [Quick Proof](quick-proof.md), a 10-minute route through install checks, the watchmaker demo, Voice DNA samples, runtime command shapes, and the next draft command.
|
|
10
|
+
- Scriveno now ships [Starter Sets](starter-sets.md), goal-based command paths for drafting, polishing, publishing, translation, sacred commentary, and repair.
|
|
11
|
+
- Scriveno now ships [Release Checklist](release-checklist.md), a maintainer path for local gates, stale install cleanup, packing, npm publishing, GitHub release creation, and fresh `scriveno@latest` verification.
|
|
12
|
+
- `npm run release:check` now includes `npm run policy:check`, which scans tracked text files for the repository writing policy before packaging.
|
|
13
|
+
- README badges, Getting Started, Proof Artifacts, Runtime Support, Development, Contributing, Testing, Shipped Assets, Route Graph, Configuration, changelog, package metadata, constraints metadata, generated config metadata, and release tests are aligned on `2.0.12`.
|
|
14
|
+
|
|
15
|
+
### Why it matters
|
|
16
|
+
|
|
17
|
+
The product already had proof artifacts, but the shortest path through them was too implicit. This release makes the first 10 minutes clearer for a new writer and makes the release process harder to drift by documenting and testing the local, npm, GitHub, and fresh-install verification path.
|
|
18
|
+
|
|
19
|
+
### Affected areas
|
|
20
|
+
|
|
21
|
+
- README badges and launch copy
|
|
22
|
+
- proof-first documentation
|
|
23
|
+
- starter command guidance
|
|
24
|
+
- release checklist and testing docs
|
|
25
|
+
- writing-policy release gate
|
|
26
|
+
- package metadata and generated project examples
|
|
27
|
+
- planning state and release-alignment tests
|
|
28
|
+
|
|
29
|
+
### Verification
|
|
30
|
+
|
|
31
|
+
- `node --test test/first-run-proof-surface.test.js test/package.test.js test/phase16-trust-regression.test.js test/phase14-runtime-credibility.test.js`
|
|
32
|
+
- `npm run policy:check`
|
|
33
|
+
- `npm run release:check`
|
|
34
|
+
- `node bin/install.js routes --json`
|
|
35
|
+
- `node bin/install.js agents --json`
|
|
36
|
+
- `node bin/install.js sync --check --json`
|
|
37
|
+
- `node bin/install.js smoke --json`
|
|
38
|
+
- `npm audit --omit=dev --json`
|
|
39
|
+
- `git diff --check`
|
|
40
|
+
|
|
41
|
+
## 2.0.11 - 2026-05-16
|
|
42
|
+
|
|
43
|
+
### What changed
|
|
44
|
+
|
|
45
|
+
- Scriveno received a full repo audit across 500 tracked files and the latest 242-file package surface.
|
|
46
|
+
- The sacred numbering command now consistently advertises `/scr:sacred-numbering-format` instead of the stale `/scr:sacred-verse-numbering` name.
|
|
47
|
+
- Sacred doctrine and lineage templates now point to `/scr:sacred:doctrinal-check`, matching the shipped command surface.
|
|
48
|
+
- The demo manuscript plan now tells users to run `/scr:draft 5` instead of the removed `/scr:draft-scene 5` command.
|
|
49
|
+
- Archived planning summaries no longer use decorative test-output markers that violate the repository writing policy.
|
|
50
|
+
- README badges, Route Graph, Configuration, changelog, package metadata, constraints metadata, generated config metadata, and release tests are aligned on `2.0.11`.
|
|
51
|
+
|
|
52
|
+
### Why it matters
|
|
53
|
+
|
|
54
|
+
This release tightens the shipped surface after the automation releases. Writers should see current command names in docs, templates, demo files, and installed runtime copies. Developers now have a cleaner package baseline before the next milestone begins.
|
|
55
|
+
|
|
56
|
+
### Affected areas
|
|
57
|
+
|
|
58
|
+
- command documentation
|
|
59
|
+
- sacred project templates
|
|
60
|
+
- demo manuscript assets
|
|
61
|
+
- release metadata
|
|
62
|
+
- planning state
|
|
63
|
+
- README badge and status copy
|
|
64
|
+
- cross-runtime installed surfaces
|
|
65
|
+
- regression tests for release metadata and sacred command naming
|
|
66
|
+
|
|
67
|
+
### Verification
|
|
68
|
+
|
|
69
|
+
- `npm run release:check`
|
|
70
|
+
- `node bin/install.js routes --json`
|
|
71
|
+
- `node bin/install.js agents --json`
|
|
72
|
+
- `node bin/install.js sync --check --json`
|
|
73
|
+
- `node bin/install.js smoke --json`
|
|
74
|
+
- `npm audit --omit=dev --json`
|
|
75
|
+
- `npm pack --dry-run`
|
|
76
|
+
- `git diff --check`
|
|
77
|
+
- repository policy scan for em dashes, en dashes, and decorative emoji-style markers
|
|
78
|
+
|
|
5
79
|
## 2.0.10 - 2026-05-16
|
|
6
80
|
|
|
7
81
|
### What changed
|
package/docs/route-graph.md
CHANGED
|
@@ -13,7 +13,7 @@ The text report summarizes command count, graph edges, agent-capable routes, loc
|
|
|
13
13
|
|
|
14
14
|
## Current Shape
|
|
15
15
|
|
|
16
|
-
As of `2.0.
|
|
16
|
+
As of `2.0.12`, the route graph contains:
|
|
17
17
|
|
|
18
18
|
- 112 commands
|
|
19
19
|
- intent-order edges from `command_intents`
|
package/docs/runtime-support.md
CHANGED
|
@@ -65,6 +65,17 @@ Node is not a runtime dependency for Scriveno's markdown command system itself.
|
|
|
65
65
|
- Manus Desktop and the generic skills fallback install a manifest `SKILL.md`, mirrored command files, and agent prompts inside the skill bundle.
|
|
66
66
|
- Perplexity Desktop receives setup assets for a local-MCP connector. It does not receive writable command or agent prompt directories from the installer.
|
|
67
67
|
|
|
68
|
+
## First-Run Command Shapes
|
|
69
|
+
|
|
70
|
+
Scriveno docs use `/scr:*` as the shared command id format unless a host-specific example is needed. Installed command surfaces differ by runtime:
|
|
71
|
+
|
|
72
|
+
- Claude Code: `/scr-demo`, `/scr-new-work`, `/scr-next`
|
|
73
|
+
- Standard command-directory runtimes: `/scr:demo`, `/scr:new-work`, `/scr:next`
|
|
74
|
+
- Codex: `$scr-demo`, `$scr-new-work`, `$scr-next`
|
|
75
|
+
- Guided targets: follow the generated setup instructions and connector recipe
|
|
76
|
+
|
|
77
|
+
Use [Quick Proof](quick-proof.md) for the 10-minute proof route and [Starter Sets](starter-sets.md) for goal-based command paths.
|
|
78
|
+
|
|
68
79
|
## Shared Auto-Invoke Engine
|
|
69
80
|
|
|
70
81
|
Every install target receives the same read-only status engine through Scriveno's shared asset directory:
|
|
@@ -126,5 +137,7 @@ That distinction is intentional. Installer-path coverage and guided setup assets
|
|
|
126
137
|
## See Also
|
|
127
138
|
|
|
128
139
|
- [Getting Started](getting-started.md) -- install flow and first-run expectations
|
|
140
|
+
- [Quick Proof](quick-proof.md) -- first-run proof path and runtime command shapes
|
|
141
|
+
- [Starter Sets](starter-sets.md) -- small command sets by writing goal
|
|
129
142
|
- [Shipped Assets](shipped-assets.md) -- trust-critical files that ship with the package
|
|
130
143
|
- [Release Notes](release-notes.md) -- latest package-level summary
|
package/docs/sacred-texts.md
CHANGED
|
@@ -182,7 +182,7 @@ Apply or adjust verse numbering systems to your drafted text. Supports tradition
|
|
|
182
182
|
|
|
183
183
|
**Requires:** At least one drafted unit.
|
|
184
184
|
|
|
185
|
-
The top-level `/scr:sacred-
|
|
185
|
+
The top-level `/scr:sacred-numbering-format` compatibility command is read-only: it shows the active tradition's numbering format and can render example citations. The nested `/scr:sacred:verse-numbering` command changes or verifies the project's numbering system.
|
|
186
186
|
|
|
187
187
|
### `/scr:sacred:source-tracking`
|
|
188
188
|
|
package/docs/shipped-assets.md
CHANGED
|
@@ -115,6 +115,9 @@ Sacred commands read top-level sacred profile keys in new projects and preserve
|
|
|
115
115
|
- `CHANGELOG.md` -- package-level release history
|
|
116
116
|
- `docs/release-notes.md` -- public-facing release summary
|
|
117
117
|
- `docs/proof-artifacts.md` -- canonical proof hub for sample-flow and voice-preservation evidence
|
|
118
|
+
- `docs/quick-proof.md` -- proof-first first-run route through install checks, demo inspection, and next-draft commands
|
|
119
|
+
- `docs/starter-sets.md` -- small command paths for common writing goals
|
|
120
|
+
- `docs/release-checklist.md` -- release validation path for source, npm, GitHub, and fresh installs
|
|
118
121
|
- `docs/runtime-support.md` -- canonical runtime matrix, Node baseline, and support-confidence framing
|
|
119
122
|
- `docs/command-reference.md` -- canonical command surface reference
|
|
120
123
|
- `docs/configuration.md` -- canonical project config and package metadata reference
|
|
@@ -0,0 +1,74 @@
|
|
|
1
|
+
# Starter Sets
|
|
2
|
+
|
|
3
|
+
Scriveno has a large command surface because it covers many kinds of writing. Starter sets give each writer a short path instead of asking them to learn every command up front.
|
|
4
|
+
|
|
5
|
+
Each set is intentionally small. Use `/scr-next`, `/scr:next`, or `$scr-next` whenever you are unsure which command should come next.
|
|
6
|
+
|
|
7
|
+
## Draft A Book
|
|
8
|
+
|
|
9
|
+
- `/scr:new-work` creates the project and work-type context.
|
|
10
|
+
- `/scr:profile-writer` turns the style guide into a real Voice DNA profile.
|
|
11
|
+
- `/scr:discuss` shapes the next unit with a few targeted questions.
|
|
12
|
+
- `/scr:plan` writes the next unit plan.
|
|
13
|
+
- `/scr:draft` drafts the planned unit in fresh context.
|
|
14
|
+
- `/scr:editor-review` reviews the draft for revision.
|
|
15
|
+
- `/scr:next` chooses the safest next move from project state.
|
|
16
|
+
|
|
17
|
+
## Polish A Manuscript
|
|
18
|
+
|
|
19
|
+
- `/scr:import` brings existing material into a Scriveno project.
|
|
20
|
+
- `/scr:profile-writer` calibrates the voice profile against your actual prose.
|
|
21
|
+
- `/scr:continuity-check` finds contradictions and timeline drift.
|
|
22
|
+
- `/scr:voice-check` compares drafts against Voice DNA.
|
|
23
|
+
- `/scr:line-edit` improves sentence-level flow.
|
|
24
|
+
- `/scr:copy-edit` catches grammar, clarity, and consistency issues.
|
|
25
|
+
- `/scr:polish` chains the revision passes when the manuscript is ready.
|
|
26
|
+
|
|
27
|
+
## Publish An Ebook
|
|
28
|
+
|
|
29
|
+
- `/scr:publish` starts the publication workflow.
|
|
30
|
+
- `/scr:front-matter` prepares title-page, copyright, and dedication pages.
|
|
31
|
+
- `/scr:back-matter` prepares author notes, acknowledgments, and reader materials.
|
|
32
|
+
- `/scr:blurb` drafts store-facing description copy.
|
|
33
|
+
- `/scr:cover-art` prepares cover direction or cover assets.
|
|
34
|
+
- `/scr:build-ebook` builds the ebook package.
|
|
35
|
+
- `/scr:export` writes the selected export format.
|
|
36
|
+
|
|
37
|
+
## Translate A Work
|
|
38
|
+
|
|
39
|
+
- `/scr:translation-glossary` defines recurring terms, names, and voice rules.
|
|
40
|
+
- `/scr:translation-memory` records approved translation decisions.
|
|
41
|
+
- `/scr:translate` translates the selected unit or manuscript segment.
|
|
42
|
+
- `/scr:cultural-adaptation` flags idioms and culture-specific phrasing.
|
|
43
|
+
- `/scr:back-translate` checks whether meaning survived translation.
|
|
44
|
+
- `/scr:multi-publish` prepares parallel translated editions.
|
|
45
|
+
|
|
46
|
+
## Build Sacred Commentary
|
|
47
|
+
|
|
48
|
+
- `/scr:new-work` creates a commentary, devotional, homiletic, or scripture project.
|
|
49
|
+
- `/scr:sacred:source-tracking` records primary and secondary source anchors.
|
|
50
|
+
- `/scr:sacred:concordance` builds searchable term and passage links.
|
|
51
|
+
- `/scr:sacred:cross-reference` maps related passages and interpretive connections.
|
|
52
|
+
- `/scr:sacred:doctrinal-check` verifies internal consistency and tradition constraints.
|
|
53
|
+
- `/scr:draft` writes the next commentary or sacred text unit.
|
|
54
|
+
- `/scr:editor-review` reviews the unit without flattening the tradition-native vocabulary.
|
|
55
|
+
|
|
56
|
+
## Repair And Resume
|
|
57
|
+
|
|
58
|
+
- `/scr:health` diagnoses missing files, stale state, and broken project assumptions.
|
|
59
|
+
- `/scr:sync` checks installed command, agent, and helper surfaces.
|
|
60
|
+
- `/scr:scan` refreshes project inventory.
|
|
61
|
+
- `/scr:check-notes` surfaces open notes and unresolved reminders.
|
|
62
|
+
- `/scr:resume-work` restores the paused thread or project state.
|
|
63
|
+
- `/scr:next` chooses the next safe command.
|
|
64
|
+
|
|
65
|
+
## Command Shape By Runtime
|
|
66
|
+
|
|
67
|
+
The starter sets use `/scr:*` because that is the shared command id format in Scriveno docs. Host surfaces differ:
|
|
68
|
+
|
|
69
|
+
- Claude Code uses flat commands such as `/scr-draft`.
|
|
70
|
+
- Standard command-directory runtimes currently keep `/scr:draft`.
|
|
71
|
+
- Codex uses generated skills such as `$scr-draft`.
|
|
72
|
+
- Guided targets such as Perplexity Desktop follow their generated setup instructions.
|
|
73
|
+
|
|
74
|
+
See [Runtime Support](runtime-support.md) for the canonical runtime matrix.
|
package/docs/testing.md
CHANGED
|
@@ -10,7 +10,8 @@ The root `package.json` defines:
|
|
|
10
10
|
"scripts": {
|
|
11
11
|
"test": "node --test test/*.test.js",
|
|
12
12
|
"pack:check": "npm pack --dry-run",
|
|
13
|
-
"
|
|
13
|
+
"policy:check": "node scripts/check-writing-policy.js",
|
|
14
|
+
"release:check": "npm test && npm run policy:check && npm run pack:check",
|
|
14
15
|
"prepublishOnly": "npm run release:check"
|
|
15
16
|
}
|
|
16
17
|
```
|
|
@@ -19,7 +20,8 @@ That means:
|
|
|
19
20
|
|
|
20
21
|
- `npm test` runs the whole test suite
|
|
21
22
|
- `npm run pack:check` verifies the package contents that would ship
|
|
22
|
-
- `npm run
|
|
23
|
+
- `npm run policy:check` scans tracked text files for the repo writing policy
|
|
24
|
+
- `npm run release:check` runs tests, policy checks, and package checks
|
|
23
25
|
- publishing is guarded by `release:check` through `prepublishOnly`
|
|
24
26
|
|
|
25
27
|
## Run the suite
|
|
@@ -95,8 +97,10 @@ Use these when changing README, docs, shipped-assets claims, or milestone trust
|
|
|
95
97
|
|
|
96
98
|
- `test/phase13-launch-surface-integrity.test.js`
|
|
97
99
|
- `test/phase15-proof-artifacts-positioning.test.js`
|
|
100
|
+
- `test/first-run-proof-surface.test.js`
|
|
98
101
|
- `test/phase19-verification-trust-surface-updates.test.js`
|
|
99
102
|
- `test/repository-policy.test.js`
|
|
103
|
+
- `npm run policy:check`
|
|
100
104
|
|
|
101
105
|
### Feature-family regression tests
|
|
102
106
|
|
|
@@ -136,6 +140,12 @@ For the standard release gate, prefer:
|
|
|
136
140
|
npm run release:check
|
|
137
141
|
```
|
|
138
142
|
|
|
143
|
+
For docs, prompt, command markdown, and release-note changes, run:
|
|
144
|
+
|
|
145
|
+
```bash
|
|
146
|
+
npm run policy:check
|
|
147
|
+
```
|
|
148
|
+
|
|
139
149
|
When changing proactive routing, runtime install paths, or agent surfaces, also run:
|
|
140
150
|
|
|
141
151
|
```bash
|
|
@@ -148,6 +158,8 @@ scriveno routes --json
|
|
|
148
158
|
|
|
149
159
|
Use those for release prep so you can inspect what would ship without mutating the registry.
|
|
150
160
|
|
|
161
|
+
For the full publish path, including clearing local installs, packing, publishing, pushing, creating the GitHub release, and verifying `scriveno@latest`, use [Release Checklist](release-checklist.md).
|
|
162
|
+
|
|
151
163
|
## Practical workflow
|
|
152
164
|
|
|
153
165
|
For most changes:
|
|
@@ -156,11 +168,14 @@ For most changes:
|
|
|
156
168
|
2. make the fix
|
|
157
169
|
3. rerun the targeted files
|
|
158
170
|
4. run `npm test`
|
|
159
|
-
5. if
|
|
171
|
+
5. if docs, prompts, commands, or release notes changed, run `npm run policy:check`
|
|
172
|
+
6. if packaging or release docs changed, run `npm run release:check`
|
|
160
173
|
|
|
161
174
|
## Related docs
|
|
162
175
|
|
|
163
176
|
- [Development](development.md)
|
|
164
177
|
- [Configuration](configuration.md)
|
|
165
178
|
- [Contributing](contributing.md)
|
|
179
|
+
- [Quick Proof](quick-proof.md)
|
|
180
|
+
- [Release Checklist](release-checklist.md)
|
|
166
181
|
- [Release Notes](release-notes.md)
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "scriveno",
|
|
3
|
-
"version": "2.0.
|
|
3
|
+
"version": "2.0.12",
|
|
4
4
|
"description": "Spec-driven creative writing, publishing, and translation pipeline for AI coding agents. From blank page to published book.",
|
|
5
5
|
"bin": {
|
|
6
6
|
"scriveno": "bin/install.js"
|
|
@@ -9,7 +9,8 @@
|
|
|
9
9
|
"start": "node bin/install.js",
|
|
10
10
|
"test": "node --test test/*.test.js",
|
|
11
11
|
"pack:check": "npm pack --dry-run",
|
|
12
|
-
"
|
|
12
|
+
"policy:check": "node scripts/check-writing-policy.js",
|
|
13
|
+
"release:check": "npm test && npm run policy:check && npm run pack:check",
|
|
13
14
|
"prepublishOnly": "npm run release:check"
|
|
14
15
|
},
|
|
15
16
|
"publishConfig": {
|
|
@@ -47,6 +48,7 @@
|
|
|
47
48
|
"commands/",
|
|
48
49
|
"agents/",
|
|
49
50
|
"templates/",
|
|
51
|
+
"scripts/",
|
|
50
52
|
"docs/",
|
|
51
53
|
"README.md",
|
|
52
54
|
"LICENSE"
|
|
@@ -0,0 +1,86 @@
|
|
|
1
|
+
#!/usr/bin/env node
|
|
2
|
+
|
|
3
|
+
const fs = require('node:fs');
|
|
4
|
+
const path = require('node:path');
|
|
5
|
+
const { execSync } = require('node:child_process');
|
|
6
|
+
|
|
7
|
+
const ROOT = path.join(__dirname, '..');
|
|
8
|
+
const BINARY_EXTENSIONS = new Set([
|
|
9
|
+
'.docx',
|
|
10
|
+
'.gif',
|
|
11
|
+
'.ico',
|
|
12
|
+
'.jpeg',
|
|
13
|
+
'.jpg',
|
|
14
|
+
'.pdf',
|
|
15
|
+
'.png',
|
|
16
|
+
'.tgz',
|
|
17
|
+
'.zip',
|
|
18
|
+
]);
|
|
19
|
+
|
|
20
|
+
function trackedFiles() {
|
|
21
|
+
const output = execSync('git ls-files', { cwd: ROOT, encoding: 'utf8' }).trim();
|
|
22
|
+
return output ? output.split(/\n/) : [];
|
|
23
|
+
}
|
|
24
|
+
|
|
25
|
+
function isBinaryPath(relativePath) {
|
|
26
|
+
return BINARY_EXTENSIONS.has(path.extname(relativePath).toLowerCase());
|
|
27
|
+
}
|
|
28
|
+
|
|
29
|
+
function lineNumberFor(source, index) {
|
|
30
|
+
return source.slice(0, index).split('\n').length;
|
|
31
|
+
}
|
|
32
|
+
|
|
33
|
+
function shouldFlag(codePoint, char) {
|
|
34
|
+
return codePoint === 0x2013
|
|
35
|
+
|| codePoint === 0x2014
|
|
36
|
+
|| /\p{Extended_Pictographic}/u.test(char);
|
|
37
|
+
}
|
|
38
|
+
|
|
39
|
+
function scan() {
|
|
40
|
+
const findings = [];
|
|
41
|
+
|
|
42
|
+
for (const relativePath of trackedFiles()) {
|
|
43
|
+
if (isBinaryPath(relativePath)) {
|
|
44
|
+
continue;
|
|
45
|
+
}
|
|
46
|
+
|
|
47
|
+
const absolutePath = path.join(ROOT, relativePath);
|
|
48
|
+
const buffer = fs.readFileSync(absolutePath);
|
|
49
|
+
if (buffer.includes(0)) {
|
|
50
|
+
continue;
|
|
51
|
+
}
|
|
52
|
+
|
|
53
|
+
const source = buffer.toString('utf8');
|
|
54
|
+
for (let index = 0; index < source.length; index += 1) {
|
|
55
|
+
const codePoint = source.codePointAt(index);
|
|
56
|
+
const char = String.fromCodePoint(codePoint);
|
|
57
|
+
if (shouldFlag(codePoint, char)) {
|
|
58
|
+
findings.push({
|
|
59
|
+
codePoint,
|
|
60
|
+
line: lineNumberFor(source, index),
|
|
61
|
+
relativePath,
|
|
62
|
+
});
|
|
63
|
+
}
|
|
64
|
+
|
|
65
|
+
if (codePoint > 0xffff) {
|
|
66
|
+
index += 1;
|
|
67
|
+
}
|
|
68
|
+
}
|
|
69
|
+
}
|
|
70
|
+
|
|
71
|
+
return findings;
|
|
72
|
+
}
|
|
73
|
+
|
|
74
|
+
const findings = scan();
|
|
75
|
+
|
|
76
|
+
for (const finding of findings) {
|
|
77
|
+
const hex = finding.codePoint.toString(16).toUpperCase().padStart(4, '0');
|
|
78
|
+
console.error(`${finding.relativePath}:${finding.line}: forbidden U+${hex}`);
|
|
79
|
+
}
|
|
80
|
+
|
|
81
|
+
if (findings.length > 0) {
|
|
82
|
+
console.error(`Writing policy scan failed: ${findings.length} forbidden marker(s).`);
|
|
83
|
+
process.exit(1);
|
|
84
|
+
}
|
|
85
|
+
|
|
86
|
+
console.log('Writing policy scan passed.');
|
package/templates/config.json
CHANGED
|
@@ -42,4 +42,4 @@
|
|
|
42
42
|
|
|
43
43
|
---
|
|
44
44
|
|
|
45
|
-
*Drafter agents check this file to avoid contradicting established doctrines when drafting passages. `/scr:doctrinal-check` flags any unit that contradicts or undermines an affirmed doctrine without explicit intent.*
|
|
45
|
+
*Drafter agents check this file to avoid contradicting established doctrines when drafting passages. `/scr:sacred:doctrinal-check` flags any unit that contradicts or undermines an affirmed doctrine without explicit intent.*
|
|
@@ -49,4 +49,4 @@
|
|
|
49
49
|
|
|
50
50
|
---
|
|
51
51
|
|
|
52
|
-
*When drafting any unit involving figures, the drafter agent checks this file to verify lineage claims, covenant references, and relationships. Contradictions are flagged by `/scr:doctrinal-check`.*
|
|
52
|
+
*When drafting any unit involving figures, the drafter agent checks this file to verify lineage claims, covenant references, and relationships. Contradictions are flagged by `/scr:sacred:doctrinal-check`.*
|