mrkeyoor.com_
Fri 25 Sept 21:48 UTC
AI Toolsevaluationupdated 26 Aug 2026

gbrain review

GBrain is a self-hosted memory and knowledge layer for AI agents, built around Markdown files, a graph, search, synthesis, and background maintenance. It connects to Codex, Claude Code, OpenClaw, Hermes, and other MCP clients so an agent can recall information across sessions instead of relying on one chat history.

+160stars / 7d
Verdict

Our GBrain run built in 7 seconds and Bun counted 7,152 passing tests, but the full command still exited 1 after 869 seconds, so this commit did not clear its test gate. GBrain is compelling for a technical user who wants Git-backed agent memory and can own privacy, providers, and upgrades. Do not put company-sensitive material into a shared deployment until scoped aggregate reads, deletion recovery, and your exact Codex or MCP wiring pass local acceptance tests.

We ran it

Lab card: what happened when we ran gbrainScreenshot of gbrain (github.com/garrytan/gbrain)
Install✓ · 50s300 packages · 237 MB
Build✓ · 7s
Tests✗ · 869s7152 passed · 0 failed · 1 skipped of 7152 (bun test)
Repo4290 files~812,029 lines of source · 110.4 MB · 7 CI workflows · tests dir

Answers from our run

Does gbrain build from source?

Dependencies installed in 50 seconds (300 packages), and the build succeeded in 7 seconds. We cloned commit e5dc5a3 into a clean Debian container with 3 CPUs and no project-specific setup.

Do gbrain's tests pass?

Yes: 7152 of 7152 passed when we ran the project's own test command (bun test). Some failures need services or credentials a bare container does not have.

Who should not use gbrain?

Anyone wanting a small personal-notes utility: our checkout had about 812,029 source lines, and the installed project occupied 237 MB.

What are the alternatives to gbrain?

Mem0, Graphiti, Khoj. Our GBrain run built in 7 seconds and Bun counted 7,152 passing tests, but the full command still exited 1 after 869 seconds, so this commit did not clear its test gate.

Setup2/5Fast build, but agent wiring is broad and the test gate exited 1
Docs5/5Detailed paths for local, agent, MCP, Postgres, and recovery use
Community5/529,126 stars with active daily releases and issue work
Maturity3/5Large test suite, but current privacy and deletion issues affect trust

Discussed on

  1. hnGBrain – The memex, built for people who think for a living9 points
  2. hnGarry Tan's GBrain – most important idea of the year5 points
  3. hnGbrain-Evals4 points
  4. hnGarry's Opinionated Agent Brain3 points

Who it’s for

Technical users who want persistent memory shared across coding agents and are willing to inspect what gets stored.
Teams building a scoped company knowledge service on Postgres, OAuth, and HTTP MCP.
Codex or Claude Code users who want a local PGLite brain plus agent skills and Git-backed Markdown.
Operators who can manage model keys, retrieval settings, backups, privacy scopes, and frequent releases.

Who it’s NOT for

Anyone wanting a small personal-notes utility: our checkout had about 812,029 source lines, and the installed project occupied 237 MB.
Teams that cannot tolerate unresolved tenant-metadata leakage: issue #4592 reports scoped remote callers can infer excluded source counts and page types through aggregate endpoints.
Users relying on the documented 72-hour restore window after Git removals: issue #4587 reports sync --repo can hard-delete the database row first.
Codex users who cannot test configuration changes before rollout: issue #4574 reports one bootstrap path writing a token key rejected by Codex CLI 0.149.x.
People unwilling to place personal email, calendar, contacts, meetings, or agent transcripts inside a new data system, even when it runs on their hardware.

Setup reality

Our sandbox install succeeded in 50 seconds, adding 300 packages and using 237 MB. The build passed in 7 seconds. The test command exited 1 after 869 seconds even though Bun reported 7,152 passed, 0 failed, and 1 skipped. The supplied tail shows passing tests and several completed batches, not the reason for the nonzero exit.

A basic local brain needs Bun plus PGLite and can run keyword-only without an API key. Semantic retrieval or fact extraction needs a supported provider such as Voyage, OpenAI, Anthropic, Ollama, or another documented option.

Persistent-agent setup may create a private GitHub repository, install MCP and skills, and add hooks. Shared or larger deployments move to Postgres with pgvector, OAuth, an HTTP server, scoped clients, backups, and careful visibility defaults.

GBrain stores agent memory as Markdown plus a database index

GBrain keeps knowledge in ordinary Markdown inside a Git repository, then indexes it into PGLite or Postgres for retrieval. Agents can write memories, search pages, follow typed graph relationships, synthesize an answer with citations, and report gaps in the stored material. The file repository remains the system of record, while the database supplies faster lookup and derived structure. That arrangement makes export and inspection easier than a memory service that hides everything behind an API.

The project is much larger than the phrase "memory layer" suggests. Our checkout contained 4,290 files, roughly 812,029 lines of source, and 110.4 MB. It includes CLI commands, an MCP server, OAuth, retrieval modes, two database engines, jobs, schema mutation, importers, agent skills, hooks, evaluation tools, and background maintenance. Adopting all of it means adopting a platform.

Local PGLite and shared Postgres serve different trust models

A personal installation can use PGLite, a Postgres-compatible database embedded through WebAssembly. Keyword search works without provider credentials. Adding an embedding or extraction provider enables semantic retrieval and automatic facts, with documented choices that include hosted APIs and local model servers. Markdown remains readable even if the index needs rebuilding.

Shared deployments use Postgres plus pgvector and can expose GBrain over HTTP MCP. OAuth clients receive read, write, or admin scopes, and sources can restrict which parts of a brain each caller sees. The README says PGLite is aimed at personal brains and Postgres at shared or larger installations. The 237 MB installed project does not include the operational cost of Postgres, provider calls, object storage, or an always-running agent.

What happened when we ran it

Our sandbox installed commit e5dc5a3 in 50 seconds, adding 300 packages and using 237 MB on disk. The build succeeded in 7 seconds. This ran inside an unprivileged container with 3 CPUs, 8 GB of RAM, Node 22 with Bun, and no secrets. The repository had 7 CI workflow files, no Dockerfile, and a tests directory.

The full test command ran for 869 seconds and exited with code 1. Bun's summary reported 7,152 passed, 0 failed, and 1 skipped, while also showing 7,153 tests across 473 files plus several smaller batches. The supplied log tail contains passing cases and completed batch summaries. It does not reveal why the wrapper returned 1, so blaming a timeout, cleanup hook, or hidden assertion would be guesswork.

The result is close to green in visible test terms but still failed as an executable gate. We did not initialize a brain, connect an MCP client, import private data, call a model, or measure retrieval quality. The 50-second install and 7-second build show that source setup is manageable. They do not validate the security of a shared brain or the relevance of synthesized answers.

Codex and Claude Code are first-class clients with broad permissions

GBrain can install an MCP server and curated skills into Codex or Claude Code. Its full surface exposes more than 100 operations, while a smaller verbs surface limits the agent to a memory protocol. The bootstrap path can create a private GitHub repository, write identity files from an interview, configure hooks, and persist work across sessions. That is convenient and also a lot of authority to grant from one pasted instruction.

Issue #4574 reports a concrete integration failure with Codex CLI 0.149.x: a bootstrap-generated inline bearer_token key makes Codex reject its configuration before any chat opens. The issue says a later harness run can restore the bad block after a manual fix. Test bootstrap in a disposable Codex home, inspect the generated configuration, and verify a fresh session before applying it to a daily environment.

Shared-brain privacy still has a measurable metadata gap

Release v0.46.30.0, published August 25, 2026, added a sweep intended to catch private content leaking through remote operations. Open issue #4592 then showed that scoped callers could receive brain-wide aggregate counts from health and statistics endpoints. By comparing those totals with visible sources, the reporter inferred the count and page type of an excluded source without reading its pages.

That is narrower than exposing page content, but source-level confidentiality promises must include metadata when counts reveal activity. The issue also explains why sentinel-string tests miss numeric leaks. Company deployments should test every remote operation with two clients holding different source grants, then compare structured fields, text, errors, and metadata rather than checking only for a seeded secret string.

Git history helps recovery but does not replace delete semantics

The README presents the brain repository as the durable body: clone it, inspect it, and remove it when the memory should disappear. GBrain also has soft deletion in its database. Issue #4587 reports that deleting a Git file and running sync --repo can hard-delete the row before the documented 72-hour database recovery window finishes. Git history was the reporter's remaining undo path.

Back up both the repository and database before bulk renames or cleanup. Test restore after the same sync command used by automation, not only after a direct delete command. This matters more as the system adds scheduled ingestion and overnight maintenance, because one mistaken file operation can quickly reach the index.

Fast releases reward active operators, not passive adopters

GitHub recorded 29,126 stars, 185 combined issues and pull requests, and a last push on August 26, 2026. Version 0.46.30.0 arrived one day earlier. That pace shows sustained work and quick fixes, while the current privacy, deletion, and Codex configuration reports show why release notes and acceptance tests must be part of operating GBrain.

The product makes the most sense for someone who wants agent memory enough to manage it like a database service. Start with a local, low-value corpus and the smaller MCP verbs surface. Confirm cross-session recall, visibility, deletion, export, and restore before importing email or meetings. Our failed 869-second command is not a reason to dismiss 7,152 passing cases, but it is a reason to withhold a carefree recommendation.

Alternatives

ProjectWhat it isPick it when
Mem0 gh↗A memory layer for AI applications with hosted and open-source deployment choices.pick this instead when application-level memory APIs matter more than a Git-backed personal brain.
Graphiti gh↗A temporal knowledge-graph framework designed for agent memory and changing facts.pick this instead when time-aware graph construction is the main job and you will build the surrounding agent workflow.
KhojA self-hosted personal AI that searches notes and connects through several user interfaces.pick this instead when you want a finished personal assistant experience rather than a large agent-memory substrate.

What people are saying

  1. [github-trending] garrytan/gbrain

Sources

  1. GBrain repository and README
  2. GBrain v0.46.30.0 release
  3. Scoped aggregate metadata issue
  4. Git sync hard-delete issue
  5. Codex bootstrap token configuration issue

More ai tools reviews

nobodywho · desktop-cc-gui · langextract · openrig · skills · awesome-grokbot · the whole board →