AgentOps + MemorySync
Memory operations as first-class spans in AgentOps: the first SDK-level tracing instrumentor from any memory vendor, wired through standard OpenTelemetry.
Overview
opentelemetry-instrumentation-memorysync makes every MemorySync operation — adds, recalls, queries, forgets, and ten more — a first-class span in AgentOps traces. agentops.init() registers AgentOps as the global OpenTelemetry tracer provider, so one instrument_memorysync() call is the whole integration; the standard BaseInstrumentor entry point also works with the opentelemetry-instrument CLI for zero-code setups. Spans carry operation, sync/async client kind, result counts, score aggregates, idempotency signals, and error classifications — and, unlike the incumbent’s instrumentation, memory CONTENT is never recorded unless you opt in (and then truncated): the in-tree Mem0 wrapper dumps full memory text into span attributes and — via leftover debug print() calls — onto stdout on every add and search. Full sync/async parity across both MemorySync clients (the Mem0 wrapper skips history on cloud clients), guaranteed pass-through (results and exceptions are untouched; a broken attribute extractor can never fail your call), and a seam test pins the AgentOps global-provider contract on every push. Zep, Supermemory, and Letta have no AgentOps story at all.
Setup status and requirements
- Supported version
- opentelemetry-instrumentation-memorysync 1.0.0 (PyPI)
- Last setup review
- 2026-08-25
- Permissions
- A MemorySync API key; an AgentOps API key for the AgentOps dashboard.
- Limits
- Python 3.9+. Works with any OpenTelemetry backend — AgentOps is one init() away.
Capabilities
- The FIRST SDK-level tracing instrumentor from any memory vendor
- One line: instrument_memorysync() after agentops.init() — order independent
- Standard OTel BaseInstrumentor + entry point — works with opentelemetry-instrument
- Privacy-first: memory content is NEVER recorded unless explicitly opted in
- Zero stdout pollution — the incumbent’s wrapper print()s memory content
- Full sync/async parity across 14 memory operations
- Instrumentation can never break the app — guaranteed pass-through
- Duration histogram per operation for latency dashboards
Quick Start
import agentopsfrom opentelemetry.instrumentation.memorysync import instrument_memorysyncfrom memorysync import MemorySyncClientagentops.init()instrument_memorysync()client = MemorySyncClient(api_key="ms_...", base_url="https://api.memorysync.io")client.add("Prefers window seats", source="chat") # span: memorysync.addclient.query("seating preferences", k=5) # span: memorysync.query
Use Cases
Debugging why an agent recalled (or missed) a memory
Latency dashboards for memory operations alongside LLM calls
Compliance-friendly observability without exposing memory content
Explore More
Built for production AI systems
Build AI systems that remember
MemorySync provides the infrastructure layer for persistent memory, adaptive retrieval, and enterprise AI intelligence.
Start free. No credit card required.