Mycelic — Local memory for agent collectives

Star anovruzov/NeuralGraph on GitHub (opens in a new tab)

Open sourced and local. Save ~97% of context tokens per question, and keep your memories on your own hardware.

Research programme and engine for local-first agent memory

Local memory for agent collectives. Claims travel with their lineage.

Raw memory stays on the device that owns it; only bounded, policy-checked, lineage-carrying artifacts move.1 We publish our numbers with their judge, their dataset slice and their caveats, including where the approach loses.30

  • Status 2026-09-17
  • engine under active development3
  • source open at github.com/anovruzov/NeuralGraph4
  • packaging, API and quick-start on the roadmap5
  • manuscript under review at NeurIPS 20266
  • organisational benchmark running now7

For security reviewers

  • Established: cross-node exchange happens only through typed, validated artifacts; there are no raw graph reads and no global merged store; policy runs before propagation.1
  • Established: every coordinated claim carries lineage root ids and every retrieval writes a trace.8
  • Code boundary, not a network boundary: the invariants above are enforced by frozen dataclasses and deterministic tests in an in-process coordinator over local SQLite stores; the coordination package has no network transport module, so “cross-node” means separate adapters and stores, not separate machines.36
  • Still ahead: an independent security audit, a formal proof of non-leakage, per-source-memory authorization, and compliance or SLA coverage.9
  • Design property: privacy and authorization are architectural constraints today; the experimental confirmation is the work in progress.10

What we can and cannot assert · Read the deployment posture


The problem we work on

A transcript is not a memory; a memory is not a knowledge claim; and a durable message stream is not a knowledge base. When these are collapsed, the resulting architecture is hard to reason about, hard to secure, and nearly impossible to evaluate causally.

— the Mycelic research manuscript (position statement, not a finding)11

Long-lived agent systems tend to treat a transcript, a memory, a knowledge claim and a message stream as the same thing. Once they are collapsed, the system is hard to reason about, hard to secure and hard to evaluate causally. Our programme keeps them apart.12

A memory system that only answers queries cannot notice what it fails to know. Twenty agreeing agents may descend from two sources, one of them wrong. So we count support by independent evidence roots, not by copies, and we make questions first-class objects that can travel when private memory cannot.37

Support is counted by independent evidence roots after a correlation discount, never by the number of copies, and a question is itself an artifact with a budget and target units: it is routed to the units that hold the evidence, and the answers come back as sketches rather than raw records.13

Our design principle is capability coherence without state convergence: independent memory holders can jointly reconstruct an answer no single one of them holds, without merging into one global graph.12 This section states motivation only; it makes no empirical claim.


Three research tracks

Track 1 · Retrieval on LoCoMo

  • Measured
  • Leakage-free harness
  • A, evidence class A: measured retrieval.

Per-agent routing plus dialogue-pair back-fill raises single-hop accuracy (category as labelled) by 8.9 points over flat retrieval on the same 282 questions under the campaign’s lenient local Gemma judge, and the gain survives all four graders.14

“As labelled” means the campaign’s single_hop label. These 282 questions are LoCoMo dataset category 1 (3.13 evidence messages per question on average); the inherited category constants swap the single-hop and multi-hop labels, PR #1 in the research repository carries the corrected mapping, and aggregates are unaffected.38

Track 1

Track 2 · Coordination and capability survival

  • Deterministic tests
  • Deterministic fixture
  • Bitwise reproducible
  • T, evidence class T: deterministic coordination tests.
  • B, evidence class B: deterministic repair fixture.

The coordinator has passed its first gate: knowledge split across two real SQLite-backed holders is reconstructed with traceable lineage roots and survives a storage restart; 109 deterministic tests pass; five further gates have not started.15 In a 5-node deterministic fixture, lineage-aware repair survives 7 of 9 interventions (mean survival 0.778 over 30 seeds) where full replication survives 6 of 9 (0.667); it survives none of the network-partition or worst-single-domain cases, where full replication survives partition. A mechanism demonstration on a small-N simulator, not a performance claim.16

The manuscript reports the same fixture as 7/9 versus 6/9 with Fisher p = 1.00 and a Wilson 95% interval of [45.3%, 93.7%], an underpowered comparison.39 A population-scale symbolic simulation (no LLM calls) reports that, at equal storage, lineage-aware placement improves evidential quality (accuracy, independent support, contradiction detection), not raw knowledge survival (B6 − B3 = +.000, p = .59); broad replication buys far higher survival at roughly 48× the storage, so the fabric claims no dominance over it.17

The manuscript’s significance statistics for this fixture and its population-scale simulation campaign are under review; those numbers will appear here after the review decision.

Track 2

Track 3 · Organisational aggregation benchmark

  • In progress · no results
  • IP, evidence class IP: in progress, no results.

Can a five-layer hierarchy of local agents discover and safely propagate organisational knowledge better than centralised systems that see every raw record? The benchmark gives the centralised baselines strictly more information than Mycelic and is built so that Mycelic can lose.18 Results are not yet available.7

Track 3


Numbers we stand behind, and how to read them

+8.9pts

single-hop accuracy (as labelled), flat retrieval → per-agent routing + pair back-fill

A, evidence class A: measured retrieval.282 LoCoMo questions labelled single-hop (dataset category 1)38 · Gemma lenient judge · same judge, only retrieval changed · 64.9% → 73.8% · also +11.3 Qwen lenient, +9.6 Qwen strict, +4.6 substring · p < .001 for the three LLM judges, p = .01 for substring (two-sided sign tests; wins/losses 32/7, 45/13, 38/11, 18/5) · leakage-free harness1441

Source: claims register R1 NeuralGraph/docs/BENCHMARKS.md#The clean A/B ll.88-99; NeuralGraph/docs/research/N5_judge_sensitivity.md#Pair deltas ll.20-23

7 / 9

interventions survived by lineage-aware repair (mean survival 0.778); full replication survives 6 / 9 (0.667)

B, evidence class B: deterministic repair fixture.repository record: BENCHMARKS.md Track A, 30-seed means · deterministic 5-node fixture · bitwise reproducible (SHA256-pinned artifacts at commit 13a1729 on branch claude/session-analysis-continuation-sm1a1t)16 · the manuscript reports the same fixture as 7/9 vs 6/9, Fisher p = 1.00, Wilson 95% interval [45.3%, 93.7%]39 · the manuscript’s significance statistics for this fixture are under review

Source: claims register R2 NeuralGraph/docs/BENCHMARKS.md#Track A ll.16-62

13.5 to 64.9%

the same 282 answers, four graders (no arrow: this spread is a property of grading, not a gain)

A, evidence class A: measured retrieval.substring 13.5 · Qwen strict 21.6 · Qwen lenient 51.4 · Gemma lenient 64.9 · flat retrieval, labelled single-hop (dataset category 1) · κ vs campaign judge, computed on 1,180 pooled rescored rows rather than these 282 answers alone: substring 0.17, Qwen strict 0.30, Qwen lenient 0.722141

Source: claims register R3 NeuralGraph/docs/BENCHMARKS.md#Judge sensitivity ll.121-131; NeuralGraph/docs/research/N5_judge_sensitivity.md#Agreement ll.29-32

We publish no product latency figure. The only end-to-end timings in the repository record are those of the research harness on one local machine: 6.4 to 8.2 seconds per question with LLM reranking.22 The manuscript also reports 0.44 s per question without reranking against 8.2 s with it, at 61.9% versus 68.6% accuracy (rounded values, not an exact matched effect).40A without-reranking timing is reported in the manuscript under review. None of these is a product specification.


The architecture in one picture

D1 Layer stack: the four layers of the Mycelic memory fabric and how much of each exists today Four horizontal layers, drawn from the bottom up, each tagged with its status. Bottom: Local evidence holders (agents: local model + tools; local data and memory; raw memory never leaves; bounded evidence returns), drawn solid and tagged “implemented, tested”. Above it: Lineage-bound context (team or department; region or scope; cross-cutting scopes), drawn with a dotted outline and tagged “simulation only”, because the hierarchy exists only in the organisational-benchmark simulator and the manuscript’s symbolic simulation. Above that: Durable transport (bounded claims; evidence envelopes; causally ordered; audit-ready), drawn with a hatched fill and tagged “design only”. Top: Lineage knowledge fabric, dotted and tagged “simulation only”, listing semantic index and scope graph (each with its own hatched “design” tag), time intervals, and lineage roots and failure domains. A gold arrow runs down the left side, labelled “questions travel as routable artifacts”; a teal arrow runs up the right side, labelled “evidence returns as bounded claims”. Legend below the drawing: solid = implemented and tested; dotted = simulation only; hatched = design only. questions travel as routable artifacts evidence returns as bounded claims Lineage knowledge fabric simulation only semantic index design scope graph design time intervals lineage roots, failure domains Durable transport design only bounded claims evidence envelopes causally ordered audit-ready Lineage-bound context simulation only team or department region or scope cross-cutting scopes Local evidence holders implemented, tested agents: local model + tools local data and memory raw memory never leaves bounded evidence returns
  • solid = implemented and tested
  • dotted = simulation only
  • hatched = design only
D1 Layer stack. Four layers drawn by us from repository descriptions, not reproduced from the manuscript. Questions travel down the left as routable artifacts; evidence returns up the right as bounded claims. Solid = implemented and tested in code: the NeuralGraph engine and the in-process coordination contracts. Dotted = exists only in simulators or benchmarks: the team, department and region hierarchy lives in the organisational benchmark, which runs with simulated model profiles and has no results yet, and lineage-root and failure-domain analysis is exercised on a small-N deterministic simulator. Hatched = design only: the network transport, the semantic index and the scope graph have no code referent in the sources cited here. The repository’s own gate ladder has Gates 2 to 6 not started, so no experiment exercises the whole stack end to end. Sources: NeuralGraph/state.md ll.19-30, 43-71, 210-228; NeuralGraph/docs/BENCHMARKS.md ll.51-55, l.174; NeuralGraph/mycelic-org-benchmark/README.md ll.31-54; NeuralGraph/mycelic-org-benchmark/DESIGN.md §3.1, §4; manuscript Fig. 2 description (concept only, redrawn).
Layers as a table
The four layers of D1, listed from the top of the drawing to the bottom, with their elements and how each is drawn.
LayerElementsDrawn as
Lineage knowledge fabricsemantic index (design only); scope graph (design only); time intervals; lineage roots and failure domainsdotted (simulation only); the two design items carry a hatched tag
Durable transportbounded claims; evidence envelopes; causally ordered; audit-readyhatched (design only)
Lineage-bound contextteam or department; region or scope; cross-cutting scopesdotted (simulation only)
Local evidence holdersagents: local model + tools; local data and memory; raw memory never leaves; bounded evidence returnssolid (implemented and tested)

Each agent owns a local memory graph; there are no raw cross-graph edges.1 Exchange happens only through typed artifacts that carry owner, scope, temporal validity, lineage and authorization.23 A derivation records support, not a guarantee of truth.42A claim carries a lineage record (parent claims, hashed root workers, path and derivation operator) and a status that can be proposed, accepted, quarantined, superseded or unresolved.24 Privacy and authorization are architectural constraints, not experimentally established guarantees.10

Architecture


The engine: NeuralGraph

A graph-native memory and retrieval system for long-running AI agents.25 It turns conversations and events into structured, searchable memory: memories are nodes with speaker identity, timestamps, resolved dates and entities, linked by typed relationships; retrieval combines semantic similarity, keyword match, entity overlap, temporal relevance and speaker-aware boosts (plus, in the shipped research configuration, per-agent routing), then reranks; every stage records what was retrieved and why.26 It answers with local models through Ollama or any OpenAI-compatible endpoint such as LM Studio.27

  • Under active development
  • No packaged library yet (planned)
  • No documented API yet (planned)
  • No quick-start yet (planned)
  • Licence not selected28

Engine details · Deployment posture


How we report

  1. Every number names its judge, its dataset slice and whether the harness was leakage-free.2
  2. The evidence classes (A measured retrieval, B deterministic repair fixture, C synthetic acquisition simulation, D population-scale symbolic simulation, T deterministic coordination tests) are never pooled into one architectural accuracy.29
  3. Negative results and the conditions where the approach loses are published next to the gains.30
  4. Superseded numbers are marked superseded and kept for comparison, never cited as current.31
  5. A benchmark with no results says “no results”.32
  6. A claims register lists every quantitative and capability claim on this site with its source; if a page and the register disagree, the register wins.33

Papers, artifacts and discrepancies · Claims register

Work with us

Evaluate the engine: we scope a local-first pilot on your hardware with your local models and say up front what is implemented, what is demonstrated only in simulation and what is proposed.34 Reproduce or extend the research: reviewers and research partners can request the deterministic fixtures and per-question artifacts.35

Sources

Paths are relative to the root of the NeuralGraph repository, which is public to read at github.com/anovruzov/NeuralGraph with no licence selected (all rights reserved); they are given as text, with line numbers checked against main on 2026-09-17, and files under mycelic-org-benchmark/ are on branch claude/mycelic-org-benchmark-9cnf35, not yet merged into main. “Manuscript” is the Mycelic research manuscript submitted to NeurIPS 2026 (decision pending), cited by section and printed margin line number; entries cited only by gated copy are removed from the deployed page by tools/build.py until the authors clear publication. Register rows R1 to R3 are on the claims register.

  1. NeuralGraph/state.md — Non-negotiable invariants, ll.19-30
  2. NeuralGraph/docs/BENCHMARKS.md — Judge sensitivity, l.131
  3. NeuralGraph/README.md — Current Status, ll.127-129
  4. NeuralGraph/README.md — License, ll.145-147
  5. NeuralGraph/README.md — Roadmap, ll.131-139
  6. Manuscript — p.1 footer (unnumbered), submission notice
  7. NeuralGraph/mycelic-org-benchmark/docs/REPORT.md — §5 placeholders, ll.171-180
  8. NeuralGraph/state.md — Gate 1 evidence, ll.171-200; NeuralGraph/README.md — Retrieval attribution, ll.49-50
  9. NeuralGraph/state.md — Known Issues item 4, ll.270-278; Gate 2-6, ll.210-228
  10. Manuscript — §6.1, l.242
  11. Manuscript — §1, ll.16-19
  12. NeuralGraph/state.md — Mission, ll.11-17
  13. NeuralGraph/mycelic-org-benchmark/DESIGN.md — §4 SupportRecord and QuestionArtifact, ll.160-192
  14. NeuralGraph/docs/BENCHMARKS.md — The clean A/B, ll.88-99
  15. NeuralGraph/state.md — Gate 1, ll.171-209; Test Status, ll.145-154
  16. NeuralGraph/docs/BENCHMARKS.md — Track A, ll.16-62 (30-seed means; artifacts pinned at commit 13a1729 on branch claude/session-analysis-continuation-sm1a1t, ll.18-19)
  17. Manuscript — Table 4 and ll.148-157; §5.6, ll.205-211
  18. NeuralGraph/mycelic-org-benchmark/docs/REPORT.md — Research question, ll.37-40; NeuralGraph/mycelic-org-benchmark/README.md — Systems, ll.132-136
  19. NeuralGraph/docs/BENCHMARKS.md — The clean A/B, l.95; All 18 experiments, H9 row, l.105; NeuralGraph/docs/research/REPORT.md — §2 items 1-2, ll.30-31
  20. NeuralGraph/docs/BENCHMARKS.md — Track A table, notes and invariants, ll.25-36, 51-62
  21. NeuralGraph/docs/BENCHMARKS.md — Judge sensitivity, ll.121-131
  22. NeuralGraph/docs/BENCHMARKS.md — The clean A/B, s/q column, ll.90-95
  23. NeuralGraph/state.md — contracts.py, ll.43-71; NeuralGraph/mycelic-org-benchmark/DESIGN.md — §4, ll.160-192
  24. NeuralGraph/mycelic-org-benchmark/DESIGN.md — §4 Claim and LineageRecord, ll.172-185
  25. NeuralGraph/README.md — l.3
  26. NeuralGraph/README.md — ll.5, 22-50; NeuralGraph/docs/BENCHMARKS.md — shipped configuration, ll.85-86, 95
  27. NeuralGraph/NeuralGraph/llm_backend.py — module docstring, ll.1-14
  28. NeuralGraph/README.md — Current Status, Roadmap, License, ll.127-147
  29. Manuscript — §5.1, ll.76-80; NeuralGraph/docs/BENCHMARKS.md — header, ll.3-5
  30. NeuralGraph/docs/BENCHMARKS.md — All 18 experiments, ll.101-119; NeuralGraph/docs/research/REPORT.md — §3 What did not work, ll.34-48
  31. NeuralGraph/docs/BENCHMARKS.md — Track C, ll.147-162
  32. NeuralGraph/mycelic-org-benchmark/README.md — Honesty rules, ll.286-294
  33. This site — /claims.html
  34. NeuralGraph/README.md — Example Use Cases, ll.108-116
  35. NeuralGraph/docs/BENCHMARKS.md — Track A source, ll.16-24
  36. NeuralGraph/state.md — Architectural Invariants, ll.19-30; contracts.py, ll.43-48; real-storage restart test, ll.191-201; NeuralGraph/docs/BENCHMARKS.md — Track A notes, ll.51-55
  37. Manuscript — p.1, ll.25-29; §2.1, l.46
  38. NeuralGraph/docs/BENCHMARKS.md — label note, ll.7-12
  39. Manuscript — §5.2, ll.110-117
  40. Manuscript — §5.1, ll.105-108
  41. NeuralGraph/docs/research/N5_judge_sensitivity.md — Setup, l.6; Pair deltas, ll.20-23; Agreement with the campaign judge, ll.29-32
  42. Manuscript — §2, p.2 l.42
  43. Manuscript — §5.1, ll.93-94