Practical overview
When it fits
Use Statewave when an agent needs structured memory across sessions and the application benefits from repeatable context bundles with source provenance.
Who it is for
- Developers building AI agents that need information to persist across sessions.
- Teams that want memory context traceable to the events it came from.
- Application builders who want to run the memory layer alongside their own service.
Documented uses
- Persist user preferences, decisions or history across agent sessions.
- Compile recorded events into typed memories organized by a subject such as a user, account, agent or repository.
- Retrieve ranked context bounded by a token limit for an application task.
- Trace memories back to source episodes and inspect subject timelines.
Requirements & limits
The project is open source under the Apache-2.0 license. It is designed to run self-hosted; the repository documents Python and TypeScript SDKs and REST access.
- Statewave is infrastructure to operate alongside an application, not a hosted memory service or chatbot framework.
- The documented storage stack is Postgres with pgvector.
- The default heuristic compiler is local and does not require an LLM API key; an LLM compiler and LiteLLM-based provider configuration are alternatives.
- The API process is described as CPU-only; GPUs are only relevant if self-hosting an LLM compiler or embedding model.
- Context assembly is token-bounded and described as deterministic for the same subject, task and point in time.
Check current requirements in the official documentation. Source-based guidance does not mean OpenViST has run or independently tested this project.
Use the Python quickstart memory loop
Record an event for a subject, compile its memories, and retrieve context for an application task.
Before you start
- A running Statewave server reachable at its URL.
- The Python Statewave SDK.
- A subject identifier and event payload.
Steps
Create a StatewaveClient pointed at the server URL.
Call create_episode with a subject ID, source, type and payload.
Call compile_memories for that subject.
Call get_context with the subject, task and token limit, then use the assembled context in the application.
Expected outcome
The application receives ranked, token-bounded context assembled from the subject’s compiled memories.
Guide limitations
- The example does not configure an LLM provider; the documented heuristic compiler can run without an LLM API key.
Sources & review
Source record details
- Source availability
- Active
- Sources checked
- 12 October 2026
- Original website title
- smaramwbc/statewave · Official homepage title · retained in its source language

