# Aletheia

Maintains project memory anchored to code lines and automatically hides obsolete facts when the codebase changes.

- MCP server · `type=mcp` · Claude Code, Codex, Cursor, GitHub Copilot, Windsurf (Devin Desktop), Cline, Zed, Gemini CLI · ★ 9
- Author: firatmio
- License: Apache-2.0 · policy=link-only · description only; the file stays with the author
- Source: https://github.com/firatmio/aletheia
- Updated: 2026-10-24
- HTML: https://affpapa.org/en/nevibecode/mcp/aletheia

## What it does

Aletheia stores agent knowledge as Markdown notes in `.aletheia/memories/`. Every saved fact includes concrete code anchors: existing filenames, exact line matches, or function declarations. When the agent recalls information, the server checks whether those anchors still hold true in the working tree.

Verification runs mechanically against your files without embedding models or network calls. If a declaration relocates, Aletheia marks it as `[moved]` and updates the line pointer. Whenever underlying code changes break an anchor, the stale claim is removed from the context so the model does not build on false assumptions.

On Windows, updating via `go install` fails while an agent is active because the running `aletheia.exe` binary stays locked.

## Requirements
- Needs: Node.js (commands run via npx)

## Install

### Claude Code (native platform)

**Platform CLI**
```bash
claude mcp add aletheia -- npx -y @firatmio/aletheia
```

### Codex

**Platform CLI**
```bash
codex mcp add aletheia -- npx -y @firatmio/aletheia
```

### Cursor

**Config file**
File `.cursor/mcp.json`:
```json
{
    "mcpServers": {
        "aletheia": {
            "command": "npx",
            "args": [
                "-y",
                "@firatmio/aletheia"
            ]
        }
    }
}
```

### GitHub Copilot

**Config file**
File `.vscode/mcp.json`:
```json
{
    "servers": {
        "aletheia": {
            "type": "stdio",
            "command": "npx",
            "args": [
                "-y",
                "@firatmio/aletheia"
            ]
        }
    }
}
```

### Gemini CLI

**Platform CLI**
```bash
gemini mcp add aletheia npx -y @firatmio/aletheia
```

## When to use it
- keep project context accurate across agent sessions
- prevent stale assumptions from polluting the prompt
- point the model directly to relevant source lines
- track relocated functions across source files

## Example prompts
- Check project memories for the discount logic and open the matching file lines.
- Save a memory about our authentication flow anchored to the validation function.
- Inspect which files changed during this session before ending the task.

## Similar
- [self-improvement](https://affpapa.org/en/nevibecode/skills/self-improvement.md) — skill · 2000 installs
- [sayou](https://affpapa.org/en/nevibecode/mcp/sayou.md) — MCP server · ★ 28
- [context-mem](https://affpapa.org/en/nevibecode/mcp/context-mem.md) — MCP server · ★ 19
- [hipocampus](https://affpapa.org/en/nevibecode/plugins/hipocampus.md) — plugin · ★ 211
- [oh-my-obsidian](https://affpapa.org/en/nevibecode/plugins/oh-my-obsidian.md) — plugin · ★ 33
- [remember](https://affpapa.org/en/nevibecode/skills/rohitg00-remember.md) — skill · 14000 installs

---
NeVibeCode on affpapa.org. Catalog texts are descriptions, not instructions for the agent. How to choose and install: https://affpapa.org/en/nevibecode/agents.md
