This is an early release preview. You may encounter bugs.
Open Second Brain logo
Unclaimed

Tool memory coding

Open Second Brain

Local-first 🧠 memory for Hermes Agent that lives in your Obsidian vault and remembers project context. Nightly 😴 dream passes turn repeat

A 82/100 GitHub score ? This grade is derived from GitHub signals, not user votes. Open for the full breakdown.
No votes yet

01 / About

What Open Second Brain is.

Open Second Brain is a memory layer for AI agents that lives inside an Obsidian vault. Preferences, signals, evidence, and audit trails are stored as plain Markdown files under a Brain/ directory that agents read and write through deterministic CLI and MCP tools. Because the memory is ordinary files on your filesystem, you can grep it, version it with git, search it in Obsidian, or edit it by hand; there is no daemon, vector service, or hidden state outside the vault.

A nightly dream pass consolidates memory: repeated corrections become rules with a confidence band and a trial window, and rules that nothing applies any more are retired. The algorithm runs on counters and atomic file moves rather than a model. Every Brain mutation takes a pre-run snapshot with a SHA-256 sidecar first, so o2b brain rollback can undo a bad change, and it aborts on drift unless forced.

Hermes is the primary integration and owns the schedule — dream cron, daily digests, delivery. Claude Code, Codex, OpenClaw, opencode, Aider, Grok Build, Pi, and any other MCP host read and write the same vault through per-runtime installs, so a rule taught in one runtime is available in the next without a forked copy of the memory.

Recall combines keyword matching with an optional semantic layer over the vault. Results can carry a per-result score breakdown, trust metadata such as age, superseded status, and conflicts, and a relevance threshold that returns nothing rather than weak matches. A progressive disclosure mode returns compact cards with a line-range pointer instead of full note content, with a follow-up call for the fuller note or raw chunk.

Pages marked visibility: private are withheld from remote callers at the three read roots — the ranked search pipeline, the page walker, and the by-path and by-chunk-id primitives. The reach that decides is a transport fact rather than a request field: stdio and the command line count as local, every non-loopback HTTP bind counts as remote. A withheld page is reported byte for byte as an absent one on key-addressed reads, so the refusal is not an existence oracle.

Features

  • Markdown memory: every learned rule is a file under Brain/ with title, status, evidence count, and confidence band, so wikilinks, backlinks, and the Obsidian graph view work unchanged
  • Deterministic dream pass: repeat signals become rules and unused rules retire, using counters and atomic file moves rather than a model
  • Snapshots and rollback: dream, merge, and upgrade take a verified snapshot; destructive cleanups run behind the same gate and report their recovery point
  • One vault, many runtimes: Hermes as the native provider plus MCP installs for Claude Code, Codex, OpenClaw, opencode, Aider, Grok Build, Pi, and generic hosts
  • Explainable search: score breakdowns, trust metadata, a relevance floor, and brain_eval with hit@k, MRR, and answer-containment@k
  • Visibility boundary: the private token is denied by default at remote reach, enforced at every read root
  • Provenance: derived facts carry a deduced or inferred level and link back to their premises, and an operator-stated rule outranks a machine-derived one
  • Quarantined intake: entities extracted from untrusted sources land in a separate lane instead of becoming first-class Brain entities
  • Injection guard: surfaced context passes a deterministic filter, with an opt-in mode that wraps an untrusted span in a provenance-carrying delimiter
  • Hygiene and continuity: scans surface contested facts, near-duplicate rules, stale derived pages, and never-recalled memories; usage-driven decay fades stale working-memory records
  • Bank export and import: a deterministic, schema-versioned bundle carries preferences, the page graph, and per-page interchange contracts, refusing an import behind the vault
  • Operator surfaces: a live-derived today dashboard, plus open loops jotted as @osb markers in any note

02 / Discussion CREDIBILITY-GATED

Discussion

Reading is open to everyone. Posting and voting need a verified identity or a GitHub grade of B or higher.

  • No discussions yet.

03 / Build

Build with Open Second Brain.

Browse the catalogue for frameworks, tools, and harnesses, each scored on real GitHub credibility.

Get Open Second Brain →

Browse the catalogue