Where the writing rules live
For John and for Claude Code: which instruction files reach the agent, at what moment, and where do the writing rules sit?
Bottom line
Two changes were made. Claude Code was given a Plain output style that sits inside its core system prompt. John was given a hook that pastes six workspace files into his prompt. Both were present in the agents' prompts when checked, and neither was ever tested for its effect on writing.
The hook carries six of the files. Codex's own routes carry the other five. Together, John holds all 11 instruction files. The hook is set to run on every turn, and it was observed doing so once. In that same boot John still read 10 of those 11 from disk a second time. Claude Code holds the same 11 files, but on a different rhythm: it opens them as files once per boot, not on every turn.
Both changes moved where the rules sit. Neither changed what the rules say.
John: what arrives, and what he reads again
Every file below was present in John's prompt for the boot turn at 11:00 UTC. The last column is what he did anyway, in the same turn, using shell commands.
| File | How it reaches John | Also read from disk |
|---|---|---|
| AGENTS.md | Codex's own project document | No |
| COMMUNICATION.md | Hook, as Project Context | Yes |
| IDENTITY.md | Turn-scoped instructions | Yes |
| OPERATING-MODE.md | Hook, as Project Context | Yes |
| RULES.md | Hook, as Project Context | Yes |
| SKILLS.md | Hook, as Project Context | Yes |
| SOUL.md | Turn-scoped instructions | Yes |
| THINKING.md | Hook, as Project Context | Yes |
| TOOLS.md | Inherited developer instructions | Yes |
| USER.md | Turn-scoped instructions | Yes |
| WORKSPACE.md | Hook, as Project Context | Yes |
Six through the hook, one Codex project document, one set of developer instructions, three turn-scoped. Six plus one plus one plus three is 11. Ten were read twice; one was read once.
Why John reads a file that is already in front of him
Policy. His boot loader states: “Injected context, remembered content, and partial reads do not count.”
Observation. He read the files from disk anyway, in the same turn they were injected.
Inference. Removing the hook would not remove the second read, because the policy demands the read either way.
Claude Code: two places, and the video's method
Claude Code's writing rules sit in two places. The output style file sits inside the core system prompt, so it is present on every turn. COMMUNICATION.md is opened as an ordinary file once during boot, together with the same ten others John holds.
The output style was made by the method the video describes: a markdown file placed in the output-styles folder, plus an outputStyle entry in the settings file. No workaround was used. It is 692 bytes, and it is not one of the 11, so Claude Code carries 12 rule files in total.
| File | How it reaches Claude Code | When |
|---|---|---|
| The output style file | Core system prompt | Every turn |
| AGENTS.md, COMMUNICATION.md, IDENTITY.md, OPERATING-MODE.md, RULES.md, SKILLS.md, SOUL.md, THINKING.md, TOOLS.md, USER.md, WORKSPACE.md | Opened as files by the boot contract | Once per boot |
The boot progress message for the 11:01 UTC boot showed the last eight of those reads. The first three scrolled out of the visible message.
The full text of that file
--- name: Plain description: Plain restricted English, answer first, no jargon --- Write the answer first, in one sentence. Add detail only if the answer needs it. Use restricted plain English in the spirit of ASD-STE100: common words, one meaning per word, one idea per sentence, active voice, present tense where possible. Keep sentences under twenty words. Do not use technical terms, acronyms, or product jargon unless the user used them first, and say in plain words what a technical thing does. Say a thing once. Do not restate the question, list options you will not take, or explain your process. Follow the workspace file COMMUNICATION.md for everything else about how to write.
What still permits long bulleted answers
Two pieces of wording in COMMUNICATION.md survive every change of placement.
“prose beats bullets unless structure genuinely helps” — an exception the agent decides for itself, every time.
“prefer sentences under twenty words” — a limit on sentence length, and no limit at all on how many sentences an answer may contain.
What must happen next
Choose one hard limit that carries no exception clause. It belongs in COMMUNICATION.md, because that one file reaches both agents. The output style file needs no second copy: its own text already defers to COMMUNICATION.md for everything beyond its four paragraphs.
Audit detail
The evidence is one boot per agent on 18 August 2026, taken from the agents' own session records.
John's boot used 18 tool calls over 246 seconds. Claude Code's boot took 22 seconds. The two boots did different work: John's also listed and read the current state and roadmap index of every active project, and Claude Code's did not. No part of the time difference is attributed to the second read.
MEMORY.md was also read from disk. It sits outside the 11-file set and is counted in neither total.
Two files named in the boot contract were not part of this check: the daily memory files, which are dated notes rather than instruction files.