# Wenlan > Wenlan is an LLM wiki for AI work, built by agents and grounded in its sources. Hybrid retrieval publishes CE-reranker snapshots for LME_Oracle at 93.6% Recall@5 / 0.857 MRR / 0.883 NDCG@10 (500 Q) and LME_S at 87.7% Recall@5 / 0.815 MRR / 0.822 NDCG@10 (deep, N=90). Retrieval uses ~168 tokens per recall query versus full replay at 4,505 tokens per query. Real git versioning for readable pages, sessions, handoffs, and status artifacts under ~/.wenlan/.git/, mandatory provenance on source-backed wiki pages, Claude Code and Codex plugins, local MCP for Cursor and other clients, and Streamable HTTP MCP for ChatGPT, Claude.ai, and Muse. Current prebuilt runtime artifacts cover macOS Apple Silicon, Linux (x86_64, aarch64; glibc), and Windows (x86_64); macOS Intel is source/dev-only until a public release workflow publishes that artifact again. Apache-2.0. Source at github.com/wenlan-app/wenlan. ## Core - [Wenlan homepage](https://wenlan.app/): What Wenlan is, who it is for, and how source-backed pages, handoffs, and retrieval fit together. - [About](https://wenlan.app/about): Project background and the person behind Wenlan. - [Get started](https://wenlan.app/docs/get-started): Choose the Claude Code, Codex, ChatGPT, Claude.ai, or local MCP path, then verify the first capture and recall round trip. - [Daily workflow](https://wenlan.app/docs/daily-workflow): Capture, handoff, distill. The session loop that makes AI work compound across days. - [Capture quality](https://wenlan.app/docs/capture-quality): What to capture, what to skip, and how corrections, review, distill, and forget fit the memory loop. - [Review and trust](https://wenlan.app/docs/review-and-trust): How pending captures, revisions, contradictions, quality-gate rejections, confirm, and forget fit before memory becomes trusted context. - [Core concepts](https://wenlan.app/docs/core-concepts): Memories, pages, entities, sessions, sources. The vocabulary the daemon enforces. - [Memory types](https://wenlan.app/docs/memory-types): Wenlan's six canonical memory_type values, stability tiers, aliases, and how agents should choose between identity, preference, decision, lesson, gotcha, and fact. - [Glossary](https://wenlan.app/docs/glossary): Short definitions for Wenlan terms such as memory, handoff, page, space, daemon, MCP, local index, provenance, supersession, and retrieval metrics. - [Architecture](https://wenlan.app/docs/architecture): Daemon-first system map: wenlan-server, wenlan-core, wenlan CLI, wenlan-mcp, wenlan-types, and the Claude Code and Codex plugins. - [Product Matrix](https://wenlan.app/docs/product-matrix): What each Wenlan repository, plugin, local or web MCP client surface, platform artifact, and release boundary owns. ## Concepts - [AI work memory](https://wenlan.app/learn/ai-work-memory): What changes when AI sessions can carry context across tools and weeks. - [MCP memory server](https://wenlan.app/learn/mcp-memory-server): How Wenlan exposes memory through the Model Context Protocol so any compatible AI client can read and write the same store. - [Local-first AI work memory](https://wenlan.app/learn/local-first-ai-memory): Data ownership, privacy, control. Why the daemon writes to ~/.wenlan/ instead of the cloud. - [LLM wiki for AI work](https://wenlan.app/learn/distilled-wiki-pages-ai-memory): Why Wenlan composes atomic captures into source-backed pages with provenance and refreshable revision state. - [Claude Code memory](https://wenlan.app/learn/claude-code-memory): How Wenlan works inside Claude Code sessions and how /capture and /handoff fit the work loop. - [AI agent handoff loop](https://wenlan.app/learn/ai-agent-handoff-loop): Session-end discipline that prevents context loss between AI sessions. - [How to give Codex persistent memory](https://wenlan.app/learn/how-to-give-codex-persistent-memory): MCP-only setup for Codex with Wenlan. - [How to add MCP memory to Cursor](https://wenlan.app/learn/how-to-add-mcp-memory-to-cursor): Cursor MCP setup and verification loop. - [Claude Desktop MCP memory setup](https://wenlan.app/learn/claude-desktop-mcp-memory-setup): Connect Claude Desktop to Wenlan through MCP. - [AI agent memory: local vs cloud](https://wenlan.app/learn/ai-agent-memory-local-vs-cloud): Choose the right trust boundary for AI memory. - [Why AI coding agents lose context](https://wenlan.app/learn/ai-coding-agent-loses-context): The session-boundary problem Wenlan solves. ## Comparisons - [AI work memory vs knowledge base](https://wenlan.app/learn/ai-work-memory-vs-knowledge-base): Documents and notes vs session memory, handoffs, retrieval, and agent reuse. - [Wenlan vs Basic Memory](https://wenlan.app/learn/wenlan-vs-basic-memory): Markdown knowledge base vs AI work-session memory layer. Side-by-side dimensions plus a migration note. - [Wenlan vs claude-mem](https://wenlan.app/learn/wenlan-vs-claude-mem): Observer-style Claude Code memory vs MCP-first cross-tool memory. - [Wenlan vs Superlocal Memory](https://wenlan.app/learn/wenlan-vs-superlocal-memory): Honest benchmark framing, a 10-second inspectability test, and a two-week parallel-trial protocol for evaluating both. - [Wenlan vs mcp-memory-service](https://wenlan.app/learn/wenlan-vs-mcp-memory-service): Local AI work memory vs self-hosted agent-pipeline memory backend. - [Wenlan vs ChatGPT memory](https://wenlan.app/learn/wenlan-vs-chatgpt-memory): Built-in assistant personalization vs local cross-tool work memory. - [Wenlan vs Obsidian for AI memory](https://wenlan.app/learn/wenlan-vs-obsidian-ai-memory): Obsidian vault workflows, obsidian-mind, claude-obsidian, Obsidian MCP bridges, and Wenlan's agent-facing work-memory loop. - [Wenlan vs Notion AI](https://wenlan.app/learn/wenlan-vs-notion-ai): Team workspace AI vs local AI work memory. - [Wenlan vs Mem0](https://wenlan.app/learn/wenlan-vs-mem0): App memory infrastructure vs personal local AI work memory. ## Workflows and Trust - [Shared memory between Cursor and Claude Code](https://wenlan.app/learn/cursor-claude-code-shared-memory): One local daemon across two coding tools. - [Shared memory between Codex and Claude Code](https://wenlan.app/learn/codex-claude-code-shared-memory): Carry implementation context across Codex and Claude Code. - [Source-backed wiki pages for AI work](https://wenlan.app/learn/source-backed-wiki-pages-ai-work): Readable pages with source memory IDs. - [Review before trust in AI memory](https://wenlan.app/learn/review-before-trust-ai-memory): Keep uncertain, stale, or contradictory context visible. ## Reference - [Commands](https://wenlan.app/docs/commands): Wenlan CLI subcommands and the MCP tools the daemon exposes. - [Claude Code plugin](https://wenlan.app/docs/claude-code-plugin): The richest Wenlan workflow inside Claude Code: one /wenlan entry (setup, distill, lint, curate and more as words after it), /brief, /capture, /recall, /handoff, the SessionStart hook, and local memory mode. - [CLI and service management](https://wenlan.app/docs/cli-and-service): Setup, daemon status, doctor, background on/off, terminal recall/search/capture/memories, and MCP client wiring. - [Updates and uninstall](https://wenlan.app/docs/updates-and-uninstall): Refresh the local runtime, verify with doctor, restart MCP clients, and remove the per-user service safely. - [Upgrade notes](https://wenlan.app/docs/upgrade-notes): What to rerun, verify, and restart when Wenlan releases change the plugin, npm setup, MCP connector, daemon service, spaces, or platform support. - [Packages and registries](https://wenlan.app/docs/packages-and-registries): Which package names mean what across the Claude Code plugin, npm setup, wenlan-mcp, wenlan-types, crates.io, and GitHub Releases. - [Platform support](https://wenlan.app/docs/platforms): macOS, Linux, and Windows support, service managers, data paths, model backend notes, and Docker/VM caveats. - [HTTP API](https://wenlan.app/docs/http-api): Local daemon surfaces that the plugin, CLI, MCP connector, and local tools call under the hood. - [API examples](https://wenlan.app/docs/api-examples): Local curl examples for daemon health, setup status, memory store/search, chat context, review, confirm, and page search. - [Typed clients](https://wenlan.app/docs/typed-clients): When Rust local tools should use wenlan-types for shared daemon request and response shapes instead of untyped JSON. - [Spaces](https://wenlan.app/docs/spaces): Separate work, personal, client, and project memory buckets, including WENLAN_SPACE, spaces.toml mappings, resolver priority, and doctor output. - [Knowledge graph](https://wenlan.app/docs/knowledge-graph): How people, projects, tools, observations, and relations become graph context for retrieval without replacing source-backed memory. - [Source-backed pages](https://wenlan.app/docs/source-backed-pages): How atomic captures become readable Markdown pages with source memory IDs, revision state, and refresh paths. - [Import and portability](https://wenlan.app/docs/import-and-portability): Keep Wenlan's projected Markdown artifacts readable outside the daemon and migrate selected context deliberately. - [Local git history](https://wenlan.app/docs/local-git-history): Inspect the real git history Wenlan keeps under ~/.wenlan/.git for pages, sessions, handoffs, and status artifacts. - [Models and keys](https://wenlan.app/docs/models-and-keys): No-model local memory mode, agent-side fallback phases, optional on-device models, optional Anthropic keys, and the privacy/capability tradeoffs. - [Advanced retrieval status](https://wenlan.app/docs/advanced-retrieval): Stable hybrid retrieval plus opt-in main-branch retrieval experiments and their release-status caveats. - [Experimental flags](https://wenlan.app/docs/experimental-flags): How to read opt-in main-branch flags for retrieval, context compression, memory maintenance, entity resolution, page guards, and reflection without treating them as released defaults. - [Data and privacy](https://wenlan.app/docs/data-and-privacy): What lives where on disk, what leaves the machine, what does not. - [Backup and migration](https://wenlan.app/docs/backup-and-migration): Back up readable ~/.wenlan artifacts and daemon data together, then verify restored installs with doctor and recall. - [Configuration](https://wenlan.app/docs/configuration): Spaces, MCP client wiring, daemon bind address, local paths, models, and keys without hand-editing the database. - [Environment variables](https://wenlan.app/docs/environment-variables): Runtime, development, Windows repair, and eval environment variables such as WENLAN_SPACE, WENLAN_HOST, WENLAN_BIND_ADDR, WENLAN_DATA_DIR, ORT_DYLIB_PATH, and EVAL_BASELINES_DIR. - [MCP clients](https://wenlan.app/docs/mcp-clients): Local setup for Claude Code, Codex, Cursor, Claude Desktop, Gemini CLI, VS Code, and Muse Code, plus authenticated Streamable HTTP MCP Web access for ChatGPT, Claude.ai, and Muse through https://relay.wenlan.app/mcp. Choose the whole library or one Space in Wenlan, approve the pairing request, keep the device online to connect, and revoke access when it is no longer needed. - [Agent profiles](https://wenlan.app/docs/agent-profiles): How Wenlan attributes captures to Claude Code, Codex, Cursor, local scripts, and other clients through source_agent, trust, and enabled state. - [Troubleshooting](https://wenlan.app/docs/troubleshooting): Common failure modes and the daemon repair paths. - [Diagnostics and issue reports](https://wenlan.app/docs/diagnostics-and-issue-reports): Commands to run before asking for help, how to separate daemon and MCP failures, and what to redact. - [FAQ](https://wenlan.app/docs/faq): Short answers about what Wenlan is, which install path to use, desktop app status, local data, Markdown artifacts, uninstall behavior, and verification. - [Security and reporting](https://wenlan.app/docs/security): Private vulnerability reporting, redacted bug reports, local security boundaries, and security.txt. - [Evaluation](https://wenlan.app/docs/evaluation): Retrieval benchmark scope, current LME_Oracle and LME_S snapshot, and rerun methodology. - [Desktop app status](https://wenlan.app/docs/desktop-app): The optional source-cited wiki GUI, its AGPL-3.0-only crate boundary in the unified Wenlan repository, a getting-started checklist for new libraries, one-click connection for local tools such as Muse Code, and its authenticated Web access path for ChatGPT, Claude.ai, and Muse through https://relay.wenlan.app/mcp, with a whole-library or one-Space choice, approved pairing, and access revocation. - [Changelog](https://wenlan.app/docs/changelog): Stable release notes and how to read unreleased main-branch work. - [Releases and versioning](https://wenlan.app/docs/releases-and-versioning): How release-please, tags, package publishing, npm packages, crates, binaries, and pre-1.0 version bumps work. - [Roadmap and status](https://wenlan.app/docs/roadmap): Released, on-main, and planned work without confusing roadmap themes for shipped guarantees. - [Project scope](https://wenlan.app/docs/project-scope): What Wenlan is for and what it deliberately avoids. - [Build from source](https://wenlan.app/docs/build-from-source): Source build, workspace crates, platform notes, and contributor checks. - [Testing and CI](https://wenlan.app/docs/testing-and-ci): Local checks, git hooks, PR CI, coverage policy, and manual eval boundaries for contributors. - [Development conventions](https://wenlan.app/docs/development-conventions): Crate boundaries, SQL safety, async state snapshots, typed MCP wrappers, dev/prod isolation, and worktree gotchas for contributors. - [Contributing](https://wenlan.app/docs/contributing): Development setup, useful issues, PR process, architecture rules, and license notes. ## Optional - [llms-full.txt](https://wenlan.app/llms-full.txt): Long-form companion to this file. Contains the full body of every Learn article and Docs page so an LLM can ingest the full corpus in one fetch. - [GitHub repository](https://github.com/wenlan-app/wenlan): Source, releases, issues. Apache-2.0. - [Wenlan desktop app source](https://github.com/wenlan-app/wenlan/tree/v0.19.3/app): Tauri 2 + React 19 source-cited wiki GUI in the unified Wenlan release, with a notarized macOS Apple Silicon DMG and a Windows x64 desktop build. AGPL-3.0-only. Talks to the same local daemon over HTTP at localhost:7878 and provides authenticated Web access for ChatGPT, Claude.ai, and Muse through https://relay.wenlan.app/mcp. Choose a Space, approve pairing, keep the device online, and revoke access when finished. - [Wenlan Claude Code plugin (npm)](https://www.npmjs.com/package/wenlan): The Claude Code plugin published from this repo. - [wenlan-mcp server (npm)](https://www.npmjs.com/package/wenlan-mcp): The MCP server binary as a standalone npm package. - [wenlan-mcp on crates.io](https://crates.io/crates/wenlan-mcp): The Rust crate behind wenlan-mcp. - [wenlan-types on crates.io](https://crates.io/crates/wenlan-types): Shared wire types for downstream tools. - [License](https://github.com/wenlan-app/wenlan/blob/main/LICENSE): Apache-2.0.