Garry Tan@garrytan
The secret to an articulate agent like mine isn't one file. It's three:
SOUL.md — Who the agent IS. Voice, values, operating principles, what good output looks like, what bad output looks like. Not a system prompt, a constitution. Mine says things like "brevity is mandatory," "humor is mandatory," "never open with 'Great question,'" "swearing is allowed when it lands." The more specific and opinionated this is, the less your agent sounds like a chatbot. Write it like you're briefing your smartest friend on how to be you, not like you're configuring software.
USER.md — Who YOU are. Not a bio — a deep model. How your mind works, what you're building, your strengths, your blind spots, your family, your temperament, what triggers you, what you care about. The more the agent understands about you, the better it can serve you. Mine is ~4000 words.
AGENTS.md — Operational rules. What to check on every message, what to never do, how to handle failures, lookup chains, path rules, brain-first protocols. This is the playbook for how it works, not who it is.
The articulation comes from SOUL.md being brutally specific about voice. Generic instructions → generic output. If you write "be helpful and concise" you get ChatGPT. If you write "speak like a peer with taste, one sentence when one sentence works, uncomfortable truths welcome if actually true, language with voltage" — you get something alive.