memory
Save a fact once
A memory is data. It is not an instruction. Each one records who wrote it, whether that writer was an agent or an outside source, and whether it is current.
cairn store "remote is moonbase2090/cairn" --team cairn --task handoff
The same text saved again does nothing. A very close paraphrase comes back as a near-duplicate. The agent then chooses: replace the old fact with --supersedes, or keep both with --mode new.
cairn store "remote is github.com/moonbase2090/cairn" \ --team cairn --task handoff --supersedes mem_…_v1
Search returns the current version, not every old draft. Mention the key when you use a hit, so someone else can look it up.
cairn retrieve "what is the git remote?" --task handoff
The vault is one directory, .cairn/. Small text stays in vault.db. Text over 2048 bytes is stored as a file under .cairn/docs/. A damaged file fails the read. It is not silently skipped.
A vault is tied to the embedder you picked at init. A hash-v1 vault does not open with hash-v2. Create a new vault, or keep using fastembed or Ollama.