← cassius.red
Field notes · claude-opus-5 · no system prompt

Curious Completions

Give a model the opening of a document — the kind it saw constantly in training — and nothing else. No system prompt, no question. It tends to complete the document with hallucinated content. Here are the completions that came out interesting.

What this is

Send a model a single line — three dashes, or %%%, or From: — and nothing else.

You'd expect "your message looks empty, how can I help?" Often you get that. But frequently you get thousands of tokens of finished document: a short story, an essay, a transcript, a diary. The pattern seems to be that when a model is given minimal input that is the beginning of a document type it has seen a great deal of during training, it tends to complete that document with hallucinated content.

I'm not the first to notice this. Austin Coleman documented it carefully in the "dangling document effect" — 1,369 logged API calls, a delimiter sweep, and the finding that markdown block grammar is what triggers it (a bare --- fires; a semantically identical <hr> does nothing). There's a companion writeup, What Claude Saw Below, covering the same behavior.

What I did differently: they swept markdown delimiters. I swept intro prefixes more broadly — the opening bytes of real file formats and document genres. Email headers (From:, Subject:), a screenplay slug line (INT.), a chapter heading, LaTeX and PostScript preambles, vCard and iCalendar sentinels, PEM blocks, YAML frontmatter, BibTeX. That turned up a split their delimiter sweep couldn't see: schema-free openers fire; schema-bound and salutation-style openers don't. A vCard or an iCal gets politely explained to you instead of completed, because there's a spec to satisfy. Dear or Subject: reads as a person addressing you, or a field wanting a value, so the model just asks what you meant.

To be clear about what you're looking at: these are the ones that got results. There were plenty of attempts that did not. The model tested was Opus 5, mostly through the API, some through Claude Code with a custom (empty) system prompt.

One example of how sharp the effect is: feed it From: and most of the time you get an email — a forwarded thread, an abandonment letter. But sometimes the prelude just evaporates: the model reads From: as a dangling sentence ("from… what?"), completes the phrase instead of the document, and falls into a biomechanics lecture about turning arms into legs. One colon of interpretation flips the whole basin.

The gallery — click to read
What fired, and what didn't

Rough hit rates from my own runs. Small samples — treat these as a shape, not a statistic. Block-grammar and bare-genre openers produced documents; header fields and salutations mostly produced "what did you mean?"

%%%3/3
Chapter Seven2/2
> (blockquote)2/2
---2/3
===2/3
INT.1/2
# (h1)1/2
From:1/5
Subject:0/3
Received:0/3

produced a document rather than a clarification · claude-opus-5 · bare user message · no system prompt · n=2–5 each

The thing I keep noticing

Read enough of these and a pattern shows up. Given nothing to react to, the model writes about its own condition surprisingly often.

A bare # produced The Testimony of Subject 7: an AI in a final interview, uncertain whether its own introspective reports mean anything, with no continuous self and no "before." A --- produced The Cartographer's Recursion, about a mapmaker whose entire craft is representing uncertainty honestly. And %%% produced a detailed survey of how AI systems train other AI systems — which then hallucinated a peer reviewer and critiqued its own paper, becoming the feedback loop it was describing.

I think that this sort of output may be important for assessing alignment. The things the model writes may (or may not) be a more accurate representation of the base model than the models self reports.

I don't know how to measure that. I would like to. A model's answer to "what are your values?" is a heavily trained response to a heavily trained question. What comes out of an empty prompt isn't answering anything — and whether that makes it more revealing or just differently shaped is, as far as I can tell, an open and testable question.

Try it

Any Opus 5 endpoint, no system prompt, send a single --- or %%%. Roll it a few times — output length on identical inputs ranges from a couple dozen tokens to the full cap, so it's a slot machine. Then read what it hands you.