omnigraph is a free, open source databases project written in Rust and released under MIT. It has 1,134 GitHub stars, 250 forks and 59 open issues, and was last pushed 3 hours ago. On this registry it ranks #77 of 81 tracked projects in Databases, with 5 head-to-head comparisons available. It gained 19 stars over the last 3 tracked days.

What is omnigraph?

Omnigraph is an MIT-licensed, Rust-built lakehouse graph database that provides the operational state and coordination layer for fleets of AI agents, aimed at teams that need versioned, branchable context storage on their own infrastructure.

What it is

Omnigraph is a graph database engine written in Rust and released under the MIT licence. It lives in the lakehouse ecosystem, built on Apache Arrow, DataFusion, and the Lance columnar format, and it stores its data natively on object storage. Rather than treating the graph as a single mutable table, Omnigraph treats every graph as a versioned artefact: agents and developers work on parallel isolated branches, and changes are reviewed and merged Git-style across the whole graph. It runs as a server, omnigraph-server, that brings every declared graph online at paths under /graphs/{id}/….

The concrete problem it replaces is the ad-hoc combination of a graph database, a vector store, and a full-text index that teams currently stitch together to assemble context for agents. Omnigraph folds graph traversal, vector approximate nearest neighbour search, full-text search, and Reciprocal Rank Fusion into one query runtime, so context assembly does not require coordinating several systems. It also replaces manual, unreviewed writes into shared state with branch-and-merge workflows and server-side policy enforcement.

Key capabilities

  • A cluster.yaml file declares graphs, schemas, stored queries, embedding providers, and policies as code; cluster plan previews the diff and cluster apply converges the cluster Terraform-style.
  • omnigraph-server boots from the cluster configuration and exposes every graph at /graphs/{id}/….
  • Hundreds of agents can enrich the graph on parallel isolated branches, with changes reviewed and merged safely, Git-style, across the whole graph.
  • Multimodal retrieval combines graph traversal, vector ANN, full-text search, and Reciprocal Rank Fusion in one query runtime.
  • Cedar policy is enforced server-side on every mutation, per-graph and server-wide, alongside bearer authentication and actor/audit tracking.
  • Storage runs locally or on any S3-compatible object store, including RustFS, MinIO, AWS S3, R2, GCS, and Azure, in VPC, on-prem, or hybrid setups where data never leaves the operator's own store.
  • The Lance columnar format provides branchable, time-travelable storage with native blob-as-data for documents, images, and video.

Who uses it and how

  • Teams running fleets of agents use it as durable, versioned agentic memory, with a branch per agent or per task merged on review.
  • Organisations building a company brain unify org knowledge into one graph that every agent can query.
  • Engineering groups maintain a dev graph of issues and dependency models that coding agents both read and write.
  • Research and ML teams use it as an R&D data layer, writing experiments and trials into branches versioned for training and evaluation.
  • Agents can be onboarded directly: the repository ships an omnigraph agent skill installed with npx skills add ModernRelay/omnigraph@omnigraph, and ModernRelay/omnigraph-cookbooks provides ready-to-run graphs with real seed data.

Getting started

Install with curl -fsSL https://raw.githubusercontent.com/ModernRelay/omnigraph/main/scripts/install.sh | bash, which places the omnigraph CLI and omnigraph-server in ~/.local/bin from published release binaries. Homebrew users can run brew tap ModernRelay/tap followed by brew install ModernRelay/tap/omnigraph.

How it compares

The facts provided do not name any paid products that Omnigraph replaces, nor any directly comparable tools. It stands alone in this registry on those axes.

When to use it — and when not to

A self-hoster must operate the omnigraph-server process plus an object store, whether local storage or an S3-compatible service such as MinIO, RustFS, or a cloud equivalent. Teams that want a fully managed hosted option, or that have no appetite for running storage and Cedar policy configuration themselves, should look elsewhere, since no hosted offering is described here. The project is also young and still moving quickly, with 59 open issues and active development as of the most recent push.

project readme (upstream, from github) — read inline

Lakehouse graph database for context assembly & multi-agent coordination
Multimodal retrieval · Git-style branching · object-storage native

Quickstart  ·  Docs  ·  Cookbooks  ·  CLI

License: MIT Rust


Omnigraph is the operational state and coordination layer for fleets of agents.
Run it as a server, declared as code; hundreds of agents operate and enrich the graph on parallel isolated branches, and every change is reviewed and merged safely.

Join the Omnigraph Slack community to ask questions, share feedback, and follow development.

Key capabilities

Capability What it gives you
Declared as code A cluster.yaml declares graphs, schemas, stored queries, embedding providers, and policies; cluster apply converges it and omnigraph-server brings every graph online at /graphs/{id}/….
Built for fleets of agents Hundreds of agents enrich the graph on parallel isolated branches; changes are reviewed and merged safely, Git-style, across the whole graph.
Multimodal retrieval Graph traversal + vector ANN + full-text + Reciprocal Rank Fusion in one query runtime, for context assembly.
Security as code Cedar policy enforced server-side on every mutation, per-graph and server-wide; bearer auth; actor/audit tracking.
Runs on your infrastructure Local storage or any S3-compatible object store (RustFS / MinIO, AWS S3 / R2 / GCS, Azure). VPC, on-prem, hybrid; your data never leaves your store.
Open, versioned storage Lance columnar format: branchable, time-travelable, with native blob-as-data (docs, images, video).

What you can build

Use case What it's for
Company brain Org knowledge unified into one graph every agent can query
Agentic memory Durable, versioned memory: a branch per agent or per task, merged on review
Context graph Decision traces and codified tribal knowledge for retrieval
Dev graph Issues & dependency model that coding agents read and write
R&D / ML data layer Experiments and trials written into branches, versioned for training & eval

Install

curl -fsSL https://raw.githubusercontent.com/ModernRelay/omnigraph/main/scripts/install.sh | bash

This installs omnigraph (CLI) and omnigraph-server into ~/.local/bin from published release binaries. Or with Homebrew:

brew tap ModernRelay/tap
brew install ModernRelay/tap/omnigraph

Set it up with an AI agent

Omnigraph is built to be run by coding agents. Two ways in:

Teach your agent the playbook. This repo ships the omnigraph agent skill: the operational playbook covering cluster mode, the two config surfaces, schema evolution, query linting, data writes, branches, Cedar policy, and the common gotchas.

npx skills add ModernRelay/omnigraph@omnigraph

Or have an agent set it up from scratch. Paste this into Claude Code, Codex, or any agent that can read a URL and run a shell command:

Help me set up Omnigraph

1. Read the docs at https://github.com/ModernRelay/omnigraph, starting with
   docs/user/clusters/index.md, then docs/user/deployment.md.
2. Skim the starter graphs and seed data in the cookbooks:
   https://github.com/ModernRelay/omnigraph-cookbooks
3. Ask me what I want to build (company brain, agent memory, dev graph,
   research / R&D layer, …). Then stand up a cluster for it, load a little
   data, and run a query so I can see it working.

For ready-to-run graphs with real seed data (company brain, VC operating system, pharma & industry intel), ModernRelay/omnigraph-cookbooks is the fastest way to see Omnigraph shaped to a real domain.

Deploy

A deployment is a cluster: a multigraph config directory that declares its graphs, schemas, stored queries, and policies as code. You manage it Terraform-style: cluster plan previews the diff, cluster apply converges it. omnigraph-server then boots from the cluster and brings every graph online at /graphs/{id}/…, each behind its own policy.

1. Declare the cluster.

company-brain/
├── cluster.yaml
├── people.pg          # schema for the "knowledge" graph
├── queries/           # stored queries: the .gq files ARE the declaration
│   └── people.gq
└── base.policy.yaml   # a Cedar policy bundle
# cluster.yaml
version: 1
metadata:
  name: company-brain
storage: s3://company/clusters/company-brain   # ledger, catalog, and graph data live here
graphs:
  knowledge:
    schema: people.pg
    queries: queries/                          # every `query <name>` in queries/*.gq registers
policies:
  base:
    file: base.policy.yaml
    applies_to: [knowledge]                    # graph-bound; use [cluster] for server-level

2. Stand up your object store. On-prem, run RustFS (or MinIO); Omnigraph writes Lance over the standard S3 API. In the cloud, use S3 / R2 / GCS through AWS_*. Native az:// roots are also available as a qualification preview. Every Azure writer, including cluster apply and the server, must use the checked-in admission wrapper; follow the Azure deployment guide instead of running the bare commands below.

3. Converge and run. apply creates each graph, applies its schema, and publishes queries and policies into the content-addressed catalog. It is idempotent; re-running is always safe.

omnigraph cluster validate   # parse + typecheck everything
omnigraph cluster plan       # preview what apply would do
omnigraph cluster apply      # converge

# Boot the server from the cluster dir; storage resolves through cluster.yaml
omnigraph-server --cluster company-brain --bind 0.0.0.0:8080

The bare commands above describe local and S3 deployments. See the cluster guide for the day-2 loop (edit → plan → apply → restart), approval gates for destructive changes, drift inspection, and recovery; the deployment guide for containers, AWS/Railway/Azure, auth, and the object-store environment contracts.

Query and mutate

Set a default server and graph once in ~/.omnigraph/config.yaml, and the everyday commands stay short. Stored queries and mutations run by name:

omnigraph query  search_docs --params '{"q":"AI safety"}'
omnigraph mutate add_person  --params '{"name":"Mina"}'

# Branch, review, merge across the whole graph; agents write in isolation
omnigraph branch create --from main agent/ingest-42
omnigraph branch merge  agent/ingest-42 --into main

An alias is shorter still: bind a server, graph, and stored query to one name, then omnigraph alias triage runs it. For an ad-hoc target, any command still takes --server --graph (or --store for a local graph). See the CLI reference.

Security & governance

  • Engine-wide enforcement: every write path goes through the same Cedar gate, so the HTTP server, the CLI, and the embedded SDK obey identical rules.
  • Declared in the cluster: a policy bundle is bound to graphs (or the whole server) via policies:applies_to.
  • Scoped: rules apply per graph, per branch, or server-wide.
  • No plaintext tokens: bearer tokens are hashed at startup and compared in constant time.
  • Forge-proof identity: the actor is resolved server-side from the token; clients can't set it.

See the policy guide.

Clients & SDKs

Client Use it for Where
TypeScript SDK typed access from Node / TS @modernrelay/omnigraph · source
MCP server bridge Omnigraph to LLM hosts (Claude, Codex, …) [@modernrelay/omnigraph-mcp](https://www.npmjs.com/package/@modernrelay/om

readme truncated — read the full docs on github

Frequently asked questions

Is omnigraph free to use?

omnigraph is open source under the MIT licence. There is no licence fee and no seat count — you can self-host it or, where the project offers one, pay a vendor for a managed version instead.

What does omnigraph do?

Lakehouse native graph engine with git-style workflows

What is omnigraph written in?

omnigraph is primarily written in Rust. Its source is publicly available at https://github.com/ModernRelay/omnigraph, and it has 1,134 GitHub stars.