tact-memory 0.6.1

Bounded local and remote memory for Tact
Documentation

tact-memory

GitHub Actions Workflow Status Crates.io License Crates.io MSRV Crates.io Version

tact-memory provides bounded memory storage and retrieval for local agents and shared teams. It defines a common asynchronous store contract, a SQLite-backed local store, an authenticated remote client and server protocol, and a Nanocodex memory tool.

The crate exposes four integration boundaries:

  • MemoryStore defines ordinary local and remote operations over bounded memory records.
  • LocalMemoryStore persists the schema-v1 local format, while SelectedMemoryStore lets an application choose one local or remote backend for a runtime.
  • RemoteMemoryClient and MemoryServer share versioned protocol types and preserve author namespaces across authenticated operations.
  • MemoryTool exposes explicit scan, read, put, and delete operations to Nanocodex sessions under an application-provided mutation authority.

Feature flags separate the local store, remote client, server, and Nanocodex tool integrations. Default features enable the complete native client, local, server, and tool surface; server-only deployments can select server without native-only dependencies.

Implementations enforce record, query, content, and aggregate corpus bounds. Client-side storage boundaries reject secret-like content before mutation and suppress pre-existing unsafe records before use. Server backends remain storage-policy agnostic.

See the Tact memory guide for backend selection, protocol, authentication, transfer, and deployment contracts.