This release has been yanked by its maintainers, and will be ignored by installers, except when explicitly specified.
Consider using release 0.1.1 instead.
Reason given by maintainers: Superseded by 0.1.1: fixes CLI init/doctor JSON serialization.
MemStrata Client
An open Python API and CLI for a separately installed MemStrata runtime.
This repository contains protocol, validation, transport, examples, and a synthetic mock runtime. It does not contain MemStrata's memory engine, ranking, extraction, query compilation, policy implementation, prompts, evaluation corpora, or licensing enforcement.
Try the open client
python -m venv .venv
source .venv/bin/activate # Windows: .venv\Scripts\activate
pip install -e .
memstrata-client init --mock
echo '[{"role":"user","content":"The Atlas migration completed."}]' \
| memstrata-client process
The mock is deliberately synthetic: it echoes the final message and emits a linked evidence record. It demonstrates the integration and response contract; it does not demonstrate MemStrata's proprietary accuracy or memory behavior.
Python
from memstrata_client import MemStrata
client = MemStrata() # uses the runtime configured by `memstrata-client init`
result = client.process([
{"role": "user", "content": "Project Atlas moved to Toronto."},
])
for memory in result.memory:
print(memory.text, memory.evidence_ids)
print(result.assurance.source_truth) # always NOT_ASSERTED
The public client validates protocol version, request identity, byte ceilings, unknown fields, duplicate IDs, and every claim-to-evidence reference. Runtime diagnostics are suppressed by default so submitted messages are not copied into client exceptions.
Commercial evaluation runtime
The signed evaluation runtime is a separate commercial artifact. Once issued:
memstrata-client init \
--runtime /absolute/path/to/memstrata-eval-runtime \
--license-file /absolute/path/to/license.json
memstrata-client doctor
License contents are sent over the runtime's stdin protocol, not placed in the process command line. The runtime—not this open client—verifies and stores the entitlement.
We do not describe local binaries as tamper-proof. Artifact signing verifies publisher and bytes; compilation raises reverse-engineering cost; neither can stop a privileged owner of a machine from patching code.
Agent frameworks
The core accepts ordinary role/content dictionaries used by OpenAI-compatible
histories, AutoGen, and CrewAI. memstrata_client.adapters.from_langchain
normalizes LangChain-like message objects without adding LangChain as a
dependency.
Evidence verification
Use the independent
MemStrata Evidence Kit
to verify signed evidence artifacts offline. Integrity does not establish that
the source assertion is true; the client preserves
source_truth=NOT_ASSERTED.
Security and privacy
- No message telemetry is implemented in this package.
- No MAC address, disk serial, CPU ID, motherboard serial, or OS machine ID is collected.
- Do not pass secrets in message content.
- Report vulnerabilities privately as described in SECURITY.md.
Apache-2.0. See NOTICE.
Distribution and commercial runtime packages
The Python client is prepared for tokenless PyPI Trusted Publishing. The separate commercial runtime can be staged into MSIX, notarized macOS PKG, Snap, AppImage, or Flatpak packages without putting the runtime in this repository. See Distribution and Packaging.
The packaging templates are open build infrastructure. They do not grant a license to, contain, download, or reveal the commercial runtime.
Metadata
Release files for memstrata-client 0.1.0
For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.
Source distribution (sdist)
| File | Size | Uploaded | |
|---|---|---|---|
| memstrata_client-0.1.0.tar.gz | 33.8 kB | Details |
Built distribution (wheel)
| File | Interpreter | ABI | Platform | Reset |
|---|---|---|---|---|
| memstrata_client-0.1.0-py3-none-any.whl | Python 3 | none | any | Details |
Total release size: 54.8 kB
Release files / memstrata_client-0.1.0.tar.gz
| Download URL | memstrata_client-0.1.0.tar.gz |
|---|---|
| Size | 33.8 kB |
| Tags | Source |
|
SHA-256 checksum How to use checksums |
aad4a69659d71d4eae36c4114c6910350f454e0252c122766e56aa21df32e523
|
|
BLAKE2b-256 checksum How to use checksums |
04a8444c592d5f098bfd7aff166b5d8d76594c8205db016752261e1e85c92f03
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
Yes |
| Uploaded via |
twine/7.0.0 CPython/3.13.14
|
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.
PyPI Publish Attestation
PyPI verified that this artifact, at this checksum, originated from the publisher listed below.
Signed by GitHub Actions, verified by PyPI on Jul 29, 2026.
Transparency logRelease files / memstrata_client-0.1.0-py3-none-any.whl
| Download URL | memstrata_client-0.1.0-py3-none-any.whl |
|---|---|
| Size | 21.0 kB |
| Tags | Python 3 |
|
SHA-256 checksum How to use checksums |
88f9d37387317f2f0afdc574b090fb3a39deeb2be835cb281e095b0809a63579
|
|
BLAKE2b-256 checksum How to use checksums |
25443f449670561ea4858c0846b904363ce3538e568abeb283fc2b2bcf96a7ce
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
Yes |
| Uploaded via |
twine/7.0.0 CPython/3.13.14
|
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.
PyPI Publish Attestation
PyPI verified that this artifact, at this checksum, originated from the publisher listed below.
Signed by GitHub Actions, verified by PyPI on Jul 29, 2026.
Transparency log