Skip to main content

Memory

Nimbus maintains a per-repository memory of coding conventions, architectural patterns, and task outcomes. Memory is used during planning to give Claude more context about your codebase.

List entries

nimbus memory

Shows the last 10 memory entries for the current repository:

  memory  github.com/acme/api

[a3f2c1] 2026-04-25 All API handlers use async/await. Never use sync DB calls.
[b7d4e2] 2026-04-24 Auth middleware is in api/middleware/auth.py. Always use the
@require_auth decorator, never check request.user directly.
[c9f1a3] 2026-04-23 Tests use pytest-asyncio. Fixtures are in conftest.py.
...

Delete an entry

nimbus memory --delete a3f2c1

Use the ID shown in square brackets.

Query memory for a specific repo

nimbus memory --repo ~/other-project

What gets stored automatically

After every completed task, Nimbus calls Claude to extract and store:

  • Coding conventions observed or reinforced
  • Architectural patterns used
  • Libraries and frameworks encountered
  • Whether the task succeeded or failed (and why, if failed)

Each entry is at most 150 words. Nimbus stores it alongside a timestamp and the task description that triggered it.

How memory affects planning

When you run a task, Nimbus queries memory for the 8 most relevant entries using semantic search and injects them into the planning prompt. This means Claude Opus has context like "always use the @require_auth decorator" before it generates a plan — without you having to repeat yourself.

Storage location

Memory is stored in ChromaDB at ~/.nimbus/chroma/, in a per-repo collection named repo_memory_{repo_id}. It's separate from the code index and persists indefinitely until you delete entries.