01State & intent
Keep the user's current goal explicit and put important transitions in software rather than asking a transcript to carry every decision.
02Retrieval & context
Select bounded evidence for the task instead of treating the context window as a database or every retrieval method as interchangeable.
03Evals & reliability
Make failures observable and reproducible, then turn each important production failure into a regression case or stronger boundary.
04Tools & MCP
Design agent-facing interfaces with clear schemas, boundaries, errors, observability, and contracts that models can use safely.
05Memory
Treat durable goals, constraints, and application state as explicit data. Conversation history can inform memory, but it should not silently define it.
06Production architecture
Build a surrounding product system that handles streaming, persistence, specialized workflows, observability, and failure recovery, with the model as one component.