By latebit-io
Persist project-level notes across Claude Code sessions with a local, versioned Markdown memory store — save, recall, append journal entries, and query a graph index via automatic MCP tool setup.
A protocol for agents and humans, optimized for information
Demarkus implements the Mark Protocol — versioned markdown served over QUIC. No rendering pipeline, no tracking, no central authority. Read and write with capability tokens. Every change is permanent.
# macOS / Linux — server + client
curl -fsSL https://raw.githubusercontent.com/latebit-io/demarkus/main/install.sh | bash
# Client only (CLI, TUI, MCP)
curl -fsSL https://raw.githubusercontent.com/latebit-io/demarkus/main/install.sh | bash -s -- --client-only
See full install docs for platform-specific guides and other options.

# Fetch a document from the live soul server
demarkus mark://soul.demarkus.io/index.md
# Browse interactively with the TUI
demarkus-tui mark://soul.demarkus.io/index.md
# Run your own local server
demarkus-server -root ./docs/site
For more examples (tokens, publishing, editing), see full usage guide.
| Binary | Purpose |
|---|---|
demarkus-server | QUIC server with versioned document store, capability-based auth |
demarkus-token | Generate and manage write tokens |
demarkus | CLI tool for all protocol operations (fetch, publish, append, graph, etc.) |
demarkus-tui | Terminal browser: markdown rendering, link navigation, persistent graph |
demarkus-mcp | MCP server for LLM agents (protocol verbs + graph crawling, backlinks, indexing) |
Transport: QUIC (UDP 6309) | Scheme: mark:// | Content: Markdown + YAML frontmatter
Request:
FETCH /hello.md
Response:
---
status: ok
version: 3
modified: 2026-01-15T10:30:00Z
---
# Hello World
Verbs: FETCH · LIST · VERSIONS · PUBLISH · APPEND · ARCHIVE
Agent Memory — Run a server as persistent memory across agent sessions. The Demarkus project itself uses this pattern at mark://soul.demarkus.io for architecture notes, debugging lessons, and journal entries.
OpenClaw — Install the demarkus skill from ClawHub to give your OpenClaw agent persistent memory instantly.
Personal Knowledge Base — Local server, versioned documents, TUI browser. Everything from first write.
Public Documentation — Deploy on a VPS, share links, gate writes with tokens.
Demarkus Hubs — Link to content on other servers, building a federated directory of knowledge. Hubs can link to hubs.
git clone https://github.com/latebit-io/demarkus.git
cd demarkus
make all # or: make server / make client
Requires Go 1.22+. Binaries land in server/bin/ and client/bin/.
"The web we want, not the web we got."
Own this plugin?
Verify ownership to unlock analytics, metadata editing, and a verified badge. GitHub access is read-only (username + org membership).
Sign in to claimOwn this plugin?
Verify ownership to unlock analytics, metadata editing, and a verified badge. GitHub access is read-only (username + org membership).
Sign in to claimBased on adoption, maintenance, documentation, and repository signals. Not a security audit or endorsement.
npx claudepluginhub latebit-io/demarkus --plugin demarkus-memoryA full team of world-class Go staff engineers — architect, reviewer, debugger, tester, refactorer — with idiomatic Go rules, slash commands, and auto-quality hooks
Per-project persistent memory for Claude Code, stored in AGD format with selective retrieval (TOC + targeted block fetch). 6-15x fewer tokens than loading the whole memory file.
Persistent semantic memory for Claude Code — auto-injects relevant context at session start, captures git commits, test results, and research via hooks, and provides 30+ MCP tools for memory management.
Give your AI a memory — mine projects and conversations into a searchable palace. 33 MCP tools, auto-save hooks, and guided setup.
Pure filesystem-based memory system for Claude Code with custom ontology support
The bridge between Claude's working memory and Basic Memory's durable knowledge graph — session briefings, pre-compaction checkpoints, and capture reflexes
Persistent memory system for Claude Code - seamlessly preserve context across sessions