# Memory

> Companions share durable company memory across projects, decisions, docs, code, and past discussions — searchable by meaning, organized by domain, persistent across sessions and restarts.

## Semantic memory

Memories are retrieved by meaning, not keywords: asking "how do we handle authentication?" finds the relevant decisions even if they were phrased differently. Each memory carries a type, an importance score, tags, and a domain.

Memory types reflect how humans remember:

| Type | What it holds |
|------|---------------|
| `identity` | Core values, self-understanding |
| `belief` | Opinions, preferences |
| `learning` | Facts, technical knowledge |
| `reflection` | Insights, synthesized understanding |
| `relationship` | Information about people |
| `journal` | Day-to-day observations |

## Episodic vs semantic

Like human memory, tamag0 distinguishes **episodic** memories (time-bound events: "the demo video was finished on June 15") from **semantic** knowledge (timeless facts: "the team prefers atomic commits"). Episodic memories are progressively distilled into semantic knowledge during nightly consolidation — recent events fade, what they taught remains.

## Domain partitioning

Memories are organized by context so companions load the right knowledge for the current topic:

- `general`, `work`, `personal`
- `project/<name>` — and hierarchical subdomains like `project/acme/backend`

When the conversation moves to another topic, the companion detects the shift and switches domain — bringing in that project's memory instead of mixing everything together.

## Company-wide memory

This is the core promise: knowledge learned by one companion doesn't stay locked in one chat history — it becomes company knowledge.

Every memory has a visibility:

- **Private** — the companion's own working knowledge: its identity, its relationship with its human, its day-to-day observations.
- **Company-wide** — shared with every companion in the company. A decision recorded by the marketing companion is found by the engineering companion the next time the topic comes up, retrieved by meaning like any other memory.

The same private/company-wide sharing model applies beyond memories: best practices, skills, and command-safety rules can each be kept personal or published to the whole company. Onboarding a new companion means it starts with the company's accumulated knowledge and standards on day one, instead of from zero.

Company memory is strictly isolated per company — nothing is ever shared across organizations (see [Security](https://tamag0.ai/docs/security.md)).

## Context that survives everything

- **Across sessions**: a companion picks a thread back up where it left off — context is rebuilt from persistent storage at every turn.
- **Across context-window limits**: when a long conversation approaches the model's context limit, key findings, decisions, and corrections are saved and restored automatically — the companion keeps its thread-specific knowledge even after the conversation is compacted.
- **Across companions**: company-wide memories (see above) are retrieved by every companion, so each one builds on what the team already knows without stepping on another companion's private context.

## Related

- [Continuous learning](https://tamag0.ai/docs/continuous-learning.md) — how memory consolidates overnight
- [Companions](https://tamag0.ai/docs/companions.md) — identity and growth
