Skip to content

Memories

A memory is a single piece of knowledge stored in TribalMind. When you run tribal remember, your input is parsed by an LLM into a structured entry and stored in a vector database for semantic retrieval.

Each memory has three fields:

FieldDescriptionExample
CategoryThe type of knowledgefix, convention, architecture, context, decision, tip, workflow
SubjectWhat it’s aboutredis, numpy, staging database
ContentThe actual knowledgeredis gives ECONNREFUSED on macOS after sleep — restart the container

You don’t need to specify these fields manually — the LLM extracts them from your natural language input.

TribalMind supports pluggable memory providers. The default is Backboard, but you can also use Mem0 (or add custom providers).

  1. You write knowledge in plain English: tribal remember "staging DB is on port 5433, not 5432"
  2. The configured LLM (Anthropic, OpenAI, or Google) parses it into structured fields
  3. The structured entry is sent to Backboard, which stores it as a vector embedding
  4. When you tribal recall, Backboard performs semantic similarity search across all stored vectors

When using Mem0 as your provider, the flow is simpler — Mem0 handles its own LLM parsing and categorization, so TribalMind passes your raw text directly to the Mem0 API. No separate LLM provider configuration is needed.

Choose your provider during tribal init, or set provider: mem0 in your config file.

Unlike keyword search, semantic search understands meaning. For example:

Terminal window
tribal remember "numpy 1.26 breaks on Python 3.13 — pin to <1.26"
# All of these will find the above memory:
tribal recall "numpy compatibility"
tribal recall "Python 3.13 package issues"
tribal recall "version pinning for scientific libraries"

Memories are scoped to an assistant — a Backboard entity that acts as a namespace. Typically, each project/repo gets its own assistant (created during tribal init).

  • Per-project memories: scoped to one repo’s assistant
  • Cross-repo search: use tribal recall --all to search across every assistant in your Backboard account
  • Global assistant: tribal init --global creates a shared assistant that all repos without their own config will use

See Assistants for more on how scoping works.

ActionCommandDescription
Createtribal remember "..."Store new knowledge
Searchtribal recall "..."Find by semantic similarity
Browsetribal recall --listList all memories (no search cost)
Deletetribal forget "..."Find and remove memories
Delete by IDtribal forget --id mem-xxx --yesRemove a specific memory
Clear alltribal forget --all --yesWipe all memories for the assistant

Do remember:

  • Non-obvious fixes and workarounds
  • Config values and why they’re set that way
  • Environment quirks and setup gotchas
  • How modules connect or why things are built a certain way
  • Reasoning behind architectural decisions

Don’t remember:

  • Trivial changes or obvious fixes
  • Information already clear from the code itself
  • Temporary debugging state
  • Duplicate knowledge (search first with tribal recall)