Hebbrix
SDKs

SDKs & Libraries

Official client libraries for Python and TypeScript with type safety, auto-retries, and async support.

Python SDK

Python 3.8+

Install
pip install hebbrix

Features

Type Safety

Full TypeScript types and Python type hints

Auto Retries

Exponential backoff for transient errors

Async Support

Native async/await for non-blocking ops

Quick Start

Python
import asyncio
from hebbrix import MemoryClient

async def main():
    # The Python SDK is async-first. Pair it with `async with` so the
    # underlying HTTP client is closed cleanly.
    async with MemoryClient(api_key="mem_sk_...") as client:
        # Create a collection
        collection = await client.collections.create(name="My Agent")

        # Store a memory
        memory = await client.memories.create(
            collection_id=collection["id"],
            content="User prefers dark mode",
            importance=0.7,
        )

        # 6-layer hybrid search
        results = await client.search(
            query="user preferences",
            collection_id=collection["id"],
            limit=5,
        )

asyncio.run(main())

Installation Options

All Package Managers
# Using pip
pip install hebbrix

# Using poetry
poetry add hebbrix

# Using pipenv
pipenv install hebbrix

Async Usage

Python
import asyncio
from hebbrix import MemoryClient

async def main():
    async with MemoryClient(api_key="mem_sk_...") as client:
        # Parallel requests — the client shares a single HTTP session
        # so concurrent calls reuse the connection pool.
        memory, results = await asyncio.gather(
            client.memories.get("mem_abc"),
            client.search(query="preferences", limit=10),
        )

asyncio.run(main())

Error Handling

Python
import asyncio
from hebbrix import MemoryClient
from hebbrix import (
    HebbrixError, AuthenticationError,
    RateLimitError, ValidationError,
)

async def main():
    async with MemoryClient(api_key="mem_sk_...") as client:
        try:
            memory = await client.memories.create(
                collection_id="col_xyz",
                content="Test",
            )
        except AuthenticationError:
            print("Invalid API key")
        except RateLimitError as e:
            print(f"Rate limited — backend told us to slow down: {e}")
        except ValidationError as e:
            print(f"Request validation failed: {e}")
        except HebbrixError as e:
            print(f"Error: {e}")

asyncio.run(main())

Configuration

Python
from hebbrix import MemoryClient

# Constructor signature
client = MemoryClient(
    api_key="mem_sk_...",
    base_url="https://api.hebbrix.com",  # default
    timeout=120.0,                        # seconds
)

OpenAI Compatibility

Use Hebbrix as a drop-in replacement for OpenAI SDK:

Python (OpenAI SDK)
from openai import OpenAI

# Drop-in replacement for OpenAI
client = OpenAI(
    api_key="mem_sk_your_hebbrix_key",
    base_url="https://api.hebbrix.com/v1"
)

response = client.chat.completions.create(
    model="gpt-5-nano",
    messages=[{"role": "user", "content": "Hello!"}]
)
# Automatic memory injection!

Available Methods

ResourceMethods
client.authregister, login, create_api_key, get_me
client.collectionscreate, list, get, update, delete
client.memoriescreate, list, list_page (cursor page + metadata), iter_all (async-iterate all pages), get, update, delete
client.search(...)6-layer hybrid search — top-level method
client.reason(...)LLM-backed reasoning — top-level method
client.search_resourcesearch, similar, reason (lower-level)
client.rltrain_memory_manager, train_answer_agent, get_metrics, evaluate
client.temporaltemporal-knowledge-graph access
client.proceduralprocedural (skills) memory
client.working_memoryshort-term context buffer
client.consolidationmemory consolidation jobs
client.world_modelworld-model access
MemoryChat(api_key=...).send(...)one-line chat integration (separate helper class)

Next Steps

Assistant

Ask me anything about Hebbrix