~/stepanic
All posts
Claude CodeSkillsWritingAI-nativeOpen source

I had the same post written in two registers. The theatrical one dropped all three limitations.

LLM prose defaults to a three-act arc: setup, complication, reveal, lesson. I wanted the option turned off by default, so I built a skill for it. The measurement that justified the default came from writing one technical article twice.

I published a Claude Code skill that makes the engineering register the default for anything written for a human audience, and puts the theatrical register behind an explicit request. The evidence for making that the default, rather than a preference I state each time: the same technical article written twice, once in each register, from one set of measurements. The theatrical version dropped all three limitations the engineering version carried, and I did not notice until I counted.

The tell

Setup, complication, reveal, lesson. Model-written prose falls into that shape by default, and it is recognisable at a glance, which is reason enough to avoid it when publishing under my own name. But the specific cost in a technical write-up is structural rather than stylistic: an arc puts the conclusion at the bottom, because a conclusion stated early ruins the build. A reader who scans the headings of an arc gets narrative positions, not findings.

The comparison

Both versions describe the same investigation: whether Anthropic's lease of xAI's Colossus 1 shows up in my own Claude Code telemetry. Same data, same tables, same conclusion. Both are published, so the comparison can be read rather than taken on trust — the engineering version and the theatrical one, the latter unedited apart from a framing note that is excluded from the counts below. English versions, measured on 27 August 2026:

theatrical engineering
words 498 789
sentences 43 34
average sentence 12 words 23 words
headings 0 9
limitations stated 0 of 3 3 of 3

Two of these surprised me.

The theatrical version is shorter, not longer, and its sentences are half the length. Punchiness is the mechanism of the arc, not padding. Some of the word gap is structural rather than rhetorical — the engineering version carries tables and two sections the theatrical one folds into prose — but the sentence length difference is the register itself.

The limitations row is the one that settled it. The engineering version lists three: that coverage before 12 May 2026 is reconstructed and the April baseline is therefore unreliable in both directions; that session counts are not comparable across the series (May shows 170, June 2,016); and that overload errors rise with my own concurrency, not only with service load. The theatrical version contains none of them, and has no section where they would go. Nothing was falsified. The facts that made the finding weaker simply had nowhere to sit in a structure built to land an ending.

What the skill says

Engineering register, the default: conclusion in the first paragraph; headings that name content rather than narrative position; declarative sentences; every number with a unit, a date and a way to re-derive it; a mandatory limitations section wherever measurements are reported; the ending is open questions, never a moral. It also bans a short list of openers — it turns out, here's the thing, and that's when I realised — because each exists only to manufacture a beat.

Theatrical register, on request: arc, ordered reveals, metaphor, a closing line built to land. One rule makes it safe to use at all: tension may come only from the order in which true things are told, never from what is left out. The limitations section survives into it intact, even where it deflates the ending. Had that rule existed when the theatrical version above was written, the row that reads 0 of 3 would read 3 of 3.

A skill cannot hold a default

This is the part worth copying regardless of what you think about registers. A skill loads when it is triggered. A default that only exists inside a skill is not a default, because the situation where it matters most is the one where nothing triggered it.

So the enforcing line lives in CLAUDE.md, which is read every session, and the skill holds the detail:

Prose register. Anything written for a human audience uses the engineering register by default: conclusion first, headings that name content, no narrative arc, no withheld facts, limitations stated outright. The theatrical register is used only when asked for in that session.

The same split applies to any behaviour you want on by default: the trigger phrases and the long form go in the skill, the one-line invariant goes where it is always loaded.

Bilingual texts are written twice, not translated

Every post here ships in English and Croatian. The rule in the skill is that each language is written natively from the same facts, matching in numbers, claims and section order, and differing freely in sentence construction. A near-literal translation is detectable in exactly the way a narrative arc is, and fails the same test: it reads as generated rather than written.

Limitations

  • n = 1. One article, one author, one pair of versions. Nothing here shows that readers prefer the engineering register, only that one theatrical rendering lost information that the engineering one kept.
  • The author of both versions later wrote the rule. The theatrical version was not produced by someone trying to obey a limitations requirement and failing; the requirement did not exist yet. That is weaker evidence than a controlled comparison, and it is the honest description of what happened.
  • One metric was rejected. I counted single-sentence paragraphs expecting the theatrical version to be full of them. It has none, and the engineering version has five. The rule bans a single-sentence paragraph used as a drum beat, and the count cannot tell that apart from a short factual statement under a heading, so it measures nothing useful.
  • Word and sentence counts come from a script over the two texts and are sensitive to how tables and lists are excluded. The relative difference is robust; the absolute figures are not precise.

Source

The skill, in English and in the Croatian original, plus the README: github.com/stepanic/cv/tree/main/skills/register. MIT. Install it user-level and it applies in every project:

mkdir -p ~/.claude/skills/register
cp skills/register/SKILL.md ~/.claude/skills/register/SKILL.md

Both versions of the article, in both languages, with the measurements and the commands that reproduce them: docs/2026-08-27-colossus-hipoteza-dvije-verzije.md.

Sources