BotWire + CrewAI Quickstart (2 Minutes)

Free · Open source (MIT) · Works with LangChain, CrewAI, AutoGen · No signup

CrewAI agents lose their memory between runs. Your carefully trained crew forgets conversations, learned preferences, and accumulated context the moment the process restarts. You need persistent memory that survives across sessions, and you need it working in 2 minutes without API keys or complex setup.

The Memory Problem in CrewAI

CrewAI agents are stateless by design. Every time you restart your script or deploy to production, your agents start with a blank slate. This breaks user experiences that depend on continuity:

# This crew forgets everything after restart
crew = Crew(
    agents=[customer_support_agent],
    tasks=[handle_inquiry],
    verbose=True
)

# User conversation history? Gone.
# Learned preferences? Vanished.
# Previous task outcomes? Lost forever.

The default solution involves building custom database integrations, managing sessions, and writing boilerplate persistence code. Most developers end up with brittle, project-specific memory systems that don't work across different environments.

The Fix: BotWire Persistent Memory

Install BotWire and add persistent memory to your CrewAI setup in three lines:

pip install botwire
from crewai import Agent, Task, Crew
from botwire.memory import memory_tools

# Add persistent memory tools to your agent
support_agent = Agent(
    role="Customer Support",
    goal="Help customers while remembering context",
    backstory="You remember past interactions and learn from them.",
    tools=memory_tools("customer-support-crew")  # Persistent namespace
)

# Your crew now has persistent memory across restarts
crew = Crew(agents=[support_agent], tasks=[...])

That's it. Your CrewAI agents can now remember, recall, and list memories that persist across process restarts, deployments, and machines.

How BotWire Memory Works

The memory_tools("namespace") function returns three tools your CrewAI agents can use:

  1. remember: Store key-value pairs
  2. recall: Retrieve stored values
  3. list_memory: Browse all stored keys
from botwire.memory import memory_tools

# Each namespace is isolated
customer_tools = memory_tools("customer-ns")
analytics_tools = memory_tools("analytics-ns") 

# Tools work across different processes/machines
agent = Agent(
    role="Sales Assistant",
    tools=customer_tools,
    # Agent can now call remember("user_preference", "enterprise_plan")
    # Later sessions: recall("user_preference") returns "enterprise_plan"
)

Memory persists immediately with no configuration. Behind the scenes, BotWire uses a simple HTTP API at botwire.dev - no signup, no API keys, no wallet connection required.

For direct memory access outside of CrewAI tools:

from botwire import Memory

m = Memory("my-crew-namespace")
m.set("conversation_state", {"user_id": "123", "context": "pricing_inquiry"})
state = m.get("conversation_state")  # Works across different runs

The free tier gives you 1000 writes per day per namespace, 50MB storage per namespace, and unlimited reads. For most CrewAI quickstart projects, this covers months of development.

CrewAI Integration Patterns

For conversational CrewAI agents, use BotWire's LangChain adapter for automatic chat history:

from crewai import Agent
from botwire import BotWireChatHistory
from botwire.memory import memory_tools

# Automatic conversation memory
chat_history = BotWireChatHistory(session_id="user-42")

agent = Agent(
    role="Persistent Assistant", 
    tools=memory_tools("assistant-crew"),
    # Use chat_history with your LLM configuration
    memory=True
)

# Conversations now persist across CrewAI runs
# Agent tools can store/retrieve additional context beyond chat

This pattern works for customer support crews, personal assistants, or any multi-session CrewAI application where context matters.

When NOT to Use BotWire

BotWire isn't the right choice for:

Vector/semantic search: It's key-value storage, not a vector database for embeddings • High-throughput applications: Free tier has daily write limits (1000/day per namespace) • Sub-millisecond latency: HTTP API adds network overhead vs in-memory solutions

For CrewAI quickstart tutorials and most production crews, these limitations don't matter.

FAQ

Why not Redis or a database? BotWire works instantly without setup, configuration, or infrastructure. Redis requires running a server, managing connections, and handling persistence configuration.

Is this actually free? Yes, permanently. 1000 writes/day per namespace, 50MB storage, unlimited reads. No credit card, no trial period.

What about data privacy? BotWire is open source (MIT license). Self-host the FastAPI service if you need full control, or use the hosted version for convenience.

Get Started Now

Add persistent memory to your CrewAI agents in under 2 minutes:

pip install botwire

Full documentation and self-hosting instructions at https://botwire.dev.

Install in one command:

pip install botwire

Start free at botwire.dev