Predicate Ventures
← All projects
Deployedplatform

Atlas

A knowledge bank, not an execution engine.

  • Ontologies & knowledge graphs
  • NLP & information extraction
  • Data science & evaluation
  • Cloud infrastructure

A local-first, RDF-grounded memory substrate. Atlas ingests documents, mail, calendar and code, resolves them into typed entities with provenance on every fact, and serves the graph over HTTP and MCP to any agent framework.

Local-first, RDF-grounded, framework-agnostic personal memory substrate. Atlas is a knowledge bank, not an execution engine: it reads, ingests, reasons, and exports views — it never sends email, writes to a CRM, or takes outbound action.

Atlas README

The problem

Vector search returns passages that sound relevant. It cannot tell you that two documents contradict each other, where a claim came from, or that a concept has drifted since last quarter. For work that has to hold up under audit, similarity is not enough.

The approach

Ground everything in RDF, and say why: the system is read primarily by models and agents, which inverts the usual property-graph tradeoff. RDF’s verbosity stops mattering and its entailment semantics start paying for themselves. Every fact carries provenance, contradictions are queued for adjudication rather than averaged away, and the ontology grows through a reviewed pipeline rather than a one-off modelling exercise.

How it works

  • Ingest: normalize, chunk, embed, spaCy, an LLM pass, entity resolution, writers
  • Retrieval: hybrid BM25 and vector, then planner, reranker, synthesizer
  • Storage: SQLite or Neon plus an embedded Oxigraph graph; RDF-star triples; bi-temporal with PROV-O provenance
  • Ontology: SHACL shapes, imports of schema.org, FOAF, SKOS and PROV, OWL 2 RL entailment, SPARQL migrations, and a competency-question suite
  • Connectors: GitHub, Gmail, Calendar, Drive, Pipedrive, Hunter, Linear
  • Intelligence: contradiction detection and entity timelines
  • Served over HTTP and MCP, so any agent framework can read it

Stack

Python 3.11, FastAPI, SQLAlchemy 2, pyoxigraph, rdflib, pyshacl, sqlite-vec and pgvector, scikit-learn, Alembic, OpenTelemetry. Next.js UI. AWS ECS Fargate with Neon, EFS, S3 and Bedrock; Voyage embeddings.

Where it stands

  • 419 test files, deployed and under active development
  • An evaluation suite with gold sets, named ablations and versioned recall-floor baselines committed alongside the code

Applied: a household on the same substrate

A memory substrate is an abstract claim until something runs on it. Atlas also backs a private household deployment, which is the clearest demonstration of the architecture working in a second and entirely unrelated domain.

What the system knows about a household is a structured fact-web validated against a published schema, so every claim is traceable rather than asserted. Every belief carries a confidence score and a true-from / true-until window, so a stale preference fades on its own while the old version survives for audit: tastes decay over roughly ninety days, background facts do not. Confidence turns into behaviour by an explicit rule rather than a diagram — act above 0.7, hedge between 0.4 and 0.7, ignore below 0.4.

Two pieces of the household engine are worth naming because they are ordinary data science rather than model output. Depletion prediction watches the gaps between repeat purchases, derives the rhythm and its variance, and flags a likely shortfall with a confidence and a 95% interval. Receipt matching turns "Wild Salmon Fillet; 1 lb #225" into "salmon" with a match score, alternates, and a human review path for the cases it is unsure about.

It also carries the same refusal to overclaim found elsewhere in this portfolio: before surfacing an explanation the system verifies the stored fact exists and drops the claim if it cannot, and its health check never reports grounding it does not have.

Links

Close to something you’re working on?