HAMMAD YOUSUF

FREE RESOURCE · FROM THE "GRAPH" POST

OmniGraph: Git-style shared memory for AI agents (setup notes)

By Hammad Yousuf · 27 October 2026

OmniGraph is an MIT-licensed graph database written in Rust that works like Git for AI agent memory. Several agents share one typed knowledge graph, each writes on its own branch, and nothing reaches main until you review it and run a three-way merge. Retrieval mixes graph, vector and full-text search in a single query.

You commented GRAPH on the post, so this is the guide: what OmniGraph is, why branchable memory matters, the setup commands and when not to use it.

At a glance · checked 27 Oct 2026

Licence and language
MIT · Rust
Latest release
v0.14.0, published 22 Oct 2026
Storage
Local disk or S3-compatible, in the open Lance format
Agent access
Built-in MCP server + TypeScript SDK

Why agents need branchable memory

  • OmniGraph is aimed at long-running agents that share one typed knowledge graph, retrieving context from it and storing new context back while they coordinate.
  • Instead of writing straight to main, an agent proposes changes on its own branch: one per agent or per task. You review the branch, then a three-way merge brings it in.
  • When two branches clash, the merge reports the conflict and never picks a winner silently. It names the kind, such as DivergentUpdate, DeleteVsUpdate, OrphanEdge or UniqueViolation.
  • Every mutation or load is one atomic commit: if it fails, none of its changes become visible. A merge lands on the target in one atomic step too.
  • History spans the whole graph: you can see each commit and the actor behind it, read an earlier commit and compare two points in time.

The example workflow: two agents, one graph

  1. Agent A ingests papers on its own branch

    It reads research papers and extracts claims into the graph, without touching main.

  2. Agent B cleans up on a second branch

    It de-duplicates entities and links each claim to its evidence, also in isolation.

  3. Compare, review, merge

    You compare each branch with main, review the changes and merge. If both agents changed the same entity, the merge reports a conflict for you to settle instead of guessing.

The README's own branch-and-merge example looks like this:

from the official README
omnigraph branch create --from main agent/ingest-42
omnigraph branch merge  agent/ingest-42 --into main

This flow is our illustration of the agent-memory use case the README lists (a branch per agent or task, merged on review), not a tutorial from the docs.

Retrieval in one query

  • Graph traversal: follow edges from one entity to related ones.
  • Vector ANN: approximate nearest-neighbour search over embeddings.
  • BM25 full-text: keyword search.
  • Reciprocal Rank Fusion: blends the ranked results into one list.

All four run in one runtime, with filtering, so an agent can assemble its context in a single query instead of calling three systems.

Guardrails: schemas and policies

Typed schemas on every write

You declare node and edge types, keys and constraints (uniqueness, ranges, edge cardinality) in .pg schema files. The engine checks them on every write path, so every agent works against the same enforced model.

Cedar policies on every mutation

Cedar policies are enforced on the server for every mutation, per graph, per branch or server-wide. The server uses bearer tokens, resolves the actor from the token itself (clients cannot set it) and tracks changes for audit.

Direct access to the storage does not go through the server's authentication, so the policies protect the server path, not the bucket.

Install and connect your agent

Commands from the official README, 27 Oct 2026. We have not run them ourselves, so check the README for the current version before you paste.

  1. Install with the script

    Puts the omnigraph CLI and omnigraph-server into ~/.local/bin from the published release binaries. It pipes a script from GitHub into your shell, so open the URL and read it first if you prefer.

    terminal
    curl -fsSL https://raw.githubusercontent.com/ModernRelay/omnigraph/main/scripts/install.sh | bash
  2. Or install with Homebrew

    terminal
    brew tap ModernRelay/tap
    brew install ModernRelay/tap/omnigraph
  3. Give Claude Code the OmniGraph skill

    The binary ships its own agent skill (cluster mode, schema changes, data writes, branches, Cedar policy, common gotchas). Exporting it from the installed CLI keeps the skill in step with your version.

    terminal
    omnigraph skill export ~/.claude/skills/omnigraph --force
  4. Older CLI with no skill command?

    This installs the copy from the default branch instead:

    terminal
    npx skills add ModernRelay/omnigraph@omnigraph
  5. Connect your agent over MCP

    The server has a built-in MCP endpoint at /mcp. Point your agent at it directly, or run omnigraph mcp --target NAME with your configured server target. Setup details are in the MCP guide: github.com/ModernRelay/omnigraph/blob/main/docs/user/operations/mcp.md

  6. Or use the TypeScript SDK

    The npm package is @modernrelay/omnigraph. The 0.14 server needs the 0.14 client contract, so check the README's client compatibility notes before you pick a package version.

  7. Start from seed data

    The cookbooks repo has ready-to-run graphs with real seed data (a company brain, a VC operating system, pharma and industry intel): github.com/ModernRelay/omnigraph-cookbooks

When to use it, and when not to

Use it when

  • Several agents read and write the same knowledge and you want their changes reviewable before they land.
  • You need one schema every agent must respect, checked on every write.
  • You want graph, vector and full-text retrieval in one place, plus a history of who changed what.

Hold off when

  • You need production stability today. The repo was created in April 2026 and is on v0.14, so read the README and the 0.14 upgrade notes before you depend on it.
  • You need transactions across graphs. Each graph's storage root is its consistency boundary, and cross-graph transactions are not supported.
  • You want a hosted service. OmniGraph Cloud is in private preview with a waitlist, so for now you run it yourself.

Sources checked

The facts on this page were checked against the OmniGraph repository and its docs on 27 October 2026. We did not install or run OmniGraph for this guide. It is a young project that changes fast, so treat its README as the final word.

  • MIT licence, Rust, repo created 10 Apr 2026, latest release v0.14.0 on 22 Oct 2026 (GitHub API, 27 Oct 2026). Source ↗
  • Branch per agent or task, three-way merge, typed .pg schemas enforced on every write, graph + vector ANN + full-text + Reciprocal Rank Fusion in one runtime, Cedar on every mutation, local or S3-compatible storage in Lance, MCP server and TypeScript SDK, install commands. Source ↗
  • One mutation or load is one atomic commit, merges land in one atomic step, history with actors, cross-graph transactions not supported, storage access bypasses server auth. Source ↗
  • Merge conflicts are reported as structured kinds and a winner is never picked silently. Source ↗

Keep going