MemPalace
Bundles contain custom components that support specific third-party integrations with Orbis Studio.
This page describes the components that are available in the MemPalace bundle.
MemPalace Chat Memory
The MemPalace Chat Memory component provides long-term, user-scoped memory for agents using a local Chroma vector database organized as a "palace" of rooms and halls.
Each user gets an isolated wing within the shared palace. Memories are organized into rooms (topic areas) and halls (content type classifications), enabling structured semantic retrieval across conversations.
The component operates in three modes:
- Agent Memory: Automatically injects relevant long-term context into an agent at the start of each conversation (L0 identity layer + L1 essential story).
- Search: Executes semantic search over stored memories on demand.
- Ingest: Manually writes a new memory to the palace.
When used in Agent Memory mode, the component also exposes three agent tools — Save to MemPalace, Search MemPalace, and Recall MemPalace — that allow an agent to read and write memories autonomously during a conversation.
MemPalace Chat Memory parameters
Some parameters are hidden by default in the visual editor. You can modify all component parameters through the component inspection panel that appears when you select a component.
| Name | Type | Description |
|---|---|---|
| mode | String | Input parameter. Operating mode. Options: Agent Memory (inject context into agent), Search (query memories), Ingest (manually write a memory). Default: Agent Memory. |
| user_id | String | Input parameter. Wing identifier — each user has an isolated wing in the palace. Leave empty to use the current platform user (same behavior as Mem0). |
| identity | String | Input parameter. Assistant identity text. Persisted to {palace_root}/identity.txt and injected as the L0 context layer. |
| room | String | Input parameter. Room to save or search in. Options: personal, work, health, hobbies, general, conversations. Default: conversations. |
| room_filter | String | Input parameter. Optional room filter for on-demand recall. Leave empty to recall from all rooms. |
| search_query | String | Input parameter. Natural language query for semantic search over the user's memories. Used in Search mode. |
| search_room | String | Input parameter. Filter search results by room. Leave empty to search across all rooms. |
| search_hall | String | Input parameter. Filter search by content type (hall). Options: hall_facts, hall_events, hall_discoveries, hall_preferences, hall_advice. Leave empty to search all halls. |
| ingest_message | String | Input parameter. Text to persist into MemPalace. Used in Ingest mode. Defaults to room conversations with importance 3. |
| importance | Integer | Input parameter. Importance score for the ingested memory (1–5). 5 = milestone, 4 = decision/preference, 3 = general problem, 2 = general conversation. |
| collection | String | Input parameter. Chroma collection name shared across users. Default: orbisagents. |
| palace_path | String | Input parameter. Path to the MemPalace palace directory. Can also be set via the MEMPALACE_PALACE_PATH environment variable. |
MemPalace Chat Memory outputs
| Name | Type | Description |
|---|---|---|
| save_memory | Tool | Output parameter. Tool that writes a memory to the palace. Available to agents in Agent Memory mode. |
| search_memory | Tool | Output parameter. Tool that performs semantic search over the user's memories. Available to agents in Agent Memory mode. |
| recall_memory | Tool | Output parameter. Tool that fetches drawer snippets for on-demand recall. Available to agents in Agent Memory mode. |
| memory | Memory | Output parameter. LangChain-compatible chat memory history built from wake-up context. Connect to an Agent or LLM component. |
Memory hierarchy
MemPalace retrieves memory in layers:
- L0 (Identity): The assistant's identity and persona, loaded from
identity.txt. - L1 (Essential story): High-importance memories (importance ≥ 4) for the current user, scanned up to a configurable limit.
- L2 (On-demand recall): Broader semantic retrieval using the Recall Memory tool.
When two memories conflict on the same fact, the one with the more recent filed_at timestamp is authoritative.