Memory Client
The MemoryClient manages agent memory items — storing, retrieving, and managing structured data across sessions.
zaby.memory # → MemoryClient
zaby.memory; // → MemoryClient
Items
List items
items = await zaby.memory.list_items({
"externalUserId": "user-123",
"sessionId": "session-456",
"limit": 100,
})
const items = await zaby.memory.listItems({
externalUserId: "user-123",
sessionId: "session-456",
limit: 100,
});
Get item
item = await zaby.memory.get_item(memory_item_id)
const item = await zaby.memory.getItem(memory_item_id);
The memory item identifier
Disable item
Remove an item from active use without permanent deletion:
await zaby.memory.disable_item(memory_item_id, {
"reason": "User opted out",
})
await zaby.memory.disableItem(memory_item_id, {
reason: "User opted out",
});
Delete item
await zaby.memory.delete_item(memory_item_id, {
"reason": "User requested deletion",
})
await zaby.memory.deleteItem(memory_item_id, {
reason: "User requested deletion",
});
Retrieval
Query memory items for retrieval-augmented generation:
results = await zaby.memory.retrieve({
"externalUserId": "user-123",
"deploymentId": "dep_123",
"query": "What did we discuss last time?",
"limit": 5,
})
const results = await zaby.memory.retrieve({
externalUserId: "user-123",
deploymentId: "dep_123",
query: "What did we discuss last time?",
limit: 5,
});
Candidates
Memory candidates are suggested items requiring review before being committed.
List candidates
candidates = await zaby.memory.list_candidates({
"externalUserId": "user-123",
})
const candidates = await zaby.memory.listCandidates({
externalUserId: "user-123",
});
Approve candidate
await zaby.memory.approve_candidate(candidate_id, {
"reviewedBy": "admin",
})
await zaby.memory.approveCandidate(candidate_id, {
reviewedBy: "admin",
});
Reject candidate
await zaby.memory.reject_candidate(candidate_id, {
"reason": "Irrelevant content",
})
await zaby.memory.rejectCandidate(candidate_id, {
reason: "Irrelevant content",
});
Example
import asyncio
from zaby import Zaby
async def main():
zaby = Zaby(api_key="zaby_pk_...")
# Retrieve saved context
results = await zaby.memory.retrieve({
"externalUserId": "user-123",
"deploymentId": "dep_123",
"query": "user preferences",
})
for item in results.get("items", []):
print(item["content"])
# Handle pending candidates
candidates = await zaby.memory.list_candidates({
"externalUserId": "user-123",
})
for c in candidates.get("items", []):
await zaby.memory.approve_candidate(c["id"], {})
asyncio.run(main())
import { Zaby } from "@zaby-ai/sdk";
async function main() {
const zaby = new Zaby({ apiKey: "zaby_pk_..." });
// Retrieve saved context
const results = await zaby.memory.retrieve({
externalUserId: "user-123",
deploymentId: "dep_123",
query: "user preferences",
});
for (const item of results.items ?? []) {
console.log(item.content);
}
// Handle pending candidates
const candidates = await zaby.memory.listCandidates({
externalUserId: "user-123",
});
for (const c of candidates.items ?? []) {
await zaby.memory.approveCandidate(c.id, {});
}
}
main();