Skip to main content

Python REST client for the memory-layer server

Project description

ai-memory-layer-client

Python client for the memory-layer HTTP service.

Install

pip install ai-memory-layer-client

For local development and tests:

pip install -e '.[dev]'
pytest

Quick Start

from memory_layer_client import MemoryClient, MemoryRuntimeClient, MemoryScope

client = MemoryClient(
    "http://localhost:3100",
    api_key="dev-key",
    default_scope=MemoryScope(
        tenant_id="acme",
        system_id="python-worker",
        collaboration_id="release-42",
        scope_id="run-42",
    ),
)
runtime = MemoryRuntimeClient(client)

result = runtime.run_turn(
    "Remember that deployments must stay blue-green.",
    lambda prepared: "Stored. I will keep rollout constraints in memory.",
)
print(result.prepared.prompt)

Async Client

import asyncio
from memory_layer_client import AsyncMemoryClient, AsyncMemoryRuntimeClient

async def main() -> None:
    client = AsyncMemoryClient("http://localhost:3100", api_key="dev-key")
    runtime = AsyncMemoryRuntimeClient(client)
    result = await runtime.run_turn(
        "Track migration status.",
        lambda prepared: "I will keep the migration status in memory.",
    )
    health = await client.health()
    print(result.prepared.context.token_estimate, health.active_turn_count)
    await client.aclose()

asyncio.run(main())

Scope Resolution

Each request can inherit a default scope and override it per call. This matches the multi-tenant routing model used by the HTTP server.

MemoryScope also supports collaboration_id, so Python clients can participate in shared multi-agent workspaces the same way the TypeScript server and SDK do.

Hosted Runtime And Changes

from memory_layer_client import MemoryClient, MemoryRuntimeClient

client = MemoryClient("http://localhost:3100")
runtime = MemoryRuntimeClient(client)

knowledge = client.list_knowledge(limit=20)
detail = client.inspect_knowledge(knowledge.items[0]["id"])
changes = client.poll_changes("2026-03-01T00:00:00Z", scope_level="workspace")
cross_scope = client.search_cross_scope("rollback", scope_level="workspace")
prepared = runtime.before_model_call("What changed in the shared workspace?")
print(prepared.prompt)
for event in client.stream_events(event_types=["knowledge_change"], scope_level="workspace"):
    print(event.type, event.meta)
    break

CLI

memory-layer-client --base-url http://localhost:3100 health
memory-layer-client --base-url http://localhost:3100 search "rollback checklist"
memory-layer-client --base-url http://localhost:3100 inspect-knowledge --limit 10
memory-layer-client --base-url http://localhost:3100 run-reverification --admin-key secret

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

ai_memory_layer_client-4.1.0.tar.gz (30.2 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

ai_memory_layer_client-4.1.0-py3-none-any.whl (27.3 kB view details)

Uploaded Python 3

File details

Details for the file ai_memory_layer_client-4.1.0.tar.gz.

File metadata

  • Download URL: ai_memory_layer_client-4.1.0.tar.gz
  • Upload date:
  • Size: 30.2 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/6.1.0 CPython/3.13.12

File hashes

Hashes for ai_memory_layer_client-4.1.0.tar.gz
Algorithm Hash digest
SHA256 8a463b9e5bcf42407f7a9c264c3cfb693d8f1b57760ca66fafc6cad46ac3cc3a
MD5 1de2221be7a83c8339a6689a7a2f80f3
BLAKE2b-256 49a1eedaa34d13e307c4ac1868666737260bef7aa420be22c0bf5da74101e952

See more details on using hashes here.

Provenance

The following attestation bundles were made for ai_memory_layer_client-4.1.0.tar.gz:

Publisher: release.yml on GregStarling/memory-layer

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file ai_memory_layer_client-4.1.0-py3-none-any.whl.

File metadata

File hashes

Hashes for ai_memory_layer_client-4.1.0-py3-none-any.whl
Algorithm Hash digest
SHA256 8ecc2fad6f169bb6f5692acfc9f50c8da8168fa1c2b2161dbdd06784365f534e
MD5 3658dcbb619cf966ac28e6f3520e9027
BLAKE2b-256 f0eb170e6e6575fb5a5f25ef906a90fa1c615916513117e0048a27a424bfd464

See more details on using hashes here.

Provenance

The following attestation bundles were made for ai_memory_layer_client-4.1.0-py3-none-any.whl:

Publisher: release.yml on GregStarling/memory-layer

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page