@cratis/pi 6.3.1 → 6.4.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.
@@ -1,28 +1,61 @@
1
1
  ---
2
2
  name: cratis-writing-voice-and-cadence
3
- description: Find and remove the sentence constructions and structural sameness that make written material read as machine-generated, across documentation, release notes, pull request descriptions, posts and reviews, without changing any technical claim. Use when reviewing or rewriting existing prose for voice. Do not use for technical accuracy review, for original drafting, or as a reason to touch approved copy without authorization.
3
+ description: Review and revise existing prose so it reads as written by a person, by finding overused constructions and stock phrasing in one piece and structural sameness across a batch, then fixing both with specifics instead of injected variety, without changing any technical claim. Flags are editing prompts and never a verdict on who wrote something. Use when reviewing or rewriting documentation, release notes, pull request descriptions, posts or reviews for voice. Do not use for technical accuracy review, original drafting, authorship detection, or as a reason to touch approved copy without authorization.
4
4
  license: MIT
5
5
  ---
6
6
 
7
7
  # Writing voice and cadence
8
8
 
9
- Material that is factually correct can still be unreadable in a way nobody can name. The
10
- usual diagnosis is "it sounds like AI wrote it", and the usual response is to rewrite by feel,
11
- which produces a second machine voice rather than a human one.
9
+ Material that is factually correct can still read as if nobody wrote it. The usual diagnosis
10
+ is "it sounds like AI wrote it", and the usual response is to rewrite by feel. That tends to
11
+ produce a second machine voice: new stock phrases in place of the old ones, a joke dropped in,
12
+ a sentence chopped short for rhythm.
12
13
 
13
- The failure is measurable, and it has two halves. The smaller half is a set of sentence
14
- constructions used far past the density a person would use them. The larger half is
15
- structural sameness across a whole body of material: a reader meeting the second piece
16
- recognizes the format before reading a word of it.
14
+ This skill works from what can be counted and what can be checked. Three things go wrong:
15
+ a handful of constructions recur often enough to be worth a second look, a body of work
16
+ falls into one shape, and underneath both, something only the author knew is missing.
17
+ It revises existing material. Drafting belongs to the skill for the content type:
18
+ **cratis-social-feed-post** for feed posts, **cratis-release-notes** for release notes,
19
+ **cratis-technical-examples** for code samples, **cratis-documentation-writing** for pages.
20
+
21
+ The full catalog of patterns is in [references/ai-tells.md](references/ai-tells.md), with a
22
+ word list or regex and a batch threshold for each, and the studies behind them. IDs such as
23
+ HV-02 below point to that file's Sources table.
24
+
25
+ ## This is an editing aid, not a detector
26
+
27
+ Read this before running any check.
28
+
29
+ People are poor at telling AI text from human text. In six experiments with 4,600
30
+ participants, readers could not reliably pick out AI-generated self-presentations, and the
31
+ cues they leaned on, first-person pronouns and contractions among them, were flawed (HV-01,
32
+ HV-02). In a separate paired-essay study, instructors identified the ChatGPT essay 70% of the
33
+ time; subject expertise did not reliably improve performance (HV-03). Studies do
34
+ find differences between human and model text, but in aggregate over many texts and within
35
+ the genres and models they tested (HV-05, HV-06). None of that says who wrote a particular
36
+ paragraph.
37
+
38
+ So these rules hold for every use of the skill:
39
+
40
+ - A flag means "read this passage again". It never means "AI wrote this".
41
+ - Never use a flag, a count or a detector score to accuse a person, grade them, or block
42
+ their work. Don't combine flags into an "AI score".
43
+ - A contributor writing in a second or third language has their own rhythm. Fix what is
44
+ unclear to the reader. Don't push them toward an arbitrary house style because a pattern
45
+ list matched.
46
+ - Contractions, "I", humor, short sentences and typos prove nothing about who wrote a text
47
+ (HV-02). Adding them so copy passes as human is the same mistake in reverse.
48
+ - A construction that carries a real distinction stays, however often the catalog lists it.
17
49
 
18
50
  ## The constructions
19
51
 
20
- None of these is wrong. One of any of them is a good sentence. What turns them into a tell is
21
- recurrence.
52
+ None of these is wrong. A single corrective tail can be the clearest sentence in the piece.
53
+ What turns a construction into a tell is recurrence: the same move three times in a short
54
+ post, or in the same position in every post of a series.
22
55
 
23
56
  | Construction | What it looks like |
24
57
  | --- | --- |
25
- | **Corrective tail** | "…, not a fresh count." The sentence ends by correcting itself |
58
+ | **Corrective tail** | "…, not a fresh count." The sentence ends by correcting itself. "It's not X, it's Y" is the same reflex |
26
59
  | **Balanced semicolon** | Two clauses of equal weight either side of a semicolon |
27
60
  | **"rather than"** | The same correction carried by a different connective |
28
61
  | **Em-dash pivot** | The dash used to swing into a closing clause |
@@ -33,56 +66,167 @@ recurrence.
33
66
  | **Aphoristic close** | A tidy maxim as the last line, restating what the piece already said |
34
67
  | **Reflexive triplet** | Three parallel items where the thought had one or two |
35
68
 
36
- To measure rather than guess, count them. Searching for `, not a`, `; ` between two clauses,
37
- `rather than`, and an em-dash followed by a short closing clause takes a few minutes across a
38
- directory and turns an argument about taste into a number. Reading a draft aloud catches all
39
- of them faster than any tool.
69
+ Vocabulary is a weaker signal than it looks. "Delve", "underscore" and "showcase" rose
70
+ sharply in a large corpus of biomedical abstracts (HV-10), and a published editors' guide
71
+ lists phrasing like "evolving landscape" as a possible sign (HV-25). The same guide says its
72
+ signs are observations that prove nothing on their own (HV-23). Use the word lists to find a
73
+ vague word and put the specific one in its place. When "robust" means what an engineer means
74
+ by it, leave it.
75
+
76
+ ## Review a single piece
77
+
78
+ 1. Read it aloud once, start to finish. Most of these constructions are audible long before
79
+ they are countable.
80
+ 2. Run the single-piece checks from the catalog: the word lists, the construction patterns,
81
+ list shape, opening and close. Record each match with its sentence, so whoever reads the
82
+ report can judge it in context.
83
+ 3. For each flag, ask what the sentence is standing in for. A significance word usually
84
+ covers a missing measurement. A reflexive "X, not Y" often means nobody said what X does.
85
+ A caveat in the last paragraph usually belongs inside an earlier sentence.
86
+ 4. Mark the passages that need something only the author has: a reason, a version, a
87
+ result. Those go back to the author as questions.
40
88
 
41
89
  ## Structural sameness is the more damaging half
42
90
 
43
- Look at ten pieces together, not one at a time:
91
+ A reader meeting the second piece in a series can recognize the format before reading a word
92
+ of it, and a per-piece review can't see that. Put ten comparable pieces side by side, same
93
+ channel and same content type, and compare openings, shapes, lengths and closes.
94
+
95
+ Openings come first. Classify each first sentence as an event, a problem, a question, direct
96
+ address, a number, an identifier, or an abstract assertion ("A registration test can…"). Six
97
+ of ten opening the same way, or three that share their first two words, is an uncalibrated
98
+ trigger to inspect the batch for a template.
99
+
100
+ Then paragraph shapes: how many paragraphs, and how much each weighs. When most pieces run
101
+ three or four paragraphs of about the same size, the format is doing the writing. Length
102
+ across the batch tells the same story. Pieces on very different subjects shouldn't all land
103
+ within a few words of each other.
104
+
105
+ Last, closes. Label each last paragraph as a result, a next step, an open question, a limit,
106
+ a summary or a maxim. A summary or maxim in most of the batch is a template. So is the same
107
+ labeled caveat at the bottom of every piece.
108
+
109
+ Within a piece, sentence length that barely moves reads as a monotone. Compare it with the
110
+ rest of your own corpus; there is no correct spread, and short reference entries or numbered
111
+ steps are allowed to be even.
112
+
113
+ The fix for a template is not a better template. Swapping every abstract opening for a
114
+ question gives you ten question openings. Flag concentration in the batch, never one outlier,
115
+ and don't adopt a target shape. With fewer than five comparable pieces, say so and skip the
116
+ batch conclusions.
117
+
118
+ ## Fix with substance
119
+
120
+ When a piece reads as generated, what is usually missing is a fact. Varying sentence length
121
+ on purpose or shuffling paragraph counts treats the symptom and grows a new pattern. Language
122
+ models struggled to match the range of human stylistic variation in the genres studied
123
+ (HV-06). Let differences in subject and purpose determine the shape, and add whatever makes
124
+ this piece different from the last one:
125
+
126
+ - the specific artifact: the command, the event type, the file, the error text, the
127
+ before-and-after;
128
+ - the named thing in place of the category: "the retry loop in the importer" for "complex
129
+ workflows";
130
+ - a reason the author owns, in words they would say out loud, supplied by them;
131
+ - the limit, placed in the sentence it limits: "On macOS and Linux, the installer…".
132
+
133
+ Where a sentence has nothing to add, cut it. Concreteness has a ceiling too. In historical
134
+ headline experiments, extra concreteness helped headlines that were too vague and hurt ones
135
+ that were already very concrete (HC-03). Packing identifiers into an opening won't rescue it.
136
+
137
+ If the source material doesn't contain the substance, don't supply it yourself. Ask the
138
+ author, or leave the passage plain and accurate.
139
+
140
+ ## What a person leaves behind
141
+
142
+ These are signs that someone who knows the work was involved. Look for them in review and
143
+ note which ones are missing. Never fabricate one to make copy read better; a fabricated
144
+ detail is worse than an absent one.
44
145
 
45
- - **Every piece the same length and shape.** If most of them are three or four paragraphs
46
- with the same paragraph weights, that is a template.
47
- The fix for a template is not a better template.
48
- Do not adopt a target shape: vary the paragraph count, and let paragraphs differ visibly
49
- in weight.
50
- - **Every sentence the same length.** When sentence length barely varies within a piece, the
51
- result is a monotone regardless of the words. Let it swing between four words and twenty-five.
52
- - **Every piece opening the same way.** An abstract noun phrase making a declarative
53
- assertion — "A screen that needs…", "A registration test can…" — is one move. Alternate it
54
- with a question, a direct address, a concrete moment, or a number.
146
+ - a named artifact the reader can open or run
147
+ - the exact version or environment, where it changes the outcome
148
+ - an engineering task a reader would recognize from their own week
149
+ - an observation kept apart from the inference drawn from it
150
+ - a credible counterexample, or the simpler alternative the author considered
151
+ - a material limit sitting in the sentence it qualifies
152
+ - a reason for a judgment, owned by the author
153
+ - a next step the reader can reproduce
154
+ - variation that follows from the subject
155
+
156
+ PostHog's published voice guide argues for much the same list: concrete nouns, directness,
157
+ candor about limitations (DP-05). That is one company's judgment, with no measured effect.
55
158
 
56
159
  ## Hedging that protects the writer
57
160
 
58
161
  The other common complaint is "wishy-washy": copy so qualified that it never commits to
59
- anything. It usually comes from review language leaking into the material: evidence,
60
- verification and approval wording that belongs in the review record, and qualifiers that
61
- protect the writer without informing the reader.
62
-
63
- The rule below protects every hedge that is true and would change what the reader does. It
64
- does not protect review residue. Move the evidence to the review record, state the capability
65
- plainly, and put a real limit inside the sentence it limits ("on macOS and Linux, …") instead
66
- of in a separate disclaimer.
67
-
68
- ## Address somebody
69
-
70
- - **Say "you".** Material that tells a reader what to do should address that reader.
71
- - **A company account is a team talking.** Write "we", the way the people who built it would
72
- say it, not the company name in the third person.
73
- - **Attributed writing should sound attributed.** Prose published under a person's name and
74
- written entirely in the impersonal third person reads as documentation wearing a byline.
75
- Opinion, judgement and preference belong to the named author and are theirs to give.
76
- - **First person is not a licence to invent.** Opinion is allowed; invented experience,
77
- anecdotes that did not happen, and claimed observations the author did not make are not.
78
- Where a named author owns the material, it stays blocked until that author reviews it.
79
- - **A question is allowed when the piece has earned it.** A question that follows from the
80
- argument is not bait; one bolted on to harvest a response is.
162
+ anything. It usually comes from review language leaking into the material. Evidence,
163
+ verification and approval wording belongs in the review record, and so do qualifiers that
164
+ protect the writer without informing the reader. The claim rule below protects every hedge
165
+ that is true and would change what the reader does. It does not protect review residue: move
166
+ the evidence to the review record and state the capability plainly.
167
+
168
+ ## Who is speaking, and to whom
169
+
170
+ None of these choices makes text sound human by itself. Each depends on the piece.
171
+
172
+ Instructions usually read best addressed to the person following them: "run", "you'll see".
173
+ Reference pages and explanations often don't need "you" at all, and forcing it in makes them
174
+ chatty. Use it where someone is being told what to do.
175
+
176
+ A company account is a team talking when it reports what the team did: "we shipped", not the
177
+ company name in the third person. When the subject is how the product behaves, the product
178
+ can be the subject.
179
+
180
+ Writing under a person's name can carry opinion, judgment and preference, and those belong to
181
+ the named author. Prose under a byline in the impersonal third person reads like
182
+ documentation with a name on it. How personal it gets is the author's call.
183
+
184
+ A question earns its place when the argument raised it and the author wants the answer. One
185
+ bolted on to collect replies is bait.
186
+
187
+ ## First person is not a license to invent
188
+
189
+ Never invent experience, anecdotes, opinions, customers, incidents, benchmarks or quotes. That
190
+ applies to a named founder, a company account, and the vague "one team we worked with". A
191
+ hypothetical example is labeled as one.
192
+
193
+ Copy in the first person needs the named author's own input: the detail, the opinion and the
194
+ reason come from them. It also needs their sign-off on the final wording, and until it has
195
+ both it stays a draft. A meaningful edit to first-person copy goes back to them as well.
196
+ Spotting the gap is part of the review ("this paragraph needs the real reason you picked
197
+ PostgreSQL"). Filling it in on the author's behalf is out of bounds.
198
+
199
+ ## Channel policies on AI-assisted writing
200
+
201
+ LinkedIn has stated its position (HV-18, HV-19):
202
+
203
+ > It's ok to use AI to help you write, but your posts and comments need to represent your
204
+ > voice and your perspectives.
205
+
206
+ > When content appears to be generated by AI and lacks clear perspective, it is less likely
207
+ > to be widely distributed beyond a person's immediate network.
208
+
209
+ This is LinkedIn's own account of its system, and it hasn't been independently verified.
210
+ Read the two sentences together. Help with language is allowed when the post is the member's
211
+ own view, and what LinkedIn says it limits is content that looks generated *and* has no clear
212
+ perspective. Neither sentence says AI help alone costs reach. Elsewhere the evidence on how
213
+ readers react to AI assistance is mixed: a preprint, not peer reviewed, found some assistance
214
+ raised engagement while lowering perceived authenticity (HV-11), and a review of 47
215
+ journalism studies found no consistent trust penalty (HV-12). For a reviewer, "does this say
216
+ something the author actually thinks?" matters more than any word list.
217
+
218
+ Hacker News draws a harder line. The comment section of its guidelines says: "Don't post
219
+ generated text or AI-edited text. HN is for conversation between humans." (HC-16)
220
+
221
+ The rule is written for comments. Cratis applies it, as its own stricter policy, to
222
+ everything it posts there: nothing Cratis posts to Hacker News is written or edited by AI,
223
+ whether title, text or comment. Don't run a voice pass on HN copy. You can help the person
224
+ check facts and links.
81
225
 
82
226
  ## Never trade a claim for a smoother sentence
83
227
 
84
- This is the part that makes a voice pass dangerous, and it is the reason to do one carefully
85
- rather than quickly.
228
+ This is the part that makes a voice pass dangerous, and the reason to do one carefully
229
+ instead of quickly.
86
230
 
87
231
  The risk is not an obvious rewrite. It is a hedge dissolving into nicer phrasing. "There is
88
232
  no need to" becomes "without needing to", and a limit quietly widens. "Not its meaning"
@@ -92,19 +236,20 @@ changed what the text asserts.
92
236
  Before accepting any rewrite, confirm that:
93
237
 
94
238
  - every identifier and every number present before is still present, and none was invented;
95
- - every hedging word — not, never, only, may, unless, until — survives in substance;
239
+ - every hedging word (not, never, only, may, unless, until) survives in substance;
96
240
  - every stated limitation survives, including one that reads as an awkward caveat, because it
97
241
  is a caveat and it is deliberate;
98
242
  - the closing limitation or evidence statement is not thinned, relocated into a subordinate
99
243
  clause, or dropped because it spoiled the ending.
100
244
 
101
- A mechanical check over identifiers, numbers and hedge counts catches most of this before a
102
- human reads a word, and is worth writing once for any corpus large enough to need a pass.
245
+ A mechanical before-and-after check over identifiers, numbers and hedge words catches most of
246
+ this before anyone reads a word. The catalog describes one. A person still reads every
247
+ flagged pair, because a count can't tell a widened limit from a harmless rephrase.
103
248
 
104
249
  ## Work in tranches that can be read
105
250
 
106
251
  Rewriting is not a batch operation. Any body of material large enough to have a detectable
107
- voice is too large to rewrite in one pass with judgement, and a fast pass replaces one
252
+ voice is too large to rewrite in one pass with judgment, and a fast pass replaces one
108
253
  detectable format with another. Rewrite a tranche, read it, and only then continue.
109
254
 
110
255
  Where material carries a recorded approval, a rewrite invalidates it. Recording a fresh
@@ -113,6 +258,15 @@ downstream check agrees with it. Size the tranche to what its owner will actuall
113
258
 
114
259
  ## Stop conditions
115
260
 
116
- Stop when a rewrite would change what the material claims, when the named author has not
117
- accepted a perspective being introduced on their behalf, or when the material is under an
118
- approval that the rewrite would invalidate without authorization to refresh it.
261
+ Stop and hand back when:
262
+
263
+ - a rewrite would change what the material claims;
264
+ - the named author hasn't supplied or accepted a perspective, detail or opinion being put in
265
+ their mouth;
266
+ - the material is under an approval the rewrite would invalidate, and nobody has authorized a
267
+ refresh;
268
+ - the request is to judge whether a person used AI, or to gate their work on a flag count;
269
+ - the copy is for Hacker News.
270
+
271
+ Reviewing or revising copy never includes publishing, scheduling, posting or replying. An
272
+ agent hands the text back; a person decides what goes out.