Skip to main content

memora-autogen

Poison-resistant, Byzantine-fault-tolerant shared memory for Microsoft AutoGen agent teams.

memora-autogen implements AutoGen's autogen_core.memory.Memory protocol on top of Memora. Give every agent in a team a MemoraMemory pointed at the same room and they share one memory that a rogue or prompt-injected agent can't silently corrupt — concurrent writers merge (CRDT, nothing lost), and update_context injects the shared memory into each agent's model context automatically.

pip install memora-autogen

One command — this pulls in the memora-swarm engine and autogen-core. Free key (25,000 ops) at memora.optitransfer.ch/dashboard.

Quickstart

from memora_autogen import MemoraMemory
from autogen_core.memory import MemoryContent, MemoryMimeType

mem = MemoraMemory("research-team", api_key="opti_sk_...", node_id="researcher")

await mem.add(MemoryContent(content="prod region is lax", mime_type=MemoryMimeType.TEXT))
print([r.content for r in (await mem.query("region")).results])   # -> ['prod region is lax']

With an AssistantAgent

from autogen_agentchat.agents import AssistantAgent
from memora_autogen import MemoraMemory

shared = MemoraMemory("research-team", api_key="opti_sk_...", node_id="agent-1")
agent = AssistantAgent("researcher", model_client=..., memory=[shared])

Every agent constructed with a MemoraMemory on the same room reads and writes one shared, poison-resistant memory. update_context runs before each model call and prepends the shared memory as a system message, so the whole team reasons over the same trusted context.

Why it's safe under a team

  • No lost memories. Items are stored as uniquely-tagged elements and every replica's view is unioned on read, so two agents writing at once can't clobber each other.
  • No silent rewrite. Writes are signed and attributable in the underlying Memora engine; a rogue agent's contribution is convicted/evicted rather than trusted.
  • Durable + replayable via a local append-only log.

API

Implements the full autogen_core.memory.Memory protocol: add, query, update_context, clear, close (all async). query(text) does a substring filter over the shared items; query("") returns everything.

Pricing

First 25,000 ops free (unlimited agents), then metered per semantic op — see memora.optitransfer.ch. Reads and keepalive are never billed.

Apache-2.0 · a product of optitransfer.ch

Metadata

Release files for memora-autogen 0.1.0

For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.

Built distribution (wheel)

Table of built distributions (wheels) for memora-autogen 0.1.0
File Interpreter ABI Platform
memora_autogen-0.1.0-py3-none-any.whl Python 3 none any Details

Release files / memora_autogen-0.1.0-py3-none-any.whl

Download URL memora_autogen-0.1.0-py3-none-any.whl
Size 4.2 kB
Tags Python 3
SHA-256 checksum
How to use checksums
fd66ab60d4e07cb0c023399d0317e775fb7a69cc8b2ad96d747316d32c234896
BLAKE2b-256 checksum
How to use checksums
3f10aebc3830412b74ac6404a6998980faf4b1688f9c1676527678e6bbe7720a
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/6.2.0 CPython/3.14.6

Release history Release notifications | RSS feed

This release

0.1.0 This release

1 release file

Anthropic, PBC Visionary sponsor Bloomberg Visionary sponsor Hudson River Trading Visionary sponsor Meta Visionary sponsor NVIDIA Visionary sponsor Microsoft Sustainability sponsor Depot Continuous Integration AWS Cloud computing and Security Sponsor Datadog Monitoring Fastly CDN Google Download Analytics Sentry Error logging StatusPage Status page