Files
goldbrain/goldbrain-memory.src/README.md
T
2026-06-07 22:41:19 -05:00

4.0 KiB

goldbrain-memory

Persistent memory for Claude via the goldbrain Obsidian vault, using the Obsidian Local REST API.

Reads and writes notes across Claude/CoWork sessions using direct REST calls — no MCP server required. Built for Bryan Gilliom (CEO, Message Point Media) as the primary operator; Jason is the vault architect.

What it does

  • Loads operator preferences, current context, and relevant project notes at the start of substantive conversations (parallel cold-start reads)
  • Writes facts, preferences, and decisions Bryan asks Claude to remember — searching first so it updates rather than duplicates
  • Manages project lifecycle (incubating → active → on-hold/archived) with folder/status: agreement
  • Tracks scope switches, triages the inbox, and runs a monthly vault-health pass
  • Logs working sessions so future conversations can pick up where they left off
  • Defers to the vault's own BOOTSTRAP.md/CLAUDE.md/STRUCTURE.md for structure and the operating contract

What's new in 0.2

Adopts the procedural model from Jason's ECHO plugin (v0.5) while keeping goldbrain's in-vault control docs as the source of truth:

  • Parallel context loading, search-before-write, and append idempotency (no more duplicate log lines)
  • Project lifecycle folders and the folder/status: agreement rule
  • Scope switching with a rolling Scope History, inbox triage, and a monthly vault-health check
  • A resilient daily Agent Log routine that auto-creates the note/heading and avoids duplicate headings
  • operator-preferences.md split into promoted Fact / Pattern rules vs. timestamped Observations
  • Em-dash / parenthesis bug fix: heading PATCH targets now percent-encode special characters (em dash → %E2%80%94), with a GET→edit→PUT fallback and an ASCII-heading prevention rule

Configuration

The plugin is hardcoded for:

  • Server: https://goldbrainapi.mpm.to (reverse proxy → Obsidian Local REST API on 192.168.86.15:27124)
  • API Key: stored in the skill (personal plugin, not for distribution)

The endpoint presents a valid TLS certificate, so -k is not required. The bearer key lives only in the plugin — never inside the vault (per the vault's own safety rules).

Vault layout (root-addressed)

/vault/
├── CLAUDE.md  STRUCTURE.md  BOOTSTRAP.md  spinup.md  index.md  README.md
├── inbox/        (captures, imports, processing-log)
├── journal/      (daily, weekly, monthly, templates)
├── projects/     (active, incubating, on-hold, archived)
├── areas/        (business, personal, learning, systems)
├── resources/    (concepts, references, people, meetings, source-material)
├── decisions/    (by-date, by-project)
├── reviews/      (weekly, monthly, quarterly, annual)
├── archive/      (notes, projects, imports)
└── _agent/
    ├── context/        ← task-scoped context bundles
    ├── memory/         ← working / episodic / semantic
    ├── sessions/       ← YYYY-MM-DD-HHMM-<slug>.md
    ├── templates/      ← canonical note templates
    ├── outputs/        ← briefs / drafts / summaries / synthesis
    ├── skills/         ← active / archived
    └── heartbeat/

First run

The vault ships its own BOOTSTRAP.md. On first use the skill reads /vault/BOOTSTRAP.md; if present it follows that preflight, and if absent (a fresh empty vault) it offers to bootstrap.

Skills

Skill Triggers
goldbrain-memory "remember that", "save to memory", "what do you know about me", "load my profile", "check my notes", "log this decision", "add to my inbox" — and proactively at the start of substantive conversations

Requirements

  • Obsidian running on the backend with the Local REST API plugin enabled (binding host 0.0.0.0)
  • HTTPS access to https://goldbrainapi.mpm.to from the Claude/CoWork session environment