Skip to content
Open
Changes from all commits
Commits
Show all changes
20 commits
Select commit Hold shift + click to select a range
a9d7883
Add langchain-dkg integration
haroldboom Apr 28, 2026
04c3d87
Update langchain-dkg entry for review
haroldboom May 23, 2026
a830da5
Add email contact to maintainer
haroldboom May 23, 2026
0052604
Bump pin to bd7bc94 (positioning section + Trusted Publishing workflow)
haroldboom May 23, 2026
3902941
Bump langchain-dkg to v0.1.2 with PyPI Trusted Publishing attestations
haroldboom May 23, 2026
b847f7b
Pin langchain-dkg to v0.1.3 — verified with dkg SDK 8.1.1rc2
haroldboom Jun 9, 2026
c0c17a0
Remove github-dkg.json from langchain-dkg branch (belongs on add/gith…
haroldboom Jun 9, 2026
0d0ff75
langchain-dkg: pin v0.1.4 (security: langchain-core>=1.3.3, CVE-2026-…
haroldboom Jun 15, 2026
d9bddbc
langchain-dkg: bump pin to v0.1.5 (verified against DKG v10 node rc.17)
haroldboom Jun 19, 2026
5bcec81
langchain-dkg: pin v0.1.6 — verified compatible with DKG v10 node rc.19
haroldboom Jun 22, 2026
9ab2359
langchain-dkg: trim security.notes under 2000-char schema limit
haroldboom Jun 22, 2026
9160840
langchain-dkg: pin v0.1.7 — fix SHARE-path quad shape
haroldboom Jun 22, 2026
141129c
langchain-dkg: pin v0.1.8 — typed CuratorAckError mapping
haroldboom Jun 22, 2026
6f35aba
Update demo link to the narrated walkthrough video
haroldboom Jul 3, 2026
4d3d5ce
Pin langchain-dkg to post-review commit 7019622 and document the hard…
haroldboom Jul 4, 2026
381deb9
Point install at langchain-dkg 0.1.9 (published to PyPI)
haroldboom Jul 4, 2026
88df0b6
Condense security notes to the schema's 2000-char limit
haroldboom Jul 4, 2026
ff9af5f
Declare current write-authority endpoints
haroldboom Jul 4, 2026
121b13d
langchain-dkg: note node 10.0.9 re-verification
haroldboom Jul 27, 2026
224cfb7
langchain-dkg: fix schema validation — legacy publish helper is a not…
haroldboom Jul 27, 2026
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
63 changes: 63 additions & 0 deletions integrations/langchain-dkg.json
Original file line number Diff line number Diff line change
@@ -0,0 +1,63 @@
{
"$schema": "../schema/integration.schema.json",
"schemaVersion": "0.1.0",
"slug": "langchain-dkg",
"name": "LangChain DKG Adapter",
"description": "LangChain memory and retriever components backed by OriginTrail DKG v10. Gives LangChain agents durable, verifiable, queryable memory — conversation history is stored as Knowledge Assets in Working Memory and retrieved via tri-modal search (vector + SPARQL + text).",
"category": [
"working-memory",
"retrieval",
"python",
"langchain",
"rag"
],
"maintainer": {
"github": "@haroldboom",
"contact": "spangers11@gmail.com"
},
"repo": "https://github.com/haroldboom/dkg-langchain",
"commit": "70196226d49cc4c253236817acd10f3bce574193",
"license": "MIT",
"requiresDkgNodeVersion": ">=10.0.0",
"memoryLayers": [
"WM",
"SWM"
],
"v10PrimitivesUsed": [
"UAL",
"KnowledgeAsset",
"ContextGraph",
"Assertion"
],
"publicInterfacesUsed": [
"http-api"
],
"targetAgents": [
"AutoResearch",
"generic-HTTP",
"generic-CLI"
],
"install": {
"kind": "manual",
"docsUrl": "https://github.com/haroldboom/dkg-langchain#readme",
"oneLiner": "pip install langchain-dkg==0.1.9 — then set DKG_API_URL and DKG_TOKEN and import DKGChatMessageHistory, DKGMemory, or DKGRetriever."
},
"security": {
"networkEgress": [],
"writeAuthority": [
"POST /api/memory/turn",
"POST /api/context-graph/create",
"POST /api/knowledge-assets (create named Knowledge Asset)",
"POST /api/knowledge-assets/{name}/swm/share-async (SHARE, Curator authority; legacy fallback POST /api/assertion/{name}/promote-async)",
"POST /api/assertion/{name}/write (WM quads, legacy route)",
"POST /api/shared-memory/write (SWM write, Curator authority)"
],
"credentialsHandled": [],
"notes": "Communicates only with the local DKG node (default localhost:9200) — no external network egress. Credentials come from the DKG_TOKEN env var or are passed explicitly to DKGClient; never hardcoded. POST /api/memory/turn stores conversation turns as Knowledge Assets; as of v0.1.9 turns default to private Working Memory (layer=\"wm\") — earlier versions deferred to the node default (swm, gossiped). SHARE promotion is always explicit and agent-initiated (async knowledge-assets share job on current nodes, legacy route fallback); no Verified Memory (PUBLISH) operations are performed. No postinstall scripts. Published to PyPI via pypa/gh-action-pypi-publish with attestations:true under Trusted Publishing (PEP-740 attestation per wheel); the publish workflow is gated on the unit-test suite and a tag/version check. 80/80 unit tests pass; CI runs ruff, mypy, and the suite on Python 3.10-3.13 for every push and PR. Releases are verification-tracked against the DKG v10 node: v0.1.4 raised the langchain-core floor for CVE-2026-44843; v0.1.5-v0.1.8 tracked node rc.17→rc.19 API drift (quad shapes, RFC-49 curator-ack codes mapped to typed errors). v0.1.9 (2026-07-04): session-scoped history retrieval, explicit memoryLayers on every search, knowledge-assets promote surface with legacy fallback, typed errors that never retain raw responses or tokens, pooled HTTP client. README documents: /api/query cannot see wm-layer quads (RFC-29, fail-closed); memory/search covers private retrieval. Re-verified 2026-07-28 on node 10.0.9: 80/80 unit tests green against the published wheel in a fresh venv; memory/turn, memory/search, query, and the knowledge-assets promote surface validated live; 10.0.7's rootless Knowledge Asset change and its removal of the legacy /api/assertion/* aliases are both transparent to v0.1.9. DKGClient also exposes a legacy publish helper targeting POST /api/shared-memory/publish — never invoked by the LangChain components,; node 10.0.7+ removed the route."
},
"trustTier": "community",
"designBrief": "https://github.com/haroldboom/dkg-langchain/blob/master/DESIGN_BRIEF.md",
"demo": "https://youtu.be/7VEjDqflEpc",
"promotionPath": "Every conversation turn stored via DKGChatMessageHistory returns a turnUri (UAL). The agent can call promote_to_shared(turn_uri) to SHARE the Knowledge Asset from Working Memory to Shared Working Memory via POST /api/assertion/{name}/promote — promotion is always explicit. From Shared Working Memory, a future PUBLISH call (Round 2 scope) moves the Context Graph to Verified Memory on-chain, preserving the full UAL provenance chain from original turn through to the paranet record. DKGRetriever queries the same WM/SWM graph via SPARQL SELECT, so promoted artifacts are immediately available as RAG context for downstream agents.",
"fitNotes": "Directly targets the LLM-Wiki / autoresearch direction: LangChain agents are the dominant production consumer of external memory systems, and this adapter maps Karpathy's memory taxonomy (in-context, external, team, long-term) onto the DKG v10 layer model (WM, SWM, VM). DKGRetriever is a drop-in BaseRetriever for any LangChain RAG pipeline, giving any autoresearch-style agent a verifiable, attributable upstream knowledge source."
}