Tideline

The memory vault

The engine's source of truth is a JSONL fact store, but you should never have to read JSON to see what your crew remembers. Tideline mirrors owner memory into a plain-markdown, Obsidian-style vault — files you can open, search, and edit like any notes.

What's in it#

  • MEMORY.md — a rolling overview of what Tideline knows about you.
  • Dated daily notes (e.g. memory/2026-06-21.md) — a timeline of what was learned, day by day.

It is plain markdown with wiki-style links, so it opens cleanly in Obsidian or any editor. The agent reads it through the read_memory tool:

read_memory
read_memory { path: "MEMORY.md" }read_memory { path: "memory/2026-06-21.md", from: 1, lines: 200 }

How it stays current#

The vault is a projection of the fact store, not a second source of truth. The nightly maintenance pass re-renders it, and it is change-gated — it only rewrites when something actually changed, so it stays quiet in git and on disk. You can also render it on demand with the owner-only manage_memory vault action.

Your edits survive#

The render is careful to preserve hand-edits: notes you write in the vault are kept across re-renders rather than being clobbered. That makes the vault a two-way surface — Tideline keeps it current, and you can annotate it without losing your changes on the next pass.

Scope

The vault is owner-scoped and filesystem-mode: it mirrors your memory, not a channel peer's (peer memory stays isolated, never vaulted), and it lives in your ~/.brigade/ workspace. The underlying records — segments, tiers, origins, the typed link graph — are unaffected; the vault is the readable face of them.

In the code

The vault renderer is invoked from the maintenance curator and the manage_memory tool;read_memory is in src/agents/tools/memory-tools.ts.