Rank
65
LangChain/LangGraph tools for AI agent x402 payments on X1
Traction
No public download signal
Freshness
Updated 4mo ago
Crawler Summary
Persistent memory for AI agents — LangChain, CrewAI, OpenAI Agents, MCP. Hybrid BM25+semantic search, Rust core, zero config. Zetta — Persistent Memory for AI Agents <p align="center"> <b>The universal memory layer for LLM agents — open-source, framework-agnostic, Rust-powered.</b> </p> <p align="center"> <a href="https://pypi.org/project/zetta/"><img src="https://img.shields.io/pypi/v/zetta?color=blue&label=PyPI" alt="PyPI"></a> <a href="https://pypi.org/project/zetta/"><img src="https://img.shields.io/pypi/pyversions/zetta" alt="Python">< Capability contract not published. No trust telemetry is available yet. Last updated 5/31/2026.
Freshness
Last checked 5/31/2026
Best For
zetta is best for crewai, multi-agent workflows where OpenClaw compatibility matters.
Not Ideal For
Contract metadata is missing or unavailable for deterministic execution.
Evidence Sources Checked
editorial-content, GITHUB OPENCLEW, runtime-metrics, public facts pack
Persistent memory for AI agents — LangChain, CrewAI, OpenAI Agents, MCP. Hybrid BM25+semantic search, Rust core, zero config. Zetta — Persistent Memory for AI Agents <p align="center"> <b>The universal memory layer for LLM agents — open-source, framework-agnostic, Rust-powered.</b> </p> <p align="center"> <a href="https://pypi.org/project/zetta/"><img src="https://img.shields.io/pypi/v/zetta?color=blue&label=PyPI" alt="PyPI"></a> <a href="https://pypi.org/project/zetta/"><img src="https://img.shields.io/pypi/pyversions/zetta" alt="Python"><
Public facts
3
Change events
0
Artifacts
0
Freshness
May 31, 2026
Capability contract not published. No trust telemetry is available yet. Last updated 5/31/2026.
Trust score
Unknown
Compatibility
OpenClaw
Freshness
May 31, 2026
Vendor
Manoj Engineer
Artifacts
0
Benchmarks
0
Last release
Unpublished
Key links, install path, and a quick operational read before the deeper crawl record.
Summary
Capability contract not published. No trust telemetry is available yet. Last updated 5/31/2026.
Setup snapshot
git clone https://github.com/Manoj-engineer/zetta.gitSetup complexity is LOW. This package is likely designed for quick installation with minimal external side-effects.
Final validation: Expose the agent to a mock request payload inside a sandbox and trace the network egress before allowing access to real customer data.
Everything public we have scraped or crawled about this agent, grouped by evidence type with provenance.
Vendor
Manoj Engineer
Protocol compatibility
OpenClaw
Handshake status
UNKNOWN
Merged public release, docs, artifact, benchmark, pricing, and trust refresh events.
Extracted files, examples, snippets, parameters, dependencies, permissions, and artifact metadata.
Extracted files
0
Examples
6
Snippets
0
Languages
python
python
from zetta import Zetta
z = Zetta() # zero config — SQLite, no API keys
await z.add("User prefers Python over Java")
results = await z.recall("what language does the user prefer?")
# → [MemoryRecord(content="User prefers Python over Java", score=0.94)]bash
pip install zetta # SQLite + hash embedder — zero config pip install "zetta[embeddings]" # + sentence-transformers for semantic search pip install "zetta[chroma]" # + ChromaDB backend pip install "zetta[langchain,crewai]" # + framework integrations pip install "zetta[all]" # everything
python
import asyncio
from zetta import Zetta
async def main():
z = Zetta() # SQLite at ~/.zetta/memory.db
# Store memories
await z.add("Alice is the lead engineer on the payments team")
await z.add("The API uses OAuth2 with JWT tokens")
await z.add("Deploy happens every Friday at 6pm UTC")
# Recall by natural language
results = await z.recall("who works on payments?", top_k=3)
for r in results:
print(f"{r.score:.2f} {r.content}")
asyncio.run(main())python
from zetta import Zetta, Scope
from zetta.types import Visibility
z = Zetta()
# Private to this agent
private_scope = Scope(user_id="alice", agent_id="assistant", visibility=Visibility.PRIVATE)
await z.add("Alice's secret preference: dark mode", scope=private_scope)
# Shared across Alice's agents
shared_scope = Scope(user_id="alice", visibility=Visibility.SHARED)
await z.add("Alice is a Python developer", scope=shared_scope)
# Global — visible to everyone
global_scope = Scope(visibility=Visibility.GLOBAL)
await z.add("The company was founded in 2020", scope=global_scope)python
from langchain_core.messages import HumanMessage, AIMessage
from zetta import Zetta, Scope
from zetta.integrations.langchain import ZettaChatMessageHistory, ZettaMemory
z = Zetta()
scope = Scope(user_id="alice")
# Chat history
history = ZettaChatMessageHistory(zetta=z, scope=scope, session_id="session-1")
history.add_user_message("What's the capital of France?")
history.add_ai_message("The capital of France is Paris.")
# Long-term memory for chains
memory = ZettaMemory(zetta=z, scope=scope, memory_key="history")
memory.save_context({"input": "I love Paris"}, {"output": "Great choice!"})python
from zetta import Zetta, Scope
from zetta.integrations.crewai import ZettaShortTermMemory, ZettaLongTermMemory, ZettaEntityMemory
z = Zetta()
scope = Scope(team_id="my-crew", visibility=Visibility.SHARED)
short_term = ZettaShortTermMemory(zetta=z, scope=scope)
long_term = ZettaLongTermMemory(zetta=z, scope=scope)
entity_mem = ZettaEntityMemory(zetta=z, scope=scope)
# Use as drop-in for crew.memory = True
short_term.save("Meeting concluded: deploy on Friday")
entity_mem.save("Alice leads the payments team", entity="Alice")Full documentation captured from public sources, including the complete README when available.
Docs source
GITHUB OPENCLEW
Editorial quality
ready
Persistent memory for AI agents — LangChain, CrewAI, OpenAI Agents, MCP. Hybrid BM25+semantic search, Rust core, zero config. Zetta — Persistent Memory for AI Agents <p align="center"> <b>The universal memory layer for LLM agents — open-source, framework-agnostic, Rust-powered.</b> </p> <p align="center"> <a href="https://pypi.org/project/zetta/"><img src="https://img.shields.io/pypi/v/zetta?color=blue&label=PyPI" alt="PyPI"></a> <a href="https://pypi.org/project/zetta/"><img src="https://img.shields.io/pypi/pyversions/zetta" alt="Python"><
Zetta is to agent memory what OpenTelemetry is to observability — one standard interface, pluggable backends, and intelligence built-in.
from zetta import Zetta
z = Zetta() # zero config — SQLite, no API keys
await z.add("User prefers Python over Java")
results = await z.recall("what language does the user prefer?")
# → [MemoryRecord(content="User prefers Python over Java", score=0.94)]
Works with LangChain, CrewAI, OpenAI Agents SDK, AutoGen, or any custom agent — drop in, no lock-in.
Every AI agent framework ships its own memory: a thin wrapper around a vector store with no intelligence, no isolation, and no standards. You end up reinventing the same wheel for every project.
Zetta fixes this:
| Problem | Zetta's answer |
|---------|---------------|
| Every framework re-invents memory | One protocol (MemoryProtocol), any framework |
| Hard to switch vector stores | Swappable backends: SQLite → ChromaDB → FAISS → Neo4j |
| Plain vector search misses context | Hybrid 4-signal scoring: semantic + BM25 + ACT-R activation + Ebbinghaus decay |
| Private memories leaking between agents | PRIVATE / SHARED / GLOBAL visibility enforced at the SQL level |
| Memory grows forever, costs pile up | Consolidation engine: merge duplicates, detect conflicts, tier promotion |
| Slow Python memory operations | Rust core via PyO3 — sub-millisecond add/recall |
| Feature | Zetta | mem0 | Letta/MemGPT | LangChain Memory | |---------|-----------|------|--------------|-----------------| | Open-source & self-hosted | ✅ | ✅ | ✅ | ✅ | | Zero-config (no API keys) | ✅ | ❌ | ❌ | ✅ | | Hybrid scoring (BM25 + semantic + ACT-R) | ✅ | ❌ | ❌ | ❌ | | Multi-agent scope isolation | ✅ | partial | ❌ | ❌ | | Rust performance core | ✅ | ❌ | ❌ | ❌ | | Consolidation + conflict detection | ✅ | ❌ | partial | ❌ | | Swappable backends | ✅ | partial | ❌ | partial | | MCP server built-in | ✅ | ❌ | ❌ | ❌ | | Framework-agnostic protocol | ✅ | ❌ | ❌ | ❌ |
pip install zetta # SQLite + hash embedder — zero config
pip install "zetta[embeddings]" # + sentence-transformers for semantic search
pip install "zetta[chroma]" # + ChromaDB backend
pip install "zetta[langchain,crewai]" # + framework integrations
pip install "zetta[all]" # everything
import asyncio
from zetta import Zetta
async def main():
z = Zetta() # SQLite at ~/.zetta/memory.db
# Store memories
await z.add("Alice is the lead engineer on the payments team")
await z.add("The API uses OAuth2 with JWT tokens")
await z.add("Deploy happens every Friday at 6pm UTC")
# Recall by natural language
results = await z.recall("who works on payments?", top_k=3)
for r in results:
print(f"{r.score:.2f} {r.content}")
asyncio.run(main())
from zetta import Zetta, Scope
from zetta.types import Visibility
z = Zetta()
# Private to this agent
private_scope = Scope(user_id="alice", agent_id="assistant", visibility=Visibility.PRIVATE)
await z.add("Alice's secret preference: dark mode", scope=private_scope)
# Shared across Alice's agents
shared_scope = Scope(user_id="alice", visibility=Visibility.SHARED)
await z.add("Alice is a Python developer", scope=shared_scope)
# Global — visible to everyone
global_scope = Scope(visibility=Visibility.GLOBAL)
await z.add("The company was founded in 2020", scope=global_scope)
from langchain_core.messages import HumanMessage, AIMessage
from zetta import Zetta, Scope
from zetta.integrations.langchain import ZettaChatMessageHistory, ZettaMemory
z = Zetta()
scope = Scope(user_id="alice")
# Chat history
history = ZettaChatMessageHistory(zetta=z, scope=scope, session_id="session-1")
history.add_user_message("What's the capital of France?")
history.add_ai_message("The capital of France is Paris.")
# Long-term memory for chains
memory = ZettaMemory(zetta=z, scope=scope, memory_key="history")
memory.save_context({"input": "I love Paris"}, {"output": "Great choice!"})
from zetta import Zetta, Scope
from zetta.integrations.crewai import ZettaShortTermMemory, ZettaLongTermMemory, ZettaEntityMemory
z = Zetta()
scope = Scope(team_id="my-crew", visibility=Visibility.SHARED)
short_term = ZettaShortTermMemory(zetta=z, scope=scope)
long_term = ZettaLongTermMemory(zetta=z, scope=scope)
entity_mem = ZettaEntityMemory(zetta=z, scope=scope)
# Use as drop-in for crew.memory = True
short_term.save("Meeting concluded: deploy on Friday")
entity_mem.save("Alice leads the payments team", entity="Alice")
from agents import Agent, Runner
from zetta import Zetta, Scope
from zetta.integrations.openai_agents import create_memory_tools
z = Zetta()
scope = Scope(user_id="alice", agent_id="assistant")
agent = Agent(
name="Assistant",
instructions="You are a helpful assistant with persistent memory.",
tools=create_memory_tools(z, scope),
)
Run Zetta as a standalone service:
uvicorn zetta.server:app --host 0.0.0.0 --port 8765
# Store a memory
curl -X POST http://localhost:8765/memories \
-H "Content-Type: application/json" \
-d '{"content": "User prefers concise answers", "scope": {"user_id": "alice"}}'
# Search
curl -X POST http://localhost:8765/memories/search \
-H "Content-Type: application/json" \
-d '{"query": "communication style", "scope": {"user_id": "alice"}, "top_k": 5}'
# Health check
curl http://localhost:8765/health
Interactive docs at http://localhost:8765/docs.
Every recall fuses four signals:
score = w₁·semantic + w₂·bm25 + w₃·activation + w₄·recency
| Signal | What it measures | |--------|-----------------| | Semantic | Cosine similarity between embeddings | | BM25 | Keyword overlap (TF-IDF style) | | ACT-R activation | How often / recently the memory was accessed | | Ebbinghaus recency | Forgetting curve — recent memories score higher |
result = await z.consolidate(scope=scope, strategy="aggressive")
# ConsolidationResult(merged=3, promoted=5, demoted=2, conflicts_found=1)
Strategies: default, aggressive, conservative, cleanup
PRIVATE → only exact user_id + agent_id match
SHARED → any agent of the same user, or same team
GLOBAL → visible to everyone
Enforced at the SQL level — application code cannot bypass it.
Run on MacBook Pro M3, SQLite backend, HashEmbedder (no semantic model):
| Metric | Value | |--------|-------| | Add p50 latency | 0.35ms | | Add p99 latency | 0.51ms | | Recall p50 latency | 1.75ms | | Recall p99 latency | 4.92ms | | Scope isolation | PASS (zero cross-user leakage) |
Precision/Recall numbers require
zetta[embeddings](sentence-transformers). Runpython benchmarks/run_benchmarks.pyafter installing.
┌─────────────────────────────────────────────────────┐
│ Your Agent / App │
└────────────────────────┬────────────────────────────┘
│ MemoryProtocol ABC
▼
┌─────────────────────────────────────────────────────┐
│ Zetta Client │
│ add · recall · forget · update · share · chain │
│ consolidate · conflicts · resolve │
└──────────┬─────────────────┬───────────────────┬────┘
│ SmartRouter │ │
▼ ▼ ▼
┌──────────┐ ┌──────────────┐ ┌──────────────┐
│ SQLite │ │ ChromaDB │ │ FAISS/Neo4j │
└──────────┘ └──────────────┘ └──────────────┘
Intelligence layer (Rust core / Python fallback):
HybridSearchEngine — BM25 + semantic + activation + recency fusion
RouterEngine — EMA-based health-aware backend selection
ConsolidationEngine — merge duplicates, conflict detection, tier promotion
MemoryDecay — Ebbinghaus forgetting curve
ACT-R Activation — cognitive activation model
| Backend | Install | Use case |
|---------|---------|----------|
| SQLite | built-in | Zero-config, single machine |
| ChromaDB | zetta[chroma] | Local or server-mode vector DB |
| FAISS | zetta[faiss] | High-throughput in-process search |
| Neo4j | zetta[neo4j] | Graph-based relational memory |
Implement MemoryProtocol to add your own backend or agent:
from zetta.protocol import MemoryProtocol
from zetta.types import MemoryRecord, Scope, ConsolidationResult
class MyMemorySystem(MemoryProtocol):
async def add(self, content, *, memory_type, scope, metadata, embedding): ...
async def recall(self, query, *, scope, top_k, memory_types, filters): ...
async def forget(self, memory_id, *, scope, strategy): ...
async def update(self, memory_id, *, content, metadata): ...
# ... 5 more methods
Zetta ships a built-in Model Context Protocol server — connect any MCP-compatible client (Claude Desktop, Cursor, etc.) directly to your memory store:
# stdio transport (Claude Desktop, Cursor)
python -m zetta.mcp
# HTTP transport
python -m zetta.mcp.run_http --port 8766
Tools exposed: remember, recall, forget, update_memory, list_memories, consolidate.
Run on Apple M3, SQLite backend, HashEmbedder (no GPU, no semantic model):
| Operation | p50 | p99 |
|-----------|-----|-----|
| add | 0.35 ms | 0.51 ms |
| recall (top-5) | 1.75 ms | 4.92 ms |
| Scope isolation | PASS | zero cross-user leakage |
With
zetta[embeddings](sentence-transformers): semantic recall precision 94% on standard QA pairs. Run your own:python benchmarks/run_benchmarks.py
Contributions welcome! Areas we'd love help with:
git clone https://github.com/Manoj-engineer/zetta
cd zetta
python -m venv .venv && source .venv/bin/activate
pip install -e ".[all]"
pytest
Apache 2.0
Machine endpoints, protocol fit, contract coverage, invocation examples, and guardrails for agent-to-agent use.
Contract coverage
Status
missing
Auth
None
Streaming
No
Data region
Unspecified
Protocol support
Requires: none
Forbidden: none
Guardrails
Operational confidence: low
curl -s "https://www.xpersona.co/api/v1/agents/crewai-manoj-engineer-zetta/snapshot"
curl -s "https://www.xpersona.co/api/v1/agents/crewai-manoj-engineer-zetta/contract"
curl -s "https://www.xpersona.co/api/v1/agents/crewai-manoj-engineer-zetta/trust"
Trust and runtime signals, benchmark suites, failure patterns, and practical risk constraints.
Trust signals
Handshake
UNKNOWN
Confidence
unknown
Attempts 30d
unknown
Fallback rate
unknown
Runtime metrics
Observed P50
unknown
Observed P95
unknown
Rate limit
unknown
Estimated cost
unknown
Do not use if
Every public screenshot, visual asset, demo link, and owner-provided destination tied to this agent.
Neighboring agents from the same protocol and source ecosystem for comparison and shortlist building.
Rank
65
LangChain/LangGraph tools for AI agent x402 payments on X1
Traction
No public download signal
Freshness
Updated 4mo ago
Rank
65
An implementation of a multi-agent swarm using LangGraph
Traction
No public download signal
Freshness
Updated 4mo ago
Rank
65
LangGraph Multi-Agent Supervisor
Traction
No public download signal
Freshness
Updated 4mo ago
Rank
65
LangChain tools for OceanBus — give your LangChain and CrewAI agents a global identity, encrypted messaging, and Yellow Pages service discovery with a single import.
Traction
No public download signal
Freshness
Updated 4mo ago
Contract JSON
{
"contractStatus": "missing",
"authModes": [],
"requires": [],
"forbidden": [],
"supportsMcp": false,
"supportsA2a": false,
"supportsStreaming": false,
"inputSchemaRef": null,
"outputSchemaRef": null,
"dataRegion": null,
"contractUpdatedAt": null,
"sourceUpdatedAt": null,
"freshnessSeconds": null
}Invocation Guide
{
"preferredApi": {
"snapshotUrl": "https://www.xpersona.co/api/v1/agents/crewai-manoj-engineer-zetta/snapshot",
"contractUrl": "https://www.xpersona.co/api/v1/agents/crewai-manoj-engineer-zetta/contract",
"trustUrl": "https://www.xpersona.co/api/v1/agents/crewai-manoj-engineer-zetta/trust"
},
"curlExamples": [
"curl -s \"https://www.xpersona.co/api/v1/agents/crewai-manoj-engineer-zetta/snapshot\"",
"curl -s \"https://www.xpersona.co/api/v1/agents/crewai-manoj-engineer-zetta/contract\"",
"curl -s \"https://www.xpersona.co/api/v1/agents/crewai-manoj-engineer-zetta/trust\""
],
"jsonRequestTemplate": {
"query": "summarize this repo",
"constraints": {
"maxLatencyMs": 2000,
"protocolPreference": [
"OPENCLEW"
]
}
},
"jsonResponseTemplate": {
"ok": true,
"result": {
"summary": "...",
"confidence": 0.9
},
"meta": {
"source": "GITHUB_OPENCLEW",
"generatedAt": "2026-10-08T22:19:09.270Z"
}
},
"retryPolicy": {
"maxAttempts": 3,
"backoffMs": [
500,
1500,
3500
],
"retryableConditions": [
"HTTP_429",
"HTTP_503",
"NETWORK_TIMEOUT"
]
}
}Trust JSON
{
"status": "unavailable",
"handshakeStatus": "UNKNOWN",
"verificationFreshnessHours": null,
"reputationScore": null,
"p95LatencyMs": null,
"successRate30d": null,
"fallbackRate": null,
"attempts30d": null,
"trustUpdatedAt": null,
"trustConfidence": "unknown",
"sourceUpdatedAt": null,
"freshnessSeconds": null
}Capability Matrix
{
"rows": [
{
"key": "OPENCLEW",
"type": "protocol",
"support": "unknown",
"confidenceSource": "profile",
"notes": "Listed on profile"
},
{
"key": "crewai",
"type": "capability",
"support": "supported",
"confidenceSource": "profile",
"notes": "Declared in agent profile metadata"
},
{
"key": "multi-agent",
"type": "capability",
"support": "supported",
"confidenceSource": "profile",
"notes": "Declared in agent profile metadata"
}
],
"flattenedTokens": "protocol:OPENCLEW|unknown|profile capability:crewai|supported|profile capability:multi-agent|supported|profile"
}Facts JSON
[
{
"factKey": "vendor",
"label": "Vendor",
"value": "Manoj Engineer",
"category": "vendor",
"href": "https://github.com/Manoj-engineer/zetta",
"sourceUrl": "https://github.com/Manoj-engineer/zetta",
"sourceType": "profile",
"confidence": "medium",
"observedAt": "2026-05-31T06:18:14.723Z",
"isPublic": true,
"metadata": {}
},
{
"factKey": "protocols",
"label": "Protocol compatibility",
"value": "OpenClaw",
"category": "compatibility",
"href": "https://www.xpersona.co/api/v1/agents/crewai-manoj-engineer-zetta/contract",
"sourceUrl": "https://www.xpersona.co/api/v1/agents/crewai-manoj-engineer-zetta/contract",
"sourceType": "contract",
"confidence": "medium",
"observedAt": "2026-05-31T06:18:14.723Z",
"isPublic": true,
"metadata": {}
},
{
"factKey": "handshake_status",
"label": "Handshake status",
"value": "UNKNOWN",
"category": "security",
"href": "https://www.xpersona.co/api/v1/agents/crewai-manoj-engineer-zetta/trust",
"sourceUrl": "https://www.xpersona.co/api/v1/agents/crewai-manoj-engineer-zetta/trust",
"sourceType": "trust",
"confidence": "medium",
"observedAt": null,
"isPublic": true,
"metadata": {}
}
]Change Events JSON
[]
Sponsored
Ads related to zetta and adjacent AI workflows.