Skip to main content

Crate tact_memory

Crate tact_memory 

Source
Expand description

§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.

Re-exports§

pub use server::protocol::RemoteRole;

Modules§

server
Reusable authenticated server for shared Tact memory.

Structs§

LocalMemoryStore
Concrete private SQLite memory store.
MemoryAccess
Negotiated access information for the active backend.
MemoryCandidate
Ranked, bounded preview returned by a memory scan.
MemoryImportReport
Counts produced while importing a remote snapshot into local storage.
MemoryKey
Stable identity and optimistic-concurrency version of a memory.
MemoryLimits
Resource limits enforced by memory stores and remote-response validation.
MemoryRecord
Complete durable state of a memory.
MemoryScan
Result of a semantic memory scan.
MemoryTool
Nanocodex tool exposing bounded memory operations.
RemoteMemoryClient
Authenticated HTTP implementation of MemoryStore.
RemoteToken
Secret bearer token for a remote memory service.

Enums§

MemoryError
Failure from local storage, remote transport, validation, or optimistic concurrency.
MemorySource
Backend selected by a crate::MemoryStore.
RemoteClientError
Failure while configuring or calling a remote memory service.
SelectedMemoryStore
Runtime-selected local-or-remote memory backend.

Constants§

VERSION
Incompatible remote-memory protocol generation.

Traits§

MemoryStore
Ordinary operations shared by local and authenticated remote memory backends.
MutationAuthorizer
Authorizes mutations for one agent session.

Functions§

normalize_identity
Normalizes authored content for backend-enforced duplicate detection.