Gomaa
M4F-S/gomaa
Local-first hierarchical memory engine with Obsidian vault storage, hybrid search and an MCP server
Gomaa is a local-first hierarchical memory engine for AI agents that stores memories as Obsidian Markdown notes backed by PostgreSQL with pgvector or SQLite. It exposes the memory through an MCP server and lists Hermes among the agents it supports.
What Gomaa does
Gomaa gives agents persistent long-term memory in which every memory is a human-readable Markdown note with wikilinks and YAML frontmatter in an Obsidian vault. Storage is either PostgreSQL 16 with pgvector or a zero-config SQLite WAL fallback. Search is a hybrid Reciprocal Rank Fusion of dense vector, full-text, graph and salience signals, and notes are organized in a two-level wing and room taxonomy that isolates context by project and topic.
Memories are classified into five cognitive layers: episodic, semantic, procedural, social and preferential. Inactive memories fade by Ebbinghaus-style exponential decay while notes tagged #pinned stay permanent, and a token-budgeted assembler packs top memories into prompts with XML escaping. An admission and security guard screens credentials and control tokens, a shared_db lets agent fleets share sanitized global policies, and an embedded dashboard started with gomaa dashboard shows the memory graph. A nine-tool MCP server and adapters for LangChain, LangGraph and CrewAI are included.
Key features
- Obsidian Markdown vault as human-readable memory
- PostgreSQL with pgvector, or zero-config SQLite WAL
- Hybrid RRF search combining dense, full-text, graph and salience scores
- Ebbinghaus temporal decay with pinned memories
- MCP server with nine tools
- Admission guard against credentials and control-token injection
When to use it
- Giving a Hermes or OpenClaw agent long-term memory that a human can read and edit in Obsidian
- Sharing sanitized global policies across a multi-agent fleet while keeping private databases separate
- Keeping research notes, credentials and task scratchpads in separate wings and rooms
Who it is for: Developers who want auditable, local-first long-term memory for one or several AI agents.
How it fits with Hermes Agent
Hermes is listed among the agents Gomaa equips with memory, alongside OpenClaw, Claude Desktop, Cursor, Windsurf, CrewAI and LangChain, and its architecture diagram shows a Hermes agent fleet as a client.
FAQ
What is Gomaa?
Gomaa is a local-first, hierarchical memory engine for autonomous AI agents. It stores memories as Obsidian Markdown notes and indexes them in PostgreSQL with pgvector or SQLite for hybrid search.
Does Gomaa work with Hermes Agent?
Yes, Hermes is one of the agents the README says Gomaa equips with long-term memory, and the repository is tagged hermes-agent. Agents reach it through its MCP server.
Is Gomaa free and open source?
Yes, it is released under the Apache-2.0 license.
Similar memory for Hermes Agent
All memoryGuide to running Honcho and GBrain together with Hermes Agent for relationship and source memory
smarzola Hermes Local MemoryLocal-first SQLite memory provider for Hermes Agent with peers, cards, search and consolidation
ncz-os MNEMOSMemory operating system for AI agents with MCP, OpenAI-compatible and REST interfaces
TJCurnutte Memory HiveFile-backed shared memory for AI agent teams with private silos, a shared hive and a curator workflow
r0b0tlab r0b0tlabbra1nFilesystem-first Markdown and Obsidian memory vault for Hermes with SQLite FTS5 search and secret scanning
gymaira1990-jpg Mnemosyne OSSelf-hosted memory palace for AI agents with PostgreSQL, pgvector and a Hermes memory provider
Related guides: SOUL.md for Hermes Agent: what it is and how to write one · Run multiple Hermes agents with profiles