| Commit message (Collapse) | Author | Age | Files | Lines |
| |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Three rationale-honesty edits land. Craig confirmed (vacation chat
2026-05-29) that the em-dash and semicolon zero-tolerance rules are
intentional self-discipline, not codified habit. He also confirmed
he's trying to use "comprehensive" sparingly despite its high natural
rate in his prose.
Pattern 13 (em-dash) gained a Note-on-basis paragraph naming the
3.49-per-1000-words corpus rate. The note states the rule is
self-discipline, not habit-reflection. The zero-tolerance directive
itself is unchanged.
Pattern 33 (semicolons) gained the same shape. The note names the
3.16-per-1000-words rate. The directive is unchanged. One em-dash in
the existing Problem paragraph that contradicted the rule was
replaced with a comma.
Pattern 7 (AI vocabulary watch-list) gained "comprehensive" as an
entry. A note explains the rationale. The corpus shows 42 uses vs
zero-or-one for every other watch-word, but Craig is consciously
reducing his use, so flag-and-suggest is the right action.
Three of the six proposed deltas from voice-profile.org are now
applied. The other three (new positive patterns: single-sentence
paragraph cadence, parenthetical density, declarative-default
register) await Craig's call.
|
| |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Phase 1 of the writing voice profile TODO (filed 7a861ed). The work
covers corpus assembly, statistics, and a cross-check against the 41
SKILL.md patterns. Email, PR, Slack, and long-form sources deferred to
Phase 2.
Corpus: 5355 commits, 1895 with non-trivial bodies, 128608 words across
33 repos. Strong findings:
- Pattern 17 (no emojis), Pattern 7 (AI vocabulary), Pattern 22
(filler), Pattern 32 (first-person), Pattern 34 (contractions), and
Pattern 38 (terse cut) are all confirmed by direct corpus
measurement.
- Pattern 13 (em-dash zero-tolerance) and Pattern 33 (semicolons to
period) contradict the corpus. Craig USES em-dashes at 3.49 per 1000
words and semicolons at 3.16 per 1000 words, rates comparable to
AI-generated prose. The rules are self-discipline, not
habit-reflection. SKILL.md should say so honestly.
- Pattern 7 watch-word "comprehensive" appears 42 times in the corpus
while every other watch-word clocks zero or one. "comprehensive" is
genuine Craig vocabulary. The rule should pull it from the watch-list
or flag only when it co-occurs with other AI tells.
New patterns the corpus suggests adding: single-sentence-paragraph
cadence (41.1% of paragraphs are exactly one sentence), parenthetical
density (23 opening parens per 1000), declarative-default register
(0.33 question marks per 1000).
Six concrete SKILL.md edits proposed in the doc, none applied. The
deltas await Craig's call.
Phase 2 sources are documented in the doc body.
|
| |
|
|
|
|
|
|
|
|
|
|
| |
fragments, formatting
The personal voice patterns only ran for commits and PRs, so the emails and documents I author never got my actual writing voice. General mode deliberately skips them. I added a third mode, prose, that applies my voice patterns to prose I write or send without dragging in the publish-artifact mechanics that misfire on free text.
The modes now nest. General (#1-31) handles anyone's prose, prose adds my voice patterns (em-dash zero-tolerance, contractions, semicolons to periods, sentence-split, felt-experience cut, fragment rewrite, terse-cut, no-emphasis-formatting), and personal adds the three artifact-mechanics patterns on top (first-person rewrite, public-artifact scope flag, praise/correction asymmetry). Those three stay personal-only because they assume a commit or PR: a document is legitimately third-person, a journal has no public-scope concern, and praise/correction asymmetry is a PR-review rule.
Three gaps closed along the way. #13 (em-dash) was "use fewer". It's now zero-tolerance in prose and personal modes, and the rule holds inside examples and quoted text, not just running prose. #37 (every prose sentence needs a subject and a verb) was locked to personal mode. It now applies to my prose too. And #41 is new: I make points with words, not bold or italics or underscores, so emphasis markup gets rephrased so the stress lives in the wording.
I updated commits.md to match. The publish flow still uses personal mode, but the pattern count is now 41 and the personal-only set is the three artifact-mechanics patterns.
|
| |
|
|
|
|
| |
Voice gains pattern #40: strip the "why" from praise on an approve, since the author already knows why their change is good and the justification reads as flattery. Always keep the why on a finding or change-request, delivered gently. Behavior only changes when the reason lands.
review-code now runs a praise/correction gate before posting any summary, and its inline-comment guidance is tightened so the why-it-matters survives the brevity cuts. The reviewer states the stakes (a user hits a 500, a screen reader announces nothing), not just the mechanism.
|
| |
|
|
| |
Added more clichés to pattern #29 (keep it loose, touch base, circle up, hit the ground running, move the needle, on the same page, no-brainer, win-win, and others) and a note that a casual or conversational register isn't a license to keep one — cut it there too. Prompted by "keep it loose" slipping through as "acceptable casual," which is exactly the miss the note guards against.
|
|
|
I built voice as a single skill that walks 39 numbered prose-editing patterns. The first 25 patterns come straight from the existing humanizer skill (Wikipedia's Signs of AI Writing). Patterns 26-31 add universal good-writing rules from Strunk & White, Orwell, the Plain English Campaign, and Garner — long-word → short-word, active-over-passive, comma splices, cliché flag, jargon-fragment-in-prose rewrite, and corporate-speak nominalizations. Patterns 32-39 are tagged "personal only" and cover first-person rewrite, semicolon swaps, contractions, sentence-split on conjunctions, felt-experience cut, sentence-fragment-in-prose rewrite, terse cut for rhetorical padding, and a public-artifact scope flag.
Two modes determine which patterns get walked. General mode (default) walks 1-31 and is the right fit for research notes, philosophy and history essays, emails, README prose, journal entries, anything that isn't a commit, PR, or PR review comment. Personal mode walks all 39 patterns and is invoked explicitly by the publish flow in commits.md (and similar callers) so first-person and contraction enforcement don't leak into academic or literary writing where they don't belong.
The follow-up commits migrate callers to /voice and remove the standalone humanizer skill.
|