| 100.00% | Adverbs in dialogue tags | Target: ≤10% dialogue tags with adverbs | | totalTags | 1 | | adverbTagCount | 0 | | adverbTags | (empty) | | dialogueSentences | 2 | | tagDensity | 0.5 | | leniency | 1 | | rawRatio | 0 | | effectiveRatio | 0 | |
| 89.38% | AI-ism adverb frequency | Target: <2% AI-ism adverbs (58 tracked) | | wordCount | 1412 | | totalAiIsmAdverbs | 3 | | found | | | highlights | | 0 | "very" | | 1 | "slightly" | | 2 | "slowly" |
| |
| 100.00% | AI-ism character names | Target: 0 AI-default names (17 tracked, −20% each) | | codexExemptions | (empty) | | found | (empty) | |
| 100.00% | AI-ism location names | Target: 0 AI-default location names (33 tracked, −20% each) | | codexExemptions | (empty) | | found | (empty) | |
| 25.64% | AI-ism word frequency | Target: <2% AI-ism words (290 tracked) | | wordCount | 1412 | | totalAiIsms | 21 | | found | | | highlights | | 0 | "whisper" | | 1 | "fractured" | | 2 | "pulsed" | | 3 | "weight" | | 4 | "shimmered" | | 5 | "sanctuary" | | 6 | "pulse" | | 7 | "synchronized" | | 8 | "throbbed" | | 9 | "silence" | | 10 | "glistening" | | 11 | "searing" | | 12 | "rhythmic" | | 13 | "silk" | | 14 | "normalcy" | | 15 | "warmth" | | 16 | "pounding" |
| |
| 100.00% | Cliché density | Target: ≤1 cliche(s) per 800-word window | | totalCliches | 0 | | maxInWindow | 0 | | found | (empty) | | highlights | (empty) | |
| 100.00% | Emotion telling (show vs. tell) | Target: ≤3% sentences with emotion telling | | emotionTells | 0 | | narrationSentences | 177 | | matches | (empty) | |
| 100.00% | Filter word density | Target: ≤3% sentences with filter/hedge words | | filterCount | 0 | | hedgeCount | 2 | | narrationSentences | 177 | | filterMatches | (empty) | | hedgeMatches | | |
| 100.00% | Gibberish response detection | Target: ≤1% gibberish-like sentences (hard fail if a sentence exceeds 800 words) | | analyzedSentences | 178 | | gibberishSentences | 0 | | adjustedGibberishSentences | 0 | | longSentenceCount | 0 | | runOnParagraphCount | 0 | | giantParagraphCount | 0 | | wordSaladCount | 0 | | repetitionLoopCount | 0 | | controlTokenCount | 0 | | maxSentenceWordsSeen | 35 | | ratio | 0 | | matches | (empty) | |
| 100.00% | Markdown formatting overuse | Target: ≤5% words in markdown formatting | | markdownSpans | 18 | | markdownWords | 47 | | totalWords | 1394 | | ratio | 0.034 | | matches | | 0 | "You have to see it for yourself. It’s not something you just see in pictures." | | 1 | "You Are Here." | | 2 | "leaned" | | 3 | "Isolde’s grove." | | 4 | "breathed." | | 5 | "pressure" | | 6 | "You shouldn’t be here." | | 7 | "portals" | | 8 | "Hel gates" | | 9 | "Dirt." | | 10 | "Bad idea to stay still." | | 11 | "there." | | 12 | "edible." | | 13 | "lunged." | | 14 | "It’s feeding on the scent." | | 15 | "snapped" | | 16 | "laughing." | | 17 | "feel" |
| |
| 100.00% | Missing dialogue indicators (quotation marks) | Target: ≤10% speech attributions without quotation marks | | totalAttributions | 3 | | unquotedAttributions | 0 | | matches | (empty) | |
| 100.00% | Name drop frequency | Target: ≤1.0 per-name mentions per 100 words | | totalMentions | 28 | | wordCount | 1386 | | uniqueNames | 10 | | maxNameDensity | 0.65 | | worstName | "Rory" | | maxWindowNameDensity | 1.5 | | worstWindowName | "Eva" | | discoveredNames | | Richmond | 2 | | Park | 2 | | Eva | 8 | | Are | 1 | | Heartstone | 2 | | Rory | 9 | | Loose | 1 | | Tooting | 1 | | High | 1 | | Street | 1 |
| | persons | | | places | | 0 | "Richmond" | | 1 | "Park" | | 2 | "Tooting" | | 3 | "High" | | 4 | "Street" |
| | globalScore | 1 | | windowScore | 1 | |
| 22.45% | Narrator intent-glossing | Target: ≤2% narration sentences with intent-glossing patterns | | analyzedSentences | 98 | | glossingSentenceCount | 5 | | matches | | 0 | "looked like this could be safe" | | 1 | "as if mimicking a memory it had stolen" | | 2 | "smelled like copper and burnt sugar" | | 3 | "as if wanting to be closer to the portal" | | 4 | "felt like a shield" |
| |
| 0.00% | "Not X but Y" pattern overuse | Target: ≤1 "not X but Y" per 1000 words | | totalMatches | 4 | | per1kWords | 2.869 | | wordCount | 1394 | | matches | | 0 | "not just thick with humidity but dense, as if the very atmosphere had been woven into a secon" | | 1 | "not as sound but as *pressure*" | | 2 | "not with hands, but with tendrils of black vapor" | | 3 | "not physically, but with something deeper" |
| |
| 100.00% | Overuse of "that" (subordinate clause padding) | Target: ≤2% sentences with "that" clauses | | thatCount | 0 | | totalSentences | 178 | | matches | (empty) | |
| 100.00% | Paragraph length variance | Target: CV ≥0.5 for paragraph word counts | | totalParagraphs | 49 | | mean | 28.45 | | std | 23.97 | | cv | 0.843 | | sampleLengths | | 0 | 109 | | 1 | 47 | | 2 | 4 | | 3 | 75 | | 4 | 7 | | 5 | 64 | | 6 | 39 | | 7 | 13 | | 8 | 64 | | 9 | 27 | | 10 | 5 | | 11 | 26 | | 12 | 4 | | 13 | 27 | | 14 | 20 | | 15 | 24 | | 16 | 44 | | 17 | 17 | | 18 | 51 | | 19 | 33 | | 20 | 5 | | 21 | 29 | | 22 | 5 | | 23 | 8 | | 24 | 1 | | 25 | 48 | | 26 | 37 | | 27 | 44 | | 28 | 3 | | 29 | 87 | | 30 | 36 | | 31 | 11 | | 32 | 31 | | 33 | 18 | | 34 | 3 | | 35 | 4 | | 36 | 36 | | 37 | 39 | | 38 | 3 | | 39 | 39 | | 40 | 64 | | 41 | 5 | | 42 | 18 | | 43 | 41 | | 44 | 4 | | 45 | 11 | | 46 | 30 | | 47 | 25 | | 48 | 9 |
| |
| 99.32% | Passive voice overuse | Target: ≤2% passive sentences | | passiveCount | 3 | | totalSentences | 177 | | matches | | 0 | "been woven" | | 1 | "been dragged" | | 2 | "was fused" |
| |
| 89.35% | Past progressive (was/were + -ing) overuse | Target: ≤2% past progressive verbs | | pastProgressiveCount | 4 | | totalVerbs | 241 | | matches | | 0 | "wasn’t looking" | | 1 | "was peeling" | | 2 | "wasn’t just pulsing" | | 3 | "was *laughing" |
| |
| 0.00% | Em-dash & semicolon overuse | Target: ≤2% sentences with em-dashes/semicolons | | emDashCount | 22 | | semicolonCount | 0 | | flaggedSentences | 21 | | totalSentences | 178 | | ratio | 0.118 | | matches | | 0 | "The evening air in Richmond Park carried the damp scent of earth and fallen leaves, but beneath it lurked something else—something metallic and faintly sweet, like old pennies left too long in the rain." | | 1 | "Somewhere in the distance, an owl called—too abrupt, too clear." | | 2 | "A blue dot pulsed on the screen—*You Are Here.* She laughed once, shaky, and stepped forward again." | | 3 | "No—like eyes." | | 4 | "Like a curtain barely parted, revealing something on the other side—something darker." | | 5 | "She lifted her foot to take another step—and the ground moved beneath her." | | 6 | "The pulse beneath her skin synchronized with the faint inner glow of the gem—deep crimson, like dried blood caught in amber." | | 7 | "This time, she identified it not as sound but as *pressure*—a presence pressing into the cavity of her skull, a voice shaped from silence and breath." | | 8 | "The clearing beyond the triangle was small—maybe twenty paces across." | | 9 | "*Dirt.* Loose, dark, speckled with something shiny—tiny fragments like glass or bone." | | 10 | "Except—yes." | | 11 | "Patches of pale glimmered—teeth?" | | 12 | "Fingers?—before the thing melted back into shadow." | | 13 | "It didn’t have a face—just a smooth plane of stretched skin, until it opened its mouth too wide, a vertical slit filled with needle teeth." | | 14 | "It snatched the container, overturning it, and began to feed—not with hands, but with tendrils of black vapor that unraveled from its limbs and dipped into the food like rakes into soil." | | 15 | "Sniffed the air—her direction." | | 16 | "The air filled with a new sound—distant, rhythmic, like wings." | | 17 | "She leapt over a fallen log and nearly screamed—its bark was peeling back in strips, revealing something pale and squirming beneath." | | 18 | "The wrongness lessened—but didn’t disappear." | | 19 | "But it was fused now—not physically, but with something deeper." | | 20 | "The ugliness of the city—traffic, streetlights, the hum of human life—felt like a shield." |
| |
| 95.74% | Purple prose (modifier overload) | Target: <4% adverbs, <2% -ly adverbs, no adj stacking | | wordCount | 1404 | | adjectiveStacks | 0 | | stackExamples | (empty) | | adverbCount | 63 | | adverbRatio | 0.04487179487179487 | | lyAdverbCount | 12 | | lyAdverbRatio | 0.008547008547008548 | |
| 100.00% | Repeated phrase echo | Target: ≤20% sentences with echoes (window: 2) | | totalSentences | 178 | | echoCount | 0 | | echoWords | (empty) | |
| 100.00% | Sentence length variance | Target: CV ≥0.4 for sentence word counts | | totalSentences | 178 | | mean | 7.83 | | std | 6.4 | | cv | 0.817 | | sampleLengths | | 0 | 21 | | 1 | 34 | | 2 | 23 | | 3 | 6 | | 4 | 4 | | 5 | 6 | | 6 | 7 | | 7 | 8 | | 8 | 6 | | 9 | 10 | | 10 | 3 | | 11 | 5 | | 12 | 4 | | 13 | 12 | | 14 | 7 | | 15 | 1 | | 16 | 3 | | 17 | 16 | | 18 | 24 | | 19 | 11 | | 20 | 4 | | 21 | 3 | | 22 | 17 | | 23 | 7 | | 24 | 20 | | 25 | 2 | | 26 | 4 | | 27 | 5 | | 28 | 12 | | 29 | 5 | | 30 | 4 | | 31 | 12 | | 32 | 3 | | 33 | 4 | | 34 | 12 | | 35 | 11 | | 36 | 9 | | 37 | 13 | | 38 | 2 | | 39 | 2 | | 40 | 18 | | 41 | 8 | | 42 | 10 | | 43 | 2 | | 44 | 10 | | 45 | 12 | | 46 | 21 | | 47 | 4 | | 48 | 2 | | 49 | 4 |
| |
| 33.71% | Sentence opener variety | Target: ≥60% unique sentence openers | | consecutiveRepeats | 29 | | diversityRatio | 0.29775280898876405 | | totalSentences | 178 | | uniqueOpeners | 53 | |
| 94.56% | Adverb-first sentence starts | Target: ≥3% sentences starting with an adverb | | adverbCount | 4 | | totalSentences | 141 | | matches | | 0 | "Somewhere in the distance, an" | | 1 | "Then another answered." | | 2 | "Then she heard the breathing." | | 3 | "Fingers?—before the thing melted back" |
| | ratio | 0.028 | |
| 78.16% | Pronoun-first sentence starts | Target: ≤30% sentences starting with a pronoun | | pronounCount | 50 | | totalSentences | 141 | | matches | | 0 | "She adjusted the strap of" | | 1 | "*You have to see it" | | 2 | "It’s not something you just" | | 3 | "Her trainers crunched over brittle" | | 4 | "It wasn’t a hoot." | | 5 | "It was a human whisper," | | 6 | "She froze, heart kicking against" | | 7 | "She’d imagined it." | | 8 | "She reached into her jacket" | | 9 | "They *leaned*, just slightly, as" | | 10 | "She knew this place." | | 11 | "She’d heard the name whispered" | | 12 | "She lifted her foot to" | | 13 | "It *breathed.* A slow, living" | | 14 | "She stumbled back, boots sinking" | | 15 | "She hadn’t even realized she’d" | | 16 | "It throbbed once, twice." | | 17 | "*You shouldn’t be here.*" | | 18 | "She exhaled, trying to steady" | | 19 | "Her voice sounded small and" |
| | ratio | 0.355 | |
| 69.93% | Subject-first sentence starts | Target: ≤72% sentences starting with a subject | | subjectCount | 110 | | totalSentences | 141 | | matches | | 0 | "Rory pushed through the bramble" | | 1 | "The evening air in Richmond" | | 2 | "She adjusted the strap of" | | 3 | "The grove wasn’t on any" | | 4 | "That was the point." | | 5 | "*You have to see it" | | 6 | "It’s not something you just" | | 7 | "Her trainers crunched over brittle" | | 8 | "It wasn’t a hoot." | | 9 | "It was a human whisper," | | 10 | "She froze, heart kicking against" | | 11 | "She’d imagined it." | | 12 | "Moonlight fractured through the canopy" | | 13 | "The air felt heavier here," | | 14 | "She reached into her jacket" | | 15 | "A blue dot pulsed on" | | 16 | "That’s when she saw the" | | 17 | "Eyes watching without lids." | | 18 | "The stones didn’t just stand." | | 19 | "They *leaned*, just slightly, as" |
| | ratio | 0.78 | |
| 35.46% | Subordinate conjunction sentence starts | Target: ≥2% sentences starting with a subordinating conjunction | | subConjCount | 1 | | totalSentences | 141 | | matches | | | ratio | 0.007 | |
| 90.91% | Technical jargon density | Target: ≤6% sentences with technical-jargon patterns | | analyzedSentences | 55 | | technicalSentenceCount | 4 | | matches | | 0 | "The air felt heavier here, not just thick with humidity but dense, as if the very atmosphere had been woven into a second skin." | | 1 | "But superstition has a way of becoming real when you’re standing between standing stones that shouldn’t exist." | | 2 | "In the center stood a single yew tree, its branches clawing upward like skeletal hands trying to drag the sky down." | | 3 | "It snatched the container, overturning it, and began to feed—not with hands, but with tendrils of black vapor that unraveled from its limbs and dipped into the …" |
| |
| 100.00% | Useless dialogue additions | Target: ≤5% dialogue tags with trailing filler fragments | | totalTags | 1 | | uselessAdditionCount | 0 | | matches | (empty) | |
| 100.00% | Dialogue tag variety (said vs. fancy) | Target: ≤10% fancy dialogue tags | |