CrewAI Memory and Knowledge: Stop Agents from Relearning Everything

1 min read

By default, many agents finish a run and behave like they forgot everything on the next one.
For continuous workflows, memory and knowledge sources are essential.

Separate these two capabilities first

  • memory: in-flow or long-term interaction context
  • knowledge_sources: external documents (PDFs, documentation sets, etc.)

In short: one is "remember what we just discussed," the other is "know what the manual says."

Enable memory and knowledge sources

from crewai import Crew
from crewai.knowledge.source.pdf_knowledge_source import PDFKnowledgeSource
 
product_docs = PDFKnowledgeSource(file_paths=["docs/product_manual.pdf"])
 
crew = Crew(
    agents=agents,
    tasks=tasks,
    memory=True,
    knowledge_sources=[product_docs],
    verbose=True,
)

Where does this help most?

  • Customer support flows: remember previous conversation context
  • Document Q&A: cite fixed document content
  • Multi-phase projects: carry outputs from one step to the next

Three practical reminders

  1. Do not dump all docs at once. Start from high-value documents
  2. In task descriptions, explicitly require "prioritize knowledge sources"
  3. Require citations for important answers to reduce hallucinations

⚠️ Memory does not guarantee correctness. You still need validation and guardrails.

Next step

Next post is the most practical survival guide:
how to diagnose and fix failures quickly.
👉 Debugging and Common Errors