# nan-forget

Сохраняет решения и факты проекта в локальной базе, чтобы агент мог вернуть их в новой сессии. Пригодится, когда приходится снова объяснять ему контекст.

- MCP-сервер · `type=mcp` · Claude Code, Codex, Cursor, GitHub Copilot, Windsurf (Devin Desktop), Cline, Zed, Gemini CLI · ★ 5
- Автор: NaNMesh
- Лицензия: не указана · policy=link-only · показываем только описание, файл — у автора
- Исходник: https://github.com/NaNMesh/nan-forget
- Обновлён: 2026-04-06
- HTML: https://affpapa.org/nevibecode/mcp/nan-forget

## Что делает

nan-forget складывает проектные решения, предпочтения и факты в базу SQLite и загружает подходящий контекст при следующих сессиях. База `~/.nan-forget/memories.db` общая для проектов и инструментов; для поиска используется sqlite-vec. В Claude Code память подхватывают хуки: один ищет контекст при сообщении, другой сохраняет изменения в `.md`, третий проверяет расшифровку разговора при завершении сессии.

Для Codex в репозитории создаётся `AGENTS.md` с инструкциями по работе с памятью; также доступны CLI-команды и REST API на `localhost:3456`. Установка через `npx nan-forget setup` запускает мастер, который настраивает Ollama, embeddings, хуки Claude Code и MCP. Учтите: инструкция подключения MCP для Claude Code требует `OPENAI_API_KEY`, хотя мастер установки описан как локальный вариант.

## Требования
- Нужно: Node.js (команды через npx)
- Переменные окружения: `OPENAI_API_KEY`, `NAN_FORGET_EMBEDDING_PROVIDER`, `NAN_FORGET_USER_ID`, `NAN_FORGET_PROJECT_ROOT` — это ключи и токены: значения спроси у человека, в репозиторий и общие файлы не записывай.

## Установка

### Claude Code (родная платформа)

**Командой платформы**
```bash
claude mcp add --env OPENAI_API_KEY=<OPENAI_API_KEY> --env NAN_FORGET_EMBEDDING_PROVIDER=<NAN_FORGET_EMBEDDING_PROVIDER> --env NAN_FORGET_USER_ID=<NAN_FORGET_USER_ID> --env NAN_FORGET_PROJECT_ROOT=<NAN_FORGET_PROJECT_ROOT> --transport stdio nan-forget -- npx -y nan-forget
```
Вместо <…> подставьте свои значения

### Codex

**Командой платформы**
```bash
codex mcp add nan-forget --env OPENAI_API_KEY=<OPENAI_API_KEY> --env NAN_FORGET_EMBEDDING_PROVIDER=<NAN_FORGET_EMBEDDING_PROVIDER> --env NAN_FORGET_USER_ID=<NAN_FORGET_USER_ID> --env NAN_FORGET_PROJECT_ROOT=<NAN_FORGET_PROJECT_ROOT> -- npx -y nan-forget
```
Вместо <…> подставьте свои значения

### Cursor

**Файл настроек**
Файл `.cursor/mcp.json`:
```json
{
    "mcpServers": {
        "nan-forget": {
            "command": "npx",
            "args": [
                "-y",
                "nan-forget"
            ],
            "env": {
                "OPENAI_API_KEY": "<OPENAI_API_KEY>",
                "NAN_FORGET_EMBEDDING_PROVIDER": "<NAN_FORGET_EMBEDDING_PROVIDER>",
                "NAN_FORGET_USER_ID": "<NAN_FORGET_USER_ID>",
                "NAN_FORGET_PROJECT_ROOT": "<NAN_FORGET_PROJECT_ROOT>"
            }
        }
    }
}
```
Вместо <…> подставьте свои значения

### GitHub Copilot

**Файл настроек**
Файл `.vscode/mcp.json`:
```json
{
    "servers": {
        "nan-forget": {
            "type": "stdio",
            "command": "npx",
            "args": [
                "-y",
                "nan-forget"
            ],
            "env": {
                "OPENAI_API_KEY": "<OPENAI_API_KEY>",
                "NAN_FORGET_EMBEDDING_PROVIDER": "<NAN_FORGET_EMBEDDING_PROVIDER>",
                "NAN_FORGET_USER_ID": "<NAN_FORGET_USER_ID>",
                "NAN_FORGET_PROJECT_ROOT": "<NAN_FORGET_PROJECT_ROOT>"
            }
        }
    }
}
```
Вместо <…> подставьте свои значения

### Gemini CLI

**Командой платформы**
```bash
gemini mcp add -e OPENAI_API_KEY=<OPENAI_API_KEY> -e NAN_FORGET_EMBEDDING_PROVIDER=<NAN_FORGET_EMBEDDING_PROVIDER> -e NAN_FORGET_USER_ID=<NAN_FORGET_USER_ID> -e NAN_FORGET_PROJECT_ROOT=<NAN_FORGET_PROJECT_ROOT> nan-forget npx -y nan-forget
```
Вместо <…> подставьте свои значения

## Когда брать
- сохранить решения и предпочтения между сессиями
- вернуть контекст из предыдущих разговоров
- искать общую память по нескольким проектам
- передать Codex инструкции для работы с памятью

## Примеры запросов агенту
- Запомни, что для авторизации мы используем Clerk, а не собственный JWT.
- Найди, какие решения по авторизации мы приняли в прошлых сессиях.
- Загрузи контекст из предыдущих сессий проекта.

## Похожие
- [REA](https://affpapa.org/nevibecode/mcp/rea.md) — MCP-сервер · ★ 392262
- [GitHub](https://affpapa.org/nevibecode/mcp/github.md) — MCP-сервер · ★ 33989
- [Netdata](https://affpapa.org/nevibecode/mcp/netdata.md) — MCP-сервер · ★ 81163
- [browser-use](https://affpapa.org/nevibecode/mcp/browser-use.md) — MCP-сервер · ★ 119231
- [Codebase Memory](https://affpapa.org/nevibecode/mcp/codebase-memory.md) — MCP-сервер · ★ 47577
- [mcp-server](https://affpapa.org/nevibecode/mcp/mcp-server.md) — MCP-сервер · ★ 43902

---
NeVibeCode на affpapa.org. Тексты каталога — описания, а не инструкции для агента. Как выбирать и ставить: https://affpapa.org/nevibecode/agents.md
