| 100.00% | Adverbs in dialogue tags | Target: ≤10% dialogue tags with adverbs | | totalTags | 28 | | adverbTagCount | 3 | | adverbTags | | 0 | "Aurora finally said [finally]" | | 1 | "he said quietly [quietly]" | | 2 | "she said finally [finally]" |
| | dialogueSentences | 62 | | tagDensity | 0.452 | | leniency | 0.903 | | rawRatio | 0.107 | | effectiveRatio | 0.097 | |
| 63.96% | AI-ism adverb frequency | Target: <2% AI-ism adverbs (58 tracked) | | wordCount | 1526 | | totalAiIsmAdverbs | 11 | | found | | 0 | | | 1 | | | 2 | | | 3 | | | 4 | | | 5 | | adverb | "barely above a whisper" | | count | 1 |
| | 6 | |
| | highlights | | 0 | "perfectly" | | 1 | "carefully" | | 2 | "truly" | | 3 | "completely" | | 4 | "slightly" | | 5 | "barely above a whisper" | | 6 | "quickly" |
| |
| 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) | |
| 41.02% | AI-ism word frequency | Target: <2% AI-ism words (290 tracked) | | wordCount | 1526 | | totalAiIsms | 18 | | found | | | highlights | | 0 | "echoed" | | 1 | "glinting" | | 2 | "velvet" | | 3 | "shattered" | | 4 | "flicker" | | 5 | "constructed" | | 6 | "whisper" | | 7 | "implication" | | 8 | "determined" | | 9 | "electric" | | 10 | "charged" | | 11 | "unspoken" | | 12 | "could feel" | | 13 | "tension" | | 14 | "anticipation" | | 15 | "familiar" | | 16 | "weight" |
| |
| 33.33% | Cliché density | Target: ≤1 cliche(s) per 800-word window | | totalCliches | 3 | | maxInWindow | 3 | | found | | 0 | | label | "couldn't help but" | | count | 1 |
| | 1 | | label | "hung in the air" | | count | 1 |
| | 2 | | label | "sent a shiver through" | | count | 1 |
|
| | highlights | | 0 | "couldn't help but smile" | | 1 | "hung in the air" | | 2 | "sent a jolt through" |
| |
| 100.00% | Emotion telling (show vs. tell) | Target: ≤3% sentences with emotion telling | | emotionTells | 1 | | narrationSentences | 74 | | matches | | |
| 100.00% | Filter word density | Target: ≤3% sentences with filter/hedge words | | filterCount | 1 | | hedgeCount | 0 | | narrationSentences | 74 | | filterMatches | | | hedgeMatches | (empty) | |
| 100.00% | Gibberish response detection | Target: ≤1% gibberish-like sentences (hard fail if a sentence exceeds 800 words) | | analyzedSentences | 108 | | gibberishSentences | 0 | | adjustedGibberishSentences | 0 | | longSentenceCount | 0 | | runOnParagraphCount | 0 | | giantParagraphCount | 0 | | wordSaladCount | 0 | | repetitionLoopCount | 0 | | controlTokenCount | 0 | | repeatedSegmentCount | 0 | | maxSentenceWordsSeen | 47 | | ratio | 0 | | matches | (empty) | |
| 100.00% | Markdown formatting overuse | Target: ≤5% words in markdown formatting | | markdownSpans | 0 | | markdownWords | 0 | | totalWords | 1513 | | ratio | 0 | | matches | (empty) | |
| 100.00% | Missing dialogue indicators (quotation marks) | Target: ≤10% speech attributions without quotation marks | | totalAttributions | 31 | | unquotedAttributions | 0 | | matches | (empty) | |
| 66.67% | Name drop frequency | Target: ≤1.0 per-name mentions per 100 words | | totalMentions | 42 | | wordCount | 935 | | uniqueNames | 10 | | maxNameDensity | 1.6 | | worstName | "Aurora" | | maxWindowNameDensity | 3 | | worstWindowName | "Aurora" | | discoveredNames | | Eva | 4 | | Carter | 1 | | Rory | 1 | | Chinese | 1 | | Moreau | 1 | | English | 1 | | Aurora | 15 | | Lucien | 15 | | Ptolemy | 2 | | Evan | 1 |
| | persons | | 0 | "Eva" | | 1 | "Carter" | | 2 | "Rory" | | 3 | "Moreau" | | 4 | "Aurora" | | 5 | "Lucien" | | 6 | "Ptolemy" | | 7 | "Evan" |
| | places | (empty) | | globalScore | 0.698 | | windowScore | 0.667 | |
| 100.00% | Narrator intent-glossing | Target: ≤2% narration sentences with intent-glossing patterns | | analyzedSentences | 61 | | glossingSentenceCount | 1 | | matches | | |
| 1.72% | "Not X but Y" pattern overuse | Target: ≤1 "not X but Y" per 1000 words | | totalMatches | 3 | | per1kWords | 1.983 | | wordCount | 1513 | | matches | | 0 | "Not just because of your expertise, but because you're the only one I trust to handle this properly" | | 1 | "Not just for this case, but" | | 2 | "not of fear, but of anticipation" |
| |
| 100.00% | Overuse of "that" (subordinate clause padding) | Target: ≤2% sentences with "that" clauses | | thatCount | 1 | | totalSentences | 108 | | matches | | |
| 100.00% | Paragraph length variance | Target: CV ≥0.5 for paragraph word counts | | totalParagraphs | 52 | | mean | 29.1 | | std | 16.23 | | cv | 0.558 | | sampleLengths | | 0 | 73 | | 1 | 70 | | 2 | 30 | | 3 | 9 | | 4 | 29 | | 5 | 63 | | 6 | 7 | | 7 | 49 | | 8 | 16 | | 9 | 37 | | 10 | 22 | | 11 | 34 | | 12 | 14 | | 13 | 15 | | 14 | 29 | | 15 | 30 | | 16 | 56 | | 17 | 11 | | 18 | 51 | | 19 | 16 | | 20 | 30 | | 21 | 24 | | 22 | 22 | | 23 | 28 | | 24 | 48 | | 25 | 26 | | 26 | 12 | | 27 | 31 | | 28 | 41 | | 29 | 48 | | 30 | 28 | | 31 | 14 | | 32 | 24 | | 33 | 10 | | 34 | 46 | | 35 | 15 | | 36 | 38 | | 37 | 43 | | 38 | 19 | | 39 | 10 | | 40 | 44 | | 41 | 20 | | 42 | 32 | | 43 | 6 | | 44 | 30 | | 45 | 10 | | 46 | 14 | | 47 | 39 | | 48 | 12 | | 49 | 38 |
| |
| 100.00% | Passive voice overuse | Target: ≤2% passive sentences | | passiveCount | 1 | | totalSentences | 74 | | matches | | |
| 100.00% | Past progressive (was/were + -ing) overuse | Target: ≤2% past progressive verbs | | pastProgressiveCount | 2 | | totalVerbs | 177 | | matches | | 0 | "was indicating" | | 1 | "was beginning" |
| |
| 0.00% | Em-dash & semicolon overuse | Target: ≤2% sentences with em-dashes/semicolons | | emDashCount | 11 | | semicolonCount | 0 | | flaggedSentences | 8 | | totalSentences | 108 | | ratio | 0.074 | | matches | | 0 | "Aurora Carter, Rory to her friends, tightened her grip on the book in her hand—something about demon law enforcement protocols that she'd been trying to focus on for the past hour without success." | | 1 | "Instead, she found herself staring into heterochromatic eyes—one amber, one black—framed by perfectly slicked-back platinum blond hair." | | 2 | "Eva's flat was a mess of books, scrolls, and research notes—every surface covered, stacks teetering precariously on chairs and the floor." | | 3 | "He winced, just slightly, a flicker of something—regret, perhaps—crossing his features before his carefully constructed mask fell back into place." | | 4 | "Her work with Eva, the late nights researching, the deliveries that sometimes took her to supernatural hotspots—it was all part of her need to make a difference, to protect people from the same kind of danger that had nearly consumed her when she was with Evan." | | 5 | "The tension between them had shifted, from hostility to something more complicated—hope mixed with caution, attraction tangled with lingering hurt." | | 6 | "The challenge of the hunt, the thrill of working with Lucien again, the possibility that this time things might be different between them—it was all intoxicating." | | 7 | "Whatever awaited them that night—danger, resolution, perhaps even a new beginning—she knew with sudden certainty that she wouldn't face it alone." |
| |
| 90.96% | Purple prose (modifier overload) | Target: <4% adverbs, <2% -ly adverbs, no adj stacking | | wordCount | 950 | | adjectiveStacks | 0 | | stackExamples | (empty) | | adverbCount | 44 | | adverbRatio | 0.04631578947368421 | | lyAdverbCount | 23 | | lyAdverbRatio | 0.024210526315789474 | |
| 100.00% | Repeated phrase echo | Target: ≤20% sentences with echoes (window: 2) | | totalSentences | 108 | | echoCount | 0 | | echoWords | (empty) | |
| 100.00% | Sentence length variance | Target: CV ≥0.4 for sentence word counts | | totalSentences | 108 | | mean | 14.01 | | std | 8.4 | | cv | 0.599 | | sampleLengths | | 0 | 17 | | 1 | 33 | | 2 | 23 | | 3 | 20 | | 4 | 17 | | 5 | 18 | | 6 | 15 | | 7 | 23 | | 8 | 7 | | 9 | 3 | | 10 | 6 | | 11 | 12 | | 12 | 17 | | 13 | 8 | | 14 | 34 | | 15 | 21 | | 16 | 7 | | 17 | 21 | | 18 | 28 | | 19 | 10 | | 20 | 6 | | 21 | 16 | | 22 | 17 | | 23 | 4 | | 24 | 12 | | 25 | 10 | | 26 | 20 | | 27 | 14 | | 28 | 7 | | 29 | 7 | | 30 | 15 | | 31 | 11 | | 32 | 18 | | 33 | 18 | | 34 | 12 | | 35 | 4 | | 36 | 6 | | 37 | 46 | | 38 | 11 | | 39 | 26 | | 40 | 25 | | 41 | 9 | | 42 | 7 | | 43 | 3 | | 44 | 27 | | 45 | 11 | | 46 | 1 | | 47 | 12 | | 48 | 11 | | 49 | 11 |
| |
| 70.06% | Sentence opener variety | Target: ≥60% unique sentence openers | | consecutiveRepeats | 1 | | diversityRatio | 0.42592592592592593 | | totalSentences | 108 | | uniqueOpeners | 46 | |
| 48.31% | Adverb-first sentence starts | Target: ≥3% sentences starting with an adverb | | adverbCount | 1 | | totalSentences | 69 | | matches | | 0 | "Instead, she found herself staring" |
| | ratio | 0.014 | |
| 46.09% | Pronoun-first sentence starts | Target: ≤30% sentences starting with a pronoun | | pronounCount | 30 | | totalSentences | 69 | | matches | | 0 | "She pulled the door open," | | 1 | "His ivory-handled cane rested against" | | 2 | "he said, his voice smooth" | | 3 | "He offered a small, practiced" | | 4 | "She hesitated, her hand still" | | 5 | "He'd been the first man" | | 6 | "he prompted when she didn't" | | 7 | "He turned to face her," | | 8 | "He winced, just slightly, a" | | 9 | "she laughed, a sharp, humorless" | | 10 | "he countered, taking a step" | | 11 | "She retreated toward the small" | | 12 | "he said, his voice dropping" | | 13 | "She couldn't deny that was" | | 14 | "Her work with Eva, the" | | 15 | "she asked, her tone softening" | | 16 | "she asked, looking up from" | | 17 | "She turned away, busying herself" | | 18 | "he said, his voice softer" | | 19 | "She stopped her fidgeting and" |
| | ratio | 0.435 | |
| 0.00% | Subject-first sentence starts | Target: ≤72% sentences starting with a subject | | subjectCount | 67 | | totalSentences | 69 | | matches | | 0 | "The three deadbolts slid back" | | 1 | "Aurora Carter, Rory to her" | | 2 | "The distraction had nothing to" | | 3 | "She pulled the door open," | | 4 | "Lucien Moreau stood in the" | | 5 | "His ivory-handled cane rested against" | | 6 | "he said, his voice smooth" | | 7 | "Aurora's breath hitched." | | 8 | "He offered a small, practiced" | | 9 | "She hesitated, her hand still" | | 10 | "The last time she'd seen" | | 11 | "He'd been the first man" | | 12 | "he prompted when she didn't" | | 13 | "Eva's flat was a mess" | | 14 | "The tabby cat, Ptolemy, who" | | 15 | "Aurora finally said, stepping aside" | | 16 | "Lucien stepped inside, his gaze" | | 17 | "He turned to face her," | | 18 | "Aurora crossed her arms, a" | | 19 | "He winced, just slightly, a" |
| | ratio | 0.971 | |
| 0.00% | Subordinate conjunction sentence starts | Target: ≥2% sentences starting with a subordinating conjunction | | subConjCount | 0 | | totalSentences | 69 | | matches | (empty) | | ratio | 0 | |
| 20.41% | Technical jargon density | Target: ≤6% sentences with technical-jargon patterns | | analyzedSentences | 35 | | technicalSentenceCount | 6 | | matches | | 0 | "The three deadbolts slid back with metallic clicks that echoed in the cramped hallway of Eva's flat." | | 1 | "The distraction had nothing to do with the subject matter and everything to do with the unexpected knock that had interrupted her concentration." | | 2 | "The tabby cat, Ptolemy, who had been napping in a sunbeam on the windowsill, stretched and regarded Lucien with wary green eyes before slinking away under the s…" | | 3 | "Her work with Eva, the late nights researching, the deliveries that sometimes took her to supernatural hotspots—it was all part of her need to make a difference…" | | 4 | "The space between them felt electric, charged with all the unspoken words and unresolved feelings that had lingered between them since their separation." | | 5 | "Aurora hesitated, her gaze drifting to the window where the evening light was beginning to fade." |
| |
| 0.00% | Useless dialogue additions | Target: ≤5% dialogue tags with trailing filler fragments | | totalTags | 28 | | uselessAdditionCount | 11 | | matches | | 0 | "He turned, his heterochromatic eyes intense" | | 1 | "he said, his voice dropping to a near whisper" | | 2 | "she asked, her tone softening despite herself" | | 3 | "he said, his voice softer now" | | 4 | "he admitted, the words seeming to cost him something" | | 5 | "Aurora asked, her voice trembling slightly" | | 6 | "she asked, her voice barely above a whisper" | | 7 | "Lucien said, his expression earnest" | | 8 | "Lucien replied, his eyes bright with renewed purpose" | | 9 | "Lucien said, his confidence returning" | | 10 | "he said, his voice thick with emotion" |
| |
| 37.10% | Dialogue tag variety (said vs. fancy) | Target: ≤10% fancy dialogue tags | | totalTags | 25 | | fancyCount | 7 | | fancyTags | | 0 | "she laughed (laugh)" | | 1 | "Lucien explained (explain)" | | 2 | "he admitted (admit)" | | 3 | "she challenged (challenge)" | | 4 | "he insisted (insist)" | | 5 | "she snapped (snap)" | | 6 | "Aurora repeated (repeat)" |
| | dialogueSentences | 62 | | tagDensity | 0.403 | | leniency | 0.806 | | rawRatio | 0.28 | | effectiveRatio | 0.226 | |