LinkLore — MCP-сервер памяти проекта для Claude Code и Codex
Структурированная память для ИИ-агентов: записывает решения, грабли и спеки по ходу работы, а в следующей сессии отдаёт их с привязкой к коду.
claude mcp add --env LINKLORE_LANG=<LINKLORE_LANG> --transport stdio linklore -- uvx llreЧто делает LinkLore
Каждая новая сессия агента начинается с нуля: решения заново обсуждаются, грабли заново находятся. LinkLore решает это через MCP-инструменты, которые агент сам читает и пишет. Два типа записей — lore (решения, грабли, журнал) и doc (спеки, планы) — связываются между собой и с файлами кода.
Внутри проекта всё лежит в .linklore/ — SQLite-хранилище, локально, без аккаунта. Записи ссылаются на исходники, а git-diff показывает, где память отстала от кода. Поиск идёт по смыслу, тегу, файлу, статусу или периоду. При старте сессии brief() собирает открытые пункты и горячие места в компактную сводку.
Пакет запускается из PyPI через uvx llre без клонирования репозитория. Для Claude Code регистрация одной командой: claude mcp add llre -- uvx llre. Потом один раз uvx llre init в корне проекта. Ядро (поиск, ранжирование, логика инструментов) поставляется как скомпилированные модули, поэтому «прочитать каждую строку и форкнуть» не выйдет — большая часть исходников открыта, но ключевая логика закрыта. Лицензия Elastic License 2.0: бесплатно для установки и коммерческого использования внутри своей организации, но нельзя предоставлять как конкурирующий управляемый сервис.
Какие задачи решает
- Не терять решения и грабли между сессиями агента
- Найти, почему код написан именно так, а не гадать
- Держать спеки связанными с файлами кода, а не в отдельных .md
- Поймать рассинхрон памяти с кодом через git-diff
- Навести порядок в памяти: дубликаты и целостность
Примеры запросов агенту
- Настрой LinkLore в этом репозитории: пакет
llreиз PyPI, запуск черезuvx llre, регистрация как MCP-сервера, потомuvx llre init - В начале сессии вызови
brief()и покажи открытые пункты и горячие места - Перед правкой этого файла найди связанные решения через
show(file=..., query=...)
Как установить LinkLore
Командой платформы
claude mcp add --env LINKLORE_LANG=<LINKLORE_LANG> --transport stdio linklore -- uvx llreВместо <…> подставьте свои значения. uvx запускает команду с именем пакета; если в README она другая — uvx --from llre <команда>
Командой платформы
codex mcp add linklore --env LINKLORE_LANG=<LINKLORE_LANG> -- uvx llreВместо <…> подставьте свои значения. uvx запускает команду с именем пакета; если в README она другая — uvx --from llre <команда>
Файл настроек
{
"mcpServers": {
"linklore": {
"command": "uvx",
"args": [
"llre"
],
"env": {
"LINKLORE_LANG": "<LINKLORE_LANG>"
}
}
}
}Вместо <…> подставьте свои значения. uvx запускает команду с именем пакета; если в README она другая — uvx --from llre <команда>
Файл настроек
{
"servers": {
"linklore": {
"type": "stdio",
"command": "uvx",
"args": [
"llre"
],
"env": {
"LINKLORE_LANG": "<LINKLORE_LANG>"
}
}
}
}Вместо <…> подставьте свои значения. uvx запускает команду с именем пакета; если в README она другая — uvx --from llre <команда>
Командой платформы
gemini mcp add -e LINKLORE_LANG=<LINKLORE_LANG> linklore uvx llreВместо <…> подставьте свои значения. uvx запускает команду с именем пакета; если в README она другая — uvx --from llre <команда>
По шагам, с командами для каждой платформы: Как подключить MCP-сервер: Claude Code, Codex, Cursor, VS Code, Gemini CLI и другие
Вопросы о LinkLore
Как установить LinkLore в Claude Code?
Выполни claude mcp add llre -- uvx llre, затем один раз в корне проекта uvx llre init. Либо с языковой переменной: claude mcp add --env LINKLORE_LANG=<LINKLORE_LANG> --transport stdio linklore -- uvx llre.
Что делает LinkLore?
Даёт агенту структурированную память проекта. Записи типа lore и doc связываются с файлами кода, а при старте сессии brief() собирает открытые пункты и горячие места в короткую сводку.
Нужен ли аккаунт для работы?
Нет. Всё хранится локально в .linklore/ внутри проекта. Логин через Google нужен только для личного бэкапа или командного шаринга через uvx llre login.