Memory Doctor
Check local Basic Memory projects with bm doctor, explain the findings, and run the...
Install
npx skills add basicmachines-co/basic-memory --skill memory-doctor -g -a claude-code -y- Repository
- basicmachines-co/basic-memory4.4k
- Category
- Writing
- Updated
- 3d ago
- License
- AGPL-3.0
- Context cost
- Lightabout 856 tokens
- Runs scripts
- No, instructions only
What it does
Check local Basic Memory projects with bm doctor, explain the findings, and run the suggested fixes once the user agrees. Use when search misses or repeats notes, or a save looks lost.
Memory Doctor
bm doctor checks the user's local Basic Memory projects and reports what is
wrong. Each problem comes with the command that fixes it, when one exists.
Doctor's checks only read; they never change a project's notes or index. The
fixes it suggests do change things, so run them only after the user agrees.
This skill needs a shell with the bm (or basic-memory) command.
When to Use
- Search misses a note the user knows exists, or returns the same note twice
- A note was saved but its file did not change, or the reverse
- The user asks whether Basic Memory is working, or to "check" or "fix" it
- After a crash, an interrupted import, or moving a project's folder
Run It
Start with the report alone. It is fast and has a stable JSON shape:
bm doctor --skip-self-test --json
Add --project NAME to check one project. Without --skip-self-test, doctor
also runs a self-test: it writes, indexes and searches a note in a throwaway
sandbox, which takes a few seconds and proves the install itself works. Run it
when the report is clean but something still seems broken.
Read the Report
{
"projects": [
{
"name": "work",
"findings": [
{
"check": "search_index",
"severity": "error",
"summary": "1 search row does not match a current note, observation or relation.",
"evidence": ["entity id=99, entity_id=99"],
"action": {"kind": "reindex_search", "full": true},
"command": "bm reindex --search --full --project work"
}
],
"has_errors": true
}
],
"skipped_cloud_projects": ["research"],
"self_test": {"outcome": "skipped"},
"has_errors": true
}
