⚡ Activation

💭 in your head · nothing to type

Hold one of your typical prompts in mind — the kind you send to an agent again and again.

Don't look at it as a "message" — picture it as a full case folder in an investigator's hands. The entire dossier — timeline, testimonies, evidence — versus a single question tossed at a departing witness. One delivers understanding; the other delivers only a moment.

Notice your prompt: what in there is the permanent case file, and what is the on-the-fly question? Do they live in one block of text, still tangled together?

👁 Reflection

💭 in your head · nothing to type

Return to the investigator's case folder: the stable dossier stays in the file, while today's question sits on a separate note on top.

In your next prompt, what belongs in the file and what belongs on the note?

💡 Concept

Separating context and prompt

Context = information about the world (goals, roles, rules, data, history)
Prompt  = a specific instruction for this request

<aside> 🧭

Interactive block — on the site: open →

</aside>

How to separate them explicitly

## CONTEXT
[Role, goal, constraints, data — the stable stuff]

## TASK
[The specific instruction for this request]

Or via XML tags:

<context>
You are an editor for a business newsletter. Prepare a plain-language email for clients, without corporate jargon.
</context>

<task>
Check this code for security issues.
</task>

<code>
[code here]
</code>

Where to store stable context

What Where to store
Project rules, stack AGENTS.md in the project folder (Claude Code imports it with the line @AGENTS.md in CLAUDE.md)
Personal preferences Your agent's global file: ~/.claude/CLAUDE.md for Claude Code, ~/.codex/AGENTS.md for Codex
Current tasks TODO.md
Where the last session stopped STATE.md