Skip to main content

lunaris-integrations

Memory adapters that drop Lunaris into your existing agent framework. One thin, transport-agnostic layer — pick a transport once, reuse it across every adapter.

pip install -e "path/to/lunaris/integrations[langgraph]"   # or [crewai] / [letta]

lunaris-integrations is not on PyPI yet. integrations-publish.yml builds and uploads it on a v* tag, so from the next release on the line is:

pip install "lunaris-integrations[langgraph]"

Until that tag lands, install from a checkout with the -e form above — the one the examples and CI both use, so it is the path that is actually exercised.

Why a separate package

lunaris_integrations is a pure-Python package, separate from the native lunaris core wheel. Importing the client + scope layer never loads the compiled cdylib, and the framework deps (langgraph / crewai / letta) are optional extras — never hard dependencies of Lunaris core.

The shared client

Every adapter is built over one LunarisClient, scope-bound at construction:

Transport Use when
HttpLunarisClient You run lunaris-server; talks the MemoryProtocol HTTP verbs.
SdkLunarisClient You embed the in-process lunaris wheel (pip install lunaris).
StubLunarisClient Tests — records calls, returns canned hits (no backend).

The HTTP transport binds scope to the JWT server-side; the partition scope never travels on the wire. Namespaces map to scopes through the Lunaris alphabet ([A-Za-z0-9_\-.]{1,128}, : rejected) so no key can byte-alias another scope's partition.

Adapters

Framework Class Maps
LangGraph langgraph.LunarisStore aput/aget/asearch → ingest/recall
CrewAI crewai.LunarisCrewAIStorage save/search/reset → ingest/recall/forget
Letta letta.LunarisArchivalConnector insert/search → ingest/recall (connector shim + recipe)

Letta ships as a client-backed connector shim + a recipe: its archival store is server-side, so there is no clean drop-in base to subclass yet. The insert/search mapping is identical to the other adapters.

Examples

Runnable per-framework examples live in ../examples/: langgraph-lunaris/, crewai-lunaris/, letta-lunaris/.

Tests

pip install -e ".[langgraph,crewai,letta,test]"   # from integrations/
pytest tests/

The unit layer runs against StubLunarisClient — no backend, model, or wheel. Live HTTP/SDK + a real framework end-to-end is exercised by the examples.

Metadata

Release files for lunaris-integrations 0.8.0

For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.

Source distribution (sdist)

Source distribution for lunaris-integrations 0.8.0
File Size Uploaded Provenance Actions
lunaris_integrations-0.8.0.tar.gz 15.5 kB Without provenance Details for lunaris_integrations-0.8.0.tar.gz

Built distribution (wheel)

Table of built distributions (wheels) for lunaris-integrations 0.8.0
File Interpreter ABI Platform Actions
lunaris_integrations-0.8.0-py3-none-any.whl Python 3 none any Details for lunaris_integrations-0.8.0-py3-none-any.whl

Total release size: 28.0 kB

Release files / lunaris_integrations-0.8.0.tar.gz

Download URL lunaris_integrations-0.8.0.tar.gz
Size 15.5 kB
Tags Source
SHA-256 checksum
How to use checksums
595fff27937b6bfb39ade90cb09c528f99caf2519469e9e1366cbb997f3e4c42
BLAKE2b-256 checksum
How to use checksums
37b90b67a20f225892b677ced5be571c1f2e321169eb3c690a49cae8accf9315
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/7.0.0 CPython/3.11.16

Release files / lunaris_integrations-0.8.0-py3-none-any.whl

Download URL lunaris_integrations-0.8.0-py3-none-any.whl
Size 12.5 kB
Tags Python 3
SHA-256 checksum
How to use checksums
7bc9a35699e0ce00010d4e462bfd12ecec6e307d5d4f39f9236b9f52ca5ea40e
BLAKE2b-256 checksum
How to use checksums
4bbf313820a4763bb9083b3662e8b253cba7e889d984715d944a266432273aab
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/7.0.0 CPython/3.11.16

Security for lunaris-integrations 0.8.0

Provenance

Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.

No provenance found

None of the files in this release were uploaded with provenance metadata.

A note on package security

PyPI is a repository for distributing packages, not a service for auditing them. While third-party security researchers and our staff do their best to detect and remove malicious packages, PyPI cannot guarantee the quality, security or suitability of any given package.

To learn more about protecting yourself from malicious actors, visit our package security documentation.

Release history Release notifications | RSS feed

This release

0.8.0 This release

2 release files No provenance

Anthropic, PBC Visionary sponsor Bloomberg Visionary sponsor Hudson River Trading Visionary sponsor Meta Visionary sponsor NVIDIA Visionary sponsor Microsoft Sustainability sponsor Depot Continuous Integration AWS Cloud computing and Security Sponsor Datadog Monitoring Fastly CDN Google Download Analytics Sentry Error logging StatusPage Status page