Skip to main content

audit-ready-memory

Audit-ready, local-first memory for AI agents: a time-stamped log you can read, replay, and delete from, instead of hidden state inside a model or a hosted service.

Memory is stored as an append-only sequence of events in an embedded ArcadeDB database. Nothing is ever updated in place. Reads are recorded as well as writes, so you can answer "what did the model actually see, and when?" Deletion is an appended tombstone with a required reason, and deleted content can never re-enter a model's context.

Funded by SIDN Fund.

Install

The package on PyPI is not current yet; install from source until v0.1.0 is released:

git clone https://github.com/humemai/audit-ready-memory
cd audit-ready-memory
uv sync

Python 3.10 or newer. The database is embedded, so there is no server to run.

Thirty-second example

from audit_ready_memory import Memory, Message, Document

with Memory("./memory-db") as memory:
    memory.add_message(Message(speaker="anna", content="the water pump failed on tuesday"))
    memory.add_document(Document(name="repairs.txt", text="pump replaced on wednesday"))

    # Search, and record the search in the same step.
    recall, hits = memory.recall("pump")
    for hit in hits:
        print(hit.seq, hit.kind)

    # The read is now in the log too.
    print(len(memory), "events")

Every event carries an id, a UTC timestamp, and a seq assigned by the store. seq gives the log a total order that does not depend on the clock.

What you get

Capability How
Read the whole history memory.events(), filterable by kind, session, or seq range
Rebuild any past state memory.replay(up_to_seq=n), a pure fold over the log
See what the model saw every read appends a Recall event naming the exact items
Delete with a reason memory.delete(ids, reason="...") appends a tombstone
Run it anywhere embedded database, no server, no network

Four kinds of event

  • Message is one conversational turn. Who said what.
  • Document is data someone uploaded, stored as extracted text.
  • Recall is a read. It names which stored items entered the model's context, and for which query.
  • Deletion is a tombstone naming its targets and why they were removed.

Read the memory model for the invariants these guarantee.

Demo

A Streamlit app showing a small group chatting with each other and an AI, sharing documents, on top of an audit-ready memory:

uv run --extra demo streamlit run demo/app.py

Without an OPENROUTER_API_KEY the app still runs. Browsing, the audit log, replay, and deletion all work. Only the AI chat is disabled.

Honest limits

  • Deletion is a tombstone, not erasure. Deleted content stays in the append-only log and is excluded from every read. If you need the bytes gone from disk, this is not that.
  • retain_until is a marker, not a policy. The field is recorded but nothing enforces it yet; an expired event is still visible. Track it or set it, but do not rely on it.
  • Retrieval is keyword overlap. Deliberately simple and deterministic. No embeddings.
  • The demo's model call is a cloud call. The memory is local; recalled text sent to OpenRouter is not.

More in limitations.

Documentation

https://docs.humem.ai/audit-ready-memory/latest/

Development

uv sync --all-groups --all-extras
uv run pytest

License

MIT. See LICENSE.

Download files

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

Source Distribution

audit_ready_memory-0.0.2.tar.gz (184.1 kB view details)

Uploaded Source

Built Distribution

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

audit_ready_memory-0.0.2-py3-none-any.whl (13.6 kB view details)

Uploaded Python 3

File details

Details for the file audit_ready_memory-0.0.2.tar.gz.

File metadata

  • Download URL: audit_ready_memory-0.0.2.tar.gz
  • Upload date:
  • Size: 184.1 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/6.1.0 CPython/3.13.7

File hashes

Hashes for audit_ready_memory-0.0.2.tar.gz
Algorithm Hash digest
SHA256 d77c76141f800bc65ef5e258f6e2615830f883a1d5a2458bb0b76eaf95d9b399
MD5 10c73be87e594adb017704d072f610c8
BLAKE2b-256 5b776d701dbf5d4f922d072528fb51f81020c920a53acfba41b8391a2419fad2

See more details on using hashes here.

Provenance

The following attestation bundles were made for audit_ready_memory-0.0.2.tar.gz:

Publisher: release-python-packages.yml on humemai/audit-ready-memory

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

File details

Details for the file audit_ready_memory-0.0.2-py3-none-any.whl.

File metadata

File hashes

Hashes for audit_ready_memory-0.0.2-py3-none-any.whl
Algorithm Hash digest
SHA256 5c2ec20567c7c21b0194ac0fce9b2ae118d15d46a6fe89b45385ad4ba842ed43
MD5 dc8113daa99429a228c40e4eb1e0d240
BLAKE2b-256 47d0d951190aace3bdcdfb9fc28bfb1cedbe5216e80b530d147d3af28758fbe5

See more details on using hashes here.

Provenance

The following attestation bundles were made for audit_ready_memory-0.0.2-py3-none-any.whl:

Publisher: release-python-packages.yml on humemai/audit-ready-memory

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

Release history Release notifications | RSS feed

This release

0.0.2 This release

2 files

0.0.1

2 files

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