Skip to main content
NiadraMemory(conversation) is an AgentMemory around the agent’s own chat memory; memory.attach(agent) makes it the agent’s memory, and memory.tools (or NiadraToolkit(conversation).get_tools()) gives the kit as FunctionTools. Python only.

Install

The five primitives

Minimal example

The same code is in examples/camel_agent.py.

Agent memory

NiadraMemory(conversation, agent_memory=True) puts the agent’s own notes before the customer’s context and adds the two tools. See Agent memory.

Limits

  • CAMEL reads an agent’s memory synchronously, even in astep: the context comes with a conversation of the sync client (Niadra). With AsyncNiadra, the agent gets the tools and the turns and runs without the pack. The read has the SDK’s own time budget: 300 ms for chat and 150 ms for voice.
  • The camel extra does not install together with google-genai, google-adk, pipecat, livekit and openai-agents: camel-ai pins pydantic to 2.12.0 or older, and those extras want a newer one. Use separate environments.
  • Nothing here stops the agent: with Niadra slow or down, it runs without the pack and a tool answers that the history is unavailable.
  • Tested against camel-ai 0.2.90 with the model replaced by a fake and Niadra on the emulator.

Next steps

History navigation

the three tools the agent receives.

Agent memory

the agent’s own working notes.