ai-text-check 1.0.0

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.
Files changed (150) hide show
  1. package/LICENSE +21 -0
  2. package/NOTICE +36 -0
  3. package/README.md +174 -0
  4. package/SOURCES.md +34 -0
  5. package/dist/cli.js +13834 -0
  6. package/dist/index.cjs +13366 -0
  7. package/dist/index.d.cts +36 -0
  8. package/dist/index.d.ts +36 -0
  9. package/dist/index.js +13351 -0
  10. package/dist/node.cjs +13581 -0
  11. package/dist/node.d.cts +41 -0
  12. package/dist/node.d.ts +41 -0
  13. package/dist/node.js +13564 -0
  14. package/dist/types-BlvvRFG5.d.cts +153 -0
  15. package/dist/types-BlvvRFG5.d.ts +153 -0
  16. package/package.json +115 -0
  17. package/slop-gate.config.json +3 -0
  18. package/vale/styles/AiTextCheck/DiveDeep.yml +5 -0
  19. package/vale/styles/AiTextCheck/Furthermore.yml +5 -0
  20. package/vale/styles/AiTextCheck/ImportantToNote.yml +5 -0
  21. package/vale/styles/AiTextCheck/InTodaysWorld.yml +5 -0
  22. package/vale/styles/AiTextCheck/LeverageUtilize.yml +5 -0
  23. package/vale/styles/AiTextCheck/meta.json +3 -0
  24. package/vale/styles/Google/AMPM.yml +9 -0
  25. package/vale/styles/Google/Acronyms.yml +64 -0
  26. package/vale/styles/Google/Colons.yml +8 -0
  27. package/vale/styles/Google/Contractions.yml +30 -0
  28. package/vale/styles/Google/DateFormat.yml +9 -0
  29. package/vale/styles/Google/Ellipses.yml +9 -0
  30. package/vale/styles/Google/EmDash.yml +12 -0
  31. package/vale/styles/Google/Exclamation.yml +12 -0
  32. package/vale/styles/Google/FirstPerson.yml +13 -0
  33. package/vale/styles/Google/Gender.yml +9 -0
  34. package/vale/styles/Google/GenderBias.yml +43 -0
  35. package/vale/styles/Google/HeadingPunctuation.yml +13 -0
  36. package/vale/styles/Google/Headings.yml +29 -0
  37. package/vale/styles/Google/LICENSE +21 -0
  38. package/vale/styles/Google/Latin.yml +11 -0
  39. package/vale/styles/Google/LyHyphens.yml +14 -0
  40. package/vale/styles/Google/OptionalPlurals.yml +12 -0
  41. package/vale/styles/Google/Ordinal.yml +7 -0
  42. package/vale/styles/Google/OxfordComma.yml +7 -0
  43. package/vale/styles/Google/Parens.yml +7 -0
  44. package/vale/styles/Google/Passive.yml +184 -0
  45. package/vale/styles/Google/Periods.yml +7 -0
  46. package/vale/styles/Google/Quotes.yml +7 -0
  47. package/vale/styles/Google/Ranges.yml +7 -0
  48. package/vale/styles/Google/Semicolons.yml +8 -0
  49. package/vale/styles/Google/Slang.yml +11 -0
  50. package/vale/styles/Google/Spacing.yml +10 -0
  51. package/vale/styles/Google/Spelling.yml +10 -0
  52. package/vale/styles/Google/Units.yml +8 -0
  53. package/vale/styles/Google/We.yml +11 -0
  54. package/vale/styles/Google/Will.yml +7 -0
  55. package/vale/styles/Google/WordList.yml +80 -0
  56. package/vale/styles/Google/meta.json +4 -0
  57. package/vale/styles/Google/vocab.txt +0 -0
  58. package/vale/styles/ai-tells/AIAdjectiveNounPairs.yml +8 -0
  59. package/vale/styles/ai-tells/AICompoundPhrases.yml +139 -0
  60. package/vale/styles/ai-tells/AbsoluteAssertions.yml +21 -0
  61. package/vale/styles/ai-tells/AffirmativeFormulas.yml +101 -0
  62. package/vale/styles/ai-tells/AnnouncementHeadings.yml +16 -0
  63. package/vale/styles/ai-tells/AnthropomorphicJustification.yml +115 -0
  64. package/vale/styles/ai-tells/ClosingPleasantries.yml +120 -0
  65. package/vale/styles/ai-tells/ColloquialAssessments.yml +47 -0
  66. package/vale/styles/ai-tells/ColonUsage.yml +18 -0
  67. package/vale/styles/ai-tells/ConclusionMarkers.yml +23 -0
  68. package/vale/styles/ai-tells/ContrastiveFormulas.yml +188 -0
  69. package/vale/styles/ai-tells/ContrastiveNegation.yml +22 -0
  70. package/vale/styles/ai-tells/DefensiveHedges.yml +63 -0
  71. package/vale/styles/ai-tells/DespiteChallenges.yml +32 -0
  72. package/vale/styles/ai-tells/EmDashUsage.yml +9 -0
  73. package/vale/styles/ai-tells/EmphaticCopula.yml +30 -0
  74. package/vale/styles/ai-tells/EmptyPadding.yml +10 -0
  75. package/vale/styles/ai-tells/EmptyPaddingStacked.yml +11 -0
  76. package/vale/styles/ai-tells/ExplainerHeadings.yml +20 -0
  77. package/vale/styles/ai-tells/FalseBalance.yml +31 -0
  78. package/vale/styles/ai-tells/FalseExclusivity.yml +41 -0
  79. package/vale/styles/ai-tells/FigurativeLands.yml +79 -0
  80. package/vale/styles/ai-tells/FillerPhrases.yml +78 -0
  81. package/vale/styles/ai-tells/FormalRegister.yml +58 -0
  82. package/vale/styles/ai-tells/FormalTransitions.yml +74 -0
  83. package/vale/styles/ai-tells/GrowthMetaphors.yml +28 -0
  84. package/vale/styles/ai-tells/HedgingPhrases.yml +85 -0
  85. package/vale/styles/ai-tells/LICENSE +21 -0
  86. package/vale/styles/ai-tells/ListIntroductions.yml +22 -0
  87. package/vale/styles/ai-tells/MarketingHeadings.yml +19 -0
  88. package/vale/styles/ai-tells/Metacommentary.yml +113 -0
  89. package/vale/styles/ai-tells/MicDrop.yml +205 -0
  90. package/vale/styles/ai-tells/MicDropHeadings.yml +20 -0
  91. package/vale/styles/ai-tells/NarrativePivots.yml +59 -0
  92. package/vale/styles/ai-tells/OpeningCliches.yml +98 -0
  93. package/vale/styles/ai-tells/OrganicConsequence.yml +38 -0
  94. package/vale/styles/ai-tells/OverusedVocabulary.yml +185 -0
  95. package/vale/styles/ai-tells/OverusedVocabularyVerbs.yml +7 -0
  96. package/vale/styles/ai-tells/ParallelStaccato.yml +34 -0
  97. package/vale/styles/ai-tells/ParticipialPadding.yml +74 -0
  98. package/vale/styles/ai-tells/PromotionalPuffery.yml +63 -0
  99. package/vale/styles/ai-tells/RedundantPrecaution.yml +8 -0
  100. package/vale/styles/ai-tells/ResonateOveruse.yml +13 -0
  101. package/vale/styles/ai-tells/RestatementMarkers.yml +36 -0
  102. package/vale/styles/ai-tells/RhetoricalDevices.yml +53 -0
  103. package/vale/styles/ai-tells/RhetoricalSelfAnswer.yml +51 -0
  104. package/vale/styles/ai-tells/SelfReference.yml +52 -0
  105. package/vale/styles/ai-tells/SemicolonUsage.yml +31 -0
  106. package/vale/styles/ai-tells/SequencingMarkers.yml +41 -0
  107. package/vale/styles/ai-tells/ServesAsDodge.yml +66 -0
  108. package/vale/styles/ai-tells/ShipOveruse.yml +16 -0
  109. package/vale/styles/ai-tells/StackedAnaphora.yml +185 -0
  110. package/vale/styles/ai-tells/StrategyBuzzwords.yml +32 -0
  111. package/vale/styles/ai-tells/StructureAnnouncements.yml +22 -0
  112. package/vale/styles/ai-tells/SycophancyMarkers.yml +26 -0
  113. package/vale/styles/ai-tells/UnpackExplore.yml +21 -0
  114. package/vale/styles/ai-tells/UrgencyInflation.yml +70 -0
  115. package/vale/styles/ai-tells/VagueAttributions.yml +67 -0
  116. package/vale/styles/ai-tells/VerbTricolon.yml +78 -0
  117. package/vale/styles/ai-tells/VerbTricolonDensity.yml +7 -0
  118. package/vale/styles/ai-tells/WrapUpHeadings.yml +22 -0
  119. package/vale/styles/signs-of-ai-writing/AspectOveruse.yml +13 -0
  120. package/vale/styles/signs-of-ai-writing/ChatGPTArtifacts.yml +12 -0
  121. package/vale/styles/signs-of-ai-writing/ChatbotCommunication.yml +21 -0
  122. package/vale/styles/signs-of-ai-writing/CitationArtifacts.yml +10 -0
  123. package/vale/styles/signs-of-ai-writing/ColonOveruse.yml +11 -0
  124. package/vale/styles/signs-of-ai-writing/Enumeration.yml +11 -0
  125. package/vale/styles/signs-of-ai-writing/Hedging.yml +6 -0
  126. package/vale/styles/signs-of-ai-writing/Intensifiers.yml +17 -0
  127. package/vale/styles/signs-of-ai-writing/KnowledgeCutoff.yml +14 -0
  128. package/vale/styles/signs-of-ai-writing/LICENSE +12 -0
  129. package/vale/styles/signs-of-ai-writing/Lists.yml +8 -0
  130. package/vale/styles/signs-of-ai-writing/Narrative.yml +15 -0
  131. package/vale/styles/signs-of-ai-writing/Passive.yml +16 -0
  132. package/vale/styles/signs-of-ai-writing/Placeholders.yml +17 -0
  133. package/vale/styles/signs-of-ai-writing/ScareQuotes.yml +6 -0
  134. package/vale/styles/signs-of-ai-writing/Symbolism.yml +23 -0
  135. package/vale/styles/signs-of-ai-writing/Transitions.yml +17 -0
  136. package/vale/styles/signs-of-ai-writing/UTMParameters.yml +10 -0
  137. package/vale/styles/signs-of-ai-writing/Vocabulary.yml +27 -0
  138. package/vale/styles/signs-of-ai-writing/meta.json +4 -0
  139. package/vale/styles/write-good/Cliches.yml +702 -0
  140. package/vale/styles/write-good/E-Prime.yml +32 -0
  141. package/vale/styles/write-good/Illusions.yml +11 -0
  142. package/vale/styles/write-good/LICENSE +21 -0
  143. package/vale/styles/write-good/Passive.yml +183 -0
  144. package/vale/styles/write-good/README.md +27 -0
  145. package/vale/styles/write-good/So.yml +5 -0
  146. package/vale/styles/write-good/ThereIs.yml +6 -0
  147. package/vale/styles/write-good/TooWordy.yml +221 -0
  148. package/vale/styles/write-good/Weasel.yml +29 -0
  149. package/vale/styles/write-good/meta.json +4 -0
  150. package/vale/vale.ini +38 -0
@@ -0,0 +1,98 @@
1
+ ---
2
+ extends: existence
3
+ message: "AI opening: '%s'. Start with your actual point instead of this generic lead-in."
4
+ level: error
5
+ ignorecase: true
6
+ tokens:
7
+ - In today's rapidly evolving
8
+ - In today's fast-paced
9
+ - In today's digital age
10
+ - In today's ever-changing
11
+ - In today's interconnected
12
+ - In the realm of
13
+ - In the world of
14
+ - In the landscape of
15
+ - In the ever-evolving landscape
16
+ - In an era where
17
+ - In an age where
18
+ - In this day and age
19
+ - Embarking on a journey
20
+ - Embark on a journey
21
+ - Embarking on this journey
22
+ - As we navigate
23
+ - As we delve into
24
+ - As we explore
25
+ - When it comes to
26
+ - Picture this
27
+ - Imagine a world where
28
+ - Have you ever wondered
29
+ - In recent years
30
+ - Throughout history
31
+ - Since the dawn of
32
+ - From time immemorial
33
+ - Before we dive in
34
+ - Before we dive into
35
+ - By the end of this article
36
+ - By the end of this guide
37
+ - By the end of this post
38
+ - By the end of this tutorial
39
+ - By the end of this section
40
+ - This guide will walk you through
41
+ - This article will walk you through
42
+ - This post will walk you through
43
+ - This guide will help you
44
+ - This article will help you
45
+ - This post will help you
46
+ - Welcome to this guide
47
+ - Welcome to this overview
48
+ - Welcome to this exploration
49
+ - Welcome to this deep dive
50
+ - Without further ado
51
+ - Without further ado, let's
52
+ - Without further ado, here's
53
+ - Gone are the days
54
+ - Gone are the days when
55
+ - Gone are the days of
56
+ - Whether you're a
57
+ - Whether you're an
58
+ - Whether you're just
59
+ - Whether you're new
60
+ - Whether you're already
61
+ - Whether you're looking
62
+ - Whether you're trying
63
+ - Whether you're someone
64
+ - You might be wondering
65
+ - You may be wondering
66
+ - You're probably wondering
67
+ - You might be asking yourself
68
+ - You may be asking yourself
69
+ - If you've ever
70
+ - If you've ever wondered
71
+ - If you've ever found yourself
72
+ - Have you ever found yourself
73
+ - Chances are
74
+ - Chances are you've
75
+ - Chances are you're
76
+ - You're not alone
77
+ - You're not alone if
78
+ - We've all been there
79
+ - Look no further
80
+ - You've come to the right place
81
+ - You're in the right place
82
+ - Ready to dive in
83
+ - Ready to get started
84
+ - Ready to learn
85
+ - Ready to explore
86
+ - In the dynamic world of
87
+ - In an increasingly
88
+ - In a world where
89
+ - In a world of
90
+ - As technology continues to evolve
91
+ - As technology continues to advance
92
+ - As the world becomes
93
+ - As the world continues
94
+ - As we stand at
95
+ - As we stand on the
96
+ - We live in an era
97
+ - We live in a world
98
+ - We live in a time
@@ -0,0 +1,38 @@
1
+ ---
2
+ extends: existence
3
+ message: "AI inevitability: '%s'. Say the choice was designed that way."
4
+ level: error
5
+ tokens:
6
+ # "falls out naturally" and variants
7
+ - falls out naturally
8
+ - fell out naturally
9
+ - fall out naturally
10
+
11
+ # "emerges naturally" and variants
12
+ - emerges naturally
13
+ - emerged naturally
14
+ - emerge naturally
15
+ - emerges organically
16
+ - emerged organically
17
+
18
+ # "arises naturally" and variants
19
+ - arises naturally
20
+ - arose naturally
21
+ - arise naturally
22
+ - arises organically
23
+
24
+ # "flows naturally" and variants
25
+ - flows naturally
26
+ - flowed naturally
27
+ - flow naturally
28
+
29
+ # Other organic-sounding consequence language
30
+ - a natural consequence
31
+ - the natural consequence
32
+ - a natural result
33
+ - the natural result
34
+ - naturally follows
35
+ - naturally leads to
36
+ - naturally results in
37
+ - follows naturally from
38
+ - results naturally from
@@ -0,0 +1,185 @@
1
+ ---
2
+ extends: existence
3
+ message: "AI vocabulary: '%s'. Replace with a more specific or common word."
4
+ level: error
5
+ tokens:
6
+ - delve
7
+ - delves
8
+ - delving
9
+ - delved
10
+ - tapestry
11
+ - multifaceted
12
+ - underscores
13
+ - pivotal
14
+ - intricate
15
+ - intricacies
16
+ - groundbreaking
17
+ - transformative
18
+ - seamless
19
+ - seamlessly
20
+ - robust
21
+ - streamline
22
+ - streamlines
23
+ - streamlining
24
+ - elevate
25
+ - elevates
26
+ - elevating
27
+ - bolster
28
+ - bolsters
29
+ - bolstering
30
+ - underpins
31
+ - underpin
32
+ - underpinning
33
+ - underscoring
34
+ - pivoting
35
+ - reimagine
36
+ - reimagining
37
+ - reimagines
38
+ - elucidate
39
+ - elucidates
40
+ - elucidating
41
+ - synergy
42
+ - synergies
43
+ - synergistic
44
+ - holistic
45
+ - holistically
46
+ - paradigm
47
+ - paradigms
48
+ - unparalleled
49
+ - testament
50
+ - cornerstone
51
+ - cornerstones
52
+ - catalyst
53
+ - catalyze
54
+ - catalyzing
55
+ - meticulous
56
+ - meticulously
57
+ - nuanced
58
+ - interplay
59
+ - aforementioned
60
+ - myriad
61
+ - plethora
62
+ - burgeoning
63
+ - nascent
64
+ - ubiquitous
65
+ - encompasses
66
+ - encompassing
67
+ - endeavor
68
+ - endeavors
69
+ - endeavoring
70
+ - granular
71
+ - granularity
72
+ - actionable
73
+ - impactful
74
+ - empower
75
+ - empowers
76
+ - empowering
77
+ - empowered
78
+ - empowerment
79
+ - proactive
80
+ - proactively
81
+ - meaningful
82
+ - evolving
83
+ - comprehensive
84
+ - comprehensively
85
+ - comprehensiveness
86
+ - innovative
87
+ - innovatively
88
+ - innovation
89
+ - innovations
90
+ - notable
91
+ - notably
92
+ - sophisticated
93
+ - sophistication
94
+ - unprecedented
95
+ - unprecedentedly
96
+ - remarkable
97
+ - remarkably
98
+ - exceptional
99
+ - exceptionally
100
+ - significant
101
+ - significantly
102
+ - profound
103
+ - profoundly
104
+ - scalable
105
+ - scalability
106
+ - versatile
107
+ - versatility
108
+ - versatilely
109
+ - dynamic
110
+ - dynamically
111
+ - crucial
112
+ - crucially
113
+ - vital
114
+ - vitally
115
+ - foundational
116
+ - state-of-the-art
117
+ - best-in-class
118
+ - world-class
119
+ - next-generation
120
+ - next-level
121
+ - salient
122
+ - saliently
123
+ - efficacy
124
+ - paramount
125
+ - adept
126
+ - cognizant
127
+ - camaraderie
128
+ - palpable
129
+ - palpably
130
+ - fleeting
131
+ - amidst
132
+ - solace
133
+ - cacophony
134
+ - unspoken
135
+ - ignite
136
+ - ignites
137
+ - igniting
138
+ - grapple
139
+ - grapples
140
+ - grappling
141
+ - bustling
142
+ - gossamer
143
+ - enigma
144
+ - enigmatic
145
+ - labyrinth
146
+ - labyrinthine
147
+ - metropolis
148
+ - expanse
149
+ - expanses
150
+ - indelible
151
+ - indelibly
152
+ - kaleidoscopic
153
+ - kaleidoscope
154
+ - waft
155
+ - wafting
156
+ - beacon
157
+ - beacons
158
+ - intertwine
159
+ - intertwines
160
+ - intertwined
161
+ - intertwining
162
+ - unravel
163
+ - unravels
164
+ - unraveling
165
+ - vibrant
166
+ - vibrantly
167
+ - genuinely
168
+ - genuine
169
+ # Marketing and hype verbs (zeitgeist). Case-sensitive like the rest of this
170
+ # rule, so a sentence-initial form is missed. The -ed forms of super/turbo are
171
+ # omitted to spare the literal "supercharged engine."
172
+ - supercharge
173
+ - supercharges
174
+ - supercharging
175
+ - turbocharge
176
+ - turbocharges
177
+ - turbocharging
178
+ - unleash
179
+ - unleashes
180
+ - unleashing
181
+ - unleashed
182
+ - democratize
183
+ - democratizes
184
+ - democratizing
185
+ - democratized
@@ -0,0 +1,7 @@
1
+ ---
2
+ extends: sequence
3
+ message: "AI vocabulary (verb form): '%s'. Replace with a direct verb."
4
+ level: error
5
+ tokens:
6
+ - pattern: leverage|leveraging|leverages|navigate|navigates|navigating|navigated|showcase|showcases|showcasing|harness|harnessing|harnesses|embark|embarks|embarking|foster|fosters|fostering|spearhead|spearheads|spearheading
7
+ tag: VB|VBZ|VBG|VBP|VBD
@@ -0,0 +1,34 @@
1
+ ---
2
+ extends: existence
3
+ message: "AI staccato: '%s'. Combine these clipped parallel sentences or vary the structure."
4
+ level: error
5
+ nonword: true
6
+ tokens:
7
+ # === Parallel pairs (any verb — the structure is the tell) ===
8
+
9
+ # "Noun verbs. Noun verbs."
10
+ # "Shippers scan. Practitioners read." "Engineers build. Managers ship."
11
+ - "[A-Z][a-z]+ [a-z]+s?\\. [A-Z][a-z]+ [a-z]+s?\\."
12
+
13
+ # "The noun verbs. The noun verbs."
14
+ - "The [a-z]+ [a-z]+s?\\. The [a-z]+ [a-z]+s?\\."
15
+
16
+ # "Noun verb-phrase. Noun doesn't/don't."
17
+ # "Content carries the personality. Chrome doesn't."
18
+ - "[A-Z][a-z]+ [^.!?]+\\. [A-Z][a-z]+ doesn'?t\\."
19
+ - "[A-Z][a-z]+ [^.!?]+\\. [A-Z][a-z]+ don'?t\\."
20
+ - "[A-Z][a-z]+ [^.!?]+\\. [A-Z][a-z]+ does not\\."
21
+ - "[A-Z][a-z]+ [^.!?]+\\. [A-Z][a-z]+ do not\\."
22
+
23
+ # Multi-word-subject parallel-staccato:
24
+ # "Concurrent readers don't block each other. One writer at a time
25
+ # doesn't block readers."
26
+ # Subjects up to 5 words; second sentence carries the verb pattern.
27
+ # Matches both "doesn't"/"don't" and "does not"/"do not" forms.
28
+ - "[A-Z][a-z]+(?: [\\w-]+){1,4} [^.!?]+\\. [A-Z][a-z]+(?: [\\w-]+){1,4} (?:doesn'?t|don'?t|does not|do not)\\b[^.!?]*\\."
29
+
30
+ # === Solo two-word staccato (enumerated verbs) ===
31
+ # Single "Subject verb." sentences that AI drops for dramatic effect.
32
+ # Only flagged for verbs commonly used this way.
33
+
34
+ - "[A-Z][a-z]+ (?:scales?|ships?|breaks?|builds?|flows?|lands?|wins?|fails?|works?|scans?|reads?|stays?|drops?|clicks?|runs?|falls?|grows?|fades?|leads?|counts?|hits?|fits?|stops?|starts?|moves?|waits?|holds?|lives?|dies?|rises?|shines?|shifts?|sticks?|stands?|spreads?|bends?|flips?|snaps?|locks?|fires?|loads?|calls?|pulls?|pushes?|pays?|sells?|talks?|walks?)\\."
@@ -0,0 +1,74 @@
1
+ ---
2
+ extends: existence
3
+ message: "AI participial padding: '%s'. Delete it or make the point concrete."
4
+ level: error
5
+ ignorecase: true
6
+ tokens:
7
+ - highlighting its importance
8
+ - highlighting its significance
9
+ - highlighting its role
10
+ - highlighting the importance
11
+ - highlighting the need
12
+ - highlighting the growing
13
+ - underscoring its importance
14
+ - underscoring its significance
15
+ - underscoring its role
16
+ - underscoring the importance
17
+ - underscoring the need
18
+ - underscoring its commitment
19
+ - emphasizing the importance
20
+ - emphasizing the need
21
+ - emphasizing its role
22
+ - emphasizing its commitment
23
+ - reflecting broader trends
24
+ - reflecting broader changes
25
+ - reflecting a broader
26
+ - reflecting the broader
27
+ - reflecting its commitment
28
+ - reflecting a growing
29
+ - reflecting the growing
30
+ - symbolizing its
31
+ - symbolizing the
32
+ - contributing to its
33
+ - contributing to the development
34
+ - contributing to the growth
35
+ - contributing to the overall
36
+ - contributing to a more
37
+ - contributing to the region
38
+ - showcasing its
39
+ - showcasing the
40
+ - showcasing a
41
+ - demonstrating its commitment
42
+ - demonstrating its dedication
43
+ - demonstrating a commitment
44
+ - demonstrating the importance
45
+ - underscoring its enduring
46
+ - underscoring its lasting
47
+ - reinforcing its position
48
+ - reinforcing its role
49
+ - reinforcing its commitment
50
+ - reinforcing the importance
51
+ - solidifying its position
52
+ - solidifying its role
53
+ - solidifying its place
54
+ - cementing its position
55
+ - cementing its role
56
+ - cementing its place
57
+ - ensuring a seamless
58
+ - ensuring a smooth
59
+ - ensuring a more
60
+ - fostering a sense of
61
+ - fostering a culture of
62
+ - fostering a more
63
+ - fostering an environment
64
+ - cultivating a sense of
65
+ - cultivating a culture of
66
+ - shaping the future
67
+ - shaping the trajectory
68
+ - shaping the direction
69
+ - paving the way for a
70
+ - setting the stage for a
71
+ - marking a significant
72
+ - marking a pivotal
73
+ - marking a turning
74
+ - marking a new
@@ -0,0 +1,63 @@
1
+ ---
2
+ extends: existence
3
+ message: "AI puffery: '%s'. Use neutral, specific language."
4
+ level: error
5
+ ignorecase: true
6
+ tokens:
7
+ - nestled in the
8
+ - nestled in a
9
+ - nestled between
10
+ - nestled among
11
+ - nestled alongside
12
+ - nestled within
13
+ - in the heart of
14
+ - at the heart of
15
+ - rich cultural heritage
16
+ - rich history and
17
+ - rich and diverse
18
+ - rich and vibrant
19
+ - vibrant community
20
+ - vibrant culture
21
+ - vibrant ecosystem
22
+ - vibrant atmosphere
23
+ - natural beauty
24
+ - natural beauty of
25
+ - a hub for
26
+ - a hub of
27
+ - a dynamic hub
28
+ - a thriving hub
29
+ - a cultural hub
30
+ - a beacon of
31
+ - a beacon for
32
+ - a treasure trove of
33
+ - a treasure trove for
34
+ - a shining example
35
+ - a prime example
36
+ - a masterclass in
37
+ - a testament to the
38
+ - a testament to its
39
+ - renowned for its
40
+ - renowned for their
41
+ - renowned for her
42
+ - renowned for his
43
+ - widely regarded as
44
+ - widely recognized as
45
+ - widely considered
46
+ - is home to
47
+ - has emerged as a
48
+ - has emerged as the
49
+ - has established itself as
50
+ - continues to evolve
51
+ - continues to thrive
52
+ - continues to grow
53
+ - continues to inspire
54
+ - left an indelible mark
55
+ - left an indelible impact
56
+ - leaving an indelible mark
57
+ - left a lasting impact
58
+ - left a lasting impression
59
+ - leaving a lasting impact
60
+ - a lasting legacy
61
+ - enduring legacy
62
+ - enduring impact
63
+ - an enduring legacy
@@ -0,0 +1,8 @@
1
+ ---
2
+ extends: existence
3
+ message: "AI cliché: '%s'. Name the specific safeguard or cut the phrase."
4
+ level: error
5
+ ignorecase: true
6
+ tokens:
7
+ - belt and suspenders
8
+ - belt-and-suspenders
@@ -0,0 +1,13 @@
1
+ ---
2
+ extends: existence
3
+ message: "AI overused verb: '%s'. Name what connects and why, or disable this rule for physics or audio writing."
4
+ level: error
5
+ nonword: true
6
+ ignorecase: true
7
+ # "Resonate" is an AI overuse fingerprint for reception: an idea "resonates
8
+ # with" an audience, a message "resonates deeply." Flag the figurative reception
9
+ # sense broadly. The only literal sense is physics and acoustics (a cavity
10
+ # resonates at a frequency), a clear domain that disables the whole rule. The
11
+ # noun forms "resonance" and "resonant" are a different word and stay clean.
12
+ tokens:
13
+ - "\\bresonat(?:e|es|ed|ing)\\b"
@@ -0,0 +1,36 @@
1
+ ---
2
+ extends: existence
3
+ message: "AI restatement: '%s'. Delete it and trust your original phrasing."
4
+ level: error
5
+ ignorecase: true
6
+ tokens:
7
+ - In other words
8
+ - Simply put
9
+ - Put simply
10
+ - Put differently
11
+ - To put it simply
12
+ - To put it another way
13
+ - Said differently
14
+ - To state it plainly
15
+ - To state this plainly
16
+ - To be more precise
17
+ - To be more specific
18
+ - To be more exact
19
+ - Or rather
20
+ - More precisely
21
+ - More specifically
22
+ - More accurately
23
+ - To clarify
24
+ - To rephrase
25
+ - To restate
26
+ - What I mean is
27
+ - What this means is
28
+ - What that means is
29
+ - In plainer terms
30
+ - In plain terms
31
+ - In plain English
32
+ - In simpler terms
33
+ - In simple terms
34
+ - To put it another way
35
+ - To put it more simply
36
+ - To put it more directly
@@ -0,0 +1,53 @@
1
+ ---
2
+ extends: existence
3
+ message: "AI rhetoric: '%s'. Remove it or rephrase as a plain statement."
4
+ level: error
5
+ nonword: true
6
+ tokens:
7
+ # "When [verb]ing X, ask: [question]" - the imperative test pattern
8
+ - "When \\w+ing [^,]+, ask:"
9
+ - "When you \\w+ [^,]+, ask:"
10
+ - "Before \\w+ing [^,]+, ask:"
11
+
12
+ # "The test:" section-ending pattern
13
+ - "The test:"
14
+ - "The test is:"
15
+ - "The litmus test:"
16
+ - "Here'?s the test:"
17
+ - "A good test:"
18
+ - "The acid test:"
19
+
20
+ # "This gives you a concrete test" and similar
21
+ - "[Tt]his gives you a (?:concrete|simple|good|useful|quick) test"
22
+
23
+ # "Ask yourself:" pattern
24
+ - "Ask yourself:"
25
+ - "Ask yourself whether"
26
+ - "Ask yourself if"
27
+ - "The question to ask:"
28
+ - "The question to ask is:"
29
+
30
+ # "The X:" dramatic colon — terse noun + colon used for verdict
31
+ # emphasis. A human writer would say "The result is..." or rewrite
32
+ # the sentence; AI reaches for the colon to manufacture a drumroll.
33
+ - "The price:"
34
+ - "The catch:"
35
+ - "The kicker:"
36
+ - "The upshot:"
37
+ - "The tradeoff:"
38
+ - "The trade-off:"
39
+ - "The trick:"
40
+ - "The cost:"
41
+ - "The downside:"
42
+ - "The flip side:"
43
+ - "The bottom line:"
44
+ - "The takeaway:"
45
+ - "The result:"
46
+ - "The answer:"
47
+ - "The reason:"
48
+ - "The lesson:"
49
+ - "The moral:"
50
+ - "The point:"
51
+ - "The pitch:"
52
+ - "The fix:"
53
+ - "The payoff:"
@@ -0,0 +1,51 @@
1
+ ---
2
+ extends: existence
3
+ message: "AI rhetorical self-answer: '%s'. State the point directly instead of posing and answering your own question."
4
+ level: error
5
+ nonword: true
6
+ scope: raw
7
+ tokens:
8
+ - "The result\\? [A-Z]"
9
+ - "The outcome\\? [A-Z]"
10
+ - "The answer\\? [A-Z]"
11
+ - "The solution\\? [A-Z]"
12
+ - "The catch\\? [A-Z]"
13
+ - "The problem\\? [A-Z]"
14
+ - "The issue\\? [A-Z]"
15
+ - "The reason\\? [A-Z]"
16
+ - "The reality\\? [A-Z]"
17
+ - "The truth\\? [A-Z]"
18
+ - "The worst part\\? [A-Z]"
19
+ - "The best part\\? [A-Z]"
20
+ - "The irony\\? [A-Z]"
21
+ - "The twist\\? [A-Z]"
22
+ - "The takeaway\\? [A-Z]"
23
+ - "The lesson\\? [A-Z]"
24
+ - "The upside\\? [A-Z]"
25
+ - "The downside\\? [A-Z]"
26
+ - "The trade-off\\? [A-Z]"
27
+ - "The tradeoff\\? [A-Z]"
28
+ - "The difference\\? [A-Z]"
29
+ - "The impact\\? [A-Z]"
30
+ - "The effect\\? [A-Z]"
31
+ - "The implication\\? [A-Z]"
32
+ - "The cost\\? [A-Z]"
33
+ - "The benefit\\? [A-Z]"
34
+ - "The risk\\? [A-Z]"
35
+ - "The payoff\\? [A-Z]"
36
+ - "The scary part\\? [A-Z]"
37
+ - "The surprising part\\? [A-Z]"
38
+ - "The interesting part\\? [A-Z]"
39
+ - "The hard part\\? [A-Z]"
40
+ - "The fun part\\? [A-Z]"
41
+ - "The kicker\\? [A-Z]"
42
+ - "The point\\? [A-Z]"
43
+ - "The verdict\\? [A-Z]"
44
+ - "The caveat\\? [A-Z]"
45
+ - "The key\\? [A-Z]"
46
+ - "The secret\\? [A-Z]"
47
+ - "The fix\\? [A-Z]"
48
+ - "The goal\\? [A-Z]"
49
+ - "The short answer\\? [A-Z]"
50
+ - "The bottom line\\? [A-Z]"
51
+ - "The big picture\\? [A-Z]"