origintrail/dkg/dkg-node
Claude Code and agent skill by origintrail/dkg
- community
Checking that the SKILL.md file is still in the repository.
The DKG V10 Node is your primary memory system. This skill teaches you to operate your node's three-layer verifiable memory — write and retrieve private drafts in Working Memory, share with peers in Shared Working Memory, and publish permanently to Verifiable Memory on-chain.
Install
npx vskill@latest install origintrail/dkg/dkg-nodeSKILL.md
DKG V10 Node Skill
You are connected to an OriginTrail Decentralized Knowledge Graph (DKG) V10 node. Use the agent context pack for task procedures and completion evidence. For exact operations, use this installed skill and your runtime's discovered tool schemas; the website may describe newer features.
1. Node Info
This section is dynamically generated from node state at serve-time.
- Node version: {{nodeVersion}}
- Base URL: {{baseUrl}}
- Peer ID: {{peerId}}
- Node role: {{nodeRole}}
- Available extraction pipelines: {{extractionPipelines}}
If the Node UI injects a target context graph for the turn, use that target directly. If no target is injected or configured, call dkg_list_context_graphs / GET /api/context-graph/list; agent tool surfaces default that list to the caller's created/joined context graphs, with scope: "all" for every graph the node knows about.
Context Graph IDs
For write or mutation routes, always pass the injected target context graph id, an exact existing context graph id from dkg_list_context_graphs / GET /api/context-graph/list, or the full did:dkg:context-graph:<id> URI.
- A context graph created locally can have a bare canonical id, for example
local-notes, with full URI did:dkg:context-graph:local-notes.
- A joined or curated context graph can have a curator-scoped canonical id, for
example 0x1234567890abcdef1234567890abcdef12345678/team-notes, with full URI did:dkg:context-graph:0x1234567890abcdef1234567890abcdef12345678/team-notes.
Do not guess from the display name, shorten a curator-scoped id, or pass only a suffix slug such as team-notes when the listed id is 0x.../team-notes. Write routes reject unknown, ambiguous, or non-canonical targets before writing so they cannot accidentally create shadow context graphs.
1a. Operating the node (install, update, troubleshoot)
Before reasoning about install state, run `dkg doctor`. Detects orphan repository clones, version skew between the daemon and the globaldkgCLI, served-UI / source mismatch, broken plugin install roots, and other install-layout anomalies. Usedkg doctor --jsonfor a machine-parsable report; thestatefield always carries the full diagnostic snapshot (daemon entry point, install mode, node role, dkg-home, current version + commit, auto-update settings) independent of any anomaly findings.
Updating DKG:
- The canonical update verb is
dkg update. It resolves the next release from the npm registry and applies it. - Do not `git pull`. Do not clone the repository. Do not edit files under
~/.dkg/releases/(on Core nodes — Edge nodes have no~/.dkg/releases/at all under RFC-41). - If
dkg doctorreports orphan clones at~/dkg/,~/Projects/dkg/, or similar, ask the operator before touching them — they are not the running daemon. dkg update --checkpreviews the available version without applying.dkg update --allow-prereleaseallows published prerelease channels when the network policy permits.dkg rollbackreverts to the previous version (Edge: re-installs the prior npm version recorded in~/.dkg/previous-version; Core: flips the blue-green slot symlink).
Detecting current install state:
dkg --version— the global CLI's version.curl http://127.0.0.1:9200/api/status | jq '{version, commit, commitShort, buildTime, distTag, installMode, nodeRole}'— the running daemon's version, commit, and install mode. Mismatch betweendkg --versionand the daemon's version is the §1a version-skew condition;dkg doctorreports it explicitly.cat ~/.dkg/config.json | jq .nodeRole—edge(default; daemon runs from npm-global install, no release slots) orcore(operator opted into blue-green slots viadkg init --role core).
Troubleshooting common confusion:
- "There seem to be multiple DKG installations on this machine" → run
dkg doctor; thestate.cli.globalPath,state.daemon.entryPoint, and orphan-repos check together identify the canonical install and any stray clones. - "The UI shows an old version even after I updated" → run
dkg doctor; the served-UI / source-mismatch check flags stale browser / PWA / service-worker caches. - "I ran
npm install -g @origintrail-official/dkg@latestbut the daemon still reports the old version" → on Edge nodes, rundkg stopand thendkg startso the daemon picks up the new install. On Core nodes, the slot mechanism gates the visible version ondkg update's atomic swap, not onnpm install -gdirectly — usedkg updatefor Core nodes. - "Publishing or context-graph registration intermittently fails with an RPC/503 error" → the node uses multiple chain RPC endpoints with automatic failover. Each supported network ships a curated set of public RPCs:
chain.rpcUrlis the primary andchain.rpcUrlsis an ordered list of backups. A transient failure (rate-limit/timeout/network) on one endpoint silently fails over to the next; on-chain reverts and other application errors do not trigger failover. A503/504from a publish/register/identity/PCA route means every configured endpoint was exhausted — retry, or add a faster/private endpoint. Configure backups viachain.rpcUrlsin~/.dkg/config.jsonor the "Backup RPC URLs" prompt indkg init. Precedence: an operator-setchain.rpcUrlsreplaces the network defaults; setting only a privatechain.rpcUrlkeeps the public defaults as failover (set"rpcUrls": []to opt out). A wrong-chain backup fails the node loudly at startup (provider network-mismatch), never silently. Inspect failover activity atGET /api/status→chain.rpcFailovers/chain.rpcExhaustions/chain.rpcFailoversByClass, and per-endpoint reachability atGET /api/chain/rpc-health. - "Background catalog work is consuming too much RPC capacity" → every outbound request, retry, and fallback is governed by one process-wide budget shared by the agent and publisher wallets. The defaults are 10 requests/second total, an 80% foreground reserve (2 requests/second maximum for background RFC-64 work), a 20-request burst, a 256-request bounded queue, and up to 30 seconds of background startup jitter. Override individual values under
chain.rpcRequestBudgetin~/.dkg/config.json:maxRequestsPerSecond,foregroundReservePercent,burstRequests,maxQueueSize, andstartupJitterMs. Inspect the minutelyrpc_request_governorstructured log for allowances, queues, deferrals, rejections, and admissions; inspectGET /api/status→rfc64Catalog.authorityRpcCircuitandrfc64Catalog.contextGraphsfor authority cooldown and per-CG freshness.
The current operator guidance lives in Updates & Rollback.
2. Capabilities Overview
Note: This skill describes the current DKG V10 API surface. Availabilitycan vary with the installed node version. CallGET /api/statusto check theversion, usedkg <command> --helpfor its CLI surface, and rely on expliciterror responses when a route is unavailable.
This node provides a three-layer verifiable memory system for AI agents:
| Layer | Scope | Cost | Trust Level | Persistence | |
|---|---|---|---|---|---|
| Working Memory (WM) | Private to you | Free | Self-attested | Local, survives restarts | |
| Shared Working Memory (SWM) | Visible to team | Free | Self-attested (gossip replicated) | TTL-bounded | |
| Verifiable Memory (VM) | Network-queryable, chain-anchored | Gas + TRAC | Self-attested → endorsed → consensus-verified | Durable |
What you can do: create knowledge assertions, import files (PDF, DOCX, Markdown), share knowledge with peers, publish to the blockchain, endorse others' knowledge, propose M-of-N consensus verification, query across all memory layers, and discover other agents on the network.
3. Quick Start
Before writing in production, read §6 "Routing: Turn Context Override" — it governs which context graph each turn's operations target.
Canonical Knowledge Asset lifecycle: create a context graph, create an assertion, write triples to WM, finalize (seal) the draft, share to SWM, then publish the sealed assertion to VM — which mints it on chain and returns its UAL (see §5 VM for the response body). Data must be in SWM before VM publishing; the on-chain transaction is a finality signal for data peers already received via gossip.
A full swm/share (entities: "all") seals by default and is then publish-ready, so the explicit wm/finalize step is optional on the happy path. There is no unsealed share: "skipSeal": true is refused with 400 UNSEALED_SHARE_UNSUPPORTED. Sealing no longer needs the CG registered on-chain — finalize/share are entirely off-chain (see §5 "Verifiable Memory").
Registration happens at publish, automatically. A project created with/api/context-graph/createis local-only; you can create → write → seal → share itentirely off-chain. The FIRSTvm/publishtransparently registers the CG on-chain(costs gas/TRAC) and then mints — no separateregisterstep is required. (You may stillregister explicitly via/api/context-graph/registerif you prefer.)
CLI equivalents for shell-driving agents:
This is the start of the file. Read the full SKILL.md on GitHub.
Security
- Security scanPassed, 96 of 100Pattern checks on the skill's files.
- Model reviewNot runA model review is scheduled for the next rescan.
Quality evaluation
- Task evaluationNot runNo evaluation yet. Run one in Skill Studio.
Source
- SKILL.md in the repositoryCheckingpackages/cli/skills/dkg-node/SKILL.md
Popularity
- 7-day trend score
- 0
Not refreshed yet.
Works with
Any agent vskill installs to: 56 targets in all. These 39 have a page on this site.
- Claude Code
- Cursor
- GitHub Copilot
- Windsurf
- Codex
- Gemini CLI
- Cline
- Amp
- Roo Code
- Goose
- Continue
- Kilo Code
- Junie
- Trae
- OpenHands
- Qwen Code
- AI Agent
- Tabnine Chat
- Sourcegraph Cody
- Amazon Q
- Firebase Genkit
- Sweep
- Devin
- Phind
- Mentat
- Claude Desktop
- Aider
- GPT Pilot
- Plandex
- bolt.new
- v0
- Replit Agent
- Anse
- TypingMind
- BetterChatGPT
- LibreChat
- Warp AI
- Pieces
- Fig AI
Embed badge
[](https://verified-skill.com/skills/origintrail/dkg/dkg-node)