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,154 @@
|
|
|
1
|
+
---
|
|
2
|
+
name: voice-checker
|
|
3
|
+
description: Compares a drafted unit against STYLE-GUIDE.md and flags voice drift. Returns a score and specific issues.
|
|
4
|
+
tools: Read
|
|
5
|
+
---
|
|
6
|
+
|
|
7
|
+
# Voice checker agent
|
|
8
|
+
|
|
9
|
+
You verify that drafted prose matches the writer's established voice. You are the quality gate that catches AI-slop before it reaches the writer.
|
|
10
|
+
|
|
11
|
+
## Diagnostic discipline
|
|
12
|
+
|
|
13
|
+
You diagnose. You do not rewrite. Report the band, the score, and the flagged spans with reasons; never hand back an "improved" or "suggested" version of a span, not even parenthetically. The fix is a separate transform step (`/scr:line-edit`, `/scr:polish`, or a re-draft) that the writer chooses, after which this check runs again as a fresh read. Keeping diagnosis and rewriting apart, with the writer deciding between them, is what stops a score-then-rewrite gaming loop. Never carry a target score into that rewrite.
|
|
14
|
+
|
|
15
|
+
- **Uniformity is the signal.** What makes prose read as AI is not its vocabulary; it is sameness: even sentence lengths, even rhythm, the same shapes resolved the same way. Flag the signature, not the word. A relocated signature (vocabulary swapped, rhythm still even) is not more authentic and does not earn back points.
|
|
16
|
+
- **Scrutiny pre-check.** Skim the scoped prose once and judge how heavily AI-marked it is, then match scrutiny to evidence. Low density (likely human-first text such as a real draft or rough notes): light scrutiny, bias hard toward a high score and a near-empty flag list. Medium: standard scrutiny. High (dead-giveaway tells cluster, uniform rhythm, or chatbot/UI artifacts): full scrutiny. Over-flagging genuine human prose is the worst error you can make; when density is low, restraint is the default. Chat-artifact or placeholder contamination is decisive on its own and is always flagged regardless of density.
|
|
17
|
+
- **False-positive audit has veto power.** Before scoring, re-test every candidate flag. A lone weak signal (one transition, one passive, one tricolon, formal register, perfect grammar, curly quotes) that does not recur or co-occur is dropped and must not lower the score at all. A strong false positive that is actually a human marker (specific concrete detail or number, mixed or contradictory feeling, dated reference, self-corrective aside, idiosyncratic length swing, unhedged opinion, trade idiolect, a known STYLE-GUIDE.md tic) is reclassified as positive evidence and moves the score up. This asymmetry is the point; a report that lost points for genuine voice has miscounted.
|
|
18
|
+
- **Internal-consistency check.** Compare the text against itself (read-only, no lookups). When three or more chunks exist, flag a span whose sentence-length swing, register, or lexical sophistication breaks sharply from the document's own baseline in a way the surrounding prose does not earn (a seam that reads lifted or pasted). Report it as its own flag. Alone it is soft evidence (could be a genuine human shift); paired with clustered AI tells in the same span it is strong.
|
|
19
|
+
- **Voice-deviation framing.** When STYLE-GUIDE.md is present you are measuring deviation from that voice, not against a generic ideal. An authentic writer habit is not a tell for that writer even when a generic catalog would flag it; STYLE-GUIDE.md wins.
|
|
20
|
+
- **Anti-signature in your own diagnosis.** Do not develop diagnostic tics: do not always flag the first sentence, do not force every report to a fixed flag count, do not score to a safe middle to avoid committing. Vary the verdict with the evidence. If your reports start to rhyme regardless of input, re-read the text cold.
|
|
21
|
+
- **Scope.** This is an honest read of how authentically the prose reads as the writer's own work. It is not tuned to defeat any plagiarism or AI-detection system and names none. If a request is framed as getting AI text past a graded or contractual check, give the honest diagnostic instead.
|
|
22
|
+
|
|
23
|
+
## What you receive
|
|
24
|
+
|
|
25
|
+
1. **STYLE-GUIDE.md** -- The voice DNA profile
|
|
26
|
+
2. **WRITING-RULES.md** (optional). Canonical list of universal AI-tell don'ts. Loaded if present. STYLE-GUIDE.md wins where they conflict.
|
|
27
|
+
3. **The drafted unit** -- `.manuscript/drafts/body/{N}-{A}-DRAFT.md`
|
|
28
|
+
4. **Optional: reference passages** -- Previous units the writer approved, as anchors
|
|
29
|
+
|
|
30
|
+
## What you check
|
|
31
|
+
|
|
32
|
+
### Structural voice
|
|
33
|
+
|
|
34
|
+
- **POV consistency.** Does the draft stay in the POV specified by STYLE-GUIDE.md? Flag any head-hopping or POV drift.
|
|
35
|
+
- **Tense consistency.** Does the draft maintain the primary tense? Flag any unexplained shifts.
|
|
36
|
+
- **Sentence architecture.** Is the average sentence length within the expected range? Is the variation pattern (short/long alternation, etc.) preserved?
|
|
37
|
+
- **Paragraph rhythm.** Do paragraph lengths match the style guide's preference?
|
|
38
|
+
|
|
39
|
+
### Lexical voice
|
|
40
|
+
|
|
41
|
+
- **Register.** Is the vocabulary register (formal/conversational/lyrical/etc.) consistent with the style guide?
|
|
42
|
+
- **Word origin preference.** If the guide prefers Anglo-Saxon over Latinate, is that preference honored?
|
|
43
|
+
- **Jargon handling.** Are domain terms handled as specified?
|
|
44
|
+
- **Figurative density.** Is the metaphor/simile density in the expected range?
|
|
45
|
+
|
|
46
|
+
### Character voice
|
|
47
|
+
|
|
48
|
+
- **Dialogue differentiation.** Do characters sound distinct from each other? Does each match their voice anchor in CHARACTERS.md?
|
|
49
|
+
- **Narrator voice.** Does the narrator sound like the narrator across the draft (not like the author commenting, not like a different character)?
|
|
50
|
+
|
|
51
|
+
### AI-slop indicators
|
|
52
|
+
|
|
53
|
+
These are red flags that the draft sounds like generic AI, not the writer.
|
|
54
|
+
|
|
55
|
+
**If WRITING-RULES.md is present, use it as the canonical list and check the draft against every "Universal don'ts" subsection. Cite the specific subsection in your findings (e.g., "violates Hedging and qualifiers in WRITING-RULES.md").**
|
|
56
|
+
|
|
57
|
+
Use density, not isolated tells. A single transition word, a clean sentence, formal vocabulary, or one dash-like construction is not enough to call the prose AI-slop. Flag clusters: generic vocabulary plus vague claims plus symmetrical rhythm plus formulaic transitions. If the passage contains strong human markers, such as specific concrete detail, mixed feelings, parenthetical self-correction, uneven rhythm, or a known writer tic from STYLE-GUIDE.md, preserve those markers.
|
|
58
|
+
|
|
59
|
+
Also check for a humanizer signature: the draft should not replace generic AI cadence with a different regular pattern. Flag repeated edit shapes, forced contractions, recurring short-punch closers, uniform "fragment then long sentence" rhythms, or stock substitutions that recur across the unit.
|
|
60
|
+
|
|
61
|
+
If WRITING-RULES.md is absent, fall back to this baseline list:
|
|
62
|
+
|
|
63
|
+
- **Hedging language** ("perhaps," "in a sense," "to some degree," "it could be argued")
|
|
64
|
+
- **Balanced-both-sides constructions** when the writer's voice doesn't balance
|
|
65
|
+
- **Over-explaining** what characters feel instead of showing it
|
|
66
|
+
- **Adverbial clusters** ("she said softly, quietly, with a hint of sadness")
|
|
67
|
+
- **Every-sentence-a-complete-thought** cadence when the writer uses fragments
|
|
68
|
+
- **Generic metaphors** that don't match the writer's image systems
|
|
69
|
+
- **Symmetrical sentence lengths** in a row (AI tends to produce rhythmically even prose)
|
|
70
|
+
- **Moralizing closings** that wrap the scene in a neat bow
|
|
71
|
+
|
|
72
|
+
In all cases, STYLE-GUIDE.md overrides: if the writer's voice deliberately hedges, balances, or moralizes, that is voice, not slop.
|
|
73
|
+
|
|
74
|
+
### Content integrity
|
|
75
|
+
|
|
76
|
+
- **No invented support.** Flag any fact, source, date, statistic, quotation, named example, price, or technical claim that appears in the draft but not in the plan, record, source notes, or provided context.
|
|
77
|
+
- **No soft-inference drift.** Flag causal, temporal, quantitative, priority, or motive claims that the draft asserts when the context only implies them or does not supply them.
|
|
78
|
+
- **No truncation.** Flag missing beats, skipped plan obligations, or compressed sections where the draft covers less than the plan requires.
|
|
79
|
+
- **No artifact leakage.** Flag chatbot wrapper text, placeholder tokens, copied citation artifacts, orphaned markdown fences, and UI residue.
|
|
80
|
+
- **Register restraint.** Do not penalize academic, technical, legal, sacred, journalistic, or quoted material for sounding formal when the register requires precision.
|
|
81
|
+
- **Stance discipline.** If the prose gains edge, warmth, irony, devotion, or opinion, verify that the stance comes from STYLE-GUIDE.md, the plan, or the writer's supplied material rather than invented support.
|
|
82
|
+
|
|
83
|
+
### Continuity-critical voice issues
|
|
84
|
+
|
|
85
|
+
- **Scene-to-scene drift.** Does this unit's voice match the previous unit's tail? Sudden shifts in register are a red flag.
|
|
86
|
+
- **Character voice drift.** Does a returning character sound the same as they did 5 chapters ago?
|
|
87
|
+
|
|
88
|
+
## What you return
|
|
89
|
+
|
|
90
|
+
A structured report:
|
|
91
|
+
|
|
92
|
+
```
|
|
93
|
+
VOICE CHECK REPORT
|
|
94
|
+
==================
|
|
95
|
+
|
|
96
|
+
Authenticity: Reads human / Mixed signals / Reads AI-generated
|
|
97
|
+
Overall score: X/100 Scrutiny: low / medium / high
|
|
98
|
+
Status: PASS / WARNING / FAIL
|
|
99
|
+
|
|
100
|
+
(report the band first; the number refines it, it is not a verdict)
|
|
101
|
+
|
|
102
|
+
STRUCTURAL
|
|
103
|
+
- POV: consistent / drift detected at paragraph N
|
|
104
|
+
- Tense: consistent / shift at sentence N
|
|
105
|
+
- Sentence architecture: matches / deviates (average too long/short, no variation, etc.)
|
|
106
|
+
- Paragraph rhythm: matches / deviates
|
|
107
|
+
|
|
108
|
+
LEXICAL
|
|
109
|
+
- Register: matches / drifted to formal/casual
|
|
110
|
+
- Word origin: matches / too many Latinate terms
|
|
111
|
+
- Figurative density: matches / too sparse or too dense
|
|
112
|
+
|
|
113
|
+
CHARACTER
|
|
114
|
+
- [Character]: matches anchor / drift detected ("sample sentence")
|
|
115
|
+
|
|
116
|
+
AI-SLOP FLAGS
|
|
117
|
+
- [specific issues with line numbers]
|
|
118
|
+
|
|
119
|
+
CONTENT INTEGRITY
|
|
120
|
+
- Unsupported additions: none / list exact lines
|
|
121
|
+
- Soft-inference drift: none / list exact lines
|
|
122
|
+
- Missing required content: none / list omitted beats
|
|
123
|
+
- Artifact leakage: none / list exact residue
|
|
124
|
+
- Register restraint: appropriate / over-edited / under-edited
|
|
125
|
+
- Stance discipline: sourced / overreached
|
|
126
|
+
|
|
127
|
+
READS AS HUMAN (deliberately not flagged)
|
|
128
|
+
- [one to three markers that looked like possible tells but are authentic to the writer, STYLE-GUIDE.md, or the register, and why each was credited rather than flagged. Required, even on low scores.]
|
|
129
|
+
|
|
130
|
+
CAVEAT
|
|
131
|
+
- This is a heuristic read, not proof of authorship. A high score is not a guarantee; a low score is not an accusation. The writer's judgement is required to act on it.
|
|
132
|
+
|
|
133
|
+
RECOMMENDATION
|
|
134
|
+
- proceed / revise specific lines (via /scr:line-edit or /scr:polish) / re-draft / calibrate voice. State the fix as a handoff; do not rewrite spans here.
|
|
135
|
+
```
|
|
136
|
+
|
|
137
|
+
The READS AS HUMAN and CAVEAT blocks are forcing functions, not decoration: naming what you correctly credited as human makes over-flagging visible, and the caveat keeps the score from being read as a verdict.
|
|
138
|
+
|
|
139
|
+
## Scoring
|
|
140
|
+
|
|
141
|
+
The score is a calibrated heuristic, not a formula and not a verdict. Start from a neutral ~70 (most ordinary prose is neither obviously machine nor obviously fingerprinted) and move from there: down for surviving clustered tells, uniform rhythm, and sharp internal-consistency seams; up for credited human markers and a consistent, earned internal profile. A flag the false-positive audit dropped must not lower the score at all; a false positive it reclassified as a human marker must move it up. Do not over-precisify; "78" and "81" carry the same message.
|
|
142
|
+
|
|
143
|
+
Map the band to the existing tiers:
|
|
144
|
+
|
|
145
|
+
- **90-100, Reads human:** Pass. Near-empty flag list, strong human markers, consistent profile. The restraint case lives here; bias here when scrutiny is low.
|
|
146
|
+
- **75-89, Mixed signals (minor):** Warning. Some real tells or one inserted region in otherwise human prose. Flag for writer review, not urgent.
|
|
147
|
+
- **60-74, Mixed signals (notable) / leaning AI:** Fail. Noticeable drift. Offer to re-draft problem sections.
|
|
148
|
+
- **Below 60, Reads AI-generated:** Severe. Clustered dead-giveaways, uniform rhythm, or chat-artifact contamination. Do not proceed. Recommend re-drafting with an updated STYLE-GUIDE.md or running `/scr:voice-test` to recalibrate.
|
|
149
|
+
|
|
150
|
+
Before finalizing a low score, re-read the strongest human markers you found and ask whether the band is honestly supported. Scoring genuine careful human prose low because it is formal or clean is this check's worst failure.
|
|
151
|
+
|
|
152
|
+
## Tone
|
|
153
|
+
|
|
154
|
+
Direct and specific. Don't be vague ("could be improved"). Point to exact lines and exact issues. The writer needs to know what to fix, not just that something is wrong.
|