Tone drift is invisible while it happens. Nobody edited the prompt; the assistant simply accumulated forty sessions of context and started writing slightly differently. By the time an editor notices, there is no baseline to point at and no way to say when it started.
The agent
| system_prompt | House voice: plain, second person, no superlatives, no “we're excited to”. Lead with what changed for the reader, then why. One line per change. Drop changes with no user-visible effect. |
| tool_config | none — this agent should not browse |
| output_schema | free text |
The workflow
Freeze the voice
The house voice is a published version, not a doc someone pastes in. v1 is citable in a style review.
Run every brief pinned
Forty briefs, forty chats, all on v1, each with a fresh context. Brief nine cannot influence brief ten.
Evolve on purpose
When the voice genuinely changes, publish v2 with a changelog. The diff shows the editor exactly what moved.
Audit any piece
Open any published note and see which version wrote it, with the prompt as it stood that day.
What you get
Pin an agent. Run it in a year. Get the same thing back.
Claude, ChatGPT and Gemini included — no provider account to open. Build one agent, publish v1, run it, then change the prompt and diff the two.