Metadata-Version: 2.4
Name: engram-ai-sdk
Version: 0.3.0
Summary: Python SDK for Engram — the memory platform your apps write to and ask questions of.
License: Proprietary
Project-URL: Documentation, https://alpha.getmetacognition.com/docs
Project-URL: Source, https://github.com/venkat1701/engram-backend
Keywords: engram,memory,ai,agents,multimodal,sdk
Requires-Python: >=3.10
Description-Content-Type: text/markdown
Requires-Dist: httpx>=0.27

# Engram Python SDK

Python SDK for Engram — the memory platform your apps write to and ask questions of.

```bash
pip install engram-ai-sdk
```

```python
from engram_sdk import EngramClient

engram = EngramClient(org_id, user_id, api_key="egm_...")

# Anything can become a memory
engram.ingest.text("Ada prefers dark mode and terse replies")
engram.ingest.image("whiteboard.jpg", caption="sprint planning, 12 Mar")
engram.ingest.audio("standup.m4a")                      # transcribed server-side
engram.ingest.video("demo.mp4", keyframe=frame_bytes)
engram.ingest.document("retro-notes.md")

engram.conversation.ingest([
    {"role": "user", "content": "we should move the launch to April"},
    {"role": "assistant", "content": "noted — I'll tell the team"},
])

# Read it back by asking
scene = engram.memory.retrieve("what did we decide about the launch?")
```

Async is the same surface with `await`:

```python
from engram_sdk import AsyncEngramClient

async with AsyncEngramClient(org_id, user_id, api_key="egm_...") as engram:
    await engram.ingest.text("hello")
```

The base URL defaults to Engram's hosted alpha, so a key is the only required configuration.
Override with `base_url=` or `ENGRAM_BASE_URL`.

Documentation: <https://alpha.getmetacognition.com/docs>

Version 0.3.0.
