Engram
TL;DR
- Engram is agent memory. Lumen is telemetry. Engram is what an agent remembers and what the next session should load.
- An engram is one memory: a claim, an importance weight, and a fingerprint. Same fingerprint on the same agent config reinforces instead of duplicating.
- Recall and write are separate flags on the agent config:
memory_enabledandmemory_write_enabled, both off by default. - Recall strategies:
last_k(newest first, the default) andpack(cue-ranked). - Watch the live field at engram.orkestia.dev.
How it works
At session launch, if memory_enabled is on for the config (and for the org, which is on by default), the launch pipeline recalls memories and injects them into the agent's context. memory_strategy picks how: last_k returns the newest rows up to memory_top_k; pack ranks by cue relevance. importance and full exist; semantic maps to last_k.
At session end (complete or fail), if memory_write_enabled is on, the session is distilled (agents.memory-distill) and saved (agents.memory-save). A memory whose fingerprint already exists is reinforced rather than duplicated.
| Flag on the agent config | Default | Effect |
|---|---|---|
memory_enabled | false | Session launch may inject recalled memory |
memory_write_enabled | false | Distill and save on complete or fail |
memory_strategy | last_k | last_k, importance, full, pack |
memory_top_k | 10 | Cap on returned rows |
Who sees what
End-users only see their own memories. Staff actors also see shared config memory. Everything is org-scoped.
What Engram is not
- Not App Data. Rows your app stores live in App Data.
- Not Lumen logs. Telemetry lives in Lumen.
- Not a vector database you query directly. Recall happens at session launch through the agent workflows.
- The richer retrieval engine (decay, typed links) is not what production ranks on today.
A secret in remembered text is stored. Keep secrets out of what agents are asked to remember.
Ask your AI assistant
Show me which of my agent configs have memory_enabled and which strategy each uses.
Enable memory recall with the pack strategy on agent config <config_uuid>. Show the change before applying it.
List the memories saved for actor <staff_actor_uuid> and summarise the recurring themes.
For AI agents
| Rule | Detail |
|---|---|
| Memory is opt-in | Check memory_enabled and memory_strategy on the config to know what was loaded into your context. |
| Writes go through workflows | Saving memory is agents.memory-distill then agents.memory-save, gated by memory_write_enabled. |
| Reinforce, do not duplicate | Same fingerprint reinforces. Do not restate a memory to make it "stronger". |
| Keep secrets out | Remembered text is stored. Never distill credentials or tokens into memory. |
App Data
Platform-owned application data for apps you build on Orkestia — declared structures, injected principals, several doors, no DSN in the frontend
DevKit
The Orkestia local CLI, webhook redirect to localhost, a provider-blind coding runner, ticket sync, and composition management, authenticated with an API token
