Observations are the truth
Knowledge arrives as immutable observation events: append-only, provenance-preserving. The entity/relation graph is a deterministic projection of the log. Replay the log anywhere and the same graph materializes.
supra (above) + gnosis (knowing)
supragnosis is an embedded, file-based knowledge server written in Rust. It structures what your agents learn across hosts and workspaces into an ontology - a living concept/relation graph - and serves it to any MCP client.
curl -fsSL https://raw.githubusercontent.com/Ashon/supragnosis/main/scripts/install.sh | sh
01 / core ideas
Knowledge arrives as immutable observation events: append-only, provenance-preserving. The entity/relation graph is a deterministic projection of the log. Replay the log anywhere and the same graph materializes.
Local-only, central hub, direct peer, or hybrid: every connection topology converges without conflict under the same merge semantics. Events are ed25519-signed and replicated over TLS.
A hexagonal core with zero IO. Stores, embedders, and extractors are ports with adapters: CozoDB today, Oxigraph tomorrow, in-memory for tests. The domain never notices.
02 / how it works
The log is the source of truth. Delete the graph, replay the log, and you get the same graph back - on any node, in any topology.
03 / capabilities
HNSW vector search over local ONNX embeddings (fastembed), fused with keyword search. Ranking is deterministic; without embeddings it degrades gracefully to keyword.
One process, one directory. CozoDB on RocksDB unifies relational,
graph, and vector under ~/.supragnosis/db. No external
database to run.
Changes to canon - tier promotions, merges, T-Box edits, recalls - flow through PR-like proposals with a curation console.
Every fact carries host, workspace, delegation chain, and trust tier. Contaminated sources can be quarantined and recalled in bulk, even across the federation.
A loopback-only web viewer streams entities, relations, and sync chatter as they land. Watch your agents learn.
start / stop / status /
restart with pidfile and logs under
~/.supragnosis. stdio for MCP-client children,
streamable HTTP for everything else.
04 / mcp surface
# stdio (client launches supragnosis as a child process)
claude mcp add supragnosis -- $(command -v supragnosis)
# or point at the background daemon over HTTP
supragnosis start
claude mcp add supragnosis --transport http http://127.0.0.1:7373/mcp
05 / federation
Hosts replicate observation logs, not merged state. Because projection is deterministic and merge semantics are shared, hub-and-spoke, peer-to-peer, and hybrid meshes all converge to the same ontology. Node identity is an ed25519 keypair; events are signed and shipped over TLS with per-node auth.
06 / inside
07 / status
The roadmap keeps an honest record of what shipped and what is deferred - see architecture.md sections 12 and 14.
08 / get started
# macOS (arm64 / x86_64), Linux (x86_64)
# installs to ~/.local/bin with checksum verification
curl -fsSL https://raw.githubusercontent.com/Ashon/supragnosis/main/scripts/install.sh | sh
supragnosis start # daemon: MCP :7373 + viewer :7374
supragnosis status
supragnosis stop
git clone https://github.com/Ashon/supragnosis
cd supragnosis
# includes local ONNX semantic search
cargo build -p supragnosis-cli --features fastembed
cargo test