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
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). WithAsyncNiadra, 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
camelextra does not install together withgoogle-genai,google-adk,pipecat,livekitandopenai-agents:camel-aipinspydanticto 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-ai0.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.

