Semantica records the context around a decision, not an LLM's thoughts
Semantica addresses a real gap in agent systems. A vector search may recover similar text, but it does not by itself preserve why a source was accepted, how entities relate, which policy fired, or what a decision affected later. Semantica models those details as graph nodes and edges with provenance. Its README is careful about one important boundary: the system explains inputs, outputs, policies, relationships, and execution history, not hidden chain-of-thought inside a foundation model.
The project then covers a very large surface. It includes ingestion, parsing, entity and relationship extraction, conflict handling, ontology tools, deterministic rule engines, graph analytics, vector search, RDF and property-graph stores, exports, a browser explorer, REST, MCP, and adapters for agent frameworks. Our checkout contained about 324,459 source lines in 1,079 files. A team can standardize on one package, but each module creates another contract that must survive upgrades and backend differences.
Decision records are queryable until current filter and embedding paths fail
ContextGraph can record a category, scenario, reasoning summary, outcome, confidence, causal relationships, and downstream impact. That is useful for underwriting, healthcare review, or any workflow where an operator must reconstruct what the surrounding system knew. Point-in-time graph state and W3C PROV-O exports give auditors a structured artifact rather than a loose application log. The same APIs can search for precedents and check a decision against rules.
Two current issues cut into that story. Issue 1211 reports that an MCP category query returns an empty list for a decision recorded moments earlier because the filter reads the wrong dictionary level. Issue 1140 reports that decision embeddings remain empty and similarity search stops returning results after save and reload. These are specific paths, not proof that every decision API is broken, but both affect the retrieval workflows featured in the README.
What happened when we ran it
Our sandbox installed commit d79f2cf in 180 seconds, pulling 406 packages and consuming 6,801 MB on disk. The build succeeded in 6 seconds. That footprint is large for a Python library, though the repository spans graph stores, vector stores, data connectors, model integrations, a web explorer, and developer tooling. Pip-audit reported 0 known vulnerabilities in the packages installed during our run.
Pytest ran for 664 seconds and exited with code 1. It reported 2,602 passed, 159 failed, 36 skipped, and 41 collection or setup errors out of the stated 2,802 tests. The final lines repeatedly raised an exception saying the official Pinecone package was renamed from pinecone-client to pinecone and instructed the project to remove the old package. The suite stopped after 200 failures. The log does not establish how many failures shared that condition.
Polyglot storage needs a round-trip test for every chosen backend
Semantica supports embedded and external graph systems. The README names Oxigraph, Blazegraph, Jena, RDF4J, Neo4j, FalkorDB, Apache AGE, and Neptune, alongside swappable vector stores. That flexibility is useful when an enterprise already has a graph platform. It also means the shared abstraction must translate identifiers, relationships, queries, and persistence correctly across systems with different models.
Issue 1136 gives a concrete Neo4j failure on v0.6.5: 2 nodes were written and 0 relationships survived because application string identifiers reached a backend query expecting Neo4j integer IDs. A separate quick-start issue reports passing the backend object where the builder expects a facade. If Neo4j is your target, acceptance testing should create known nodes and edges, restart the process, and compare counts plus properties before the graph carries any audit claim.
Vector persistence and MCP both have silent-loss reports
Issue 1139 reports that documents added through AgentContext.store() were searchable in memory, yet VectorStore.save() wrote empty vector and metadata maps. Reload then returned 0 hits, and pre-save search results lacked source content. The reporter's workaround rebuilds the index from source documents. That can be acceptable for a cache, but it is unsuitable when users believe the saved vector state is durable or when a search hit must be traced to its original text.
The MCP path has another set of sharp edges. Issue 1134 reports progress output written to stdout, which corrupts the JSON-RPC stream, and documents SEMANTICA_DISABLE_PROGRESS=1 as a workaround. The same report says SEMANTICA_KG_PATH loads a graph but never saves mutations, and that several Claude Code setup instructions are invalid. Because this is an MCP server and ships Claude Code plugin material, teams should validate the exact client command and restart persistence before exposing its 17 reported tools.
August releases move quickly, including security repairs
GitHub showed 10,911 stars, 89 combined open issues and pull requests, and a last push on August 26, 2026. Version 0.6.6 was released on August 20. Its notes describe fixes for backup and restore, database export, outbound requests, ingestion, and graph-store security, plus CrewAI support, graph retraction, deterministic RDF identifiers, and timezone-aware timestamps. The release merged 61 pull requests from 32 contributors, evidence of high activity and a high change rate.
Semantica deserves a trial when graph provenance is a hard requirement and assembling separate libraries would create more integration work. The trial should stay narrow. Pick one ingestion format, one graph backend, one vector backend, and one export. Our 6,801 MB environment and 200 pytest failures or errors show why proving that small chain is more informative than accepting the README's full platform promise at once.

