The continuity layer for AI systems.
Store from Claude. Retrieve from ChatGPT. Reconstruct from Cursor. Same memory, same device.
pip install kenoticfrom sdk import Kenotic
k = Kenotic(user_id=0)
k.ingest(text="I moved to Detroit in January to start Kenotic Labs.", speaker="Sam")
k.ingest(text="My dog Kobe is a 2-year-old golden retriever who loves swimming.", speaker="Sam")
result = k.retrieve(query="What is Sam's dog's name?")
print(result.text) # "a golden retriever named Kobe"Or connect any AI via MCP / REST:
python -m mcp.http_server --port 7130curl -X POST http://localhost:7130/api/v1/retrieve \
-H "Content-Type: application/json" \
-d '{"query": "What is Sam building?"}'Every message is decomposed into 5 structured traces — episodic, emotional, temporal, relational, schematic — and stored in on-device SQLite.
Retrieval is reconstruction, not search. The system doesn't find similar chunks. It rebuilds the answer from converging traces using MINERVA 2 resonance dynamics. No LLM in the retrieval loop. Deterministic. Sub-second.
| Vector RAG | Mem0 | Kenotic | |
|---|---|---|---|
| Storage | Chunks + embeddings | Key-value facts | 5 structured traces |
| Retrieval | Cosine similarity | Keyword lookup | Multi-dimensional resonance |
| LLM in loop | Yes (reranking) | Yes (extraction) | No |
| Update handling | Overwrite | Overwrite | Supersession chain |
| Temporal reasoning | None | None | Built-in |
| Emotional state | None | None | Built-in |
| Model independence | No | Partial | Full (store on Claude, read from GPT) |
| Runs on | Cloud | Cloud / local | 100% on-device |
| Repo | What |
|---|---|
| reconstruct | DTCM engine + MCP server + REST API. The product. |
| ATANT | Evaluation framework for AI continuity. 250 stories, 1835 questions. |
| continuity-layer | Research paper. arXiv:2604.17273 |
| kenoticlabs.com | Website source. |
- Persistence — Survives restarts, app closes, device changes.
- Update Handling — Reality changes. Memory updates without breaking history.
- Temporal Ordering — When, in what sequence, with what current status.
- Disambiguation — Two people, two events, two feelings — correctly separated.
- Reconstruction — Not "search results." The current living state.
- Model Independence — One model writes. Another reads. The layer is below the model.
- Operational Usefulness — Works in clinics, libraries, robots — not just chat.
kenoticlabs.com | Docs | API Quickstart | sam@kenoticlabs.com