Positioning

Link is not a notes app. It is local memory for agents.

The wiki is the inspectable storage layer. The product is shared, source-backed memory that local agents can query without starting every session from zero.

The Architecture Is the Product

Every other agent-memory system — Mem0/OpenMemory, Zep/Graphiti, Letta — stores memory as embeddings in a vector database or as an LLM-extracted graph. You cannot read your own memory, and a model sits inside the write path. Link made four architectural commitments that cannot be bolted onto those designs:

Memory you can read

Every memory is a plain Markdown file. Open it, grep it, git-diff it, back it up. If Link disappeared tomorrow, your memory is still yours.

Review-gated writes

No durable memory is created without your approval. Agents propose; you decide. Automatic session hooks capture proposals — never facts.

No LLM in the memory layer

Ingestion and recall are deterministic. An extraction model can hallucinate facts into a knowledge graph; Link's memory layer cannot, because there is no model in the write path.

Provably local

CI blocks outbound network code in the runtime. The optional semantic models load offline-only after one explicit setup. "Local-first" here is enforced, not promised.

Recall quality is measured, not asserted: a 1,176-case reproducible benchmark plus a third-party LoCoMo retrieval track, with published miss rates and a CI gate against regressions. See benchmarks/RESULTS.md.

Best Fit

Use Link when you want one local memory layer that multiple agents can share. It is strongest for developer and power-user workflows where privacy, provenance, and inspectable files matter.

Personal agent memory

Preferences, decisions, project conventions, and active context that should survive between Codex, Kiro, Claude, Cursor, Antigravity, and other local agents.

Source-backed knowledge

Raw notes, transcripts, release notes, articles, and project files that should become cited Markdown pages instead of hidden context.

Inspectable retrieval

Smart query packets with reasons, sources, graph links, budgets, and follow-up actions instead of full-folder dumps.

Local ownership

Plain Markdown and JSON indexes on your machine. No hosted backend, telemetry, or required cloud account.

The Loop Link Changes

Link is useful when it changes the start and end of real agent sessions.

MomentWithout LinkWith Link
Starting workYou retype project state and preferences.The agent calls recall for a compact local brief or task packet.
Switching agentsEach tool has its own memory gap.Codex, Claude, Cursor, Kiro, VS Code, and Antigravity can point at the same wiki.
Saving a decisionThe note disappears into chat history.An explicit remember becomes a reviewable Markdown memory.
Trusting memoryYou cannot see why the agent knows something.You can inspect sources, graph links, review state, and lifecycle history.

How To Choose

If you need...Use Link when...Use another category when...
Human-first notesYou want agents to query and maintain the notes as memory.You mainly want a polished human writing app, mobile sync, plugins, and manual note-taking.
Hosted app memoryYou want local files, no cloud account, and MCP access from many desktop agents.You are building a hosted product and need managed APIs, user accounts, dashboards, and cloud-scale operations.
Stateful agent runtimeYou already use agents and need shared memory outside any one runtime.You want an entire agent platform with its own execution loop, hosted state, and deployment model.
Temporal business graphYou need personal/project memory with explicit review and source-backed Markdown.You need automatic entity extraction, temporal fact invalidation, multi-user business data, and enterprise integrations.
Plain file searchYou want search plus memory lifecycle, graph context, MCP tools, validation, and provenance.You only need grep, ripgrep, or a folder of notes with no agent-memory workflow.

Compared With Alternatives

Link is intentionally narrow: local, inspectable memory for agents. That makes the tradeoffs clearer.

AlternativeWhere Link winsWhere they win
ObsidianAgent-ready memory lifecycle, MCP/CLI retrieval, validation, source-backed query packets.Human-first note editing, mobile sync, plugins, and a mature visual graph.
Mem0 / OpenMemoryReadable Markdown storage instead of a vector database, review-gated writes instead of silent extraction, no LLM in the memory layer, hooks-guaranteed session loop, published benchmark with miss rates.Managed cloud APIs, hosted dashboards, larger community, and team/app integration primitives.
LettaWorks beside existing agents instead of becoming the agent runtime; simpler local file model.Full stateful-agent runtime, managed execution loop, and hosted deployment options.
Zep / GraphitiDeterministic memory with no LLM extraction cost or hallucination risk, reviewable Markdown, millisecond local recall, review/expiry lifecycle for time-sensitive memory.Bi-temporal knowledge graphs, automatic entity extraction, multi-user business data, and enterprise graph use cases.
Built-in agent memoryOne memory layer shared across Codex, Claude, Cursor, Kiro, VS Code, Antigravity, and local agents.Zero setup inside one vendor's product.
Plain RAG or vector searchReviewable memory, source files, graph context, lifecycle controls, bounded agent packets — plus optional local hybrid semantic recall with measured quality and honest confidence labels.Cloud-scale embedding models, connectors, and application-specific pipelines over huge corpora.

Trust Model

Link deliberately avoids hidden memory. A durable memory is a Markdown page with scope, status, review state, source/provenance, graph links, and a local audit trail. Agents can recall it, but humans can inspect, edit, archive, restore, or forget it.

raw/file.md -> wiki/sources/file.md -> linked concepts
remember "preference" -> wiki/memories/preference.md
recall -> recall_capsule + why_selected + follow_up actions

Boundaries

  • Link is local-first personal software, not a hosted SaaS backend.
  • The local web viewer has no authentication and must stay on loopback unless you add your own auth layer.
  • Ingest quality depends on the agent that reads and writes pages; Link provides schema, validation, safety gates, and review workflows.
  • Generated memory is not automatically trusted. Use proposal, review, explain, archive, and forget workflows.